周偉峰,江娟娟,林園勝,許鋼
(安徽工程大學(xué)安徽省檢測技術(shù)與節(jié)能裝置省級實驗室,安徽蕪湖 241000)
SVM與組合矩在工件識別中的應(yīng)用研究*
周偉峰,江娟娟,林園勝,許鋼
(安徽工程大學(xué)安徽省檢測技術(shù)與節(jié)能裝置省級實驗室,安徽蕪湖 241000)
針對工件識別問題,提出了一種應(yīng)用支持向量機(Support Vector Machine,SVM)與組合矩對工件進行識別的方法;通過對提取圖像的Hu不變矩進行處理,形成利用組合矩進行工件識別的新方法;改進后的算法降低了特征維數(shù),縮減了識別時間,提高了識別準(zhǔn)確率;結(jié)合試驗比較了兩種方法的分類效果,其中提取Hu不變矩作為特征的識別率為82.3%,而采用組合矩作為特征的識別率高達94.1%,高于Hu不變矩作為特征的識別率.
SVM;Hu不變矩;組合矩;工件分類
目前,圖像識別技術(shù)在科技的帶動下,取得了較快的發(fā)展,已廣泛應(yīng)用在工業(yè)生產(chǎn)過程中,解決了產(chǎn)品質(zhì)量合格率不高,生產(chǎn)效率較低的問題.工件識別就是其中的主要應(yīng)用領(lǐng)域之一.為了提高工件識別的效率,首先要求提取的工件特征具有較強的穩(wěn)定性,具體體現(xiàn)在旋轉(zhuǎn)(Rotate)、比例(Scale)和平移(Translation)不變性,簡稱RST不變性.Hu[1]在1962年提出的Hu不變矩即七階矩就具有RST不變性,目前已應(yīng)用在工業(yè)生產(chǎn)領(lǐng)域.但Hu不變矩提取的特征維數(shù)較高,識別過程中增加了識別時間和解決問題的復(fù)雜度.此處對Hu不變矩進行組合改進形成組合矩,通過對得到的組合矩進行處理,有效解決了上述存在問題.要解決的實際問題是對工件進行識別分類,由于其特征比較特殊,普通的分類器不能很好地進行識別,而SVM分類器能很好地解決此類問題,對樣本有一定的適應(yīng)性,所以選擇SVM作為分類器.
基于SVM和組合矩的工件識別和分類流程如圖1所示.首先采集工件的圖像信息,得到工件的真彩色圖像;然后對圖像進行灰度化處理;灰度化處理之后采用自適應(yīng)閾值法進行二值化處理;由于Matlab的前景認(rèn)定習(xí)慣,需要對二值圖像進行反二值化,在前面的處理過程中會由于噪聲等因素的影響,二值化圖像會存在空洞等不良點,因此需要進行閉操作來修補這些狹窄的間斷點;之后計算7個不變矩和組合矩特征,得到能夠反映工件本身的特征向量把得到的特征向量送入SVM進行訓(xùn)練,得到能夠識別工件的SVM分類器;最后用訓(xùn)練好的SVM分類器對工件進行識別分類.
圖1 工件識別和分類流程
2.1 Hu矩
Hu矩是1962年由Hu首先提出的,提取的是圖像的形態(tài)特征,由于其具有RST不變性,所以被廣泛應(yīng)用在圖像識別領(lǐng)域.根據(jù)參考文獻[2]知,對于大小為M×N的數(shù)字圖像f(i,j),此幅圖像(p+q)的階矩定義為
式(1)中,f(i,j)相當(dāng)于一個像素的質(zhì)量;Mpq為不同p,q值下的圖像的矩.基于Mpq的平移不變性,可知p+q階中心距為
定義歸一化中心矩為
結(jié)合歸一化中心矩,可以獲得利用upq表示的7個不變矩(注意,φ7只具有比例和平移不變性),表達式如下:
2.2 改進組合矩
由以上推導(dǎo)可知,Hu不變矩主要的表現(xiàn)形式有7種,在提取其作為特征進行識別分類時,由于特征維數(shù)較高,導(dǎo)致識別時間長,運算復(fù)雜度大.故此處提出將第1,2階矩組合為φ12組合矩,第3,4階矩組合為φ34組合矩,第5,6階矩組合為φ56組合矩,忽略第7階矩φ7的識別方法(因為第7階矩只具有比例和平移不變性),定義為φ12=φ1+φ2;φ34=φ3+φ4;φ56=φ5+φ6.
利用組合矩提取的特征在本質(zhì)上仍然反映工件的紋理形態(tài),同時增大了特征之間的區(qū)分度,不僅具有RST不變性,而且降低了特征維數(shù),縮減了識別時間,進一步的實驗證明識別率也有較大提升.
支持向量機是建立在統(tǒng)計學(xué)習(xí)理論基礎(chǔ)上的一種優(yōu)秀的分類算法,是1995年Vapnik[3]提出的.其分類的核心思想是在需要分類的樣本中找出一個最優(yōu)分類超平面,使得需要分類的樣本之間具有最大的分類間隔.
3.1 最優(yōu)分類超平面
SVM最優(yōu)分類超平面如圖2所示,H就是需要找的超平面,在H1和H2上的點就是規(guī)定的支持向量.目的就是尋找這樣一個超平面H,使得H1和H2之間的間隔最大.
圖2 SVM分類超平面
通過對式(13)(14)引進拉格朗日函數(shù),然后對所得拉格朗日函數(shù)進行求偏導(dǎo),把得到的結(jié)果帶入方程(11)得式(15)
根據(jù)式(15)(16)(17)可以解得α,然后帶入相應(yīng)的關(guān)系式可得w和b,設(shè)相應(yīng)的最優(yōu)解為α*,w*,b*,可得最優(yōu)分類函數(shù)
對于非線性情況下的SVM分類,通過引進松弛變量εi>0,得約束條件為
通過對式(20)引進拉格朗日函數(shù)、求偏導(dǎo)、解方程可知,最后求得的最優(yōu)解和線性可分情況下的最優(yōu)解α*,w*,b*是一致的.
3.2 構(gòu)造核函數(shù)SVM
在非線性可分的情況下,通過引進函數(shù)ψ( x),把樣本映射到高維空間中,使得在高維空間中樣本線性可分.通過和線性分類類似的推導(dǎo),可得目標(biāo)函數(shù)[4]為
實際上在計算點積ψ (xi)·ψ (xj)時可以用一個核函數(shù)K (xi,xj)代替,從而把低維空間的樣本映射到高維空間.這種替換并沒有增加運算的復(fù)雜度,反而使問題的求解更加方便.由此可知構(gòu)造的決策函數(shù)為
3.3 核函數(shù)[5]
不同的核函數(shù)可以構(gòu)造出不同的SVM分類器,不同的分類器則形成了不同的分類結(jié)果,所以核函數(shù)的選擇非常重要,是決定分類器性能好壞的主要參數(shù)之一.目前主要的核函數(shù)[6]有多項式核函數(shù)為K(x,xi)= (xxi+1)d;徑向基函數(shù)為K(x,xi)=exp{-g x-xi2};兩層感知器為K(x,xi)=S(v(x,xi)+c),其中,S是Sigmiod函數(shù),v,c為常數(shù).通過實驗對比各個核函數(shù)的優(yōu)缺點,可知徑向基核函數(shù)具有很好的分類效果,最終選擇了徑向基核函數(shù)來解決此類問題.
3.4SVM多類分類方法
支持向量機主要解決的是二分類問題,對于多類問題,需要結(jié)合多個二分類器對樣本進行分類,主要有以下幾種分類方法:
1)一對多分類器.把所有樣本分為兩大類,其中某一個樣本為一類,另外一些樣本為另一類,這樣對k個不同的樣本就構(gòu)造了k個分類器,每個分類器都會有一個輸出結(jié)果,選擇輸出最大者作為分類結(jié)果;
2)一對一分類器.k個不同的樣本構(gòu)造出k(k-1)/2個分類器,然后分別對這些分類器進行投票,最后得票最多的就是分類結(jié)果;
3)一對一淘汰分類器.k個不同的樣本構(gòu)造出k(k-1)/2個分類器,對這些分類器進行優(yōu)先級的排序,然后根據(jù)判別函數(shù)算出優(yōu)先級最高的分類器的分類結(jié)果,把含有和判別結(jié)果相反的所有分類器都淘汰,然后計算剩余中優(yōu)先級最高的分類器,以此類推,最終可得出分類結(jié)果.
通過試驗,選擇第2)種方法作為分類方法.
4.1 工件圖像預(yù)處理
采用攝像頭獲取6種工件的圖像,對獲取的圖像進行灰度化、二值化、二值化反操作、閉運算等預(yù)處理,如圖3所示.工件從左向右依次定義為工件1,工件2,工件3,工件4,工件5,工件6.然后對處理后的圖像提取其7個不變矩和組合矩,最后把提取的特征分別送到SVM分類器進行訓(xùn)練,形成能夠識別工件的SVM分類器.
圖3 工件預(yù)處理圖像
4.2 試驗結(jié)果
通過對所有工件圖像按0.5,0.8,1.2,1.5倍率進行縮放,并每隔15度旋轉(zhuǎn)一次,形成共計168張圖片.分別提取所有工件7個不變矩和組合矩作為SVM的訓(xùn)練樣本[7-9],并且對樣本進行訓(xùn)練.隨機從168張圖片中選擇100張圖片作為訓(xùn)練樣本,剩余68張圖片作為預(yù)測樣本.圖4是工件1分別旋轉(zhuǎn)15度、30度、45度、60度、75度的圖像,圖5中從左向右依次是工件1原圖、縮小0.5倍、縮小0.8倍、放大1.2倍、放大1.5倍的圖像.這些旋轉(zhuǎn)后和縮放后的圖像在一定程度上和原圖相比產(chǎn)生了失真.如果通過實驗得到的失真之后的圖像提取特征和原圖提取特征之間誤差較小,則可認(rèn)為提取的特征具有RST不變性,實驗結(jié)果如表1,表2所示.
圖4 工件1部分旋轉(zhuǎn)結(jié)果
圖5 工件1部分縮放結(jié)果
如表1所示,提取的是6種工件的7個不變矩和組合矩數(shù)據(jù).從7個不變矩數(shù)據(jù)可以看出,不同工件之間的不變矩數(shù)據(jù)具有良好的區(qū)分度,所以可以作為識別的特征.從最后3列組合矩的數(shù)據(jù)可知,3個組合矩之間具有更加良好的區(qū)分度,并且相對于7個不變矩而言,特征維數(shù)縮小了一倍還多,不僅減小了運算的復(fù)雜度,而且也縮減了識別時間,提高了識別率.
表2提取的是工件1在部分旋轉(zhuǎn)情況下的7個不變矩和組合矩數(shù)據(jù).從表中的數(shù)據(jù)可以看出,旋轉(zhuǎn)的度數(shù)雖然變化了15度,但是7個不變矩和3個組合矩之間的誤差變化卻很小,由此可以得出,不變矩和組合矩特征具有良好的旋轉(zhuǎn)不變性.通過類似的實驗,可以得出工件進行縮放后,不變矩和組合矩特征具有良好的縮放不變性.同理可以證明它們也具有平移不變性.綜上可知,提取的不變矩和組合矩特征具有RST不變性,可以作為工件識別的特征.
表1 6種工件的7階矩和組合矩
表2 工件1部分旋轉(zhuǎn)情況下的7階矩和組合矩
選擇SVM作為分類器,就需要考慮核函數(shù)的問題.表3列出了不同核函數(shù)情況下的識別率,分別對比了多項式核函數(shù)、RBF核函數(shù)、兩層感知器核函數(shù)在提取組合矩特征情況下的識別率.從結(jié)果可以看出,對68張測試樣本,RBF對應(yīng)的核函數(shù)識別出了66張,在3類核函數(shù)中識別率最高,所以最終選擇了RBF作為分類器的核函數(shù).
以Matlab2012a作為軟件環(huán)境,提取工件的7個不變矩和組合矩作為識別特征,采用SVM作為分類器,對工件的識別結(jié)果進行了仿真.對SVM分類器的相關(guān)參數(shù)進行了設(shè)定,其中設(shè)定核函數(shù)為RBF核函數(shù),-g為0.0000000005,-c為10000000,采用一對一的分類方法,用SVM分別在不變矩和組合矩情況下提取的特征進行識別,最后得到7個不變矩階矩的識別率為82.3%,組合矩的識別率高達94.1%(表4).由此可知,此處提出的組合矩在工件的識別和分類中具有較明顯的分類優(yōu)勢.
表3 不同核函數(shù)情況下的識別率
表4 實驗結(jié)果
提取Hu不變矩和組合矩作為工件的識別特征,利用SVM作為分類器分別對提取的兩類特征進行分類.分析實驗結(jié)果可知,用組合矩代替Hu不變矩作為工件的特征進行識別,不僅降低了工件識別的特征維數(shù),減少了運算復(fù)雜度,而且提高了識別率.
從實驗結(jié)果可以看到,盡管利用組合矩作為特征的識別率達到了94.1%,但是68個測試樣本中還存在4個樣本沒有識別出來,經(jīng)過進一步的相關(guān)實驗得出工件沒有完全得到識別的原因主要是實驗中的樣本都是多次使用的工件,表面形成了缺陷區(qū)域,使得工件之間特別是相似的工件之間,在進行預(yù)處理之后,提取的組合矩特征不能精確標(biāo)識工件的特征,影響了工件的分類精度.在以后的研究中,還要繼續(xù)優(yōu)化工件提取的特征,進一步提高工件的識別率.
[1]HU M K.Visual Pattern Recognition by Moment Invariants[J].IEEE Transactions Theory,1962,8(2):179-187
[2]楊帆.數(shù)字圖像處理與分析[M].北京:北京航空航天大學(xué),2010
[3]VAPNIK V.The Nature of Statistical Learning Theory[M].New York:springer-verlag,1995
[4]張錚,倪紅霞,苑春苗,等.精通Matlab數(shù)字圖像處理與識別[M].北京:人民郵電出版社,2013
[5]李盼池,許少華.支持向量機在模式識別中的核函數(shù)特性分析[J].計算機工程與設(shè)計,2005,26(2):302-304
[6]奉國和.SVM分類核函數(shù)及參數(shù)選擇比較[J].計算機工程與應(yīng)用,2011,47(3):123-124
[7]匡遜君,趙文倩,李明富.基于圖像不變矩和SVM的機械零件分類識別[J].制造業(yè)自動化,2012,34(8):65-68
[8]付立思,劉朋維,李丹丹.一種改進的不變矩特征與物體識別[J].計算機工程與應(yīng)用,2012,48(31):183-185
[9]田麗,曹安照,王蒙,等.基于SVM和神經(jīng)網(wǎng)絡(luò)組合預(yù)測模型物流需求預(yù)測[J].重慶工商大學(xué)學(xué)報:自然科學(xué)版,2012,29(9):61-64
Research on the Application of SVM and Combined Moment in Mechanical Parts Recognition
ZHOU Wei-feng,JIANG Juan-juan,LIN Yuan-sheng,XU Gang
(Anhui Provincial Lab of Detection Technology and Energy Saving Devices,Anhui Polytechnic University,Wuhu 241000,China)
To solve the problem of mechanical parts recognition in the factory,a method of applying Support Vector Machine and combined moment to recognize mechanical parts is proposed.By extracting the Hu invariant moment of the image,combining the first and second moments into φ12,combining the third and fourth moments into φ34,combining the fifth and sixth moments into φ56,and ignoring the seventh momentφ7,the new method is constructed.The improved algorithm reduces feature dimension and recognition time,and at the same time improves recognition accuracy.The experiment comparing classification effect of the two methods shows that the recognition rate of the method extracting Hu invariant moments as features is 82.3%,while the recognition rate based on the combined moment as features is 94.1%which is higher than the former.
SVM;Hu invariant moments;combined moment;artifacts taxonomy
TP18
A
1672-058X(2015)04-0078-07
10.16055/j.issn.1672-058X.2015.0004.018
2014-10-11;
2014-10-29.
2014年安徽省教育廳自然科學(xué)研究項目(PCNN-SOFM神經(jīng)網(wǎng)絡(luò)在工業(yè)機器人目標(biāo)識別中的應(yīng)用);2013年安徽工程大學(xué)優(yōu)秀青年人才基金項目(2013RZR009).
周偉峰(1990-),男,安徽亳州人,碩士生,從事控制科學(xué)與工程的研究.