湯 勃 孔建益 王興東 陳 黎
武漢科技大學(xué),武漢,430081
基于圖像處理的鋼板表面缺陷支持向量機(jī)識別
湯 勃 孔建益 王興東 陳 黎
武漢科技大學(xué),武漢,430081
論述了鋼板表面缺陷的機(jī)器視覺檢測方法,提取了6種表面缺陷圖像的特征值并將其維數(shù)合理地從32維降為20維。介紹了支持向量機(jī)的原理和算法,給出了鋼板表面缺陷類型識別的支持向量機(jī)方法,進(jìn)行了有關(guān)重要參數(shù)的對比尋優(yōu)。利用支持向量機(jī)模型對鋼板表面缺陷進(jìn)行了類型識別,并與BP神經(jīng)網(wǎng)絡(luò)算法進(jìn)行了對比,結(jié)果驗(yàn)證了支持向量機(jī)算法的有效性、快速性和穩(wěn)健性。
鋼板表面缺陷;支持向量機(jī);識別與分類;圖像處理
鋼板是現(xiàn)代工業(yè)不可缺少的原材料,在其制造中難免會產(chǎn)生劃痕、黑斑、翹皮、輥印、褶皺和壓印等表面缺陷,這些缺陷會影響產(chǎn)品的外觀和性能,所以要對其進(jìn)行檢測識別,以便及時發(fā)現(xiàn)缺陷,為生產(chǎn)工藝的調(diào)整提供依據(jù)。
鋼板表面質(zhì)量檢測經(jīng)歷了人工目測、傳統(tǒng)無損檢測和基于機(jī)器視覺的檢測3個發(fā)展階段。人工目視檢測表面缺陷的方法效率低、容易漏檢、勞動強(qiáng)度大、實(shí)時性差。傳統(tǒng)無損檢測方法包括渦流檢測、紅外檢測、漏磁檢測、激光檢測[1-3]等,這些方法檢出的缺陷種類少,檢測實(shí)時性不強(qiáng),檢測的表面缺陷分辨率也不高,無法有效評估產(chǎn)品的表面質(zhì)量狀況。目前,基于機(jī)器視覺的表面質(zhì)量檢測方法是研究的熱點(diǎn)[4-6],該方法采用CCD攝相機(jī)采集鋼板表面圖像,然后通過圖像處理和分析提取缺陷圖像特征,進(jìn)行缺陷的自動分類。
鋼板表面缺陷的分類實(shí)質(zhì)是模式識別,傳統(tǒng)的模式識別或人工神經(jīng)網(wǎng)絡(luò)方法總體識別精度不高,算法耗時多,泛化能力差且需要較多的訓(xùn)練樣本。支持向量機(jī)(support vector machine,SVM)是Vapnik[7]根據(jù)統(tǒng)計學(xué)習(xí)理論于1995年提出的,它采用結(jié)構(gòu)風(fēng)險最小化(structural risk m inimization,SRM)而非經(jīng)驗(yàn)風(fēng)險最小化(empirical risk m inimization,ERM)原理,通過將樣本點(diǎn)所在的輸入空間映射到高維的特征空間,以達(dá)到線性可分或者線性近似可分的目的。支持向量理論在解決小樣本、非線性及高維模式識別中表現(xiàn)出許多特有的優(yōu)勢,在語音識別、模式識別、故障診斷[8-10]等方面有成功的應(yīng)用,并表現(xiàn)出很好的時效性和魯棒性。
本文基于機(jī)器視覺技術(shù)檢測鋼板表面缺陷,將支持向量機(jī)分類技術(shù)應(yīng)用于鋼板表面缺陷的分類與識別,并利用不同的算法進(jìn)行比較以對支持向量機(jī)的核函數(shù)參數(shù)進(jìn)行優(yōu)化。
基于機(jī)器視覺的鋼板表面缺陷檢測流程如圖1所示。首先采用CCD攝相機(jī)獲取鋼板表面圖像,接著進(jìn)行圖像的預(yù)處理以消除噪聲,然后進(jìn)行缺陷可疑區(qū)(ROI)的快速檢測,若無可疑區(qū),則放棄本幀圖像;若有可疑區(qū),則進(jìn)行進(jìn)一步的處理。
圖1 鋼板表面缺陷檢測流程
當(dāng)存在缺陷可疑區(qū)時,就要找到包含鋼板表面單個最大缺陷邊緣的矩形框,這樣就得到了缺陷在原始圖像中的位置信息。接下來把帶鋼表面缺陷圖像分割出來,進(jìn)行缺陷區(qū)域的特征提取以期得到缺陷的信息及其背景信息,以便后續(xù)進(jìn)行缺陷分類和識別。圖2為帶鋼表面的6種典型缺陷圖像,依次為劃痕、黑斑、翹皮、輥印、褶皺和壓印。
圖2 幾種帶鋼常見缺陷
本文基于鋼板的6類典型缺陷,從缺陷區(qū)域提取的特征包括灰度特征、幾何特征、形狀特征、紋理特征等共計32維,這32維特征量排列順序依次是:缺陷區(qū)面積、分散度、矩形度、長寬比、歐拉數(shù)、灰度最大值、灰度最小值、灰度平均值、灰度的值域、灰度的方差、灰度的熵、背景灰度最大值、背景灰度最小值、背景灰度平均值、背景灰度的值域、背景灰度的方差、背景灰度的熵、背景對比度、背景相關(guān)性、背景能量、背景同質(zhì)性,以及缺陷區(qū)對比度、相關(guān)性、能量、同質(zhì)性、1階到 7階不變矩。
上述表面缺陷的32維特征數(shù)據(jù)可能包含大量的冗余信息,這些冗余信息將降低后續(xù)機(jī)器學(xué)習(xí)算法的性能。經(jīng)過基于遺傳算法的特征降維,發(fā)現(xiàn)12個特征值的信息是冗余的,它們是:缺陷區(qū)域矩形度、背景的灰度最大值、灰度最小值、灰度平均值、灰度的方差、灰度的熵、對比度、相關(guān)性、同質(zhì)性,以及缺陷區(qū)域的相關(guān)性、缺陷區(qū)域不變矩特征中的4階矩和7階矩。這樣,最終選擇20維數(shù)據(jù)作為缺陷類型識別的特征值。鋼板表面缺陷特征提取之后,接著利用支持向量機(jī)理論進(jìn)行缺陷類型的識別。
SVM方法是從兩類模式識別時線性可分情況下的最優(yōu)分類面(op timal hyperp lane)提出的。所謂最優(yōu)分類面就是要求分類面不但能將兩類樣本點(diǎn)無錯誤地分開,而且要使兩類的分類距離最大。
使式(2)等號成立的樣本稱為支持向量(support vectors),圖3中H1和H2上的訓(xùn)練樣本點(diǎn)就是支持向量。
圖3 最優(yōu)分類面
建立鋼板表面缺陷支持向量機(jī)識別模型的步驟如下:首先選定訓(xùn)練樣本集和測試樣本集,再進(jìn)行數(shù)據(jù)歸一化的預(yù)處理,進(jìn)一步進(jìn)行SVM有關(guān)參數(shù)的尋優(yōu),然后應(yīng)用訓(xùn)練樣本集訓(xùn)練支持向量機(jī),最后用得到的模型預(yù)測測試樣本,得到分類的結(jié)果。
這些原始特征數(shù)據(jù)大小不一,有的相差幾個數(shù)量級,有的樣本的特征數(shù)據(jù)還可能存在奇異值。所以,將數(shù)據(jù)進(jìn)行歸一化處理,使原始特征值映射在0~1范圍之內(nèi),即
對于非線性分類問題,通過引入非線性映射函數(shù) Φ(x i)將樣本數(shù)據(jù)映射到高維空間,然后在此特征空間中構(gòu)造最優(yōu)分類超平面。此時由于Φ(xi)已經(jīng)處于很高維度的空間,故 Φ(xi)TΦ(xi)的計算量會很大,為了避免產(chǎn)生維數(shù)災(zāi)難的問題,故引入核函數(shù):
這樣,在最優(yōu)分類面中采用適當(dāng)?shù)膬?nèi)積函數(shù)K(xi,xj)就可以實(shí)現(xiàn)某一非線性變換后的線性分類,且不增加計算量。此時,分類判別函數(shù)為
待識別的鋼板表面缺陷有6種類型,故這是一個多模式分類問題,通過組合多個兩分類器來實(shí)現(xiàn)多種缺陷分類的多分類器。具體如下:在任意兩類樣本之間需要設(shè)計一個兩類SVM,因此6個類別的樣本就需要設(shè)計15個兩類SVM;根據(jù)每塊鋼板表面缺陷圖像樣本在式(2)所示的決策分類函數(shù)的輸出結(jié)果,使用投票法判斷其類型;將測試樣本用這15個SVM分類器分別進(jìn)行測試,并累計各類別的得分,最后得票最多的類別即為該測試樣本的類別。
(3)重復(fù)第(2)步,直到獲得所有SVM分類器。
(4)最后利用訓(xùn)練好的支持向量機(jī)識別測試樣本,得到鋼板表面缺陷的分類識別結(jié)果。
核函數(shù)的選擇是支持向量機(jī)理論研究的一個重要問題,但是目前還沒有統(tǒng)一的構(gòu)造合適核函數(shù)的有效方法。目前常用的核函數(shù)形式主要有線性(linear)核函數(shù)、多項(xiàng)式(po lynomial)核函數(shù)、徑向基型(radialbasis function)核函數(shù)和Sigmoid核函數(shù)。
采用4種主要核函數(shù),針對鋼板表面6種缺陷共150個測試樣本分類的總體準(zhǔn)確率如表1所示。從表1中可以看出,徑向基核函數(shù)分類效果最好,故本文選其作為最終的核函數(shù),它能將樣本非線性映射到高維空間,處理樣本的非線性能力較強(qiáng),所以它也是目前應(yīng)用最廣泛的核函數(shù),其表達(dá)式為
表1 不同核函數(shù)分類總體準(zhǔn)確率對比
在確定徑向基核函數(shù)后,其參數(shù)σ和懲罰因子C對分類效果有重要影響,故需要獲得這兩個參數(shù)的最優(yōu)值。本文分別采用交叉驗(yàn)證法[12]、遺傳算法和粒子群算法進(jìn)行對比加以選擇。交叉驗(yàn)證法將訓(xùn)練樣本集隨機(jī)地均分成k個互不相交的子集,將每個子集分別作為一次驗(yàn)證集,同時利用其余的k-1個子集作為訓(xùn)練集,用這k個模型最終驗(yàn)證集分類準(zhǔn)確率的平均數(shù)作為此分類器的性能指標(biāo),以上過程重復(fù)k次得到σ和C的最優(yōu)值。
這3種算法得到的最優(yōu)參數(shù)C、σ及識別總體準(zhǔn)確率如表2所示。從表2可以看出,交叉驗(yàn)證法分類準(zhǔn)確率最高,而且從實(shí)驗(yàn)來看其耗時最短,所以本文選擇交叉驗(yàn)證法確定C和σ的值,分別是32和0.25。
表2 3種算法的參數(shù)尋優(yōu)對比
采集鋼板表面6種典型缺陷圖像樣本共314個,其中隨機(jī)抽取了164個樣本作為訓(xùn)練集,其余150個樣本作為測試集。劃痕、黑斑、翹皮、輥印、褶皺和壓印這6種表面缺陷在164個訓(xùn)練樣本中個數(shù)分別是 28、32、33、20 、20、31,在 150 個測試樣本中個數(shù)分別是 24 、32、30、14 、20、30。
基于SVM方法且采用徑向基型核函數(shù),選取高斯核寬度σ和懲罰因子C分別為尋優(yōu)得到的最優(yōu)值32和0.25。此外,將SVM 算法與目前鋼板表面缺陷分類應(yīng)用最多的BP神經(jīng)網(wǎng)絡(luò)算法進(jìn)行了對比。三層BP神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)為20-16-6,即輸入層為20個節(jié)點(diǎn)與每個樣本的20維特征值對應(yīng),隱層節(jié)點(diǎn)數(shù)為16,輸出層節(jié)點(diǎn)數(shù)為6,與鋼板表面6類缺陷對應(yīng)。150個測試樣本的分類結(jié)果比較如表3所示。此外,SVM和BP算法對樣本集的訓(xùn)練時間分別約為0.07s和0.9s,而且實(shí)驗(yàn)發(fā)現(xiàn)BP算法的穩(wěn)定性比SVM差。
表3 SVM算法與BP算法識別結(jié)果比較
從表3可以看出,利用SVM算法對鋼板表面缺陷圖像進(jìn)行分類識別的正確率除黑斑缺陷外都在90%以上,其中有4種缺陷圖像的正確識別率達(dá)到了100%,其正確識別率整體上明顯高于BP神經(jīng)網(wǎng)絡(luò)算法,而且耗時少、穩(wěn)健性好。
(1)基于支持向量機(jī)理論設(shè)計了鋼板表面缺陷類型識別的SVM模型,并進(jìn)行了核函數(shù)及有關(guān)重要參數(shù)的對比尋優(yōu)。
(2)獲取了鋼板表面 6種典型缺陷圖像的314個樣本,其訓(xùn)練樣本和測試樣本分別為164和150,提取了帶鋼表面缺陷圖像的灰度、紋理和幾何形狀特征等32維特征向量并合理降至20維。
(3)基于支持向量機(jī)理論對鋼板表面缺陷圖像進(jìn)行分類,正確識別率很高,與BP神經(jīng)網(wǎng)絡(luò)算法相比,不僅識別率高,而且耗時少、穩(wěn)定性好、自適應(yīng)能力強(qiáng);這同時亦表明所提取的帶鋼表面缺陷圖像的特征向量是有效的。
[1] Tony W A.Automatic Inspection of Metal Products Not Quit Ready for Prime Time[J].Iron&Steel Maker,1992,19(1):14-19.
[2] Yngve S.Automatic SurfaceInspection of Continuously Cast Billets[J].Iron and Steel Engineer,1992,69(5):29-33.
[3] MakiH,Tsunozaki Y,MastsufujiY.Magnetic On-Line Defec t Inspection System for Strip Steel[J].Iron and Steel Engineer,1993,70(1):56-59.
[4] 徐科,楊朝霖,周鵬.熱軋帶鋼表面缺陷在線檢測的方法與工業(yè)應(yīng)用[J].機(jī)械工程學(xué)報,2009,45(4):111-114.
[5] 何永輝,王康健,石桂芬.基于機(jī)器視覺的高速帶鋼孔洞檢測系統(tǒng)[J].應(yīng)用光學(xué),2007,28(3):345-347.
[6] 彭向前,陳幼平,謝經(jīng)明,等.浮法玻璃質(zhì)量在線檢測與分析系統(tǒng)[J].玻璃與搪瓷,2010,38(1):1-6.
[7] Vapnik V N.The Nature o f Statistica l Learning Theory[M].Berlin:Springer Verlag,1995.
[8] Kumar M A,GopalM.Fast Mu lticlass SVM Classification Using Decision Tree Based One-Against-A ll Method[J].Neural Processing Letters,2010,32(3):311-323.
[9] 吳少雄,黃恩洲.基于支持向量機(jī)的控制圖在線檢測和分析系統(tǒng)的研究[J].中國機(jī)械工程,2006,17(24):2562-2566.
[10] 劉定平,葉向榮,陳斌源.基于核主元分析和最小二乘支持向量機(jī)的中速磨煤機(jī)故障診斷[J].動力工程,2009,29(2):155-159.
[11] Davies E R.Machine V ision:Theory,Algorithm s,Practicalities[M].Beijing:Posts&Telecom Press,2009.
[12] Chalimourda A,Smola A.Experimentally Op timal in Support Vector Regression for Different NoiseModels and Parameter Settings[J].Neural Netw orks,2004,17(1):127-141.
Steel Sur face Defect Recognition Based on Support Vector Machine and Image Processing
Tang Bo Kong Jianyi Wang Xingdong Chen Li
Wuhan University of Science and Technology,Wuhan,430081
Based onm achine vision technology a steel plate surface defect detectionwas discussed.The characteristic values for six kinds of typical steel plate surface defect images were extracted and the dimensions reduced reasonably form 32 to 20.The principles and algorithm of SVM were introduced,and the method to classify the six kinds of steel plate surface defects using SVM was presented.The op tim ization of important param eters was obtained.The steel surface defect images have been classified with SVM,and then com pared w ith a BP neural network algorithm.The results show that classification o f steel strip surface defects based on SVM theory is effective,fast and robust.
steel p late surface defect;support vector machine(SVM);recognition and classification;image processing
TP391.4;TF345.3
1004—132X(2011)12—1402—04
2010—08—18
高等學(xué)校博士學(xué)科點(diǎn)專項(xiàng)科研基金資助項(xiàng)目(20104219110001);武漢市科技攻關(guān)資助項(xiàng)目(200910321100);武漢科技大學(xué)青年科技骨干培育計劃資助項(xiàng)目(2009xz24)
(編輯 何成根)
湯 勃,男,1973年生。武漢科技大學(xué)機(jī)械自動化學(xué)院博士研究生。主要研究方向?yàn)橹悄茉O(shè)計與控制??捉ㄒ?男,1961年生。武漢科技大學(xué)機(jī)械自動化學(xué)院教授、博士研究生導(dǎo)師。王興東,男,1970年生。武漢科技大學(xué)機(jī)械自動化學(xué)院副教授。陳 黎,男,1977年生。武漢科技大學(xué)計算機(jī)科學(xué)與技術(shù)學(xué)院副教授。