駱騰斌,陳 碩*,趙紫陽,連青惠(.福州大學(xué) 機(jī)械工程及自動化學(xué)院,福建 福州 3506;.福建省永安軸承有限責(zé)任公司,福建 永安 366000)
受加工過程中各種不確定因素的影響,軸承內(nèi)外套端面加工后依然可能會出現(xiàn)凹坑、劃痕、鍛廢、大小邊等缺陷。上述這些缺陷一方面影響軸承外觀,另一方面軸承套端面作為后續(xù)加工的定位面,若缺陷嚴(yán)重,則可能影響軸承各零件的配合,從而降低軸承的耐用性能,給配套主機(jī)的正常使用埋下安全隱患。因此,存在這些缺陷的軸承套,在進(jìn)入下一道工序前必須剔除掉[1-2]。目前,國內(nèi)軸承生產(chǎn)企業(yè)主要依賴人工目測完成上述缺陷檢測與次品的剔除。然而,人工目測不僅效率低下,還很容易出現(xiàn)誤檢和漏檢,人為因素影響大,穩(wěn)定性和可靠性較差,因漏檢造成的退換貨現(xiàn)象時有發(fā)生,給企業(yè)造成經(jīng)濟(jì)上的損失之余,也降低了客戶對其產(chǎn)品的信任度[3]。鑒于此,軸承生產(chǎn)廠家急需自動檢測設(shè)備來替代人工檢測,降低人力成本,實現(xiàn)對產(chǎn)品質(zhì)量的嚴(yán)格控制。
基于機(jī)器視覺的檢測方法憑借其速度快、精度高、穩(wěn)定性好等特點而受到廣泛關(guān)注。王恒迪等人[4]通過改進(jìn)的Otsu閾值分割方法和邊緣檢測技術(shù),實現(xiàn)了對軸承內(nèi)外套端面的檢測;陶青平等人[5]針對目前應(yīng)用單閾值圖像檢測產(chǎn)品缺陷方法的局限性,而多閾值分割算法僅能檢測高于目標(biāo)灰度缺陷的情況,提出了一種基于Otsu多次閾值的方法,完成了軸承端面缺陷檢測;陳廉清等人[6-7]對軸承檢測也作了較多研究。然而,現(xiàn)有的軸承表面質(zhì)量視覺檢測方法大都存在著檢測效率有待提高等問題,因此仍需進(jìn)一步的改進(jìn)。
針對當(dāng)前人工檢測及現(xiàn)有檢測算法所存在的不足,本文提出一種新的軸承套端面缺陷視覺檢測方法,以提高檢測效率與準(zhǔn)確率。
本算法首先對所采集圖像進(jìn)行平滑處理以減弱噪聲的影響,然后利用自適應(yīng)閾值的canny算子完成邊緣檢測,從檢測結(jié)果中提取出邊緣輪廓,再采用最小二乘法擬合圓,最后分割出軸承套端面圓環(huán)區(qū)域。
經(jīng)由圖像采集系統(tǒng)得到的原始圖像都包含有某種程度的噪聲,為了抑制這些噪聲,減弱其對后期缺陷檢測的影響,則需對圖像進(jìn)行平滑處理。為適應(yīng)不同檢測過程的需求,本文共涉及兩種圖像平滑處理方法:中值濾波與均值濾波。
中值濾波為常用的非線性濾波方法,也是圖像處理技術(shù)中最常用的預(yù)處理技術(shù)[8]。它無論是在消除噪聲還是保存邊緣信息方面都有較好的效果。因此,本文選用3×3的函數(shù)窗對原始圖像進(jìn)行中值濾波處理,再將處理結(jié)果用于邊緣檢測。然而,中值濾波會導(dǎo)致算法對劃痕、麻點等細(xì)小缺陷出現(xiàn)漏檢。根據(jù)合作廠家提出的寧可誤檢不可漏檢原則,本文采用原始圖像經(jīng)由內(nèi)核大小為3×3的均值濾波后的輸出結(jié)果作為后續(xù)缺陷檢測的圖像。
原圖及應(yīng)用兩種濾波方法處理原圖的效果如圖1所示。
圖1 原圖及濾波效果
Canny邊緣檢測算子是John F.Canny于1986年開發(fā)出來的一個多級邊緣檢測算法[9]。在眾多的圖像邊緣檢測方法中,Canny算子以其嚴(yán)格的邊緣檢測評價標(biāo)準(zhǔn)得到了廣泛應(yīng)用,被很多人推崇為當(dāng)今最優(yōu)的邊緣檢測算法。
為了盡量精確地確定邊緣的位置,本文采用Canny算子來完成邊緣檢測工作。然而傳統(tǒng)Canny算子高低閾值是人為確定的,這就造成了它難以應(yīng)用于自動化檢測。針對這一問題,一種解決方案是運(yùn)用最大類間差(Otsu)法確定Canny算子的高閾值[10-12](記為α),再用該高閾值乘以一個比例因子作為其低閾值(記為β)。
Canny檢測效果如圖2所示。
圖2 Canny檢測效果
該方法對圖1(b)的處理結(jié)果如圖2(a)所示;另一種解決方案是運(yùn)用迭代法確定閾值α[13],其對圖1(b)的處理結(jié)果如圖2(b)所示。以上兩種方法雖檢測到了較豐富的邊緣信息,但結(jié)果中也包含了許多誤檢的邊緣。考慮到邊緣檢測主要是服務(wù)于接下來的擬合圓操作,而并不是用于檢測缺陷,所以為了避免因邊緣檢測產(chǎn)生誤檢,則α值不應(yīng)過低,本算法選取圖像的最大灰度值作為α。對于Canny算子的高低閾值比,一般推薦在2:1~3:1之間,本算法取β=0.4α。通過對大量圖像進(jìn)行測試,結(jié)果表明本文的閾值確定方法十分高效,而且能使得基于該高低閾值的Canny算子具有較好的檢測效果,其對圖1(b)處理結(jié)果如圖2(c)所示。
軸承套圓心的定位及端面內(nèi)、外圓半徑的計算是端面圓環(huán)區(qū)域提取的基礎(chǔ)。Hough變換、三點定圓法及最小二乘法是常用的3種定位圓心的方法。
Hough變換具有魯棒性好[14],對缺陷較大的圓也能較準(zhǔn)確定位圓心的優(yōu)點,但其投票統(tǒng)計的累加過程消耗大量的內(nèi)存與時間。
由于隨機(jī)提取3個邊緣點坐標(biāo),三點定圓法是3種方法中計算量最少的,但其定位精度也是最低的,無法精確算得端面內(nèi)外圓的實際圓心坐標(biāo)和半徑。
最小二乘法可以計算得到高精度的圓心和半徑[15],且計算量較少,占用的內(nèi)存和消耗的時間也均較少。同時,因為最小二乘擬合的平方項對離群點非常敏感,所以可以利用半徑長度的先驗知識與擬合結(jié)果作比較,從而直接剔除輪廓存在較大缺陷的軸承套。
綜合考慮精度、計算復(fù)雜度和耗時,本研究采用最小二乘法。
(1)
(2)
其中:
據(jù)此,本算法便能簡便地擬合出軸承端面的內(nèi)、外圓如圖3所示。
圖3 擬合圓
繼而本算法可提取出圖1(c)中的軸承套端面圓環(huán)區(qū)域,如圖4所示。
圖4 提取的圓環(huán)區(qū)域
準(zhǔn)確的閾值分割是缺陷檢測的先決條件,而其最大難點又在于門限閾值的合理選取。為適應(yīng)各軸承套間的差異,顯然不能采用固定的門限閾值,故本研究只考慮自適應(yīng)閾值算法,如迭代法、Otsu法[16]。通過大量測試,筆者最終決定采用Otsu法作為自適應(yīng)閾值算法。
Otsu法是一種圖像灰度自適應(yīng)的閾值分割算法,由日本學(xué)者大津[17]于1979年提出。該算法通過計算不同閾值對應(yīng)的類間方差,而類間方差最大意味著錯分概率最小,從而求得分割圖像的最佳閾值。
首先計算出圖像的灰度直方圖,其灰度級別記為[imin,imax],然后對h(i)=ni進(jìn)行歸一化,并令pi=ni/N,其中:N—圖像中像素點的總個數(shù),pi—不同灰度值在圖像中的概率,于是有∑pi=1。
現(xiàn)假設(shè)閾值將圖像中的像素點分為了背景C0與前景C1兩類,C0表示具有級別[imin,T]的像素,C1表示具有級別[T+1,imax]的像素,則這兩類出現(xiàn)的概率分別為:
(3)
類C0的灰度均值為:
(4)
類C1的灰度均值為:
(5)
又因為μ(T)與μ分別為:
(6)
所以有:
ω0+ω1=1,ω0μ0+ω1μ1=μ
(7)
故而,類間方差為:
σ2=ω0(μ0-μ)2+ω1(μ1-μ)2
(8)
上式計算量較大,可將其簡化為:
σ2=ω0ω1(μ0-μ1)2
(9)
要使類間方差σ最大,則應(yīng)該取:
(10)
為減少計算量,縮短程序的運(yùn)行時間,應(yīng)將閾值T的取值范圍限制在[imin,imax]區(qū)間。
研究運(yùn)用Otsu法計算圖1(c)及圖4得到的閾值T分別對圖4進(jìn)行分割操作,并將灰度值小于T的像素點置為“255”(白色),其余像素點置為“0”(黑色),其結(jié)果如圖5所示。
圖5 OTSU閾值分割結(jié)果
同理,本研究以迭代法得到的閾值T對圖4進(jìn)行分割的結(jié)果如圖6所示。
圖6 迭代法閾值分割結(jié)果
由圖5的分割結(jié)果可以看出,Otsu算法得到的全圖最佳閾值未能有效地分割出缺陷,如圖5(a)所示,存在漏檢的風(fēng)險;而基于圓環(huán)區(qū)域的閾值則能得到很好的分割效果,如圖5(b)所示。圖6(a)表明,迭代法基于全圖得到的閾值雖能分割出缺陷,但分割得不完整,所以同樣存在漏檢的可能;圖6(b)則說明迭代法基于圓環(huán)區(qū)域得到的閾值可能導(dǎo)致算法出現(xiàn)誤檢。
因此,本算法采用Otsu法基于圓環(huán)區(qū)域得到的閾值可以完成缺陷分割。
對于端面大小邊缺陷,其主要特點是內(nèi)、外圓不同心,且圓環(huán)區(qū)域內(nèi)可能并無其它缺陷,即無法通過閾值分割完成缺陷判別,故本文直接于完成擬合圓之后便予以剔除。該缺陷的判別是通過計算兩擬合圓圓心間的歐氏距離dp,再將其與給定閾值Dp比較來完成的,若dp>Dp則判定為存在大小邊缺陷,否則便繼續(xù)通過閾值分割進(jìn)行其余缺陷判別。根據(jù)合作廠家的檢測標(biāo)準(zhǔn),圓環(huán)區(qū)域的最大與最小寬度的差值應(yīng)不超過1 mm(對應(yīng)到圖像上約為10個像素),即內(nèi)、外圓圓心偏移量應(yīng)不超過0.5 mm,因此取閾值Dp為5個像素,即Dp=5。
基于本文算法,若端面合格,分割結(jié)果中將只有兩個圓;若端面存在缺陷,則分割結(jié)果中除了兩個圓之外還包含缺陷區(qū)域,如圖5(b)所示。
因此,為避免誤判,實際用于分割的圖像是縮進(jìn)了2個像素的圓環(huán)區(qū)域,分割結(jié)果如圖7所示。
圖7 縮進(jìn)圓環(huán)區(qū)域分割結(jié)果
為判別軸承套端面是否存在缺陷,本文基于八鄰域標(biāo)記算法提取出分割結(jié)果中的連通域,若連通域面積S(像素數(shù))大于給定的閾值(最小缺陷面積),則判定存在缺陷。
為了評估本文提出的檢測方法的性能,筆者共采集200幅軸承套圖像作為測試樣本,其中合格軸承套圖像100幅,其余為包含各缺陷類型的軸承套圖像。原始圖像寬度為640×480像素,文中的所有插圖均為截取而來,且大小均為360×360個像素。
算法測試結(jié)果如表1所示。
表1 算法測試結(jié)果
分析實驗結(jié)果發(fā)現(xiàn),實驗中誤檢、漏檢現(xiàn)象的出現(xiàn)主要是由于圖像采集過程中受噪聲干擾導(dǎo)致缺陷面積S處于臨界值的軸承被誤判所引起的。針對以上情況,可通過改善照明條件和優(yōu)化算法以提高魯棒性。
該實驗在Window7系統(tǒng)、Visual Studio2010平臺上進(jìn)行,電腦配置Intel(R)Pentium(R)處理器,3.00 GHz主頻,4G內(nèi)存。本算法通過C++語言編程實現(xiàn),其對于每幅圖像的檢測時間均不超過50 ms,且最少耗時僅為31 ms,完全能滿足工業(yè)實時性要求。
本文提出了一種基于機(jī)器視覺技術(shù)的軸承套端面檢測方法,通過圖像的灰度直方圖快速地得到了Canny算子的高低閾值,實現(xiàn)了閾值自適應(yīng),并取得了較好的邊緣檢測效果;再結(jié)合基于最小二乘法的圓擬合算法完成了軸承端面區(qū)域提取,接著利用Otsu算法對圓環(huán)區(qū)域進(jìn)行了閾值分割,最后根據(jù)連通域的特征與大小完成了缺陷判別。
實際測試結(jié)果顯示:該方法具有檢測正確率高、速度快、重復(fù)性好等優(yōu)點。下一階段,筆者將應(yīng)用其搭建一套工業(yè)在線檢測系統(tǒng)。
[1] 陳文達(dá),白瑞林,吉 峰,等.基于機(jī)器視覺的軸承防塵蓋表面缺陷檢測[J].計算機(jī)工程與應(yīng)用,2014(6):250-254.
[2] 李妍妍,樊連慶,張 毅.一種基于機(jī)器人控制軟件的構(gòu)件缺陷管理方案[J].兵工自動化,2017,36(5):88-91.
[3] 陳 龍,侯普華,王 進(jìn),等.軸承表面缺陷類型識別算法[J].計算機(jī)應(yīng)用研究,2015(5):1549-1553.
[4] 王恒迪,李 莎,楊建璽,等.軸承端面缺陷的視覺檢測方法[J].軸承,2016(3):60-63.
[5] 陶青平,吳錫生.快速檢測軸承表面缺陷方法的研究[J].微電子學(xué)與計算機(jī),2011,28(10):98-100,104.
[6] 陳廉清,崔 治,王龍山.基于差影和模板匹配的微小軸承表面缺陷檢測[J].中國機(jī)械工程,2006,17(10):1019-1022.
[7] 陳廉清,袁紅彬,王龍山.SUSAN算子在微小軸承表面缺陷圖像分割中的應(yīng)用[J].光學(xué)技術(shù),2007(2):305-307.
[8] 岡薩雷斯.數(shù)字圈像處理[M].3版.北京:電子工業(yè)出版社,2011
[9] 鈕圣虓,王 盛,楊晶晶,等.完全基于邊緣信息的快速圖像分割算法[J].計算機(jī)輔助設(shè)計與圖形學(xué)學(xué)報,2012,24(11):1410-1419.
[10] 張志強(qiáng),宋海生.應(yīng)用Otsu改進(jìn)Canny算子的圖像邊緣檢測方法[J].計算機(jī)與數(shù)字工程,2014,43(1):122-128,141.
[11] 梁光明,孫即祥,馬 琦,等.Otsu算法在Canny算子中的應(yīng)用[J].國防科技大學(xué)學(xué)報,2003,25(5):36-39.
[12] MEI Fang, YUE Guang-xue, YU Qing-cang. The study on an application of otsu method in canny operator[J].ProceedingsoftheInternationalSymposlimonInformationProeessing,2009,2(4):109-112.
[13] 王小俊,劉旭敏,關(guān) 永.基于改進(jìn)Canny算子的圖像邊緣檢測算法[J].計算機(jī)工程,2012,38(14):196-198,202.
[14] 周勇亮,金 燕,何 萍,等.隨機(jī)Hough變換圓檢測累計加速算法[J].計算機(jī)輔助設(shè)計與圖形學(xué)學(xué)報,2014,26(4):574-580.
[15] 霍建亮,曾 翎,王德勝,等.基于最小二乘法改進(jìn)的隨機(jī)圓檢測算法[J].光電工程,2011,38(5):145-150.
[16] 陳寧寧.幾種圖像閾值分割算法的實現(xiàn)與比較[J].電腦知識與技術(shù),2011,7(13):3109-3111.
[17] OHTUS N. A threshold selection method from gray-level histograms[J].IEEETransactionsonSystemsManandCybernetics.1979,9(1):62-66.