摘要:該文提出了一種飛機識別的方法,采用輪廓追蹤法去除大部分干擾項;用矩不變量的方法描述飛機的特征;對標準Bp網絡算法進行改進,使網絡訓練快速,誤差小,從而使整個系統具有識別過程迅速、穩定、準確率高的特點。
關鍵詞:輪廓追蹤;矩不變量;BP神經網絡
中圖分類號:TP183文獻標識碼:A文章編號:1009-3044(2009)14-3771-02
Plane Recognition Based on Moment Invariants and Neural Networks
ZHANG Ya-nan, YAO Guo-qing
(China University of Geosciences, Beijing 100083, China)
Abstract: This paper provides a kind of method to recognize plane. This method use contour tracking to eliminate much noise. And then, it use moment invariants to describe the feature of the plane. At last, this paper adopts Bp neural networks as its classifier. It has changed the standard Bp neural networks, making it training faster and decreasing residual, to make the whole recognition system recognize faster, more stable and more accurate.
Key words: contour tracking; moment invariants; BP neural networks
1 引言
目前,飛機的模式識別中,主要集中在特征提取和分類器的設計上。對預處理介紹較少。圖像預處理在飛機模式識別中占有重要地位,預處理結果的好壞直接影響著后期處理的效果。結合圖像中飛機的灰度和尺寸兩個條件,對已經進行灰度分割的二值圖像要再次進行尺寸上的分割,可以減少后期處理的干擾項,提高處理速度,減少復雜度。Hu最早提出矩概念[1],并證明了有關矩的平移不變性,比例不變性和旋轉不變性。本文中,采用輪廓追蹤方法對二值圖像進行分割,采用Hu提出的矩方法提取飛機的矩特征,將改進的Bp網絡作為分類器[2],進行飛機的自動識別。
2 圖像預處理
經過數據處理后,獲得了一個二值圖像,它僅在灰度值上區分了飛機與背景,并沒有利用在尺度上飛機與背景不同這一因素,所以有必要對二值圖像中的目標區域進行尺寸上的分析,去掉那些與飛機尺寸差別比較大的并且灰度與飛機相近的區域,進一步縮小要識別范圍,減少后繼處理的復雜度,提高識別精度。
根據目標區域的連通性,采用輪廓追蹤法[3],獲得目標區域所占矩形區域的大小,然后將其與事先設置的“過濾窗口”對比,將不符合要求的區域歸為背景,在尺寸上區分飛機與背景區域,對二值圖像進行分割。“過濾窗口”是這樣設定的,它有一個最大窗口和一個最小窗口,如果尺寸在兩者之間的就被認為符合要求,否則不符合要求。
使用輪廓追蹤法的最終目的是獲取連通區域所在矩形的大小,從而將不符合要求的前景區域劃為背景,縮小識別范圍。
具體步驟如下:
1)從左到右,從上到下掃描圖像;
2)如果遇到目標點,則用輪廓追蹤法追蹤輪廓,得到連通區域的大小。
3)判斷得到區域的大小是否符合條件,把不符合條件的區域歸為背景。
4)如果沒有掃描到圖像最后,則回到步驟(1)。
輪廓追蹤從圖像的左上角開始逐個像點掃描,當遇到邊緣點時則開始順序追蹤,直至追蹤的后續點回到起始點。這種邊界追蹤在處理圖像的時候,執行先后是有次序的,每一個像素的處理都是順序執行的,也就是后面的處理要用到前面的處理結果,前面的沒有處理完,后面的處理就不能進行。此算法對于邊界點的判斷要求精確,而且整個邊界連續無中斷,追蹤后產生的輪廓邊緣線寬度只有一個像素。
在完成連通區域的追蹤后,就可以知道該連通區域的大小,并進行相應處理了。
不斷執行上面的步驟,直到對整個二值圖像的都進行了處理。
經過上面的操作后,縮小了識別范圍,為后續處理做好了準備。
3 特征提取
經過上述圖像處理后,獲得了一個經過尺寸處理過的二值圖像。然后對目標區域提取矩不變量,作為識別飛機的特征向量。
矩方法[4]是一種經典的特征提取方法,這種方法適合于無遮擋目標的識別,采用矩方法提取的特征具有平移,旋轉,比例不變性,是目標識別的常用特征之一。平面幾何體的二維矩不變量理論最早是有Ming-KueiHu于1962年提出的。Hu證明了這一組變量對于圖像的平移、旋轉和大小比例變化均保持不變,這對于進行飛機識別無疑是很有效的。
設一個二值圖像,區域為R,假定它分段連續且有邊界,其密度分布函數為ρ(x,y)
(1)
則其中(p+q)階矩mpq定義為:
(2)
定義其(p+q)階中心矩μpq為:
(3)
其中,x=m10/m00,y= m01/m00。(x,y)又稱為物體的質量中心,或者直接表示的是一區域灰度中心的坐標。對于數字化二值圖像,設為M×N圖像,可用求和代替積分:
(4)
(5)
其中,i=m10/m00,j= m01/m00。
定義(p+q)階歸一化中心矩:
(6)
其中,r=(p+q)/2, p+q=2,3,…。
利用二階和三階中心矩與歸一化中心矩可導出7個矩:
M1=μ20+μ02(7)
(8)
(9)
(10)
(11)
(12)
(13)
上式中,未歸一化矩中1~6變量是矩不變量,它對平移、旋轉、比例變換均保持不變,而第七個變量是變化的,但歸一化矩組中7個變量對平移、旋轉、比例變換均保持不變。
經過分析,對反映圖像形狀特征的矩不變量中,矩M4~M7對分類貢獻很小,所以本文中選取M1~M3作為特征向量。因為未歸一化的矩不變量M1~M3的數值比較大,所以選取歸一化的矩不變量M1,M2,M3這三個特征。這三個特征對平移、旋轉、比例變換具有不變性。
4 分類器的設計
Bp神經網絡是一種分布式存儲模型,具有自學習,自組織和并行分布處理等特點,適用于飛機的模式識別。為了能夠識別飛機,BP網絡參數設置如下:①設置為3層,其中輸入層有3個節點,中間層有16個節點,輸出層有1個節點;②輸入層與中間層,中間層與輸出層之間的權值初始值設定為-1到1之間的隨機數;③中間層,輸出層的閾值初始值設定為0到1之間的隨機數;④神經元模型采用S型函數:f(x)=1/(1-e-x) ;⑤步長值的初始值設置為3。
對Bp網絡學習的一些改進:
1) 訓練樣本特征向量集合的歸一化。因為三個矩不變量代表的意義各不相同,各個量的大小量度也會不同,為了防止小數被大數淹沒,需要將樣本的特征向量歸一化。考慮到S型函數在[0,0.1]間和[0.9,1]間變化平坦,將訓練樣本的特征向量歸一到[0.1,0.9]間。
2) 權值修正。權值修正采用下面的公式:
(14)
式中Δω(l)ji(n)表示第 層第j個神經元與上一層第i個神經元之間的連接權的當前修改值。Δω(l)ji(n-1)表示上一個學習周期對同一個學習樣本的權值修改值。α是慣性系數,η是步長值,兩者有關。δ(l)pj(n)表示對p樣本l層第j個神經元的校正誤差。O(l-1)pi(n)表示對p樣本l-1層第i個神經元的輸出值。
3) 步長修正。將Bp網絡誤差定義為:
(15)
若Enet下降的很快,則說明步長值合適;若Enet出現震蕩,則說明步長值過大。通過判斷Enet的變化趨勢來相應的修正步長值:若Enet保持下降趨勢,則保持當前的步長;若Enet出現震蕩,則使步長值變為原來的90%,即:
η(n)=0.9×η(n-1) (當Enet(n)>Enet(n-1)時)(16)
4) 慣性系數修正。慣性系數α(n)=kη(n),其中k為預設值,在(0,1)內,設為0.3。
5) 防止陷入最小局部點設置。每次訓練后,都要判斷網絡的輸出值是否不再變化,如果不變化,再判斷輸出誤差是否符合要求,不符合的就重新訓練訓練網絡。當出現局部最有的情況時,表現出來的特征是:各權值收斂到某一穩定值,而誤差值卻不是最小。
(17)
網絡陷入局部最小值點的解決方法就是:從頭做起,重新開始訓練。
6) 理想輸出分量的設置。理想輸出值要在(0,1)內。
5 結束語
該文通過對二值圖像特殊處理,以圖像不變矩的平移不變性、旋轉不變性和比例不變性為依據,將不變矩作為識別特征,運用BP網絡進行識別,提出了一種基于矩不變量和神經網絡的飛機識別模型。本文的識別模型具有實現簡單、識別率搞、訓練速度與識別速度快、便于實時實現的特點,為飛機識別模型提供了一種新途徑。
參考文獻:
[1] 廖聞劍,成瑜.三維飛機自動識別的一種有效方法[J].航空學報,1998,19(6):730-735.
[2] 肖健華.智能模式識別方法[M].廣州:華南理工大學出版社,2006:38-45.
[3] 楊淑瑩.圖像模式識別-VC++技術實現[M].北京:清華大學出版社,2005:115-134,151-158.
[4] 李迎春,陳賀新,楊建波,等.基于矩不變的飛機識別算法[J].吉林大學學報,2002,20(3):16-19.