王粟, 李庚, 曾亮
(1. 湖北工業(yè)大學(xué) 太陽能高效利用及儲能運(yùn)行控制湖北省重點(diǎn)實(shí)驗(yàn)室, 湖北 武漢 430068;2. 湖北工業(yè)大學(xué) 電氣與電子工程學(xué)院, 湖北 武漢 430068)
鋼鐵廣泛應(yīng)用于航天工業(yè)、建筑業(yè)、汽車工業(yè)和船舶工業(yè),目前鋼鐵主要的產(chǎn)品形式是冷軋帶鋼.近5 a來,我國鋼鐵的年產(chǎn)量一直維持在11億t,其中,46%為冷軋帶鋼[1].然而,由于制作的工藝、原材料和人員操作等問題,導(dǎo)致帶鋼表面往往不可避免地出現(xiàn)一些缺陷.這些缺陷不僅會影響產(chǎn)品的美觀,還會影響產(chǎn)品的抗腐蝕能力、耐磨性及疲勞強(qiáng)度.這些帶缺陷產(chǎn)品會對企業(yè)的形象和信譽(yù)造成負(fù)面影響,同時也會導(dǎo)致大量的原材料浪費(fèi).因此,迅速準(zhǔn)確地對缺陷產(chǎn)品進(jìn)行分類,可以有助于鋼鐵廠在源頭上解決問題.目前,很多研究人員已經(jīng)嘗試采用基于視覺特征及分類算法來解決這一問題.基于缺陷圖像的統(tǒng)計特征、基于濾波的特征和基于統(tǒng)計方式的特征等,也已被廣泛應(yīng)用于缺陷的分類與識別問題中.其中,統(tǒng)計特征包括分塊的直方圖特征、灰度共協(xié)方差矩陣、灰度共生矩陣(GLCM)、局部二值模式(LBP)特征、Gabor濾波器、SIFT(scale invariant feature transform)[2-3]和SURF(speed-up robust features)[3-5]等.為了使LBP的特征更加的完整,Guo等[6-7]提出了完全局部二值模式(CLBP)算法,其提取的特征較為全面且有較強(qiáng)的鑒別能力,適合應(yīng)用于紋理分類.
不同尺度CLBP所包含的信息有所差異,當(dāng)選擇大尺度時,得到是圖片的全局信息,而當(dāng)選擇小尺度時,得到的是圖片的局部信息.為了得到圖片的全局信息,本文對一種多尺度的CLBP中的CLBP_S算子進(jìn)行改進(jìn),提出等值模式下完全二值模式符號算子(CLBP_US)的帶鋼表面缺陷分類算法.
圖1 中心接受廠Fig.1 Center receiving factory
視覺注意機(jī)制使人類在集群視覺場景中快速發(fā)現(xiàn)自己想要的東西.有了視覺注意機(jī)制,人們就可以集中精力將一些重要的事情進(jìn)行進(jìn)一步的處理,忽略其他不重要的事情,可對重要的或感興趣的信息優(yōu)先進(jìn)行處理.
為了實(shí)現(xiàn)人類的視覺注意機(jī)制,當(dāng)人類視覺系統(tǒng)對場景采樣進(jìn)行處理時,采用高密度采樣和高分辨率處理的視覺場景中心區(qū)域.隨著距離的增加,采樣密度和分辨率逐漸降低,因此,形成了一個中心高采樣密度的中心興奮區(qū)域和周圍低采樣密度的環(huán)繞抑制區(qū)域的中心接受廠,如圖1所示.圖1中:“+”號表示中心興奮區(qū)域;“-”表示周圍抑制區(qū)域.
研究發(fā)現(xiàn),視覺系統(tǒng)路徑中的中心周圍結(jié)構(gòu)與高斯差分函數(shù)(DOG)的結(jié)構(gòu)相似,傳遞函數(shù)是兩個不同帶寬高斯函數(shù)的差分[8-9],即
(1)
式(1)中:σ1,σ2分別表示高斯濾波器的帶寬.
將人眼視覺系統(tǒng)的視覺信息處理機(jī)制應(yīng)用于帶鋼缺陷的檢測,可提高帶鋼缺陷背景區(qū)域和缺陷區(qū)域的對比度,便于更好地對帶鋼表面缺陷進(jìn)行區(qū)分.
圖2 LBP算子Fig.2 LBP operator
傳統(tǒng)的LBP算子能有效地度量圖像中的局部鄰域信息,是一種有效的特征提取手段.采用LBP算子對圖像進(jìn)行特征提取時,對于給定圖像進(jìn)行局部二值編碼,如圖2所示.由圖2可知:該3 px×3 px的圖像由LBP算子進(jìn)行編碼后,變成二進(jìn)制數(shù)00111110;然后,再由二進(jìn)制數(shù)轉(zhuǎn)化為一進(jìn)制數(shù)62,62即為該3 px×3 px的圖像中心位置的LBP值.即局部描述信息的LBPP,R算子為
(2)
式(2)中:gC表示中心位置像素值;gP表示分布在半徑為R上的P個點(diǎn)的像素值.
(3)
式(3)中:U(LBPP,R)表示0變化到1,或者1變化到0的次數(shù).
圖3 LBP算子缺點(diǎn)示意圖Fig.3 Schematic diagram of disadvantage of LBP operator
由于LBP只考慮到所選中的中心像素與周圍像素的數(shù)值大小關(guān)系,沒有考慮到其差值,導(dǎo)致2種算例不同的局部信息會得到相同的結(jié)果,如圖3所示.由圖3可知:2個相差很大的3 px×3 px的圖像經(jīng)過LBP算子處理之后,都得到了一個相同的二進(jìn)制數(shù).
為了使所提取的特征更加充分,文獻(xiàn)[11-13]提出完全局部二值模式算子.該算子有2個部分,中心像素算子(CLBP_C)和局部差分符號數(shù)值變換算子(LDSMT).其中,局部差分符號數(shù)值變換算子分為符號算子(CLBP_S)和數(shù)值算子(CLBP_M),如圖4所示.圖4中:CLBP_S算子反映了中心像素值和四周像素值的大小關(guān)系,而CLBP_M算子包含了LBP算子所丟失的中心像素與四周像素的差值.
(a) 3 px×3 px圖像 (b) 局部差分圖像 (c) CLBP_S (d) CLBP_M 圖4 CLBP算子Fig.4 CLBP operator
局部差分符號數(shù)值變換算子(LDSMT)計算式為
(4)
式(4)中:sP是dP的符號;mP是dP的大小.
由式(4)可知:CLBP_S與原始的LBP的編碼方式大致是相同的,只是CLBP_S將LBP的“0”變成了“-1”.
CLBP_M和CLBP_C的計算方式分別為
(5)
(6)
式(5),(6)中:c是自適應(yīng)閾值,在實(shí)驗(yàn)過程為局部圖像的均值.
研究發(fā)現(xiàn),在CLBP_S只有少量的灰度級對特征的描述較為重要,并且其灰度直方圖過于稀疏.因此,提出等值模式的完全二值模式符號算子(CLBP_US),以減少CLBP_S所包含的冗余信息.其計算方式為
(7)
經(jīng)處理之后的CLBP_S的灰度級就由2P變?yōu)镻(P-1)+3,灰度級更加緊湊,減少了其中所包含的冗余信息.
由于不同尺度CLBP包含的信息有所差異,因此,采用多尺度CLBP對帶鋼缺陷圖像進(jìn)行特征提取.由此可以分別得到對應(yīng)的CLBP_US8,1,CLBP_US16,2,CLBP_US24,3,CLBP_M8,1,CLBP_M16,2,CLBP_M24,3,并分別對其串聯(lián)作為帶鋼缺陷圖像的特征.
雖然CLBP算子相較于LBP算子所提取的特征更加全面,但是所提取的特征維度難免會增加,其中有很大一部分的信息對最后的識別造成干擾.文中采用的是多尺度的CLBP方式對帶鋼表面缺陷圖像進(jìn)行特征提取,不同尺度的特征數(shù)據(jù)之間存在一定的冗余信息,需要對所提取的特征進(jìn)行進(jìn)一步的篩選.因此,分別將以上不同尺度之間的CLBP_US直方圖和CLBP_M直方圖進(jìn)行串聯(lián),采用特征選擇手段篩選出具有代表性的特征.
拉普拉斯特征映射(Laplacian eigenmaps,LE)是從局部處理數(shù)據(jù)[14-15].其基本思想是希望相似度較高的樣本點(diǎn)在降維后的空間里距離較近,有如下3個主要實(shí)現(xiàn)步驟.
步驟1構(gòu)造近鄰圖.首先,連接樣本點(diǎn),連接每個點(diǎn)最近的k個點(diǎn),k值為事先設(shè)定.
步驟2確定相鄰點(diǎn)之間的權(quán)重大小,即
(8)
式(8)中:x1與x2為相鄰點(diǎn).此外,可以默認(rèn)設(shè)定Weight=1,但在x1,x2兩點(diǎn)相連接時不成立;兩點(diǎn)相連時,Weight=0.
步驟3讓相似的樣本點(diǎn)在降維后空間中距離較近,構(gòu)建優(yōu)化目標(biāo)函數(shù)為
(9)
式(9)中:ya,yb均是特征點(diǎn)在m維空間中的列向量.其拉普拉斯矩陣L=D-W,其中,D,W分別為圖的度矩陣和鄰接矩陣.
對圖拉普拉斯矩陣進(jìn)行特征值分解,使用最小的m個特征值(非零)對應(yīng)的特征向量作為降維后的結(jié)果,其降維效果如圖5所示.由圖5可知:特征數(shù)據(jù)采用流行學(xué)習(xí)的方式進(jìn)行降維之后,所得到的數(shù)據(jù)更加精簡,不同數(shù)據(jù)之間的空間劃分更加明確.
(a) 降維前 (b) 降維后圖5 拉普拉斯特征映射的降維效果Fig.5 Laplacian eigenmaps dimension reduction effect
LE相較于常用的PCA(主成分分析法)而言,主成分分析是一種以某種方式旋轉(zhuǎn)數(shù)據(jù)集的方法,使旋轉(zhuǎn)特征在統(tǒng)計學(xué)上不相關(guān).這種旋轉(zhuǎn)通常是根據(jù)它們能夠解釋數(shù)據(jù)的能力的重要性來選擇新特征的子集.PCA只是在旋轉(zhuǎn)的過程中不使用任何的分類信息,即簡單地分析數(shù)據(jù)之間的相關(guān)性;而LE的思想是找到數(shù)據(jù)的一種二維表達(dá)方式,同時,能夠盡可能地保持點(diǎn)與點(diǎn)之間的距離.LE從每個數(shù)據(jù)點(diǎn)的隨機(jī)二維表示開始,然后,嘗試使在原始特征空間中更接近的點(diǎn)更靠近,并且在原始特征空間中相距很遠(yuǎn)的點(diǎn)更遠(yuǎn).LE更強(qiáng)調(diào)靠近的點(diǎn),而不是保存遠(yuǎn)點(diǎn)之間的距離.
圖6 帶鋼表面缺陷分類算法流程圖Fig.6 Flow chart of strip surface defect classification algorithm
研究的帶鋼表面缺陷圖庫來自某一鋼鐵公司,從圖庫中選取生產(chǎn)線上常見的沖孔、大塊污漬、刮邊、黑氧化條、結(jié)疤等5種缺陷的圖片.由于以上各種缺陷圖片的尺度大小不一,因此,需要對帶鋼表面缺陷圖片進(jìn)行縮放、剪裁、去除無用的背景部分,提取缺陷圖片的感興趣區(qū)域(ROI),并將其縮放到256 px×256 px.每種缺陷選擇130張圖片作為訓(xùn)練集,用來訓(xùn)練模型;另選取沖孔缺陷圖像126張、刮邊100張、污漬102張、結(jié)疤123張、黑氧化條130張作為測試集,以測試模型的分類精度.
所提的等值模式下完全二值模式的帶鋼表面缺陷分類算法的流程,如圖6所示.該算法有如下4個主要步驟.
步驟1圖像的預(yù)處理.對帶鋼表面缺陷圖像進(jìn)行灰度化處理,并采用高斯差分空間得到一個中心區(qū)域高密度高采樣頻率的顯著圖,如圖7所示.帶鋼表面缺陷經(jīng)過Sigma1=1與Sigma2=10的高斯函數(shù)進(jìn)行差分之后,突出了缺陷區(qū)域,淡化了背景區(qū)域.
(a) 刮邊(原圖) (b) 黑氧化條(原圖) (c) 結(jié)疤(原圖) (d) 沖孔(原圖) (e) 污漬(原圖)
(f) 刮邊(效果圖) (g) 黑氧化條(效果圖) (h) 結(jié)疤(效果圖) (i) 沖孔(效果圖) (j) 污漬(效果圖) 圖7 高斯差分結(jié)果效果圖Fig.7 Gaussian difference result rendering
步驟2特征提取.采用改進(jìn)的多次度CLBP提取出圖像所包含的CLBP特征,得到其對應(yīng)的CLBP_US8,1,CLBP_US16,2,CLBP_US24,3,CLBP_M8,1,CLBP_M16,2,CLBP_M24,3等6種特征.
步驟3特征選擇.采用非線性流行學(xué)習(xí)的方式對以上特征進(jìn)行選擇,并將選擇的特征進(jìn)行串聯(lián)融合.
步驟4分類.將融合之后的特征導(dǎo)入支持向量機(jī)進(jìn)行分類.
為說明文中算法的有效性,在特征提取上分別將其與Gabor,梯度直方圖(HOG),LBP等傳統(tǒng)特征提取方式進(jìn)行對比,并將所提取的特征數(shù)據(jù)導(dǎo)入支持向量機(jī)進(jìn)行分類,結(jié)果如表1所示.表1中:Gabor參數(shù)的尺度為5,濾波方向?yàn)?,卷積模板大小為17 px×17 px,最大采樣頻率kmax=π/2,空間頻率σ=π;Gabor參數(shù)的尺度為5,濾波方向?yàn)?,卷積模板大小為17 px×17 px,中心頻率值為0.2,縮放因子值為1.6;HOG算子的單元大小為[8,8],塊中單元大小為[2,2],相鄰塊之間重疊的單元數(shù)為8,方向直方圖分段數(shù)目為9;LBP算子則是采用LBP8,1算子;加黑數(shù)字表示分類精度最優(yōu).
表1 文中算法與傳統(tǒng)特征提取方式分類結(jié)果Tab.1 Classification of results in this paper and traditional feature extraction methods %
由表1可知:Gabor濾波器通過采用8個方向和5個尺度的高斯函數(shù)對帶鋼表面缺陷進(jìn)行特征提取,得到了多尺度多方向的信息.因此在沖孔、刮邊、和黑氧化條上取得了最優(yōu)的分類精確度.但由于對大塊污漬分類精確度一般和對結(jié)疤分類精確度較差,其總體精確度為94.15%.HOG算子通過求取圖像的梯度方向和大小并將其統(tǒng)計為直方圖提取特征.雖然整體上有不錯的分類精確度,但是由于大塊污漬的識別率最低,因此總體分類精度最差為92.08%.LBP算子通過求取像素塊中中心像素與四周像素的大小關(guān)系對像素重新進(jìn)行編碼,但是由于沒有考慮到丟失的幅值,因此丟失了部分信息,雖然整體的分類精度不錯,但是沒有突出表現(xiàn)總體分類精確度為92.68%.文中所提算法首先通過將高斯差分空間提取帶鋼表面缺陷顯著圖,然后采用多尺度改進(jìn)CLBP算子對處理之后的圖像進(jìn)行特征提取,最后,采用流行學(xué)習(xí)的方法對數(shù)據(jù)進(jìn)行降維.在大塊污漬、結(jié)疤、黑氧化條的識別上,文中算法得到了最優(yōu)的分類精度,并且在刮邊和沖孔的分類表現(xiàn)上也不俗,取得了最優(yōu)分類精度為95.70%.
將文中算法的分類方式與不用尺度的CLBP算子分類精度相比,結(jié)果如表2所示.由表2可知:CLBP8.1算子相當(dāng)于其他尺度提取的是圖像的局部細(xì)節(jié)信息,沒有得到對應(yīng)的全局信息.該尺度在沖孔、刮邊、黑養(yǎng)化條上取得了不錯的分類精度,但是在結(jié)疤的識別上存在不足,其分類精度為92.08%.CLBP16,2算子處于中間尺度,在沖孔和黑氧化條上取得了不錯的分類精度,但是在其他幾種缺陷的識別上效果較差,其分類精度只有88.30%.CLBP24,3算子通過大尺度考慮到了全局信息,但忽略了圖像的細(xì)節(jié)信息,雖然在沖孔和黑氧化條上取得了最優(yōu)的分類精度,但是在其他幾項(xiàng)缺陷的分類效果最差,其總體精確度最差,為80.90%.文中算法采用多尺度的方式進(jìn)行特征提取,所提取的特征不僅包含了局部細(xì)節(jié)特征,也包含了全局特征.因此,文中算法在沖孔、刮邊、大塊污漬、結(jié)疤上都取得了最優(yōu)精度,其整體精確度最佳為95.70%.
表2 文中分類方式與傳統(tǒng)CLBP方式分類比較Tab.2 Comparison of classification methods in this paper with traditional CLBP classification %
針對帶鋼表面缺陷的幾何與紋理分部情況復(fù)雜多變,類內(nèi)缺陷分布形式不固定等特點(diǎn),提出一種引入高斯差分空間的改進(jìn)的多尺度CLBP特征提取方式.研究表明:所提出的特征提取方式與傳統(tǒng)的特征提取方法相比,具有以下2點(diǎn)優(yōu)越性.
1) 通過結(jié)合3個尺度的改進(jìn)CLBP算子,能夠更加全面地提取出圖像的局部細(xì)節(jié)信息和全局信息.同時,利用非線性流行學(xué)習(xí)的方式降維,可以減少其中所包含的冗余信息.
2) 相較于傳統(tǒng)的完全二值模式符號算子(CLBP_S),所提出的等值模式的完全二值模式符號算子(CLBP_US),使原本稀疏的CLBP_S直方圖變得更加緊湊,并減少了其中的冗余信息.
通過多組對比實(shí)驗(yàn)表明:較強(qiáng)的區(qū)分性和表達(dá)能力取得了較好的分類結(jié)果.文中算法除了應(yīng)用于帶鋼表面缺陷之外,還可以應(yīng)用于其他產(chǎn)品的表面缺陷分類,具有一定的應(yīng)用前景.