洪漢玉,吳裕強,葉 亮,邵 洋
武漢工程大學電氣信息學院,湖北 武漢 430205
現代工業(yè)的快速發(fā)展對工件的高精度設計、制造和質量評價提出了日益嚴格的要求[1]。在生產和制造過程中,需要對工件的三維形狀和尺寸進行準確的測量和分析,以確保產品的質量和性能。目前,三維測量技術包括接觸式和非接觸式2種方法。接觸式測量方法[2]通過高精度測頭逐點獲取被測曲面的三維數據,測量效率低且人工成本高。由于直接接觸被測工件,該方法容易損壞接觸面,限制了其在現代工業(yè)自動化檢測中的應用。非接觸式測量方法主要包括飛行時間法[3]、立體視覺測量法[4]、全息干涉法[5]、超聲測量法[6]和結構光測量法[7-8]。這些方法各自具有獨特的優(yōu)勢和限制。例如,飛行時間法原理簡單且可靠,但精度取決于信號處理系統(tǒng)的時間分辨率,且測量效率較低。全息干涉法測量精度較高,但應用場景相對較窄,且容易受到光學散斑和振動等環(huán)境變化的影響。立體視覺測量法測量范圍廣,但處理過程復雜,計算量大,無法兼顧速度和精度。超聲測量法通過路徑規(guī)劃可以實現自動測量,但精度相對較低。結構光測量法根據投射圖案的形態(tài)可以分為點結構光、線結構光和面結構光?;诰€結構光掃描的三維測量方法具備結構簡單、測量精度高、速度快、穩(wěn)定性高等特點,被廣泛應用于航空航天、汽車、能源、醫(yī)療和建筑等領域。
本文設計并實現了一種基于線結構光掃描的高精度非接觸式三維測量系統(tǒng)。采用雙遠心鏡頭[9]以恒定的放大倍數成像,確保成像大小與物體實際尺寸呈固定比例,以提高圖像采集的精度。在數據采集過程中,影響測量精度的關鍵因素之一是提取每幀圖像中的線結構光中心線?;叶荣|心法[10]是一種常用提取算法,但該方法容易受光源均勻性的影響,而且需要大量的計算。因此,本文改進了灰度質心法,提出了一種基于差分區(qū)間的灰度質心法,該算法提高了提取精度并降低了計算量。根據每幀圖像提取的線結構光中心線的偏移計算被測工件表面各點的高度,然后將數據整合,生成工件的表面點云數據,這些原始點云數據通常包含噪聲點和冗余點,為了提高測量的精度,需要進行點云濾波和精簡處理。為了進行誤差分析與評定,將經過預處理的點云與計算機輔助診斷(computer aided diagnosis,CAD)模型進行精確配準對齊,然后利用配準后的數據進行輪廓度誤差計算。
本文設計的三維測量系統(tǒng)的實物圖如圖1 所示,主要由計算機、視覺系統(tǒng)和高精度運動控制系統(tǒng)組成。
圖1 設計的三維測量系統(tǒng)Fig.1 Design of three-dimensional measurement system
視覺系統(tǒng)主要包括相機、雙遠心鏡頭、左/右線結構光發(fā)生器,其中,相機的分辨率為2 448×2 048,像素尺寸為3.45 μm×3.45 μm;雙遠心鏡頭視場尺寸為10.5 mm×8.8 mm,工作距離為126~178 mm;光纖耦合線結構光發(fā)生器波長為650 nm,扇形角為20°。各部件通過金屬支架固定,安裝好后相對位置不變。置物平臺水平安裝,相機與鏡頭的工作方向垂直于置物平臺所在的平面,線結構光發(fā)生器入射方向與置物平臺呈一定夾角。運動控制系統(tǒng)由3 套電機、控制器組成,形成空間上3 個方向的運動軸,使置物平臺和被測物體能夠在Y軸方向上移動,視覺系統(tǒng)能夠在X軸和Z軸方向上移動,從而構成一個3 自由度的測量平臺。
1.1.1 數據采集流程 系統(tǒng)的數據采集流程如圖2所示,首先,線結構光發(fā)生器投射光線到被測物體表面,分別與被測物體和置物平臺相交,形成線結構光。然后,相機捕獲線結構光圖像,經過圖像預處理后進行中心提取,得到單像素的線結構光中心線圖像。接下來,通過三角測量法并結合標定得到轉換系數,求解相應的三維坐標,將其轉換為單幀的三維點云數據。最后,通過運動控制系統(tǒng)使被測物體與視覺系統(tǒng)發(fā)生相對位移,進行掃描以形成圖像序列,重復上述過程,得到被測工件的原始點云數據。
圖2 數據采集流程示意圖Fig.2 Schematic diagram of data acquisition process
1.1.2 線結構光中心提取 數據采集中,線結構光中心的精確提取至關重要,直接決定了測量的精度。本文提出了一種基于差分區(qū)間的灰度質心法,該算法利用多階后向差分公式[式(1)],計算線結構光條紋中心的提取差分區(qū)間。
其中,l為差分模板長度,d(x,y)和g(x,y)分別表示當前像素點(x,y)的差分值和灰度值,其中x為列坐標,y為行坐標。
基于差分區(qū)間的灰度質心法的原理示意圖如圖3 所示,其中,實曲線和虛曲線分別表示線結構光圖像的第i行的差分值和灰度值曲線,X方向上的差分區(qū)間[xmin,xmax]由差分的最大值Smax和最小值Smin確定:
圖3 基于差分區(qū)間的灰度質心法原理示意圖Fig.3 Schematic diagram of grayscale centroid method based on differential intervals
則第i行的線結構光中心點Si(x*,y)應在差分區(qū)間[xmin,xmax]內,其中y=i且X方向上的坐標x*∈[xi_min,xi_max],x*由二次加權的灰度質心法確定:
根據提取方向,逐行計算出中心點,生成單像素的線結構光中心線圖像。基于差分區(qū)間的灰度質心法運用多階后向差分公式,計算出線結構光所在列的像素范圍,從而避免對整行像素進行計算,大幅度降低了計算量。此外,引入二次加權的灰度質心法來確定線結構光的中心點,減小由于圖像灰度變化不均勻而導致的誤差,提高測量的精度。
由于設備振動、工件表面材質、工作環(huán)境、中心線提取誤差等因素,采集的工件點云數據不可避免地包含噪聲點和冗余點[11]。為了提高三維測量的效率和精度,需要對點云進行預處理。
1.2.1 點云濾波 本文采用一種基于空間分布的點云組合濾波平滑方法,針對原始點云數據的特點,將噪聲點分為3 類,然后逐步使用不同的濾波方法進行去除。
(1)采用直通濾波方法去除明顯與對象分離且大量聚集的噪聲點。該方法基于距離值原理,通過設定一個范圍閾值,刪除在該閾值范圍內的點云數據。
(2)采用高斯統(tǒng)計濾波[12]方法濾除遠離對象離群點。該方法基于點云數據的鄰域統(tǒng)計信息來判斷點云是否為噪聲點,利用如式(4)所示的高斯統(tǒng)計函數Igf來計算點云數據在鄰域中的距離分布情況,去除距離分布明顯不符合正態(tài)分布的點云數據,從而達到去除噪聲點的目的。
式(4)中:Wx,y為中心像素(x,y)的鄰域;ωd(i,j)為像素(i,j)的空間距離相似度權重因子;I(i,j)為灰度圖像位置。
(3)采用滑動最小二乘法[13]對近鄰對象的噪聲點進行平滑處理。利用移動最小二乘法將點云進行映射處理,通過擬合鄰域點實現點云平滑。
1.2.2 點云精簡 柵格采樣法[14]適用于分布均勻的點云數據,能夠較好地保持點云模型的形狀特征,同時去除冗余點,具有實現簡單和高效的特點。該算法的原理是通過指定柵格大小,將待采樣點云柵格化,對于分布在同一柵格中的點云數據,只保留距離柵格中心最近的點,刪除其余點,從而得到精簡后的點云模型,其原理示意圖如圖4所示。
圖4 柵格采樣法原理示意圖Fig.4 Schematic diagram of principle of grid sampling method
1.2.3 點云配準 確立標稱形狀和實際形狀之間的精確映射關系對輪廓精度控制至關重要,通過比較點云和CAD 模型,可以建立此映射,以便進行工件的質量評估。預處理后的點云數據需要與CAD 模型進行配準對齊,才能進行輪廓對比檢測分析。實現配準的主要步驟如下:
(1)位置初始化,點云數據的坐標來自系統(tǒng)的測量坐標系,而CAD 模型的坐標是在制圖時由設計坐標系確定的。因此,將它們統(tǒng)一到1 個坐標系下時,位置可能存在較大差距。
(2)利用主成分分析法[15]進行粗配準,通過計算點云協(xié)方差矩陣的特征值和特征向量,確定點云的主方向,然后計算出對應的旋轉和平移矩陣,以實現點云的粗配準,為精配準提供較好的初始位置。
(3)利用迭代最近點(iterative closest point,ICP)算法進行精配準。其原理如圖5 所示,點pi為源點云中的點,qi為pi在目標點云中對應的匹配點,Ti表示點qi所在切平面,ni是切平面Ti的法向量,點a表示點pi+在Ti上的投影點。pi+是對點pi應用剛體變換參數g( )R,t進行旋轉平移后的點,ICP點到點誤差度量迭代匹配的目標函數如式(5)所示:
圖5 ICP 配準算法原理圖Fig.5 Schematic diagram of ICP registration algorithm
式中,R表示旋轉矩陣,t表示平移矩陣,m表示源點云中點的個數。通過最小化距離平方和對目標函數進行求解,以獲取最佳剛性變換矩陣參數,從而完成精確的配準操作。
輪廓誤差評估通?;趯嶋H測量點與理想點之間的差值[16]。將CAD 模型輪廓上的點視為理想點,點云輪廓上的點作為測量點,從而進行誤差評定。如圖6 所示,CAD 模型輪廓和點云模型輪廓間的差值表示輪廓誤差。配準后,假設CAD 模型輪廓上任意一點坐標為Pt(xt,yt,zt),Pt對應點云輪廓上的點為Pm(xm,ym,zm),根據式(6)計算點云的輪廓誤差di,則輪廓誤差的均方根誤差σ如式(7)所示。
圖6 工件輪廓誤差示意圖Fig.6 Schematic diagram of workpiece profile errors
其中,n為測量次數,di為一組輪廓誤差值。
本文采用的測量對象的實物圖和CAD 模型如圖7 所示。
圖7 被測工件:(a)實物圖,(b)CAD 模型Fig.7 Measured workpiece:(a)actual object,(b)CAD model
首先,對該工件進行數據采集,獲取的原始點云如圖8(a)所示。然后進行點云濾波和精簡處理,其結果如圖8(b)所示。再將處理后的點云數據與CAD 模型進行配準,其配準結果如圖9 所示。
圖8 工件點云模型:(a)原始點云,(b)預處理完成點云Fig.8 Workpiece point cloud model:(a)raw point cloud,(b)preprocessed point cloud
圖9 點云與CAD 模型配準結果:(a)配準前,(b)配準后Fig.9 Registration results of point cloud and CAD model:(a)before registration,(b)after registration
對配準后的點云和CAD 模型在相同位置提取表面輪廓數據,提取位置如圖10(a)直線標示,提取結果如圖10(b)所示。在模型的X方向上選取10 個測點,各測點位置如圖10(b)中①-⑩標示,其在世界坐標系的X坐標值、實際高度值、測量高度值、高度絕對誤差以及高度相對誤差計算結果如表1 所示。結果顯示,對于該工件外輪廓測量的絕對誤差小于0.07 mm,相對誤差小于0.5%。
表1 工件輪廓高度測量結果及誤差Tab.1 Workpiece contour height measurement results and errors
圖10 工件表面輪廓線提取位置(a)與提取結果(b)Fig.10 The extracted location(a)and extracted results(b)of the surface contour lines of the workpiece
為滿足現代工業(yè)對高精度三維測量的需求,本文設計并實現了基于線結構光的高精度非接觸式測量系統(tǒng)。通過深入研究線結構光生成點云的原理和相關算法,提出了一種基于差分區(qū)間的灰度質心算法,顯著提高了線結構光中心線的提取精度和效率。在點云數據處理中,首先采用基于空間分布的點云濾波和柵格采樣法進行預處理。然后,通過ICP 算法實現了點云與CAD 模型的精確配準。隨后,根據配準后的數據進行工件表面輪廓測量與誤差評定。相對于傳統(tǒng)的接觸式測量中需要人工熟練掌握測量設備、柔性表面接觸中易形變或受損、人工操作不精細易導致誤差較大等不足之處,本文實現的非接觸三維測量系統(tǒng)能夠高效、便捷地完成對工件表面輪廓的三維建模并進行精準測量。在實驗中,系統(tǒng)對工件外輪廓測量的絕對誤差小于0.07 mm,相對誤差小于0.5%,具備了足夠的測量精度,且建模過程中不需要人工介入,為現代工業(yè)領域的高精度三維測量提供了有力的支持。