摘要:該文提出了一種利用不變矩和支持向量機(SVM)對圖像進行識別的方法。該方法提取圖像的7個不變矩作為特征矢量,對得到的特征量應用支持向量機進行圖像分類和識別。該文通過試驗驗證了此方法的有效性。
關鍵詞:不變矩;支持向量機;圖像識別
中圖分類號:TP391.41文獻標識碼:A文章編號:1009-3044(2010)11-2711-02
Image Recognition Based on Moment Invariant Feature and SVM
ZHOU Jie, ZHANG Heng
(Nanjing University of Information Engineering School of Electronics and Information Engineering,Nanjing 210044,China)
Abstract: Based on moment invariant feature and support vector machines,an efficient recognition method for image is proposed in this paper.Firstly,it extracts the six invariant moments as feature vectors,and the classification and recognition of image for the feature content acquired from that were performed by support vectors machine finally. Experiment result demonstrated that the method is effective.
Key words: moment invariant; support vector machines; image recognition
在進行識別圖像時,應具有的一個重要特性就是對圖像的平移、旋轉及比例變換具有不變性。一個最直觀的方法是要求圖像特征本身具有“不變性”,即盡可能尋求圖像本身的“不變性”特征。因此,不變性特征的研究一直是感知科學和計算機視覺的研究重點。Hu[1]定義的不變矩算法就是一種通過提取具有平移、旋轉和比例不變性的數學特征,從而進行圖像識別的方法。支持向量機(Support Vector Machines,SVM)方法能夠較好地解決小樣本,非線性,高維數等問題[2],對于圖像識別是一個較好的方法。本文提出了一種基于7個不變矩和SVM的圖像識別算法。
1 圖像的特征提取
特征提取是對模式所包含的輸入信息進行處理和分析,將不易受隨機因素干擾的信息作為該模式的特征提取出來,特征提取過程是去除冗余信息的過程,具有提高識別精度、減少運算量和提高運算速度的作用.良好的特征應具有可區分性、穩定性、獨立性以及數目小等特點。特征提取是圖像模式識別的基礎。
矩特征是利用力學中矩的概念,將區域內部的像素作為質點,而將像素的坐標作為力臂,并以各階矩的形式來表示區域形狀特征的一種矩描繪算子。
設物體的二維圖像用f(x, y)表示,那么其(p+q)階原點矩定義為
(1)
原點矩可提供圖像的豐富信息,是模式識別中常用的特征。由于矩提供了圖像的相同表示,圖像能從它的所有階矩中重構,因此每個矩系數傳遞了一定數量的圖像信息。
中心矩定義為
(2)
(其中,p,q=0,1,2,….,x0,y0為圖像的中心坐標, x0=m10/m00, y0=m01/m00)
直接用普通矩或中心矩進行特征表示,不能使特征同時具有平移、旋轉和比例不變性。如果利用歸一化的中心矩,則圖像的特征對平移、旋轉和比例變換均具有不變性。用零階中心矩對其余各階中心矩進行歸一化,可以得到圖像的歸一化中心矩
(3)
Hu定義了7種在平移、縮放和旋轉操作下不變的矩,這些不變矩是歸一化中心矩的組合。式(3)中,取p,q=0,1,2,3時,這7種不變矩定義如下:
p+q=2
m1=η20+η02
m2=(η20-η02)2+4η112
p+q=3
m3=(η30-3η12)2+(η03-3η21)2
m4=(η30+η12)2+(η03+η21)2
m5=(η30-3η12)(η30+η12)[(η30+η12)2-3(η21+η03)2]+(η03-3η21)(η03+η21)
m6=(η20-η02)[(η30+η12)2-(η21+η03)2]+4η11(η30+η12)(η03+η21)
m7=(3η21-η03)(η30+η12)[(η30+η12)2-3(η21+η03)2]+(η30-3η12)(η21+η03)[(η03+η21)2-3(η30+η12)2]
2 基于支持向量機的圖像識別
傳統的統計模式識別方法只有在樣本趨向于無窮大時,其性能才能有理論的保證,而實際應用中樣本總是有限的,人工神經網絡因為具有小樣本學習能力而得到了廣泛的應用,但是還存在問題,如局部極小點問題,過學習與次學習問題。SVM的最大特點是根據Vapnik的結構風險最小化原則,盡量提高學習的泛化能力,即由有限的訓練集樣本得到的小誤差仍能夠保證對獨立的測試集小的誤差。
要實現支持向量機的多類分類,首先要實現兩類分類。支持向量機的分類算法包括兩部分,支持向量機的訓練和支持向量機的分類。訓練的步驟包括輸入訓練樣本,選擇合適的核函數,確定核函數參數及乘法參數,執行訓練算法并求得最優拉格朗日乘子a*和偏差值b*。分類的步驟包括輸入待測樣品,利用訓練好的拉格朗日乘子a*,偏差值b*以及核函數,求解判別函數f(X), 根據sgn (f(X))的值,輸出類別。
多類分類算法就是在上述兩類分類的基礎上加以改造實現的。假定待識別的圖像有c類,記為S1,S2,…,Sc。設計c個上述二類分類器fi (i=1,2,…c).每一個fi用其中的一類樣本Si作為正樣本訓練,系統輸出sgn (f(X))為+1,而其它所有樣本Sj (i j)作為負樣本訓練,系統輸出sgn (f(X))為-1,最后將訓練結果保持在指定二維數組svmBuffer中。測試階段,依次計算測試樣本與上述訓練所得數組svmBuffer的每一個元素svmBuffer(i,j)的sgn (f(X))值,結果為+1則判為i類,i類計數器加1;結果為-1則判為j類,j類計數器加1。最后比較每一類的計數器里的值,將樣本判為取最大值的那一類。
3 實驗結果
3.1 實驗數據來源
本實驗應用圖像的7個不變矩特征來識別正方形,三角形,圓形,X形,L形,橢圓形6種圖像模式。分別以上述6種模式圖像及它們旋轉30°,45°,60°,90°,150°以及擴大1.2倍,1.5倍,2倍后的54幅圖像作為訓練樣本。以旋轉100°,120°,擴大1.8倍及其組合的30幅圖像作為檢測樣本。
3.2 識別檢測結果
在用SVM進行訓練和識別的時候選用的是最簡單的線性核函數(k
4 結束語
本文提取圖像的7個不變矩作為特征矢量,應用SVM方法對二值圖像進行了識別。由于支持向量機在構造判別函數時,先在輸入空間利用核函數比較向量,對結果再做非線性變換,使大的工作量在輸入空間而不是在高維特征空間中完成,大大減少了計算的工作量,使其對某些識別問題顯示出極大的優越性。識別結果表明該方法具有很好的識別效果,是一種有效的圖像識別方法。
參考文獻:
[1] Hu Ming-Kuei.Visual Pattern Recognition by Moment Invariants[J].IRE Transactions on Information Theory,1962:179-187.
[2] 邊肇祺,張學工.模式識別[M].2版.北京:清華大學出版社,2003:296-304.