劉佳敏,甘 屹,姚 俊
LIU Jia-min1 , GAN Yi1 , YAO Jun2
(1.上海理工大學 機械工程學院,上海 200093;2.上海電氣集團中央研究所,上海 200070)
隨著對機械零件表面加工要求的不斷提高,計算機視覺檢測作為一種產品質量控制的重要手段也得到了飛速發展。針對表面傷痕比較尖利這一形狀特征,文獻[1]用Harris角點作為標記點標記缺陷位置,再利用灰度信息濾除偽標記點,最后提取出缺陷處圖像。但在Harris角點檢測算法[2~4]中,經驗常數k值的選取是算法能否取得較好的實驗結果的關鍵。文獻[1]對角點檢測算法沒有進行優化,無法減小響應函數的不穩定性,對實驗結果會有干擾。本文提出先對角點檢測算法進行優化,再利用優化后的角點檢測對熱軋帶鋼[5]進行在線檢測,對得到的質量信息進行圖像處理[6]進而分析產品缺陷,為產品的在線檢測提供參考,對提高產品生產效率、保證生產質量、調整生產工藝和設備有重要意義。
Harris角點檢測方法[7]認為,一幅圖像的像素點在任意方向上的灰度變化量都能夠通過微分運算反映,因此可以區分出角點。設以像素點(x,y)為中心的高斯窗口分別在x方向和y方向上的移動位移為u,v個單位,Harris給出的灰度變化量為:

其中,I(x,y)為像素點的灰度函數,wx,y為高斯窗口函數,主要用于對圖像進行降噪,一般定義wx,y為:

公式(1)可近似表示成泰勒多項式形式:

?表示卷積。
將Eu,v(x,y)化為二次型,令M化為實對稱矩陣有:

其中,公式(4)中M為實對稱矩陣:

對公式(4)進行對角化處理可得:

其中,R為旋轉因子,其特征值 λ1和 λ2分別反映了x方向和y方向上的圖像表面曲率。只有當 λ1和 λ2都比較大時且為基本相等的正數時,意味著該點在任意方向上的灰度值都發生了劇烈變化,表明這個點可能為角點。
此外,Harris還定義角點響應函數CRF為:

其中,detM為矩陣M的行列式,trM為矩陣的跡,且trM=λ1+λ2,K為大于零的經驗參數值,滿足CRF值大于預設定的閾值時,當前像素點則為角點。然而選取不同的k值,與之對應的也會有不同的檢測效果,需要不斷的調試程序直到k值取得一個對整體實驗效果都較好的值時,實驗才會取得令人滿意的檢測結果。
針對以上不足,由Harris角點檢測原理可以得出,λ1≈ λ2> 1時為角點,得:

由式(8)和式(9)可推導出:

式(10)為優化的角點檢測算法,避免了經驗參數k值對檢測的影響,同時也避免了公式(1)中的極小值的選取,減少了響應函數的不穩定性。
由式(10)可知,當位于圖像的邊緣區域和平坦區域的時候CRF(x,y)都小于零,只有當其是角點的時候,CRF(x,y)才大于零。
根據實驗條件,本文選取熱軋帶鋼表面常見的三種缺陷作為檢測對象。在工況下,熱軋帶鋼的溫度接近于鍛件的高溫,所處環境惡劣。一般的檢測方法不適用這種情況。
熱軋帶鋼常見的三種缺陷分別為輥印(Roll marks)、紅銹(Red scale),邊部氣割缺陷(Craters)。為了檢測這幾種缺陷,將LED燈光源調至適中,CCD相機拍攝素材圖像,運用OpenCV進行特征提取[8,9]。對剪切拍攝的素材圖像進行裁剪處理,選取有缺陷的部分表面圖像,依據圖像處理的基礎理論知識進行處理。在圖像處理中,Canny算法給出了判斷邊緣提取方法性能的指標,是圖像處理的經典算法之一,Hough變換也是圖像變換中的經典手段,主要用來從圖像中分離出具有某種相同特征的幾何形狀。Canny算法和Hough算法在圖像處理中都應用非常廣泛,本文分別應用Canny算法和Hough算法對實驗圖像進行處理,與角點檢測算法處理得到的結果進行對比,實驗結果如圖1~圖3所示,為了更直觀的評價三種算法提取結果,本文用MATLAB分別提取三種缺陷的灰度圖像建成灰度三維圖,XY平面對應相應的缺陷圖像,Z軸表示缺陷圖像中的每一個像素點的灰度值三維圖,結果如圖4~圖6所示。

圖1 輥印缺陷圖像實驗結果對比

圖2 紅銹缺陷圖像實驗結果對比

圖3 邊部氣割缺陷圖像實驗結果對比

圖4 輥印缺陷圖像的灰度三維圖對比


圖5 紅銹缺陷圖像的灰度三維圖對比

圖6 邊部氣割缺陷圖像的灰度三維圖對比
從圖1~圖3可以看出,優化后的角點檢測算法能分辨以上三種熱軋帶鋼的表面缺陷,角點比較清晰。Canny算法僅在邊部氣割缺陷的缺陷情況下能分辨出表面缺陷,在輥印和紅銹缺陷的情況下,Canny算法不能分辨出來,Hough算法僅在紅銹缺陷的情況下能分辨出來,對其他兩種缺陷分辨不明顯。
觀察對比圖4~圖6的灰度三維圖,也可以知道,對于輥印和紅銹缺陷,Canny算法處理的圖像灰度值在缺陷處灰度值變化不大,這表明Canny算法不能明顯區分圖像中的缺陷;Hough算法只在紅銹缺陷中灰度值變化明顯,能分辨出表面缺陷,其他缺陷分辨不理想;角點檢測算法表現優異,準確的分辨出了三種缺陷圖像。
經過以上對比,可以看出優化后的角點檢測算法在缺陷檢測方面比Canny算法和Hough算法具有更好的效果。
在檢測缺陷圖像時,角點檢測算法不僅在缺陷檢測方面效果良好,還能通過根據突變點的灰度值為圖像的缺陷分類判定提供重要信息,避免誤判和錯判。例如圖5(c)和圖6(c),分別代表紅銹灰度三維圖和邊部氣割缺陷灰度三維圖,從中可以看出紅銹和邊部氣割缺陷這兩種缺陷圖像的灰度變化是相反的。其中,紅銹的角點突變點的灰度值很小,接近于零,邊部氣割缺陷的圖像的角點突變點的灰度則變化較大,兩者在角點突變點灰度值相差很大,因此在用角點檢測方法來在檢測缺陷圖像時,通過考慮突變點的灰度值可以避免造成誤判和錯判,在實現缺陷圖像的快速分類時,角點檢測可以提供灰度信息幫助,對缺陷分類系統優化有重要意義。
角點檢測因其含有很高的信息量來反映圖像的局部特征,能夠快速可靠的實現標定、匹配功能。本文提出的優化角點檢測方法來實現對熱軋帶鋼表面的缺陷檢測,對比Canny算法和Hough算法具有更好的檢測效果。同時,角點檢測算法還可以通過考慮突變點的灰度值來檢測誤判和錯判。實驗結果證明本文提出的優化角點檢測算法不僅比Canny算法和Hough算法有更好的檢測效果,還能為圖像缺陷分類提供重要的灰度信息,為熱軋帶鋼的在線檢測提供了一種新的缺陷檢測參考方法,對缺陷檢測方法的改進和缺陷檢測分類系統的優化設計也具有重要意義。
[1]王磊.基于機器視覺的電池表面缺陷檢測技術研究[D].中國科學技術大學,2011.
[2]Zhang,X,He,G.,Yuan,J.A rotation invariance image matching method based on harris corner detection[A].International Congress on Image and Signal Processing,Tianjin,China[C].2009:1-5.
[3]Harris C,Stephens M J.Acombined corner and edge detector[A].Proceedings of the 4th Alley Vision Conference[C].New York:IEEE,1988:147-151.
[4]毛雁明,蘭美輝,王運瓊,馮喬生.一種改進的基于Harris的角點檢測方法[J].計算機技術與發展,2009,19(5):130-133.
[5]楊水山,何永輝,趙萬生.Boosting優化決策樹的帶鋼表面缺陷識別技術[J].紅外與激光工程,2010,39(5):954-958.
[6]齊從謙,甘屹.基于遺傳算法的醫學CT圖像數字化處理[J].同濟大學學報(自然科學版),2004,32(6):799-801
[7]Likai Chen,Wei Lu,Jiangqun Ni,Wei Sun,Jiwu Huan .Region duplication detection based on Harris corner points and step sector statistics[J].J.Vis.Commun.Image R.2013(24):244-254.
[8]Y.Freund,R.E.Schapire.A decision-theoretic generalization of online learning and an application to Boosting[J].Comput System Sci,1997,55(1):119-139.
[9]陳凱歌,韓曉軍,張宇,杜云飛.基于OpenCV的Harris角點檢測[J].河南紡織高等專科學校學報,2011,(4):53-56.