





摘" 要: 節(jié)流閥的閥芯座通孔處毛刺極易劃傷閥芯,導(dǎo)致節(jié)流效果削弱,直接影響產(chǎn)品質(zhì)量。為了準(zhǔn)確檢出毛刺不合格工件,提出一種基于機器視覺的毛刺檢測方法。經(jīng)過圖像采集、圖像預(yù)處理后得到毛刺圖像,而后對毛刺圖像進行邊緣檢測,利用最小二乘法擬合圓,得到圓心坐標(biāo)和半徑,掃描毛刺邊緣輪廓,找到離圓心最近的像素點,即為毛刺最大高度點,檢出不合格工件。實驗表明,該檢測方法能準(zhǔn)確檢測出毛刺不合格的工件,具有一定的應(yīng)用價值。
關(guān)鍵詞: 機器視覺; 毛刺檢測; 改進濾波; 邊緣檢測; 最小二乘法擬合
中圖分類號:TP391.41" " " " " 文獻標(biāo)識碼:A" " "文章編號:1006-8228(2023)12-72-05
Research on burr detection of valve core seat based on machine vision
Wang Yaocan1,2, Liu Yisheng1,2, Zhu Yuhua2, Wang Weidong2
(1. School of Mechanical Engineering, Zhejiang Sci-Tech University, Hangzhou, Zhejiang 310000, China;
2. Xinchang Research Institute, Zhejiang Sci-Tech University)
Abstract: The burrs at the through-hole of the throttle valve core seat can easily scratch the valve core, resulting in weakening the throttling effect and directly affecting the product quality. To accurately detect defective burrs on workpieces, a burr detection method based on machine vision is proposed. The burr image is obtained after image acquisition and preprocessing. Edge detection is performed on the burr image, and the least squares method is used to fit the circle to obtain the center coordinates and radius. Scanning the burr edge contour and finding the pixel point closest to the center of the circle, the maximum height point of the burr is obtained, thereby detecting the unqualified workpieces. Experiments show that this detection method can accurately detect defective workpieces with burrs, and has certain application value.
Key words: machine vision; burr detection; improved filtering; edge detection; least squares fitting
0 引言
由于閥芯座通孔處毛刺的細(xì)小和粘連,人工難以用肉眼分辨毛刺是否在合格范圍內(nèi),傳統(tǒng)的利用機械結(jié)構(gòu)檢測的方法會存在較多的誤判情況,機器視覺已經(jīng)廣泛應(yīng)用于金屬表面的缺陷檢測[1]。但是關(guān)于閥芯座通孔處毛刺的檢測方法較少,同時也缺乏毛刺高度判定的專機方案。針對圓周處的缺陷,傳統(tǒng)的毛刺特征提取有一定的局限性,容易丟失信息,范劍英[2]等人根據(jù)銅排毛刺形態(tài)不同進行分類,對比特征提取和檢測輪廓的算法,防止細(xì)小毛刺的誤判,但是外接矩形并不適用圓周處的毛刺特征,由于毛刺的粘連,會導(dǎo)致框選區(qū)域很大而毛刺高度很小的情況;Hough變換實現(xiàn)圓檢測[3]是一種很經(jīng)典的視覺檢測方法,但是當(dāng)圓周處存在大量毛刺或者缺陷干擾時,圓的檢測存在較大困難。對此,葉峰等人提出一種有序的Hough變換圓檢測算法,該算法將隨機采樣邊緣點變?yōu)楸閰査阉鱗4],雖然有較強的抗干擾性,但該算法計算量較大;周顯恩等人利用三圓周定位啤酒瓶瓶口的檢測區(qū)域得到圓心[5],極坐標(biāo)展開后再進行特征提取,該方法較為準(zhǔn)確地定位了缺陷的位置信息,但檢測步驟繁瑣,不太適用于圓周處毛刺的檢測。
本文針對閥芯座通孔處的毛刺,提出一種視覺檢測方法。通過圖像預(yù)處理和閾值分割實現(xiàn)毛刺可視化,對毛刺區(qū)域進行邊緣檢測,利用最小二乘法擬合圓;在計算毛刺高度時,將邊界矩形高度問題轉(zhuǎn)化為像素點到擬合圓圓心的距離問題,對比毛刺高度合格范圍,檢測出不合格工件。
1 檢測系統(tǒng)設(shè)計
1.1 系統(tǒng)組成
檢測系統(tǒng)由CCD工業(yè)相機、變焦鏡頭、環(huán)形光源、檢測臺和計算機組成,該檢測系統(tǒng)示意圖如圖1所示。
圖1中包括:(1)工業(yè)相機、(2)變焦鏡頭、(3)環(huán)形光源、(4)待檢測工件、(5)檢測臺、(6)計算機。
1.2 硬件選擇
由于閥芯座為黃銅材質(zhì),光源直射時會反光,不利于后續(xù)的圖像處理,故置物臺上放置一張黑色背景紙,光源采用環(huán)形LED光源。為了拍到清晰的毛刺圖片,相機采用輸出像素800萬的工業(yè)相機,鏡頭采用4-12mm變焦鏡頭。
2 圖像處理模塊設(shè)計
圖像處理模塊首先通過工業(yè)相機模組采集圖像,再進行圖像預(yù)處理,而后得到毛刺圖像,進行邊緣檢測,利用最小二乘法擬合圓,OPTICS算法進一步降低擬合誤差。
2.1 圖像預(yù)處理
2.1.1 濾波算法分析
在圖像采集過程中,由于工作環(huán)境、傳輸器件等因素的影響,圖像不可避免地會出現(xiàn)失真與噪聲的情況。故需要利用濾波算法來抑制噪聲、消除失真。常見的濾波算法有均值濾波、雙邊濾波、中值濾波等,在消除噪聲的同時,要保留圖像的邊緣特征。均值濾波在去噪聲的同時會破壞圖像的細(xì)節(jié)部分,從而使圖像變得模糊[6],而雙邊濾波是綜合考慮空間信息和灰度信息的濾波方式,很好地保護了圖像的邊緣信息。考慮到毛刺的檢測需著重處理圖像邊緣特征細(xì)節(jié),所以本文采用改進的中值濾波和雙邊濾波結(jié)合[7]。該算法流程如圖2所示。
2.1.2 圖像分割
圖像分割是通過分析圖像像素的灰度值、圖像各部分的紋理特性、多譜特性、幾何形狀等,從而將圖像分割成若干區(qū)域的算法。本文采用基于閾值的分割算法。該算法將每個像素的灰度值排列起來,并設(shè)定一個灰度分割閾值,當(dāng)掃描至一個像素點時,若該像素點灰度值小于分割閾值,則賦值0;若該像素點灰度值大于或等于分割閾值,則賦值255。如此得到一張二值化圖像。但是這個方法比較依賴分割閾值的選擇,所以本文將結(jié)合灰度直方圖,提出一種自適應(yīng)選擇閾值的方法,從而完成圖像分割。
該方法將灰度直方圖分為兩個部分,一部分為目標(biāo)的灰度值,另一部分為背景的灰度值,兩部分之間的方差值最大,就說明兩部分灰度值差別最大,便可得出最佳灰度閾值。步驟如下:
設(shè)圖像像素的灰度域為[Q],初始的分割閾值為[q],將圖像分為目標(biāo)灰度區(qū)域[G1]和背景灰度區(qū)域[G2]兩個部分,設(shè)[G1]和[G2]分別占像素灰度域的比例為[p1]和[p2],設(shè)[G1]和[G2]區(qū)域的平均灰度值為[μ1]和[μ2]。類間方差[8][σ2]計算式如下:
[σ2=p1p2(μ1-μ2)2]" "⑴
將分割閾值[q]在灰度域[Q]的范圍內(nèi)進行變化,使得類間方差[σ2]的值最大,求得的最佳分割閾值[q]為:
[q=arg maxq?Qσ2]" "⑵
根據(jù)找到的最佳分割閾值進行圖像分割,為了更準(zhǔn)確地進行邊緣檢測,截取經(jīng)過兩次濾波的二值圖像通孔區(qū)域200x200的部分圖像,樣品圖也做以上操作。將待檢測工件二值圖減去樣品二值圖,得到毛刺二值圖像。
2.2 邊緣檢測
為了得到毛刺的高度及位置信息,就需要對其進行邊緣檢測。常用的幾種典型邊緣檢測方法有:Roberts算子邊緣檢測、Sobel算子邊緣檢測、Prewitt算子邊緣檢測、Log算子邊緣檢測和Canny算子邊緣檢測[9]。結(jié)合以上檢測方法的優(yōu)劣性,本文選擇Canny算子進行邊緣檢測。Canny算子利用高斯函數(shù)的一階導(dǎo)數(shù),把邊緣檢測問題轉(zhuǎn)化成檢測單位函數(shù)極大值的問題,首先選擇高斯濾波算法對圖像進行平滑處理[10],然后利用非極大值抑制技術(shù)對濾波后的圖像做處理,最后得到邊緣圖像,步驟如下:
高斯濾波算法處理:將原圖像的二維函數(shù)和高斯濾波器的二維函數(shù)卷積得平滑圖像二維函數(shù),計算式如下,其中[G(x,y)]為高斯函數(shù),[F(x,y)]為原圖像函數(shù),[I(x,y)]為經(jīng)平滑處理后的圖像函數(shù)。
[G(x,y)=exp(-x2+y22σ2)]" "⑶
[I(x,y)=F(x,y)*G(xy)]" "⑷
像素梯度計算:設(shè)邊緣像素點的法線方向為[ω],該像素點的梯度大小為[gω],算式如下:
[gω=(I(x+1,y)-I(x-1,y)2)2+(I(x,y+1)-I(x,y-1)2)2]" ⑸
非極大值抑制處理:當(dāng)圖像經(jīng)過平滑處理后,比較相鄰邊緣像素點在梯度方向上的大小,若為極大值,則保留該像素點,若不是極大值則抑制該像素點。
檢測邊緣:連接所有的“極大像素點”,完成邊緣檢測。
2.3 最小二乘法擬合
由于毛刺是沿著圓周排列,利用邊界矩形內(nèi)核去框選毛刺時,會導(dǎo)致真實毛刺高度較低,邊界矩形高度較高的情況,影響實驗結(jié)果。故采用最小二乘法[11]對圓周處的像素點進行擬合,得到圓心坐標(biāo)和半徑。該方法步驟如下。
圓的表達式如下,其中圓心坐標(biāo)為[(A,B)]。
[R2=(x-A)2+(y-B)2]" " ⑹
式⑹也可表達為式⑺,其中[a=-2A],[b=-2B],[c=A2+B2-R2]。
[x2+y2+ax+by+c=0]" "⑺
對圓周處的像素點進行采樣,設(shè)樣本集為[(xi,yi)],圓周處的像素點坐標(biāo)到圓心的距離為[di],表達式如下:
[di=(xi-A)2+(yi-b)2]" " ⑻
最小二乘法原理是通過使實際數(shù)據(jù)與計算數(shù)據(jù)之間誤差的平方和最小,從而得到計算數(shù)據(jù)。為方便計算,本文以圓周處的像素點坐標(biāo)到圓心的距離[di]的平方和半徑R的平方做最小二乘法,計算式如下:
[ρi=di2-R2=xi2+yi2+axi+byi+c]" "⑼
設(shè)[P(a,b,c)]為[ρ]的平方和,只要使[P(a,b,c)]的值最小,便可得到a、b、c的值,計算式如下:
[P(a,b,c)=ρi2=(xi2+yi2+axi+byi+c)2]" ⑽
2.4 OPTICS算法
OPTICS是一種基于密度的聚類算法[12],其核心思想為:取數(shù)據(jù)集中任意點,將其鄰域內(nèi)的所有點按照可達距離信息進行增廣排列,從而反映簇結(jié)構(gòu)。以下將簡要介紹核心對象、核心距離、可達距離、直接密度可達對象的定義。核心對象定義:任意點[P]在鄰域[ε]內(nèi)樣本點[M]的個數(shù)大于或等于點數(shù)閾值[M],則點[P]為核心對象。核心距離定義:使點[P]成為核心對象的最小鄰域[ε]半徑,稱為核心距離。可達距離定義:若點[P]為核心對象且到點[X]的距離小于核心距離,則可達距離為核心距離,反之,則可達距離為點[P]到點[X]的實際距離。直接密度可達對象定義:若點[P]為核心對象,點[Q]為點[P]鄰域[ε]上的一點,稱對象點[Q]為點[P]的直接密度可達對象。OPTICS算法步驟如圖3所示。
將樣本集[D(xi,yi)]中的任意點按其鄰域[ε]內(nèi)其他對象可達距離升序排序,并不斷修正有序隊列,所有樣本點就會向著密集區(qū)擴張,從而分離奇異點。對輸出的結(jié)果隊列做最小二乘法,能進一步降低擬合誤差。根據(jù)以上方法代碼實現(xiàn)后,就可以生成擬合圓。
3 實驗結(jié)果分析
為了驗證本文提出的算法,基于C++語言,在OpenCV平臺上做驗證實驗。提取出毛刺及計算毛刺高度。實驗步驟如下:
圖4(a)為采集到的原圖像,濾波處理后得到圖4(b)和圖4(c),圖5(a)為經(jīng)過圖像分割之后的二值圖,為了對比濾波效果,分別設(shè)置左圖為只進行改進中值濾波的二值圖,右圖為進行了兩次濾波的二值圖。可以看出,結(jié)合兩種濾波算法更能抑制噪聲,二值化效果更好。截取圖5(a)二值圖像通孔區(qū)域200x200的部分圖像,得到圖5(b),為了得到毛刺的二值圖像。將待檢測工件和樣品的二值圖相減得到圖6(a),對毛刺二值圖進行邊緣檢測得到圖6(b),對邊緣檢測圖像進行最小二乘法擬合,得到擬合圓,如圖6(c)所示。
掃描圖6(c)邊緣輪廓的所有像素點,找到離擬合圓圓心最近的像素點,打印最短距離信息,如圖7所示。
將擬合圓的半徑取整為61個像素單位,邊緣輪廓像素點離圓心的最短距離取整為46個像素單位,不難得出最大毛刺的高度為15個像素單位。游標(biāo)卡尺測得通孔直徑為3.05mm,根據(jù)比例關(guān)系得最大毛刺高度為0.375mm,實際測量最大毛刺高度為0.41mm,相對誤差為8.5%,其中游標(biāo)卡尺為電子數(shù)顯。
表1為6個樣品工件的測量結(jié)果,其中已知工件1、2、3為毛刺合格品,工件4、5、6為毛刺不合格品,p為像素單位且均取整數(shù)。
經(jīng)過實驗驗證,毛刺的合理范圍應(yīng)小于0.3mm,對應(yīng)的像素單位取整為11,相對誤差為7%~10%。實驗基于擬合圓的圓心及半徑信息來判定檢測高度,雖然最小二乘法已經(jīng)很大程度上優(yōu)化了誤差,但仍然會存在一定的擬合誤差和人工測量誤差,對此,可利用聚類算法,在對圓周處像素點采樣時,排除奇異點,進一步降低擬合誤差。
4 結(jié)束語
此研究基于C++開發(fā)語言,在Ubuntu系統(tǒng)上配置OpenCV庫,進行了驗證實驗,驗證了閥芯座毛刺檢測方法的可行性,后續(xù)的研究中,應(yīng)提高程序的穩(wěn)定性,優(yōu)化檢測系統(tǒng),確保能應(yīng)用于實際生產(chǎn)。
本文的研究主要包括以下方面:
⑴ 濾波算法采用結(jié)合了經(jīng)過改進的中值濾波和雙邊濾波的算法,在噪聲抑制方面效果顯著,并且很好地保留了圖像中目標(biāo)物的邊緣信息。
⑵ 采用基于閾值的圖像分割算法,得到二值化圖像后,提取毛刺部分圖像,將待檢測圖像減去樣品圖像,得到毛刺圖像,該方法能獲得毛刺信息。
⑶ 對毛刺圖像進行的邊緣檢測,得到邊緣檢測圖像;對圖像圓周處的像素點采樣并進行最小二乘法擬合圓,得到圓心坐標(biāo)和半徑。
⑷ 掃描邊緣像素,找到離圓心坐標(biāo)最近的像素點,即為毛刺最大高度點,計算并打印最大高度。經(jīng)實驗得出合理的毛刺范圍應(yīng)小于11個像素單位,相對誤差為7%~10%。
參考文獻(References):
[1] Tang Bo,Chen Li,Sun Wei,Lin Zhongkang. Review of
surface defect detection of steel products based on machine vision[J]. IET Image Processing,2022,17(2).
[2] 范劍英,劉力源,趙首博.電機銅排表面毛刺缺陷檢測技術(shù)
研究[J].儀器儀表學(xué)報,2019,40(3):14-22.
[3] 林金龍,石青云.用點Hough變換實現(xiàn)圓檢測的方法[J].計算
機工程,2003(11):17-18,160.
[4] 葉峰,陳燦杰,賴乙宗,等.基于有序Hough變換的快速圓檢測
算法[J].光學(xué)精密工程,2014,22(4):1105-1111.
[5] 周顯恩,王耀南,李康軍,等.一種多次隨機圓檢測及擬合度
評估的瓶口定位法[J].儀器儀表學(xué)報,2015,36(9):2021-2029.
[6] Nabahat Mehrdad,Modarres Khiyabani Farzin,Jafari
Navmipour Nima. Optimization of bilateral filter parameters using a whale optimization algorithm[J]. Research in Mathematics,2022,9(1).
[7] Shelke Sandeep K.,Sinha Sanjeet K.,Patel Govind Singh.
Development of complete image processing system including image filtering, image compression amp; image security[J]. Materials Today: Proceedings,2023,80(P3).
[8] 汪海洋,潘德爐,夏德深.二維Otsu自適應(yīng)閾值選取算法的
快速實現(xiàn)[J].自動化學(xué)報,2007(9):968-971.
[9] 戴鳳強,劉濤,王宏波,等.基于機器視覺的工件邊緣毛刺檢測
系統(tǒng)研究[J].農(nóng)業(yè)裝備與車輛工程,2018,56(7):43-47.
[10] 于新善,孟祥印,金騰飛,等.基于改進Canny算法的物體邊
緣檢測方法[J/OL].激光與光電子學(xué)進展:1-19[2023-05-19].http://kns.cnki.net/kcms/detail/31.1690.TN.20230309.1733.054.html.
[11] Zhou Jiajia,Qu Gangrong. Accelerated convergence
strategy of weighted least squares method for image reconstruction[J]. Communications in Nonlinear Science and Numerical Simulation,2023,117.
[12] 周傳華,魯勇,于猜.基于數(shù)據(jù)分區(qū)的OPTICS聚類算法[J].
傳感器與微系統(tǒng),2022,41(10):103-107.