廖延娜 范坤
摘 要: 精密工件在生產和運輸過程中其表面會產生缺陷,長度和深度達到一定值的缺陷會影響設備的運行。傳統的缺陷檢測只是檢測缺陷并未考慮缺陷長度和深度因素,因此提出將激光測距應用于表面缺陷檢測。首先用激光輪廓儀獲得的距離數據重建工件表面圖像,再利用數字圖像處理相關理論及OpenCV計算機視覺技術提取重建圖像中缺陷像素位置信息并與實際距離數據對應,進而計算出缺陷的參考長度和深度。經過大量重復試驗,缺陷的參考長度和人工使用游標卡尺測量的長度誤差小于0.1 mm,參考深度穩定,檢測速度快,具有一定的應用價值。
關鍵詞: 激光測距; 圖像重建; 缺陷檢測; OpenCV
中圖分類號: TN98?34; TP391.9 文獻標識碼: A 文章編號: 1004?373X(2017)22?0145?04
Abstract: The defect may be produced on the surface of precision workpiece in production and transportation process, which will affect the operation of equipment when the length and depth of the defect reach a certain value. The traditional defect detection does not take into account the length and depth, so the laser range?finding is applied to the surface defect detection. The laser contourgraph is used to get the distance data to reconstruct the image of the workpiece surface. The correlation theory of digital image processing and OpenCV computer visual technology are adopted to extract the defect pixel′s location information in the reconstructed image. The location information is corresponded to the practical distance data to calculate the reference length and depth of the defect. The results of a large number of repeated experiments show that the error between the defect′s reference length and the length measured with vernier caliper is less than 0.1 mm, the reference depth is stable, and the laser range?finding has fast detection speed and a certain application value.
Keywords: laser range?finding; image reconstruction; defect detection; OpenCV
0 引 言
精密工件在工業設備中應用廣泛,其質量的好壞關系到工業設備的安全運行。生產和運輸過程中的諸多因素易使工件表面產生缺陷。缺陷的長度和深度達到一定值才會對工業設備運行產生危害。因此需要測量出缺陷長度和深度,作為分揀缺陷工件的依據。傳統的檢測方法是通過工人肉眼來檢測工件表面是否有缺陷存在,再用游標卡尺測量缺陷的長度和深度。這種人工檢測方法的缺點顯而易見,對于較淺缺陷的深度無法有效測量,工作量大,效率低,易受檢測人員主觀因素影響,造成誤檢或漏檢。如果操作不慎,還會對工件表面造成二次損害[1]。
目前,無損檢測方法(超聲檢測、光電檢測,機器視覺等)[2?3]在缺陷檢測中廣泛應用。文獻[4]提出利用分段線性灰度算法對表面微小缺陷進行增強,再結合最大熵來實現對表面缺陷的自動分割,最后采用投影原理和二維聯合統計算法完成對缺陷的快速提取和區域歸類。文獻[5]提出一種雙圖像傳感器的表面全展開方法,在此基礎上搭建系統實現表面缺陷檢測。上述缺陷檢測方案雖能檢測出表面缺陷,但卻沒有給出缺陷長度和深度。因此將激光測距應用于工件表面缺陷檢測,計算出缺陷參考長度和深度值為分揀提供依據。缺陷參考長度是指缺陷外接矩形對角線的長度,參考深度是指缺陷區域距離差矩陣的最大值。
1 激光測距
系統的硬件部分是由超高速激光輪廓儀、伺服電機、PLC、上位機組成,如圖1所示。
上位機向輪廓儀和PLC發出指令。輪廓儀按照設定采樣頻率向待測工件表面發射平行激光束,下方的伺服電機在PLC的控制下帶動待測工件先水平轉動1周,輪廓儀將獲得的1組距離數據傳給上位機處理。左方的伺服電機將待測工件旋轉固定角度繼續重復上述步驟直至激光帶覆蓋整個待測工件表面。
2 圖像重建算法
為了檢測待測工件表面缺陷并得到缺陷的參考長度和深度值,需要將激光輪廓儀采集到的各組距離數分別重建成圖像。
2.1 一組距離數據
超高速激光輪廓儀內建[x]軸和[z]軸。如圖2所示,[x]軸和輪廓儀基準軸線重合。[TL]到[TH]上均等分布著[k]個采樣點,輪廓儀發射1次平行激光束到待測工件表面將得到[p1,p2,…,pk]共[k]個距離數據。當下方伺服電機轉動時,激光輪廓儀按照設定的采樣頻率繼續發射平行激光束到待測工件表面,上位機得到光帶掃過工件表面位置的距離數據。若工件赤道周長為[c]毫米,下方伺服電機轉速為[r]毫米/秒,激光輪廓儀采樣頻率為[f]赫茲,則待測工件完成一周轉動后,上位機得到endprint
2.2 圖像重建
3 缺陷檢測
3.1 圖像預處理
重建圖像的過程中難免引入噪聲,因此首先對重建的圖像進行平滑處理。鄰域平均法即用一片圖像區域的各個像素的均值來代替原圖像中的各個像素值。設原始圖像為[f(x,y)],卷積核為[G(i,j)],卷積核的大小為3×3,處理后的圖像為[g(x,y)],如圖5(b)所示。
3.2 邊緣檢測及形態學梯度處理
去噪后的圖像經過邊緣檢測可得到缺陷的邊緣信息。Canny算子檢測邊緣時具有低錯誤率,高定位性和最小響應等優點[7], 但需要設置高低閾值且這兩個閾值的設定直接影響重建圖像缺陷部分邊緣檢測的效果。由于重建圖像具有前景亮背景暗的特點,因此采用最大類間方差算法[8]計算出前景和背景的分割閾值并將此閾值及其一半分別作為高,低門限值。圖5(c)為實驗環境下應用上述算法效果圖。
Canny邊緣檢測算子檢出的邊緣是分立的,不連續的。為了準確提取缺陷區域的輪廓,需要對邊緣進行形態學梯度處理。形態學梯度用來保留物體的邊緣輪廓[9],它先分別對圖像進行膨脹和腐蝕操作,最終的圖像是膨脹圖與腐蝕圖之差,數學表達式為:
3.3 缺陷參考長度和深度計算
為了計算缺陷的參考長度和深度,需在重建圖像中提取缺陷輪廓并標定連通域[10]。通過OpenCV中的findcontours函數對缺陷區域輪廓進行提取,drawcontours函數把提取的輪廓用隨機顏色的線繪制出來。使用boundingRect函數計算提取輪廓的外接矩形 ,rectangle函數將輪廓外接矩形繪制在重建圖像中。
上述過程可得到缺陷區域外接矩形的像素位置信息。若重建圖像缺陷區域外接矩形左上角和右下角像素坐標分別為[(x1,y1)],[(x2,y2)]。根據坐標信息計算出外接矩形的長寬所占的像素個數。若長的方向上每個像素代表的實際長度為[l1],寬的方向上每個像素代表的實際長度為[l2]。[l1]由輪廓儀基準軸線上單位長度決定,[l2]由伺服電機轉速和激光輪廓儀的采樣頻率決定。設定電機轉速為[r]毫米/秒,超高速激光輪廓儀采樣頻率為[f]赫茲。則:
4 實驗結果及分析
為了得到參考長度,深度和人工測量值的誤差,準備1 000個工件,并在每個工件上制造1處缺陷并進行檢測。
實驗中上位機處理器采用英特爾酷睿i5雙核,頻率為2.5 GHz,內存8 GB。工件的直徑[c]=180 mm,激光輪廓儀型號為基恩士Lj?V7060,采樣頻率設定為1 000 Hz,單線采樣點[k]=800,[TL]=-8,[TH]=8。[th]=1,[tl]=0,[d1]=255,[d2]=255[wi],[d3]=0,[l1=0.02],[l2=0.06]。下方伺服電機轉速[r]=60 mm/s時,經過統計1 000個工件中有998個參考長度和實測值誤差小于0.1 mm,其余2個誤差小于0.2 mm。當下方伺服電機轉速設置為120 mm/s,180 mm/s時參考長度和深度值保持穩定,誤差情況基本不變。圖5(e)是隨機抽取的一個工件連通域標定圖。其缺陷區域的像素位置信息為:[x1=249],[y1=1 753],[x2=605],[y2=1 850]。代入上述參數得出參考長度[l=9.914 85] mm,參考深度[d=0.294 35]mm。使用游標卡尺多次測量待檢工件缺陷區域的長度,計算出長度平均值為9.89 mm。人眼由于無法可靠判斷缺陷區域何處深度最大,且缺陷較淺,故使用游標卡尺無法對深度進行有效測量。長度誤差小于0.1 mm,滿足設計要求。
通過和上位機計算的缺陷區域長度比較,上位機計算的缺陷區域長度長一些。一方面游標卡尺測量工件表面缺陷長度時,表面上是有弧度的,因此人工測量的長度是偏小的;另一方面系統設計中對重建圖像進行了形態學梯度處理使得缺陷部分有了輕微的擴展,上位機得到的長度長一些。伺服電機轉速為60 mm/s下,一組距離數據重建圖像和檢出缺陷的平均時間為80 ms,遠小于得到每組數據電機轉動時間,可滿足檢測時效要求。
5 結 論
激光測距應用于工件表面缺陷檢測中可得到缺陷區域的參考長度和深度值。根據參考長度和深度來分揀缺陷工件可將對設備運行有危害的工件分離出去,同時保留有缺陷但參考長度和深度小于設定值的工件,避免了浪費。在實際分揀場景中具有一定的應用價值。
參考文獻
[1] 李春穎.機器視覺在鋼球表面缺陷檢測中的應用[J].計算機與現代化,2005(10):63?65.
[2] 陳世利,常文爽,靳世久.汽輪機輪緣超聲相控陣檢測中缺陷方向識別[J].納米技術與精密工程,2013(4):328?333.
[3] 劉澤,王嵬,王平.鋼軌表面缺陷檢測機器視覺系統的設計[J].電子測量與儀器學報,2010(11):1012?1017.
[4] 劉青,張曉暉,黃軍勤.基于機器視覺的鋼球表面缺陷快速提取算法[J].激光雜志,2014(9):58?61.
[5] 孫虹,王仲,付魯華,等.一種新型鋼球表面檢測方法的分析與系統實現[J].機械科學與技術,2016(1):118?121.
[6] 韋玉科,陳玉,田洪金.基于計算機視覺的焊點缺陷檢測系統的設計[J].測控技術,2015(1):138?141.
[7] 毛星云,冷雪飛.OpenCV3編程入門[M].北京:電子工業出版社,2014.
[8] 張志強,宋海生.應用Otsu改進Canny算子的圖像邊緣檢測方法[J].計算機與數字工程,2014(1):122?128.
[9] 岡薩雷斯.數字圖像處理[M].2版.北京:電子工業出版社,2007:445?451.
[10] 馮海文,牛連強,劉曉明.高效的一遍掃描式連通區域標記算法[J].計算機工程與應用,2014(23):31?35.
[11] 代麗男,韓格欣,薄純娟.基于OpenCV的一種手勢識別方法[J].物聯網技術,2015,5(6):25?27.
[12] 諶湘倩,馬紹惠,須文波.基于有序子集加速拆分算法的三維CT圖像重建[J].現代電子技術,2016,39(6):104?107.endprint