郎 俊,白國振,周 媛
(上海理工大學(xué) 機(jī)械工程學(xué)院,上海 200093)
圖像邊緣檢測算法的研究一直是圖像處理方面的重點(diǎn)關(guān)注對象。相對于傳統(tǒng)的邊緣檢測算子,人工神經(jīng)網(wǎng)絡(luò)對于處理復(fù)雜的環(huán)境信息、模糊的背景知識和推理規(guī)則的分類具有較好的優(yōu)越性。因而用神經(jīng)網(wǎng)絡(luò)實現(xiàn)邊緣特征的分類,從而實現(xiàn)圖像的邊緣檢測的方法引起了人們的關(guān)注。文獻(xiàn)[1]提出一種四元數(shù)和自組織神經(jīng)網(wǎng)絡(luò)(SOM)相結(jié)合的邊緣檢測算法,該算法提取的輪廓還保留有部分噪聲[1]。文獻(xiàn)[2]提出一種神經(jīng)網(wǎng)絡(luò)與模糊算法相結(jié)合的檢測方法[2],文獻(xiàn)[3~4]提出了利用PCA結(jié)合LVQ的方式實現(xiàn)目標(biāo)物體的分類[3-4],文獻(xiàn)[5]提出一種相似性度量函數(shù),判斷特征的相似度[5],文獻(xiàn)[6]利用遺傳算法實現(xiàn)初始值優(yōu)化[6]。
本文通過圖像中像素的中值特征向量、方向信息特征向量和Krish算子方向特征向量構(gòu)建像素的特征向量(3×1的輸入矩陣),作為神經(jīng)網(wǎng)絡(luò)的輸入,再利用改進(jìn)的GLVQ神經(jīng)網(wǎng)絡(luò)(MGLVQ)對圖像中的像素進(jìn)行分類,實現(xiàn)目標(biāo)邊緣輪廓的提取。
設(shè)有一組n個樣本,特征空間為p維,即x∈Rp其分布密度f(x)是不隨時間變化的。用i表示獲勝單元(最佳匹配單元)的標(biāo)號,定義如式(1)所示,損失函數(shù)以衡量獲勝神經(jīng)元權(quán)值與輸入向量x之間的歐式距離的誤差值(c為類別數(shù))。
(1)
式中uir是一組權(quán)重,在競爭層神經(jīng)元權(quán)值的學(xué)習(xí)過程中,每次權(quán)值wr的更新,由隸屬度函數(shù)ur根據(jù)輸入向量X定義每個神經(jīng)元損失函數(shù)的值,從而使得每個神經(jīng)元的權(quán)值更新值不同。損失函數(shù)往往對獲勝神經(jīng)元有所限定,是對于輸入向量X的獲勝神經(jīng)元的權(quán)值,即與輸入向量X的歐式距離最小,其隸屬度函數(shù)定義如式(2)所示[7]。
(2)
其主要目的是找到c個中心wr,使得損失函數(shù)LX的期望值E(W)達(dá)到最小。
(3)
當(dāng)f(x)未知時,使用LX在樣本上的均值R(W)代替E(W),如式(4)所示。
(4)
為使均值R(W)達(dá)到最小,采用梯度下降法解決該尋優(yōu)問題,此時用在每一樣本上的局部梯度作為修正的方向[8]。對LX作必要的數(shù)學(xué)推導(dǎo)如式(5)。
(5)
求梯度時分兩種情況:對于獲勝單元其梯度如式(6)所示。
(6)
(7)
對于其他單元Vj(j≠i)時,其梯度如式(8)所示。
(8)
把式(5)和式(7)代入權(quán)值學(xué)習(xí)策略中得出如式(8)和式(9)的權(quán)值更新規(guī)則。
(9)
(10)
競爭層神經(jīng)元的初值對GLVQ算法的最后收斂結(jié)果無影響,在GLVQ權(quán)值的學(xué)習(xí)過程中,每次輸入向量X,會對競爭層每個神經(jīng)元的權(quán)值進(jìn)行更新,使得各個神經(jīng)元的數(shù)據(jù)充分利用[9-10]。GLVQ神經(jīng)網(wǎng)絡(luò)對獲勝神經(jīng)元的學(xué)習(xí)具有好的性能,但對于其他神經(jīng)元的學(xué)習(xí)性能不穩(wěn)定,從而在實踐中的分類效果不理想。針對該問題提出如下的改進(jìn)算法。
A.I.Gonzalez和M.Graiia[11]提出對于GLVQ神經(jīng)網(wǎng)絡(luò),集群和輸入向量空間的大小對其聚類效果有著很大的影響,而損失函數(shù)的選取則是導(dǎo)致這種不理想結(jié)果的主要原因。
為了體現(xiàn)出獲勝神經(jīng)元與失敗神經(jīng)元的歐式距離的關(guān)系,在本算法中的采用獲勝神經(jīng)元與失敗神經(jīng)元的歐式距離比值,作為該神經(jīng)元損失函數(shù)的自變量如式(11)所示。
(11)
Karayiannis 和 Pai 提出了隸屬度函數(shù)的選用規(guī)則[12]。(1)整個數(shù)據(jù)集的比例不變;(2)獲勝神經(jīng)元的隸屬度函數(shù)值為1;(3)非獲勝神經(jīng)元的隸屬度函數(shù)值在0~1之間;(4)如果該是非獲勝神經(jīng)元并且其與輸入向量的歐式距離很大,則其隸屬度函數(shù)值趨于0。利用這些規(guī)則定義的隸屬度函數(shù)確定競爭層神經(jīng)元的權(quán)重更新差值,可以提高競爭學(xué)習(xí)矢量化算法的穩(wěn)定性。
(13)
則0 (13) (14) 對獲勝神經(jīng)元,損失函數(shù)梯度為 (15) 對未獲勝的神經(jīng)元,損失函數(shù)梯度為 ΔvL(wj)=-2(x-wj)N2exp(-N) (16) 由于GLVQ神經(jīng)網(wǎng)絡(luò)的權(quán)值初值對其最終收斂結(jié)果無影響,所以在使用GLVQ神經(jīng)網(wǎng)絡(luò)進(jìn)行分類時,一般采用隨機(jī)值或樣本均值作為權(quán)值初始值。MGLVQ對于其初值比較敏感,所以為了得到合適的初值,需要對初值進(jìn)行尋優(yōu)[13]。人工魚群算法由于其有較快的收斂速度,在精度要求不高的情況下,可使用它快速得到可行解,所以在本文中選用人工魚群優(yōu)化算法對其初值進(jìn)行尋優(yōu)[14-15]。 將人工魚群算法用于連續(xù)空間向量的數(shù)據(jù)分類時,需要對人工魚進(jìn)行編碼、人工魚之間的距離及其鄰居、和聚類中心的定義。在算法中人工魚編碼直觀的表現(xiàn)出了具體的參數(shù)信息,定義Fish(x1,x2,x3,C)為人工魚編碼,其中x1,x2,x3為人工魚的特征屬性,其具體編碼形式見表1,C為其類別屬性,C的取值為1或0。 表1 人工魚編碼 兩個人工魚之間的距離表示著兩者的特征差異,參照LVQ神經(jīng)網(wǎng)絡(luò)中競爭層神經(jīng)元與權(quán)值之間的特征比較,人工魚之間的距離采用歐式距離表示,如式(17)所示。 (17) 其中,i,j示兩個不同的人工魚,xik-max表示第i個人工魚的第k個特征屬性的上界;xik-min表示第i個人工魚的第k個特征屬性的下界。 通過歐式距離定義人工魚的鄰域 n(i,f)={r|d(i,r) (18) 其中r代表鄰域內(nèi)的其他個體;f代表鄰域距離;G代表整個魚群。 聚類中心采用人工魚聚群的中心位置,在該算法中分別取所有人工魚的特征值上下界的平均值。 (19) n代表人工魚聚群中的人工魚數(shù)目[12-14]。其中適應(yīng)度函數(shù)定義如式(20)所示 F(x)=a×s+(1-a)×k (20) 其中系數(shù)a取值(0,1),s表示正確分類的個體數(shù)目占種群中個體總數(shù)的比例,k表示一條規(guī)則能將個體正確分類的概率。 (1)給定一組未標(biāo)號的數(shù)據(jù)X={x1,x2,…,xn},類別數(shù)c,迭代次數(shù)T,允許誤差ε; (2)對人工魚進(jìn)行編碼生成初始魚群,通過數(shù)據(jù)采樣提取魚群的訓(xùn)練數(shù)據(jù)集; (3)設(shè)置魚群的類別、步長以及可視范圍,并使魚群通過覓食、追尾、聚群等行為獲取權(quán)值初始值; (4)根據(jù)適應(yīng)度函數(shù)計算其適應(yīng)度值,進(jìn)行規(guī)則評價,如果不滿足終止條件,則繼續(xù)進(jìn)行覓食、追尾、聚群等行為,最終獲得權(quán)值初始值W0; (5)對t=1,2,…,T,初始學(xué)習(xí)步長a0計算 (21) 對于K=1,2,…,n,找出滿足式(22)的神經(jīng)元權(quán)值。 ‖xk-wi,t‖=min{‖xk-wi,t-1‖} (22) 通過式(23)和式(24)修正所有權(quán)向量{wr,t}。 獲勝神經(jīng)元權(quán)值修正 (23) 未獲勝神經(jīng)元權(quán)值修正 wr,t=wr,t-1+at(x-wi)N2(exp(-N)]),r≠i (24) (6)通過式(25)計算權(quán)值的學(xué)習(xí)前后誤差。 (25) 若式(25)中計算得Et小于閾值則停止;否則,對下一個t重新計算,直到滿足條件; (7)通過步驟5得到合適的權(quán)值之后,計算最近標(biāo)本下對輸入向量X進(jìn)行c種劃分。獲勝神經(jīng)元對應(yīng)向量值為1,其余為0。 (26) 圖1 邊緣檢測流程圖 圖像的邊緣點(diǎn)是圖像中灰度突變的像素點(diǎn),相比于噪聲點(diǎn),邊緣點(diǎn)鄰域的灰度分布具有一定的特性,灰度值的突變具有方向性,灰度突變的像素在圖像中有一定的連續(xù)性。根據(jù)邊緣點(diǎn)鄰域的中值特征向量、方向信息特征向量、Krish算子方向特征向量構(gòu)建神經(jīng)網(wǎng)絡(luò)的輸入特征向量。 采用Robel算子對圖像進(jìn)行邊緣提取,以作為神經(jīng)網(wǎng)絡(luò)教師圖像,在教師圖像圖任意選取600個訓(xùn)練樣本,邊緣點(diǎn)和非邊緣點(diǎn)的比例為1:1,MGLVQ的主要結(jié)構(gòu)是3個輸入神經(jīng)元,4個隱含層神經(jīng)元,2個輸出神經(jīng)元,初始學(xué)習(xí)步長 為0.1。實驗采用經(jīng)典Lena灰度圖像作為測試圖像,圖3是經(jīng)典LVQ神經(jīng)網(wǎng)絡(luò)對其的邊緣提取,圖4為GLVQ神經(jīng)網(wǎng)絡(luò)的邊緣提取效果,圖5為MGLVQ的邊緣提取圖像。從圖3中可以看出,經(jīng)典LVQ神經(jīng)網(wǎng)絡(luò)的邊緣提取中存在邊緣斷裂、邊緣缺失等問題,而GLVQ神經(jīng)網(wǎng)絡(luò)圖像噪聲較多,使其邊緣提取效果不理想。如圖5所示,MALVQ神經(jīng)網(wǎng)絡(luò)即保證了邊緣的連續(xù)性,也大量減少了圖像中的噪聲,使得邊緣提取的效果更好。 圖2 灰度圖像 圖3 LVQ神經(jīng)網(wǎng)絡(luò) 圖4 GLVQ神經(jīng)網(wǎng)絡(luò) 圖5 MALVQ神經(jīng)網(wǎng)絡(luò) 表2中是對圖4和圖5的圖像邊緣點(diǎn)統(tǒng)計,原圖中共有65 536個像素,GLVQ神經(jīng)網(wǎng)絡(luò)提取了29 545個邊緣點(diǎn),MGLVQ提取18 727個邊緣點(diǎn),各占總像素比例的45.08%和28.58%。 表2 分類比例 表3為實驗結(jié)果中GLVQ神經(jīng)網(wǎng)絡(luò)和改進(jìn)算法的權(quán)值初始值和訓(xùn)練結(jié)束后聚類中心的對比。其中GLVQ初始值是由樣本均值得到,MGLVQ的初值是通過人工魚群算法尋優(yōu)而得。 表3 神經(jīng)網(wǎng)絡(luò)權(quán)值 實驗結(jié)果表明,MGLVQ不會出現(xiàn)對圖像邊緣過度提取的情況,從而使得邊緣提取能夠更好的保持邊緣細(xì)節(jié),同時減少圖像噪聲對邊緣的影響,增強(qiáng)了對其邊緣檢測的穩(wěn)定性,能夠得到較為理想的圖像輪廓。 (1)針對GLVQ神經(jīng)網(wǎng)絡(luò)損失函數(shù)的隸屬度函數(shù)不能應(yīng)出獲勝神經(jīng)元與失敗神經(jīng)元的歐式距離之間的關(guān)系,提出了改進(jìn)的隸屬度函數(shù),并通過人工魚群算法對神經(jīng)網(wǎng)絡(luò)權(quán)值進(jìn)行離線細(xì)調(diào),之后再通過梯度尋優(yōu)算法對權(quán)值進(jìn)行在線細(xì)調(diào); (2)從仿真分析可知,MGLVQ神經(jīng)網(wǎng)絡(luò)在去除噪聲方面明顯優(yōu)于GLVQ,同時針對GLVQ神經(jīng)網(wǎng)絡(luò)出現(xiàn)次數(shù)較多的錯誤分類(像素分類明顯不合理),使得圖像不能實現(xiàn)正確邊緣提取的情況。而MGLVQ神經(jīng)網(wǎng)絡(luò)能夠?qū)崿F(xiàn)更加準(zhǔn)確的分類,輪廓圖像中不存在大面積的白色區(qū)域。綜上,MGLVQ神經(jīng)網(wǎng)絡(luò)比GLVQ神經(jīng)網(wǎng)絡(luò)擁有更好的圖像邊緣細(xì)節(jié)提取能力,能夠得到質(zhì)量更好的邊緣輪廓圖像; (3)實驗證明MGLVQ在像素分類上,與GLVQ和LVQ神經(jīng)網(wǎng)路相比,MGLVQ能夠獲取比較完整的圖像輪廓,其在分類作用上效果顯著。所以MGLVQ神經(jīng)網(wǎng)絡(luò)可以作為一種分類算法應(yīng)用于人工智能、模式識別等領(lǐng)域。 [1] 王錚,李興民.基于四元數(shù)和SOM神經(jīng)網(wǎng)絡(luò)的彩色圖像邊緣檢測[J].計算機(jī)應(yīng)用,2012,32(2):510-513. [2] 賈超,鄒琪,姚芳,等.基于神經(jīng)網(wǎng)絡(luò)與模糊算法圖像邊緣檢測方法[J].計算機(jī)應(yīng)用研究,2008,25(11):3507-3508. [3] 胡帥,顧艷,曲巍巍.基于PCA-LVQ神經(jīng)網(wǎng)絡(luò)的教學(xué)質(zhì)量評價模型研究[J].河南科學(xué),2015(7):1247-1252. [4] 胡紅,曾恒英,梁海波,等.基于主成分分析和學(xué)習(xí)矢量化的神經(jīng)網(wǎng)絡(luò)巖性識別方法[J].測井技術(shù),2015,39(5):586-590. [5] 胡耀民,劉偉銘.面向特征數(shù)據(jù)范圍的泛化LVQ算法[J].模式識別與人工智能,2013,26(8):761-768. [6] 馬利克,彭進(jìn)業(yè),馮曉毅.遺傳算法優(yōu)化LVQ網(wǎng)絡(luò)的監(jiān)控視頻關(guān)鍵幀內(nèi)容識別[J].西北大學(xué)學(xué)報:自然科學(xué)版,2015,45(4):573-578. [7] Iwata H,Agui T,Nagahashi H.Boundary detection of color images using neural networks[J]. IEEE International Conference on Neural Networks,1995,3(1):1426-1431. [8] Uchiyama Y,Haseyama M,Kitajima H.Hopfield neural networks for edge detection[J].Circuits and Systems,2001,3(1):1012-1018. [9] 閆德勤,遲忠先,王軍.MLVQ網(wǎng)絡(luò)聚類算法[J]. 自動化學(xué)報,2004,30(4):608-612. [10] 張志華,鄭南寧,王天樹.廣義LVQ神經(jīng)網(wǎng)絡(luò)的性能分析及其改進(jìn)[J].自動化學(xué)報,1999,25(5):583-589. [11] Gonzalez A I,Graiia M,D’Anjou A.An analysis of the GLVQ algorithm[J].IEEE Transactions on Neural Networks,1995,6(4):1012-1026. [12] Nicolaos B Karayiannis,PinI Pai.Fuzzy algorithms for learning vector quantization[J].IEEE Transactions on Neural Networks,1996,7(5):1196-1210. [13] 戴上平,姬盈利,王華,等.基于多群協(xié)同人工魚群算法的分類規(guī)則提取算法[J].計算機(jī)應(yīng)用研究,2012,29(5):1675-1679. [14] 廖勝娟.基于人工魚群算法的MES車間動態(tài)調(diào)度問題研究[J].電子科技,2014,27(10):64-66. [15] 李家森,席志紅,趙彥青.北斗/INS組合導(dǎo)航中人工魚群粒子濾波的應(yīng)用[J].電子科技,2013,26(6):157-161.2.2 魚群算法尋優(yōu)獲取權(quán)值初值
2.3 MGLVQ算法步驟
3 實驗及分析
4 結(jié)束語