?

一種基于支持向量機的金屬表面缺陷檢測方法

2021-09-06 01:48顧愛華,李玟函,王正乾,殷作好,葉凱寧,陳玉
軟件工程 2021年8期
關鍵詞:缺陷檢測圖像處理

顧愛華,李玟函,王正乾,殷作好,葉凱寧,陳玉

摘? 要:針對金屬表面缺陷檢測中存在的圖像失真、構造分類器精確度不高及系統計算量大的問題,現提出一種高質量的基于支持向量機的金屬表面缺陷檢測方法。采用形態學方法對圖像進行預處理,通過融合GLCM與HOG特征提取到的結果建立較為完備的缺陷模型,便于后期構造高精度分類器。最后,利用OTSU算法進行閾值分割,通過計算連通分量個數等方法進行缺陷分析。相較于一般的缺陷檢測方法,該檢測方法準確率達到96.67%,提高了缺陷檢測的效率。

關鍵詞:缺陷檢測;圖像處理;SVM分類器

中圖分類號:TP391? ? ?文獻標識碼:A

A Metal Surface Defect Detection Method based on Support Vector Machine

GU Aihua, LI Wenhan, WANG Zhengqian, YIN Zuohao, YE Kaining, CHEN Yu

(College of Information Engineering, Yancheng Teachers University, Yancheng 224002, China)

guaihua1978@163.com; liwenhan1127@163.com; 2794965946@qq.com;

2693704323@qq.com; 2506331929@qq.com; 7042799@qq.com

Abstract: Aiming at the problems of image distortion in metal surface defect detection, inaccuracy of construction classifier and large amount of system calculation, this paper proposes a high-quality metal surface defect detection method based on support vector machine. Morphological methods are used to preprocess the image, and a relatively complete defect model is established by fusing the results extracted from GLCM (Gray-level Co-occurrence Matrix) and HOG (Histogram of Oriented Gradient) features, which is convenient for constructing a high-precision classifier in the later stage. Finally, OTSU algorithm is used to perform threshold segmentation, and defect analysis is performed by calculating the number of connected components. Compared with general defect detection methods, the proposed detection method improves the efficiency of defect detection and its accuracy rate is as high as 96.67%.

Keywords: defect detection; image processing; SVM (Support Vector Machine) classifier

1? ?引言(Introduction)

在工業實際生產中,金屬板質量檢測的精確度和速度至關重要,傳統的人工檢測方法不僅消耗工廠大量的物力、財力,且檢測結果帶有強烈的主觀性,并不可靠?,F有的金屬表面缺陷檢測系統在圖像處理時會使圖像扭曲,造成不同程度的失真,對后期圖像分割和缺陷識別產生較大影響。為解決上述問題,本文提出了一種基于支持向量機(Support Vector Machine,SVM)的金屬表面缺陷檢測方法。首先,在缺陷圖像預處理時采用形態學的方法去除基線漂移,改善光照不均,通過融合灰度共生矩陣(GLCM)和方向梯度直方圖(HOG)兩種特征提取的結果,作為支持向量機(SVM)分類器訓練模型;利用大津法進行圖像分割,再通過腐蝕膨脹的方法去除引入雜點,最終使捕獲到的缺陷分析準確率得到提高。

2? ?SVM模型構建(SVM model construction)

2.1? ?缺陷圖像預處理

圖像預處理是所有數字圖像處理中的第一個步驟,也是關鍵的一步。該步驟處理圖像的好壞直接影響接下來的圖像分割及特征提取的準確率。傳統的降噪方法包括中值濾波、高斯濾波等算法,但都無法在特定的需求下達到滿意的效果。在特定的缺陷紋理分析中常用的是Gabor濾波器[1],但考慮到光源的照度不均,采集到的缺陷圖像會有不同程度的曝光,因此本文利用數學形態學的方法去除圖像中的灰度基線來改善圖像受光不均的問題,同時濾除金屬表面的各種微小噪聲點。

數學形態學提供了一種有效的非線性信號處理方法,可以很好地保持信號的幾何信息。本文采用直線型結構元素的數學形態學濾波器,直線型結構元素的寬度大于心電特征波形的寬度,使得這些特征波形都被濾除,只剩下基線漂移信號,再用原信號減去獲得的基線干擾信號,就可獲得濾除了基線漂移干擾后的心電信號。本文取寬度M=120(特征波形最大寬度×采樣頻率)的處理斑點效果和常用的Gabor濾波處理斑點效果進行對比,如圖1至圖3所示。采用數學形態學的方法另一方面還可以在保持圖像邊緣的情況下實現圖像的去噪[2],提高后期SVM訓練的準確性。

還有一種是在已知缺陷種類的基礎上,通過觀察法,利用不同缺陷的特性如灰度值、缺陷面積等信息,直接進行簡單的缺陷分類。如本文要分辨的缺陷包括軋入氧化皮、斑點與劃痕,對這三者進行最簡單的直接差異分析就可直接提取缺陷。以缺陷面積為例,軋入氧化皮面積與斑點和劃痕面積大小相比,面積最小呈現出來的是一個小斑點,而其他兩類缺陷面積都較大?;谶@一點可以快速區分軋入氧化皮缺陷,算法設計為:提取二值化圖像的缺陷邊緣信息,得到邊緣長度,找到最長邊緣與閾值大小進行比較,若比閾值大則是斑點或劃痕,若比閾值小則為軋入氧化皮。

該方法可行性看似較高,但閾值的確定較為困難且具有主觀性,對缺陷測試結果的準確性有一定的干擾。因此,本文并不提倡該方法。

2.2? ?缺陷圖像特征提取

特征提取是從圖像中獲取所需的特定信息。圖像的特征包括自身的亮度、邊緣、紋理等。提取缺陷特征的方法有兩種,一種是利用特定的簡單缺陷特征直接對缺陷進行分類;另一種是利用HOG、LBP、Haar等一般特征提取的算法。一般紋理缺陷的特征提取大都采用HOG算法、LBP算法及GLCM算法[3]。HOG特征能夠描述圖像的邊緣梯度信息,對于發生幾何和光學變化具有一定程度的不變性[4]。LBP特征和GLCM特征都是常用的缺陷紋理提取算法,但LBP特征是基于結構的方法,而GLCM特征是基于統計數據的方法。若只采用其中任意一種方法進行缺陷特征提取,雖然可以提取到相應的特征信息,但是效果并不是很好,容易漏掉某些信息。本文采取GLCM和HOG特征提取融合的方法,用兩種方法進行缺陷特征信息提取,以此來保證缺陷信息的完整性,提高后期SVM模型的分類準確性[5]。

灰度共生矩陣(GLCM)法,就是通過計算灰度圖像得到它的共生矩陣,然后通過計算該共生矩陣得到矩陣的部分特征值,代表圖像的某些紋理特征?;叶裙采仃嚹芊从硤D像灰度關于方向、相鄰間隔、變化幅度等綜合信息,它是分析圖像的局部模式和排列規則的基礎。算法實現步驟如下:

(1)灰度級壓縮

為減小灰度共生矩陣的計算量,在計算灰度共生矩陣時,首先將圖像灰度級壓縮為16 個灰度級。進行灰度級壓縮時,先將圖片進行直方圖均衡化處理,增加灰度值的動態范圍,從而增加影像的整體對比度。

(2)計算特征值的參數選擇(表1)

如表1求出四個方向矩陣的特征值后,可以通過計算四個特征值的平均值作為最終特征值共生矩陣。

(3)紋理特征值的計算與紋理特征影像生成

首先,計算單個窗口的灰度共生矩陣。接著,計算單個窗口的灰度共生矩陣特征值。求出單個窗口的灰度共生矩陣特征值后,再對這些特征值進行均值計算和方差計算。最后,滑動窗口。當一個窗口完成特征值計算后滑動到下一個像素,再一次開始計算該窗口的共生矩陣的特征值。當這一幅圖像上的所有像素點都被遍歷一遍后,此時的圖像就變成了包含缺陷紋理特征信息的特征矩陣。

方向梯度直方圖(HOG)特征是利用圖像的局部梯度直方圖構成缺陷的特征,通常用在計算機視覺和數字圖像處理中,其基本步驟如下:

(1)檢測圖像梯度

圖像梯度包括橫向梯度和縱向梯度。計算圖像所有像素不同方向上的梯度的常用方法為利用[-1,0,1]梯度算子對原圖像做卷積運算,得到x方向的梯度分量;然后用[1,0,-1]T梯度算子對原圖像做卷積運算,得到y方向的梯度分量;最后再計算像素點的梯度方向[6]。

(1)

(2)

(3)

(2)為每個細胞單元構建梯度方向直方圖

首先將圖像分成若干個單元格即cell,將cell的梯度方向需求分成若干個方向塊即bins;然后對每個單元格內的像素投影到直方圖中加權計算,即可得到每個細胞單元的梯度直方圖。

(3)把細胞單元組合成塊,塊內歸一化梯度直方圖

因為圖像的前景、背景在不均勻的光照范圍下對比度的數值跨度非常大,所以就需要對梯度強度做歸一化處理。歸一化處理能夠進一步對光照、陰影及邊緣進行壓縮,把對比度值的范圍投影到合適的范圍內。

(4)獲取HOG特征

最后一步就是將檢測窗口中所有重疊的塊進行HOG特征的收集,并將它們結合成最終的特征向量供分類使用。

針對金屬表面缺陷的結構特征和局部紋理特征,提取其HOG特征和GLCM特征并將二者進行融合。

2.3? ?構造SVM分類器

本文的樣本數量在800 個左右。由于樣本數量較少,選用支持向量機(SVM)算法得到的效果比其他分類學習的效果要好得多,故本文選擇利用SVM算法進行監督學習,構造分類器[7]。構造SVM分類器就是先給一部分數據打上類別標簽,讓SVM模型使用這些打了類別標簽的數據進行訓練,然后給訓練好的SVM模型新的無類別標簽的數據,SVM模型就可以自動對這些新的數據進行分類。其原理是在多種不同類型的樣本之間尋找一個超平面作為樣本之間的分割面,從而達到精準分類。

用融合后的特征作為樣本訓練SVM分類器,用訓練后的模型識別測試圖像。當圖像對比度較低,同時形態學與處理時的結構元素選取相對于缺陷的寬度而言較小,此時不能正確地增強缺陷區域,其分類可能會出現誤差。通過計算測試圖像的分類結果,本文提出的分類器對于測試圖像總體分類準確性達到96.67%以上。采用單一的HOG特征作為訓練樣本,或使用簡單缺陷特征提取作為SVM分類器的訓練樣本,與經過GLCM和HOG特征提取做出的SVM分類器分類效果對比如表2所示。

由表2可知,單一使用HOG特征作為SVM訓練樣本準確率偏低,而結合了GLCM特征以后的SVM分類器準確率提高了19.47%,相比于利用簡單缺陷特征制作的分類器準確率提高了3.37%。

3? ?缺陷分析與檢測(Defect analysis and detection)

3.1? ?閾值分割

圖像分割是圖像處理中不可避免的步驟之一,是進一步進行圖像分析的基礎。圖像分割的目的是對圖像進行標記,以分割的每一小塊為單元,對同一單元內的像素賦予相同標記,不同單元內的像素標記不同,為后期圖像分析提供了方便。

測試圖像分割是利用圖像預處理后的圖像進行分割。在圖像預處理中,本文對比了Gabor濾波和數學形態學方法的預處理效果。在閾值分割中,使用形態學預處理的大津法(OTSU)分割結果比基于Gabor濾波預處理的分割結果也要好得多。形態學預處理后得出的分割結果更準確,更加接近原始圖像的缺陷區域,如圖4和圖5所示,原始圖像如圖1所示。

大津法圖像分割是按照圖像的灰度特性,將圖像分成背景和目標兩部分。背景和目標之間類間方差越大,說明分割錯分概率越小。為了滿足小錯分概率要求,在進行大津法分割之前,要先對預處理后的圖像利用形態學的方法進行波谷檢測,以保證大津法閾值分割的結果更加準確。而對于不同的缺陷類型,其波谷檢測方法也不同。

由觀察可知,軋入氧化皮缺陷和斑點缺陷所在的位置是圖像中較暗的狹小區域,于是可直接利用數學形態法對預處理后的圖像進行波谷提取。而劃痕缺陷區域較亮,可以看作波峰,因此要先進行圖像的灰度反轉,將較亮的波峰變成較暗的波谷,然后再進行波谷提取。之后就可利用大津法進行圖像分割,將閾值從0開始一直逐次增大到255,按閾值將圖像分為背景(0)與前景(1)。對于每個閾值T(0≤T≤255),計算背景和前景像素點的灰度均值u0、u1和各占總像素點的比例w0、w1。計算全部像素點的灰度均值如下:

(4)

計算此時二值圖的類間方差為:

(5)

選擇使類間方差最大的閾值T(0≤T≤255),此時的閾值即為所求的最佳閾值。軋入氧化皮缺陷的原始圖像和分割處理后的結果如圖6和圖7所示。

大津法分割圖像雖然很好地保存了圖像的缺陷信息,但會引入一些雜點。因此還需對分割后的圖像進行先腐蝕再膨脹的開運算操作,從而去除大津法分割帶來的噪聲點。軋入氧化皮缺陷分割后含有雜點和去除雜點的效果如圖8和圖9所示。

3.2? ?缺陷分析

對于軋入氧化皮缺陷和斑點缺陷,利用圖像分割的結果作為存在缺陷的目標區域,構造檢測缺陷區域的函數,計算缺陷中心點坐標作為軋入氧化皮缺陷的位置信息,如圖10所示;繪制缺陷區域邊緣曲線的函數作為斑點缺陷的位置信息,如圖11所示。通過計算軋入氧化皮缺陷和斑點缺陷圖像分割后的提取連通分量個數,作為對應缺陷的個數信息。

對于劃痕缺陷,為避免有的劃痕較寬,則先利用細化操作降低檢測誤差,細化前和經過5 次細化操作的效果如圖12和圖13所示,再利用霍夫變換確定劃痕缺陷的位置信息。

利用霍夫變換直線檢測算法提取直線成分[8]。其大體思路如下:

對過點的直線建立坐標系,該直線在坐標系下的表達式為:

(6)

如果檢測出參數a、b均相等的直線系,那么則相當于檢測出了直線。當出現斜率a無窮大時,可以放在極坐標系中,過點的表達式則變為:

(7)

如果檢測出參數均相等的直線系,那么則相當于檢測出了直線。極坐標系下適用所有斜率的直線。因為劃痕不一定是直線,有可能略帶彎曲或者被分為多段短線(圖14)。為解決彎曲和多段的問題,以橫線為例,先剔除那些過短的線;再計算所有檢測直線與y軸的夾角,若夾角大于某個閾值則是橫線;計算每根線中點的坐標,將直線按中點y坐標由小到大的順序排序,將檢測到的第一根線作為直線累計初始狀態,對所有直線進行遍歷。接著判斷相鄰兩直線的y坐標之差是否小于某閾值,若小于,則認為該直線與之前的累計直線屬于同一根劃痕,并繼續進行累加;若y坐標之差大于某閾值,則認為該直線與下一個直線分屬于不同的劃痕,則計算前面類間直線端點坐標的最大值與最小值作為劃痕的端點,求其長度并畫圖(圖15),同時將累計的直線清零,重復上述操作。

4? ?結論(Conclusion)

本文提出了金屬表面缺陷檢測算法,本算法在小樣本的情況下,通過去除基線漂移改善光照不均,以及融合灰度共生矩陣和方法梯度直方圖兩種特征,提高了圖像特征檢測的精確度,從而保證了支持向量機分類器的準確性。在圖像預處理階段,本算法依據現實存在的光照不均情況采用數學形態學的方法,通過去除基線漂移改善由照度不均引起的背景中的亮度變化,同時也可以濾除金屬表面的各種微小噪聲點。在圖像分割時,采用了GLCM和HOG特征提取的方法,將二者融合后的特征信息作為接下來的SVM訓練模型,經實驗發現二者融合訓練出來的分類器比只經過HOG特征訓練的分類器精確度提高了19.47%。為了進一步提高缺陷檢測的準確性,在圖像閾值分割階段,本算法在OTSU算法分割后的圖像上再利用形態學腐蝕膨脹的方法去除噪聲點,為接下來的缺陷分析提供良好的分析環境。最終檢測到的缺陷位置、大小等信息結果更為準確,誤差較小,因此本文提出的算法在工業缺陷分析與檢測中具有實際的應用價值。

參考文獻(References)

[1] LIU I Y, CHEUNG C F, SENIN N, et al, On-machine surface defect detection using light scattering and deep learning[J]. Journal of the Optical Society of America, 2020, 37(9):53-59.

[2] LIU M, CHI F C, FENG X, et al. Diamond machining of freeform-patterned surfaces on precision rollers[J]. International Journal of Advanced Manufacturing Technology, 2019, 103(3):4423-4431.

[3] COHN R, HOLM E. Unsupervised machine learning via transfer learning and k-means clustering to classify materials image data[J]. Integrating Materials and Manufacturing Innovation, 2021, 10(1):1-14.

[4] 占善華.一種新的特征融合人臉分類方法[J].電子世界,2020(20):100-101,104.

[5] 趙若晴,王慧琴,王可,等.基于HOG和GLCM混合特征的青銅器金文圖像識別[J/OL].激光與光電子學進展,2020,57(12):1-13.[2021-05-13]. https://kns.cnki.net/kcms/detail/31.1690.TN.20191106.1202.040.html.

[6] 劉吉偉.面向水下魚監控的視覺跟蹤技術[D].大連:大連工業大學,2019.

[7] 尚暉.基于改進SVM的互聯網用戶分類[J].計算機系統應用,2021,30(04):266-270.

[8] 馮凱,王琦,于水源.基于合并短線段的直線檢測方法[J].軟件導刊,2021,20(04):220-225.

作者簡介:

顧愛華(1978-),男,博士,高級實驗師.研究領域:機器學習,軟件工程與復雜網絡.

李玟函(1997-),女,本科生.研究領域:數字媒體技術.

王正乾(2001-),男,本科生.研究領域:機器學習,軟件工程.

殷作好(2000-),男,本科生.研究領域:機器學習,軟件工程.

葉凱寧(2000-),男,本科生.研究領域:機器學習,軟件工程.

陳? 玉(1977-),男,博士,副教授.研究領域:深度學習,數字圖像處理.

猜你喜歡
缺陷檢測圖像處理
基于圖像處理的機器人精確抓取的設計與實現
機器學習在圖像處理中的應用
Bayesian-MCMC算法在計算機圖像處理中的實踐
改進壓縮感知算法的圖像處理仿真研究
基于電渦流原理的無損檢測方案設計
超聲波與特高頻方法下的GIS局部放電檢測技術分析
基于極限學習機的玻璃瓶口缺陷檢測方法研究
基于圖像處理的定位器坡度計算
基于圖像處理的印品質量檢測系統研究
基于機器視覺的O型圈質量檢測智能系統開發
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合