王紫陽,劉海生,肖光潤,晏 濤,劉德政,王中任
(湖北文理學院機械工程學院,湖北 襄陽441053)
在工業生產中,工件的孔距測量在確保工件裝配精度和裝配精度中有著重要作用,但是傳統的檢測方法不能直接測量出孔距,而且檢測時間長,檢測準確度不高。檢測孔間距的一般辦法是應用三坐標測量儀,但這種精密設備一般用于恒溫測量室,不便于在線檢測。相較于三坐標測量機,視覺測量速度更快,適合于工業現場[1]。
在機器視覺的在線檢測中,往往因為光學成像系統帶來的誤差使得測量的精度得不到提高,而且給數據的處理帶來了很大的難度,為解決這一問題雙遠心鏡頭應運而生,因其具有高分辨率、超寬景深、低畸變等光學特性而被廣泛使用,所以,遠心測量系統在一定程度上解決了使用一般工業鏡頭在視差和圖像畸變對測量精度的影響。同時,它可以在一定的物距范圍內,使得圖像放大倍率不隨物距變化而變化[2]。因此,適合對小型零件進行精密快速測量。
如圖1所示,為課題組自主開發的雙遠心測量系統。遠心鏡頭一般分為物方遠心鏡頭、像方遠心鏡頭。雙遠心鏡頭綜合了物方遠心鏡頭和像方遠心鏡頭的優點,對微小的物距和像距變化均不敏感[3-4],因此,具有區別于普通鏡頭的優越特性:低畸變、恒大放大倍率、大景深等,因此在機器視覺非接觸測量領域中應用廣泛常采用特殊設計的遠心鏡頭來避免傳統鏡頭的透視畸變[5]。如表1所示,為相機和遠心鏡頭的詳細參數。

圖1 雙遠心測量系統

表1 相機和鏡頭詳細參數
實驗選用明場漫射背光照明,明場漫射背光照明在光源前面按有漫射板,光源采用LED平板,光源安放在被測物體的后面,背光方式只顯示不透明物體的輪廓,這樣可以有效避免使用正面照明造成的反射,當測量孔距時需要通過找到每一個孔的輪廓確定圓心位置,背光源打光時工件輪廓邊緣清晰。明場漫射背光原理如圖2所示。因為自然光不是單色光,圖像處理復雜,所以光源選用藍色光源,藍光的波長在430~480 nm之間,波長適中,常用作鋁制品或鋼制品的光源。

圖2 明場漫射背光照明原理
如圖3所示,為二維視覺測量的一般算法步驟,先進行相機標定,把像素值轉變為公制單位,然后獲取工件圖片,進行圖像的濾波和分割等預處理,進而擬合亞像素邊緣,再通過數據處理,可以獲得測量尺寸,通過標定結果把像素值轉變為公制單位。

圖3 視覺測量算法步驟
視覺里面常規的鏡頭都存在著畸變,所以常規的鏡頭標定需要拍若干張標定板的圖片通過算法得到相機的內參和外參去矯正畸變的圖像,把像素圖像坐標轉化到世界坐標,但是遠心鏡頭畸變很小可忽略不計,只需得到像素對應的實際距離即可,選用60*60的高精度標定板,相鄰圓心間距為7.5 mm,實際距離除像素距離得到每個像素代表的實際距離。得到的標定結果為Pi=0.058 mm.如圖4所示,為系統采集到的圖像。

圖4 采集的圖像
為保證測量的精度,對圖片采用高斯濾波進行預處理,去除圖片中一些小的噪聲點的影響。
使用全局閾值對圖片進行分段,利用threshold()算子閾值取80~255之間對圖像進行二值化定位出所有孔的位置。閾值從輸入圖像中選擇像素,其灰色值g滿足以下條件:

滿足條件的圖像的所有點都作為一個區域返回。如果超過一個灰色值間隔(MinGray和MaxGray的元組),則每個間隔返回一個單獨的區域。這里MinGray和MaxGray分別賦值為80和255.
但是由于二值化只能較簡單的得到各個孔的位置并不能很好的取出孔洞的邊緣位置所以接著運用gray_dilation()進行灰度膨脹得到精度更高的孔洞邊界。灰度膨脹,根據圖像區域的灰度值膨脹區域,在像素位置x上的一個結構化元素s的灰色值膨脹被定義為:
灰度膨脹之后為得到精度較高的孔洞輪廓,利用edges_sub_pix()算子提取亞像素邊緣輪廓。亞像素精度輪廓表示圖像兩個區域之間的邊界,這兩個區域中的一個區域的灰度值大于灰度值閾值gsub而另一個區域的灰度值小于gsub.
得到完整的孔洞邊緣后進行圓擬合,先將輪廓上的所有點到擬合圓的平方距離進行連加求和,然后使求得的總合最小化。
圓擬合過后,孔間距等效成為圖像中圓的中心距離通過area_center()算子得到每一個孔洞圓形區域的中心點坐標。
得到了孔洞之間的中心坐標之后,孔距就是中心坐標之間的距離,也就是點與點之間的距離,利用distance_pp()算子計算出最后的孔距。

如圖5所示,為三坐標測量圖。三坐標的測量精度遠高于人工卡尺測量,故把三坐標的測量結果設定為標準值,人工卡尺測量和視覺測量結果與三坐標測量結果進行比對,計算出測量的精度誤差。

圖5 三坐標測量圖
通過area_center()算子得到各個孔的中心坐標之后利用distance_pp算子公式:

如圖6所示,算子求得的是像素距離,像素距離和Pi的乘積就是所求的實際距離。

圖6 測量效果圖
如圖7所示,實際測量并不能直接求得圓心,可通過游標卡尺量取相鄰兩孔的最近端與最遠端取平均值的方法求得孔間距。每一組孔間距進行五組測量,取平均值,獲得人工測量值。

表2給出了測量結果和誤差比較。把兩種測量結果與三坐標測量結果進行對比,通過計算比較誤差大小。經計算,視覺的平均誤差為0.004 mm,人工卡尺測量的平均誤差為0.34 mm.另外,采用圖像測量方法,測量用時為0.78 s,遠遠快于三坐標測量機。

表2 測量數據比較
本文提出了一種利用雙遠心鏡頭進行精密測量孔距的方法。實驗結果表明,遠心鏡頭在輪廓測量時十分有效,在明場漫射背光照明的條件下,利用雙遠心視覺測量系統可以得到比人工接觸式測量誤差更小的測量結果,在工件二維精密測量方面有有一定的應用價值。