摘要:目標圖像輪廓編碼算法是一種圖像輪廓特征提取的二次轉(zhuǎn)換算法模型,具有較好的穩(wěn)定性和有效性。本文采用該輪廓編碼算法結(jié)合BP網(wǎng)絡,提出一種圖像目標識別方法。算法能大大減少樣本圖像所需數(shù)量,僅需要一個樣本圖像即可準確快速地識別出與其一致的目標圖像,識別率高達100%,在計算速度、抗干擾能力與數(shù)據(jù)存儲上都優(yōu)于傳統(tǒng)的識別方法。
關鍵詞:輪廓編碼;目標識別;圖像識別;編碼鏈
中圖分類號:TP391.41;O157.5 文獻標識碼:A 文章編號:1672-9129(2020)06-0069-03
Abstract:Targetimagecontourcodingalgorithmisasecondarytransformationalgorithmmodelforimagecontourfeatureextraction,whichhasgoodstabilityandeffectiveness.Inthispaper,thecontourcodingalgorithmcombinedwithBPnetworkisusedtoproposeanimagetargetrecognitionmethod.Thealgorithmcangreatlyreducethenumberofsampleimages,andonlyonesampleimageisneededtoaccuratelyandquicklyidentifythetargetimageconsistentwithit.Therecognitionrateisupto100%,whichissuperiortothetraditionalrecognitionmethodsincomputingspeed,anti-interferenceabilityanddatastorage.
Keywords:contourcoding;Targetrecognition;Imagerecognition;Chaincode
相對于經(jīng)典的圖像識別算法而言,基于輪廓的識別方法可大大減少計算時間,相比于圖像區(qū)域的識別而言,基于圖像輪廓邊界的識別方法具有顯著的優(yōu)勢,其更容易融合進其它的數(shù)值分析技術,如傅立葉變換、小波分析、多尺度分形、神經(jīng)網(wǎng)絡等,還可以定量的將邊界輪廓信息進行再處理,得到目標圖像的二次特征信息。本文首先對目標圖像輪廓編碼算法和BP網(wǎng)絡進行簡要分析,再采用目標圖像輪廓編碼算法結(jié)合BP網(wǎng)絡方式,提出一種圖像目標識別方法,并通過實驗以能突出輪廓編碼算法優(yōu)勢的機械工件識別為例分析該目標識別方法的優(yōu)點和抗干擾性能。
1目標圖像輪廓編碼算法
目標圖像輪廓編碼算法①,是基于水平集模型提取圖像的特征輪廓進行編碼,有效地提取了圖像邊界的本質(zhì)信息,且通過將圖像旋轉(zhuǎn)的方式,將分割所得圖像的邊界輪廓進行特定的編碼。該算法主要是將獲取得到的目標圖像邊界坐標信息,進行一定的圖像轉(zhuǎn)換進而提取出目標圖像的輪廓信息矩陣,不但在編碼作用上、編碼速度及編碼思想上與傳統(tǒng)的編碼算法不一樣,而且在圖像輪廓特征提取的二次轉(zhuǎn)換上具有獨特的作用,能夠從多角度提取挖掘出圖像邊界輪廓的信息。該目標圖像輪廓編碼算法流程步驟分別如下:
步驟1,基于圖像分析模型獲取得到目標圖像的邊界信息,分別為(x,y)系列坐標。
步驟2,將步驟1得到的輪廓邊界的坐標值分別歸一化在[1,255]之間,剔除圖像因絕對相像素點不同造成的影響。
步驟3,將步驟2得到的輪廓矩陣數(shù)據(jù)轉(zhuǎn)換成uint8格式,便于后續(xù)計算處理。
步驟4,將步驟3得到的輪廓矩陣進行灰度化,并將其轉(zhuǎn)換成圖像邊界的編碼矩陣。
步驟5,將步驟4得到的圖像邊界編碼矩陣通過設定相應的閾值進行二值化。
步驟6,為了將圖像邊界編碼矩陣與其它模型算法結(jié)合,將步驟5得到的二值化編碼矩陣進行排列編碼,其排列編碼方式可以為橫向、列向及斜向。最后繪制出相應的編碼鏈。其中,橫向編碼是將二值化后的編碼矩陣的每一行全部按先后順序轉(zhuǎn)化為一行。列向編碼是將編碼矩陣的每一列全部按照先后順序轉(zhuǎn)化為一行。斜向編碼是將編碼矩陣的每一對角線數(shù)據(jù)由右上角至左下角依次全部轉(zhuǎn)化為一行。
2BP神經(jīng)網(wǎng)絡
D.E.Rumelhart和J.L.McCelland為主的研究小組在1986年第一次提出BP(BackPropagation)神經(jīng)網(wǎng)絡,是目前人臉表情識別技術中使用最廣泛的人工神經(jīng)元網(wǎng)絡。BP算法將學習過程劃分為正向傳輸信號和逆向傳輸誤差兩個過程。信號傳輸環(huán)節(jié)中,輸入層每個節(jié)點獲取信號的輸入,信息通過中間層處理后就傳輸?shù)捷敵鰧用總€節(jié)點來處理,全部完成后通過輸出層得到處理后的結(jié)果。如果結(jié)果不滿足預期的輸出時,就會進到誤差傳輸環(huán)節(jié)。這個環(huán)節(jié)中誤差按照某種形式從傳輸層出發(fā)傳輸?shù)诫[層以及輸入層,傳輸過程中對每層的所有單元的權限進行修改,保證誤差可以梯度式的降低。這樣的正向傳輸信號和逆向傳輸誤差的環(huán)節(jié)會不斷往復,一直到網(wǎng)絡得到的誤差控制在預期的范圍中。信號和誤差傳遞的環(huán)節(jié)中,每一層權值不斷的調(diào)節(jié)過程就是神經(jīng)網(wǎng)絡學習訓練過程。標準BP網(wǎng)絡的結(jié)構(gòu)包含輸入層、隱層以及輸出層。輸入向量為X=(x1,x2,…,xn)T,隱含層的輸出向量為Y=(y1,y2,…,yn)T。輸出層的輸出向量為O=(o1,o2,…,ok)T,期望輸出向量為:d=(d1,d2,…,dk)T。vij表示輸入層第i個節(jié)點與隱層第j個節(jié)點的權值,wij表示隱層第i個節(jié)點與輸出層第j個節(jié)點的權值[1]。
對于輸出層:
對于隱含層:
當網(wǎng)絡輸出與期望輸出不相符時,存在的輸出誤差用E表示:
如果輸出誤差E不符合既定的ε或迭代次數(shù)低于預定的值時,按照一定的規(guī)則來調(diào)整各層權值vij和wij從而降低誤差E,一直到E低于ε或者和達到指定的迭代次數(shù)。將此時的權值和閾值固定下來,完成網(wǎng)絡的學習環(huán)節(jié)。BP算法的流程描繪如下:
步驟1,初始化每個神經(jīng)元的權值和閾值,輸入訓練樣本和對應的預期輸出。
步驟2,得到隱層和輸出層中每個神經(jīng)元的輸入與輸出。
步驟3,計算得到網(wǎng)絡的輸出誤差和每層的誤差信號。
步驟4,修正各層神經(jīng)元權值及閾值。
步驟5,計算網(wǎng)絡誤差,若誤差達到精度要求,訓練結(jié)束,否則返回步驟2。
通過圖像預處理、特征提取等等準備工作后,設計一個分類器,對輸入的特征進行分類,實現(xiàn)對圖像目標的識別。BP神經(jīng)網(wǎng)絡應用在機械工件識別中,通常使用標準的三層架構(gòu),利用Purelin線性函數(shù)作為隱層到輸出層的激活函數(shù),輸入層到隱層的激活函數(shù)采用Sigmoid函數(shù)。隱層節(jié)點的數(shù)量按照經(jīng)驗公式(4)來設定。
式中,m為輸出節(jié)點的個數(shù),n為輸入節(jié)點的個數(shù),a為1~10之間的常數(shù)。
3基于輪廓編碼融合BP網(wǎng)絡的圖像目標識別實驗分析
本節(jié)所有的實驗,均在IntelI7-4712HQ2.30GHzCPU,NVIDIA610M顯卡,8GB內(nèi)存和MATLABR2011b實驗環(huán)境下完成。
3.1識別模型的建立及分析。由于目標圖像輪廓編碼流程對于圖像旋轉(zhuǎn)所得的編碼匹配較差,或者說對于圖像旋轉(zhuǎn)后的識別能力較弱。因此為了克服該編碼鏈所存在的缺點,針對性的需要對圖像進行旋轉(zhuǎn)校正后,才能進行其圖像邊界輪廓的編碼。故輪廓編碼鏈與模式識別模型之間的橋梁就是圖像的校正。由于BP神經(jīng)網(wǎng)絡所具有的特點,同時為了后續(xù)模型的比較,這里選取的模式識別模型系統(tǒng)以BP神經(jīng)網(wǎng)絡為核心。故本文所設計的目標圖像輪廓編碼與神經(jīng)網(wǎng)絡模型融合的圖像識別實驗,選擇的識別對象是各種比較相似的不同機械工件,其流程步驟如下(見圖1):
步驟1,模板圖像的旋轉(zhuǎn)。本文主要利用霍夫變換檢測圖像的輪廓直線部分。通過旋轉(zhuǎn)圖像,將模板圖像與待識別圖像統(tǒng)一方向。該步驟主要為了后續(xù)圖像分割所得的輪廓邊界編碼鏈進行預處理。
步驟2,模板圖像的分割與圖像輪廓的提取。本文基于LCV模型進行分割圖像,并提取出圖像的邊界輪廓,為后續(xù)邊界輪廓編碼使用。
步驟3,模板圖像輪廓的編碼。將步驟2得到的輪廓邊界采用本文提出的特征編碼處理方式進行整理。
步驟4,待識別的圖像旋轉(zhuǎn)。該步驟與模板圖像旋轉(zhuǎn)步驟一致。
步驟5,待識別圖像的分割與圖像輪廓的提取。該步驟與模板圖像的分割與圖像輪廓的提取一致。
步驟6,待識別圖像輪廓的編碼。該步驟與模板圖像輪廓的編碼步驟一致。
步驟7,將步驟6獲得的各類型圖像編碼特征作為BP神經(jīng)網(wǎng)絡的輸入信息,從而訓練BP網(wǎng)絡,得到智能化識別的神經(jīng)網(wǎng)絡模型。最后將訓練好的BP神經(jīng)網(wǎng)絡模型對其它測試圖像進行識別。
本文以各種比較相似的不同工件為例進行算法的識別分析。其各種工件圖像如下圖1所示。其通過霍夫變換獲取的兩水平方向的校正模板圖像及編碼鏈結(jié)果分別如下圖2與圖3所示:
由于以上圖像類別數(shù)較少,故采用橫向編碼的方式進行編碼。且編碼參數(shù)設定為統(tǒng)一圖像像素為20*50大小,閾值系數(shù)為0.9。其中通過以上的各圖像編碼鏈已經(jīng)可以看出各類圖像的編碼鏈存在較大的差異。將以上8條編碼鏈作為BP神經(jīng)網(wǎng)絡的輸入信息。并以A,B,C,D類作為網(wǎng)絡最終識別的輸出信息,其中網(wǎng)絡設定的訓練參數(shù):第一層節(jié)點數(shù)1000個,第二層節(jié)點數(shù)50個,網(wǎng)絡目標誤差1.0*e-8,網(wǎng)絡訓練函數(shù)trainrp;網(wǎng)絡收斂結(jié)果參數(shù):網(wǎng)絡訓練數(shù)21次,網(wǎng)絡訓練時間9秒,網(wǎng)路收斂誤差1.26*10-8,網(wǎng)絡擬合優(yōu)度為1。
將以上訓練好的智能系統(tǒng)用于圖像識別,其中針對103個工件樣本的識別情況為:正確識別參數(shù)為103,錯誤識別0個,識別率達到了100%。
其中將本文的識別算法在MPEG與PLANE數(shù)據(jù)庫的圖像識別結(jié)果,并與文獻[2]給出的其它幾個比較主流的識別模型算法進行比較。其結(jié)果如下表1所示:
表1幾種識別方法在MPEG與PLANE數(shù)據(jù)庫的識別率
FD+SVMZM+SVMHMME+MLHMMC+MLHMME+WtL本文方法
MPEG數(shù)據(jù)庫94.29%92.14%80.00%92.14%97.62%98.47%
PLANE數(shù)據(jù)庫99.52%89.05%78.52%99.05%99.05%99.52%
3.2識別模型的抗干擾分析。為了說明圖像邊界輪廓的編碼與神經(jīng)網(wǎng)絡算法相融合的圖像識別能力。針對性地對其進行部分干擾識別的分析。其中重點討論待識別的圖像存在嚴重的噪聲干擾的識別效果。
當圖像存在噪聲時,往往全局像素的編碼鏈方式基本全部失效。因為圖像的噪聲已經(jīng)是圖像像素的一部分。故識別出圖像的可能性基本沒有。
然而對于輪廓邊界的編碼鏈方式進行圖像的識別過程。其關鍵的一步是能提取出圖像的關鍵邊界輪廓。也就是說,當噪聲存在時,只要能得到圖像的輪廓邊界,則問題便可以解決。然而對于圖像的輪廓邊界的獲取,水平集模型中的LCV模型能夠有較好的抗噪聲能力。因此,對于含有噪聲的圖像識別,依然可以完美的進行。以下通過含有高斯噪聲的圖像識別實驗,其結(jié)果如下圖4所示:
圖4人工添加噪聲后的圖像識別。(a)待識別原圖像。(b)圖像校正及LCV模型分割邊界結(jié)果。(c)所獲取圖像的邊界輪廓。(d)輪廓邊界編碼的鏈結(jié)果。
將以上含有人工噪聲圖像所得到的輪廓邊界編碼鏈作為神經(jīng)網(wǎng)絡的輸入。其檢驗結(jié)果如下圖5所示:
由圖5含高斯噪聲的圖像識別測試實驗我們可以看出,只要提取出工件圖像的輪廓邊界,并以橫向編碼方式得到其編碼鏈作為神經(jīng)網(wǎng)絡的輸入信息,網(wǎng)絡對于圖像的識別結(jié)果均正確。故本文的圖像輪廓編碼鏈融合神經(jīng)網(wǎng)絡的圖像識別對與含有噪聲的圖像依然能夠進行識別。
4總結(jié)
通過以上針對性的分析,我們可以得出,本文的圖像輪廓編碼融合神經(jīng)網(wǎng)絡模型的圖像識別效果存在以下三個優(yōu)點:
第一,由于將圖像經(jīng)過校正后獲取其邊界輪廓并進行了編碼,故算法整體所需的樣本數(shù)量僅僅只需要一個,完全改善了傳統(tǒng)的圖像識別算法所需的樣本數(shù)量大的缺點。
第二,對于圖像全局像素神經(jīng)網(wǎng)絡模型的圖像識別方法,本文將圖像輪廓編碼與神經(jīng)網(wǎng)絡算法相融合完美地改善了模型的魯棒性及計算速度。
第三,對于傳統(tǒng)的圖像匹配算法,往往當圖像含有較為嚴重的噪聲時,圖像識別能力大大下降。而本文的識別算法關鍵的一步是能提取出圖像的輪廓,也就是說,即使噪聲存在時,只要能得到圖像的輪廓邊界,則問題便可以解決。而水平集模型中的LCV模型能夠有較好的抗噪聲能力。故針對含有噪聲的圖像識別,依然可以完美的進行。
采用本文的目標識別方法,僅僅只需要一個該類型模板圖像,便可識別出與之一樣的圖像類型。圖像模板數(shù)量大大減小,不但提高了識別過程的速度,更加使得識別過程得以高效率高精確度地進行。同時通過針對不同圖像的邊界輪廓的特定編碼,可以使得不同圖像在任意的方向與角度,或者多單元組合的圖像中依然得以識別。即識別過程的抗干擾能力較強。
注釋:
①孟思明,一種創(chuàng)新的目標圖像輪廓編碼算法研究,廣州,2016
參考文獻:
[1]XiaojuanWang,YanpingBai,BPNetworkBasedonHandwrittenDigitalImageFeatureExtraction,AdvancesinAppliedMathematics,03(2),104~111,2014
[2]NinadThakoor,JeanGao,SungyongJung,HiddenMarkovModel-BasedWeightedLikelihoodDiscriminantfor2-DShapeClassification,IEEETransactionsonIamgeProcessing,16(11),2707~19,2007