易煥銀
摘要:為了解決產(chǎn)品制造企業(yè)對(duì)R型銷(xiāo)的間隙測(cè)量難度大、效率低的問(wèn)題,本文提出了一種基于機(jī)器視覺(jué)的R型銷(xiāo)間隙測(cè)量方法,介紹了測(cè)量方法的整體結(jié)構(gòu),首先利用連通域分析進(jìn)行圖像預(yù)處理并提取對(duì)象邊沿,然后利用Hough變換檢測(cè)外邊沿直線(xiàn)并分區(qū)搜索兩個(gè)較寬間隙端點(diǎn)的大致位置,再利用最小二乘法擬合得到內(nèi)邊沿直線(xiàn)并獲取各間隙拐點(diǎn)的準(zhǔn)確位置,最后搜索各間隙的另一端點(diǎn)并計(jì)算出各間隙的寬度。實(shí)驗(yàn)表明,此方法自動(dòng)適應(yīng)被測(cè)對(duì)象型號(hào)、位置和角度的變化,用C++實(shí)現(xiàn)的該算法平均運(yùn)行時(shí)間約為50 ms。在5個(gè)對(duì)象各100次隨機(jī)擺放的重復(fù)性測(cè)量實(shí)驗(yàn)中,窄、中、寬三間隙的最大絕對(duì)誤差分別為0.038 mm、0.059 mm和0.071 mm,最大相對(duì)誤差分別為3.360%、1.059%和0.670%,滿(mǎn)足企業(yè)實(shí)際應(yīng)用的需要。
關(guān)鍵詞:機(jī)器視覺(jué)R型銷(xiāo)間隙測(cè)量霍夫變換最小二乘法
中圖分類(lèi)號(hào): TP391.4 文獻(xiàn)標(biāo)志碼: A
R-pin Gap Measurement Method Based on Machine Vision
YI Huanyin
(Guangdong Communication Polytechnic, Guangzhou, Guangdong Province, 510800 China)
Abstract: In order to solve the problem of high difficulty and low efficiency in the gap measurement of R-pins by manufacturers, a method for measuring the gap of R-pins based on machine vision is proposed. The overall structure of the measurement method is introduced. Firstly, connected component analysis is used to preprocess the image and the edge of the object is extracted. Then, the Hough transform is used to detect the outer edge line and partitioned search for the approximate positions of the two wide gap endpoints. After that, least square method is used to fit the inner edge straight line and obtain the accurate position of the inflection point of each gap. Finally, the other endpoints of each gap is searched and the width of each gap is calculated. Experiments show that the method automatically adapts to changes in the model, position and angle of the measured object. The average running time of the algorithm implemented in C++ is about 50 ms. In the repeatability measurement experiment with 5 objects each placed 100 times randomly, the maximum absolute errors of the narrow, medium, and wide gaps are 0.038 mm, 0.059 mm and 0.071 mm, and the maximum relative errors are 3.360%, 1.059% and 0.670% respectively, meeting the actual application needs of enterprises.
Key Words: Machine vision; R-pin; Gap measurement; Hough transform; Least square method
R型銷(xiāo),又稱(chēng)B型開(kāi)口銷(xiāo)或彈簧銷(xiāo),作為一種限位類(lèi)零件,因其鎖緊程度高,在汽車(chē)、鐵路、機(jī)械、電力等行業(yè)應(yīng)用廣泛[1]。由于R型銷(xiāo)的間隙大小對(duì)裝配后產(chǎn)品整體的可靠性和運(yùn)行性能有重要影響,因此生產(chǎn)企業(yè)要求在裝配前檢測(cè)其間隙值是否在工藝要求的范圍內(nèi)。而產(chǎn)品或零部件的間隙測(cè)量一直是工業(yè)測(cè)量的痛點(diǎn)問(wèn)題,人工測(cè)量R型銷(xiāo)間隙的方法效率過(guò)低、可重復(fù)性精度不高。
關(guān)于開(kāi)口銷(xiāo)的視覺(jué)檢測(cè)方法,相關(guān)文獻(xiàn)[2-6]基于深度學(xué)習(xí)和傳統(tǒng)圖像處理技術(shù),提出了多種應(yīng)用場(chǎng)景下的開(kāi)口銷(xiāo)缺失、松脫等各類(lèi)缺陷的視覺(jué)檢測(cè)方法。馬官兵等人[7]搭建了一套水下核電廠堆內(nèi)構(gòu)件的控制棒導(dǎo)向筒開(kāi)口銷(xiāo)的超聲檢測(cè)系統(tǒng)。而關(guān)于間隙的工業(yè)測(cè)量方法,張鵬賢等人[8]提出了一種基于激光的管道焊口間隙的視覺(jué)檢測(cè)方法,路亞緹、陳健等人[9-10]提出了基于OpenCV的盾尾間隙視覺(jué)測(cè)量系統(tǒng),張智森等人[11]設(shè)計(jì)了一種測(cè)量柱塞組件軸向間隙的夾具。
為了解決制造企業(yè)檢測(cè)R型銷(xiāo)的各間隙難度大、效率低的問(wèn)題,本文提出了一種基于機(jī)器視覺(jué)的對(duì)R型銷(xiāo)的各間隙進(jìn)行快速、無(wú)接觸的測(cè)量方法,實(shí)現(xiàn)了對(duì)不同型號(hào)和位置隨機(jī)擺放的對(duì)象的自動(dòng)識(shí)別與間隙測(cè)量。經(jīng)過(guò)實(shí)驗(yàn)驗(yàn)證,此方法在速度和精度方面都達(dá)到了企業(yè)實(shí)際應(yīng)用的要求。
1 ?方法設(shè)計(jì)
圖1(a)為典型的R型銷(xiāo),圖1(b)中的h1、h2和h3為待測(cè)量的3個(gè)間隙,p1與p2、p3與p4、p5與 p6分別為h1、h2和h3的2個(gè)端點(diǎn)。
本方法由5個(gè)模塊構(gòu)成,如圖2所示:圖像采集模塊、圖像預(yù)處理模塊、間隙拐點(diǎn)的獲取模塊、各間隙另一端點(diǎn)獲取模塊和各間隙寬度的檢測(cè)與結(jié)果顯示模塊,其中間隙拐點(diǎn)的獲取模塊是核心。圖2中的p1至p6對(duì)應(yīng)于圖1中的p1至p6,直線(xiàn)L1、L2對(duì)應(yīng)于步驟1.3中的L1、L2。
1.1圖像采集
圖像采集模塊用于獲取R型銷(xiāo)的輪廓圖像,包括工業(yè)相機(jī)、鏡頭、視覺(jué)光源和計(jì)算機(jī)等硬件,其中視覺(jué)光源的選型和調(diào)節(jié)是關(guān)鍵。圖3(a)為采集到的原圖,記為f(x,y)。系統(tǒng)采用500萬(wàn)像素的國(guó)產(chǎn)CMOS面陣工業(yè)相機(jī)和亮度可調(diào)的國(guó)產(chǎn)LED背光源,鏡頭采用日本某公司生產(chǎn)的25mm工業(yè)鏡頭。調(diào)光時(shí),在不損傷檢測(cè)對(duì)象邊沿的情況下適當(dāng)增大背景亮度。
1.2 圖像預(yù)處理
預(yù)處理的目的是提取對(duì)象邊沿部分并去除背景中的噪點(diǎn)。
首先,對(duì)原圖f(x,y)進(jìn)行反向二值化處理,得到的圖像g_b (x,y),由式(1)表示,式中T為經(jīng)過(guò)調(diào)光實(shí)驗(yàn)獲得的最優(yōu)閾值。
再對(duì)圖像g_b (x,y)進(jìn)行連通域分析并保留最大連通域以去除對(duì)象外的噪點(diǎn),得到以R型銷(xiāo)為前景的二值化圖像g(x,y),并由g(x,y)得到R型銷(xiāo)的重心G。
其次,分別對(duì)二值圖g(x,y)進(jìn)行形態(tài)學(xué)膨脹和腐蝕操作,結(jié)構(gòu)化元素均使用7×7的矩形,再將二者結(jié)果相減,得到較粗的R型銷(xiāo)邊沿。對(duì)于本問(wèn)題,對(duì)比Canny、Sobel等邊沿提取算法,基于形態(tài)學(xué)的邊沿提取方法所獲取的R型銷(xiāo)的邊沿更加完整、穩(wěn)定。
最后,進(jìn)行連通域分析并保留面積最大的連通域以去除噪點(diǎn),得到R型銷(xiāo)的外邊沿圖g_o (x,y),如圖3(b)所示。此部分獲取較粗的外邊沿是為了保證后續(xù)Hough直線(xiàn)檢測(cè)步驟獲得對(duì)象的外邊沿直線(xiàn)段的完整性。
1.3 間隙拐點(diǎn)獲取
間隙拐點(diǎn)是指3個(gè)間隙在彎曲邊沿上的端點(diǎn),如圖1(b)中的p1、p3、p5所示。3個(gè)間隙拐點(diǎn)的準(zhǔn)確獲取是本問(wèn)題的關(guān)鍵,包括如下7個(gè)步驟。
(1)首先采用概率霍夫變換[12]對(duì)圖3(b)中的g_o (x,y)進(jìn)行直線(xiàn)檢測(cè),然后合并距離相近且?jiàn)A角較小的線(xiàn)段并保留最長(zhǎng)的線(xiàn)段L1,如圖4(a)中的虛線(xiàn)所示。合并的原因是外邊沿的直線(xiàn)段并非嚴(yán)格直線(xiàn)(由圖4(a)可見(jiàn),該對(duì)象外邊沿直線(xiàn)段中間部分有一定的彎曲),Hough直線(xiàn)檢測(cè)無(wú)法獲得外邊沿直線(xiàn)段的完整擬合直線(xiàn),這將導(dǎo)致后續(xù)間隙拐點(diǎn)的檢測(cè)結(jié)果偏差過(guò)大。合并方法為兩兩比較霍夫直線(xiàn)檢測(cè)的輸出線(xiàn)段,若兩線(xiàn)段的中點(diǎn)到另一方所在直線(xiàn)的距離及兩線(xiàn)段之間的夾角都小于各自閾值,則進(jìn)行合并,在兩個(gè)線(xiàn)段的4個(gè)端點(diǎn)中保留距離最大的2個(gè),作為合并后的新線(xiàn)段。
(2)先對(duì)1.2中得到的二值圖g(x,y)進(jìn)行形態(tài)學(xué)腐蝕操作,得到結(jié)果圖g_e (x,y),結(jié)構(gòu)化元素使用3×3的矩形,再將二者結(jié)果相減得到較細(xì)的邊沿圖像g_t (x,y),由式(2)表示。此部分獲取較細(xì)的邊沿是為了保證后續(xù)步驟準(zhǔn)確定位R型銷(xiāo)的邊界以提高測(cè)量結(jié)果的精度。最后求取g_t (x,y)前景的最小外接矩形T,并根據(jù)與L1的位置關(guān)系將矩形T的4個(gè)頂點(diǎn)r0、r1、r2、r3的順序調(diào)整至圖中位置,結(jié)果如圖4(b)所示,其中點(diǎn)c為矩形T的中心,點(diǎn)G為步驟1.2得到的R型銷(xiāo)的重心。
g_t (x,y)=g(x,y)-g_e (x,y) (2)
(3)對(duì)邊沿圖像g_t (x,y)進(jìn)行連通域分析,保留第二大的連通區(qū)域,得到R型銷(xiāo)的內(nèi)邊沿圖,記為g_i (x,y),如圖4(c)中的實(shí)線(xiàn)部分所示。
(4)求取2個(gè)較寬間隙的拐點(diǎn)p1和p5的大致位置p1_a、p5_a。首先,分別求取重心G到三直線(xiàn)r0-r1、r0-r3和r1-r2的垂足PP1、PP2和PP3。然后,由點(diǎn)G、PP1、r0、PP2及G、PP1、r1、PP3得到2個(gè)矩形,圖4(c)中用虛線(xiàn)框繪出,c1、c2為2個(gè)矩形的中心點(diǎn)。最后,遍歷內(nèi)邊沿g_i (x,y)連通域的所有像素,求各矩形框內(nèi)前景點(diǎn)到直線(xiàn)L1距離最大的點(diǎn),即為2個(gè)較寬間隙拐點(diǎn)的大致位置,如圖4(c)中的p1_a、p5_a兩點(diǎn)所示。式(3)為L(zhǎng)1的直線(xiàn)方程,邊界點(diǎn)到直線(xiàn)L1的距離由式(4)表示,其中(x0, y0)為邊界點(diǎn)的坐標(biāo)。由于此步驟分區(qū)搜索是基于位置較為粗略的外邊沿(由步驟1中的Hough直線(xiàn)檢測(cè)并合并相近直線(xiàn)后得到)的條件下進(jìn)行的,因此得到結(jié)果僅為2個(gè)較寬間隙拐點(diǎn)的大致位置。
Ax+By+C=0 (3)
d=|(Ax_0+By_0+C)/√(A^2+B^2 )| (4)
(5)求間隙端點(diǎn)p2、p6的大致位置p2_a、p6_a,并擬合得到內(nèi)邊沿直線(xiàn)段部分的擬合直線(xiàn)L2。首先,將p1_a、p5_a周?chē)》秶昧悖ǚ椒榉謩e以p1_a、p5_a為圓心以10像素為半徑繪制背景色的實(shí)心圓,目的是排除周?chē)厅c(diǎn)對(duì)后續(xù)線(xiàn)搜索步驟的干擾)。然后,求p1_a、p5_a關(guān)于L1的對(duì)稱(chēng)點(diǎn),并從p1_a、p5_a出發(fā)向各自的對(duì)稱(chēng)點(diǎn)方向進(jìn)行線(xiàn)搜索,各自找到的首個(gè)前景點(diǎn)即為間隙端點(diǎn)p2、p6的大致位置p2_a、p6_a。再將p2_a、p6_a周?chē)》秶昧?,進(jìn)行連通域分析后得到的第二大連通域即為p2_a、p6_a之間的內(nèi)邊沿部分。最后,以第二大連通域內(nèi)的所有點(diǎn)為參數(shù)進(jìn)行最小二乘法直線(xiàn)擬合即可得到內(nèi)邊沿直線(xiàn)段的擬合直線(xiàn)L2,結(jié)果如圖4(d)中的直線(xiàn)L2所示。
(6)求取2個(gè)較寬間隙的拐點(diǎn)p1和p5的準(zhǔn)確位置。方法與步驟4類(lèi)似,用直線(xiàn)L2替換直線(xiàn)L1,其他參數(shù)保持不變,即可求得2個(gè)較寬間隙的拐點(diǎn)p1和p5的準(zhǔn)確位置,結(jié)果如圖4(d)所示。
(7)求最窄間隙的拐點(diǎn)p3。首先在細(xì)邊沿內(nèi)邊沿圖像g_i (x,y)中將拐點(diǎn)p1、p5小范圍置零。然后進(jìn)行連通域分析并保留第二大連通域,如圖4(e)所示。最后遍歷連通域的所有像素點(diǎn),求取與直線(xiàn)L2距離最小的點(diǎn)即為最窄間隙拐點(diǎn)p3。最終獲得3個(gè)間隙拐點(diǎn)p1、p3、p5,如圖4(f)所示。
1.4 各間隙另一端點(diǎn)的獲取
首先,將3個(gè)間隙拐點(diǎn)p1、p3、p5周?chē)》秶鷧^(qū)域置零,方法和目的與1.3中的步驟5相同,結(jié)果如圖5(a)所示。然后,求各間隙的另一端點(diǎn)的位置p2、p4、p6。求取p1、p3、p5關(guān)于直線(xiàn)L2的對(duì)稱(chēng)點(diǎn)p11、p31、p51,分別以間隙拐點(diǎn)p1、p3、p5為起點(diǎn),在至p11、p31、p51的線(xiàn)段上進(jìn)行線(xiàn)搜索,找到的第一個(gè)邊界點(diǎn)即為各間隙的另一端點(diǎn)p2、p4、p6,如圖5(b)所示。
(a) 將3個(gè)間隙拐點(diǎn)p1、p3、p5周?chē)》秶昧?(b)利用線(xiàn)搜索得到的各間隙的另一端點(diǎn)p2、p4、p6
圖5 獲取各間隙另一端點(diǎn)的過(guò)程
1.5 各間隙寬度的檢測(cè)與結(jié)果顯示
首先,計(jì)算由1.3和1.4中獲得的各間隙的2個(gè)端點(diǎn)之間的距離,即為各間隙的測(cè)量值。然后,以1.3中獲得的最小外接矩形的長(zhǎng)度為依據(jù)判定R型銷(xiāo)的型號(hào)。最后,獲取該型號(hào)預(yù)設(shè)的閾值信息,并根據(jù)3個(gè)間隙的測(cè)量值是否均在閾值范圍內(nèi),判斷該對(duì)象是否通過(guò)檢測(cè)。
2 ?實(shí)驗(yàn)驗(yàn)證
以5個(gè)R型銷(xiāo)為實(shí)驗(yàn)對(duì)象,先進(jìn)行各個(gè)對(duì)象水平放置條件下的單次測(cè)量實(shí)驗(yàn),再進(jìn)行位置和角度隨機(jī)擺放條件下的測(cè)量結(jié)果可重復(fù)性實(shí)驗(yàn)。檢測(cè)系統(tǒng)基于MFC和OpenCV開(kāi)發(fā)實(shí)現(xiàn),實(shí)驗(yàn)中像素當(dāng)量(pixel equivalent)測(cè)定為0.0278 mm/pix,即采集圖像中的每個(gè)像素對(duì)應(yīng)視野中的實(shí)際物理尺寸為0.0278 mm。
首先,將5個(gè)R型銷(xiāo)均在水平擺放的條件下,采用提出的方法對(duì)各個(gè)間隙進(jìn)行測(cè)量,以物理接觸式探針設(shè)備測(cè)量的結(jié)果作為各間隙的實(shí)際值,測(cè)量和誤差計(jì)算結(jié)果如表1所示。
由表1可見(jiàn),在最大絕對(duì)誤差方面,窄間隙為0.023 mm,中間隙為0.026 mm,寬間隙為0.043 mm。在最大相對(duì)誤差方面,窄間隙為2.034%,中間隙為0.467%,寬間隙為0.406%。最大絕對(duì)誤差和最大相對(duì)誤差都達(dá)到了企業(yè)應(yīng)用的精度要求。雖然窄間隙的最大絕對(duì)測(cè)量誤差最小,但由于窄間隙的實(shí)際值較小,因此最大相對(duì)誤差較大。
其次,為了驗(yàn)證方法在不同擺放條件下測(cè)量結(jié)果的可重復(fù)精度,將上述5個(gè)R型銷(xiāo)分別隨機(jī)擺放至100個(gè)不同的位置后進(jìn)行測(cè)試,共得到500組實(shí)驗(yàn)數(shù)據(jù),測(cè)量數(shù)據(jù)及誤差的統(tǒng)計(jì)結(jié)果如表2所示。算法平均運(yùn)行時(shí)間約為50 ms,速度上完全滿(mǎn)足企業(yè)應(yīng)用的需要。
由表2可見(jiàn),100次隨機(jī)擺放的測(cè)量結(jié)果偏差較小,在最大絕對(duì)誤差方面,窄間隙為0.038 mm,中間隙為0.059 mm,寬間隙為0.071 mm。在最大相對(duì)誤差方面,窄間隙為3.360%,中間隙為1.059%,寬間隙為0.670%。相對(duì)于水平擺放測(cè)試,100次隨機(jī)擺放條件下測(cè)量數(shù)據(jù)的最大絕對(duì)誤差和最大相對(duì)誤差都有所增大,但依然在企業(yè)實(shí)際應(yīng)用的允許波動(dòng)范圍內(nèi)。導(dǎo)致誤差增加的主要原因是不同擺放條件下成像的邊界差異。
3 ?結(jié)語(yǔ)
根據(jù)制造企業(yè)的生產(chǎn)工藝需求,本文設(shè)計(jì)了一種對(duì)R型銷(xiāo)間隙進(jìn)行快速測(cè)量的視覺(jué)方法。通過(guò)將對(duì)象邊沿分割并獲取各段邊沿到內(nèi)邊沿?cái)M合直線(xiàn)的極值得到各間隙拐點(diǎn),再利用線(xiàn)搜索獲得各間隙的另一端點(diǎn)并計(jì)算出間隙值。此方法自動(dòng)識(shí)別不同型號(hào)的R型銷(xiāo),且支持被測(cè)對(duì)象任意擺放。通過(guò)實(shí)驗(yàn)驗(yàn)證,此方法運(yùn)行速度較快、精度較高,與傳統(tǒng)的人工測(cè)量方法相比,基于此方法實(shí)現(xiàn)的檢測(cè)系統(tǒng)在測(cè)量精度和檢測(cè)效率方面具有明顯的優(yōu)勢(shì),達(dá)到了生產(chǎn)企業(yè)的實(shí)際應(yīng)用要求。
參考文獻(xiàn)
[1] 張攀,張勇,榮溪超,等. R型銷(xiāo)類(lèi)零件裝配到位判定方法[J].上海計(jì)量測(cè)試,2019,46(3):47-49.
[2] 閔鋒,郎達(dá),吳濤.基于語(yǔ)義分割的接觸網(wǎng)開(kāi)口銷(xiāo)狀態(tài)檢測(cè)[J].華中科技大學(xué)學(xué)報(bào):自然科學(xué)版,2020,48(1):77-81.
[3] 王健,羅隆福,鄒津海,等.基于圖像識(shí)別的高鐵接觸網(wǎng)緊固件開(kāi)口銷(xiāo)故障分類(lèi)方法[J].電氣化鐵道,2020,31(2):45-49.
[4] 王昕鈺,王倩,程敦誠(chéng),等.基于三級(jí)級(jí)聯(lián)架構(gòu)的接觸網(wǎng)定位管開(kāi)口銷(xiāo)缺陷檢測(cè)[J].儀器儀表學(xué)報(bào),2019,40(10):74-83.
[5] 鐘俊平,劉志剛,陳雋文,等.高速鐵路接觸網(wǎng)懸掛裝置開(kāi)口銷(xiāo)不良狀態(tài)檢測(cè)方法研究[J].鐵道學(xué)報(bào),2018,40(6):51-59.
[6] 崔耀林.基于深度自編碼網(wǎng)絡(luò)的接觸網(wǎng)開(kāi)口銷(xiāo)缺失識(shí)別[J].電氣化鐵道,2019,30(3):43-47.
[7] 馬官兵,丁輝,王韋強(qiáng),等.核電廠控制棒導(dǎo)向筒開(kāi)口銷(xiāo)超聲檢測(cè)系統(tǒng)設(shè)計(jì)開(kāi)發(fā)[J].核動(dòng)力工程,2021,42(2):144-147.
[8] 張鵬賢,韋志成,劉志輝.管道焊口間隙量與錯(cuò)邊量的激光視覺(jué)檢測(cè)[J].焊接學(xué)報(bào),2018,39(11):103-107,133-134.
[9] 路亞緹,徐智良.基于Labview的視覺(jué)盾尾間隙測(cè)量系統(tǒng)研究[J].現(xiàn)代隧道技術(shù),2020,57(1):197-202.
[10] 陳健,周兆釗,劉飛香,等.基于盾構(gòu)機(jī)盾尾間隙空間結(jié)構(gòu)的視覺(jué)測(cè)量研究[J].機(jī)床與液壓,2020,48(19):116-121,107.
[11] 張智森,趙勇,康林春,等.某型柱塞組件軸向間隙測(cè)量夾具優(yōu)化設(shè)計(jì)[J].組合機(jī)床與自動(dòng)化加工技術(shù),2016(10):140-141,144.
[12] J. MATAS,C. GALAMBOS,J. KITTLER.Robust detection of lines using the progressive probabilistic Hough transform[J].Computer Vision & Image Understanding,2000,78(1):119-137.