劉 虎, 林曉斌
(閩江學院 物理與電子信息工程學院, 福建 福州 350108)
在制造加工過程中需對工件進行檢測,傳統的檢測方法人工干預多,處理程序慢,生成報表固定,自動化程度低且無法批量檢測,耗時長,因此在生產制造中應采用更有效的方法來取代傳統的檢測方法,提高檢測的時效性。隨著計算機技術、檢測技術和圖形學技術的發展,逆向工程技術應運而生,3D掃描技術作為其分支之一,已在工件檢測領域體現了巨大價值。
在逆向工程技術的基礎上,結合CAD設計模型,研發基于3D掃描的工件自動檢測方法,減少傳統工件檢測中的人工干預,實現工件檢測的數字化、可視化和自動化,解決傳統人工工件檢測各種問題。基于3D掃描的工件自動檢測方法由軟硬件系統構成,硬件系統是構建一套基于主動式結構光的自動3D掃描系統,捕捉圖像形變和相對位置,運用三角測量或相位分析計算工件表面空間信息重構工件3D點云數據。軟件系統包括相機標定、3D點云數據獲取和處理、STL掃描件與CAD設計模型的自動定位對齊以及自動比較檢測。應用基于3D掃描的工件自動檢測方法對工件進行自動檢測,測試結果顯示準確率達到98%,自動檢測效果良好。
日益激烈的競爭對制造業提出了苛刻的要求,即TQCS[1]:最短時間(Time)、最優質量(Quality)、最低成本(Cost)和最好售后(Service)。為贏得客戶和市場,誕生了許多前沿的制造加工技術,逆向工程便是新興的技術之一。逆向工程將工件轉化為CAD設計模型的數字化、幾何模型重構和產品制造技術的總述[2],在工程上應用越來越廣泛,主要應用于快速設計復雜工件、復制已有工件、復原損壞工件、提高模型精度和工件可視化檢測[1]。文中將逆向工程應用于工件可視化檢測,即基于主動式結構光的自動3D掃描系統掃描工件,獲取工件表面數字化點云數據,處理數字化點云數據,將數字化的模型和工件的原始CAD設計模型比對,顯示二者差異,實現工件的快速可視化及檢測,有助于改善制造工藝,降低制造成本,提高效益。
基于3D掃描的工件自動檢測方法由硬件系統和軟件系統組成,硬件系統是構建一套基于主動式結構光的自動3D掃描系統,獲取工件3D點云數據。在硬件系統的基礎上研發基于3D掃描的工件自動檢測軟件系統。
檢測識別工件上的所需特征,需要獲得工件的3D點云數據,因此必須對工件進行掃描測量,需構建一套3D掃描硬件系統。用于獲取工件3D點云數據的掃描測量硬件設備種類眾多,原理也各不相同。不同的掃描測量方法具有不同的測量成本、速度和精度,對應獲取的數據類型及處理方式也不同。非接觸式光學三維掃描技術分為三角測量法、結構光法、激光法和計算機視覺法四類,從測量精度、速度、成本、可測輪廓復雜度和對材料是否有限制等方面進行比較,比較結果見表1。

表1 主要測量方法各指標比較
根據表1比較結果可知,綜合各項指標,結構光法更適合用于構建本項目所需的3D掃描系統。
構建一套基于主動式結構光的3D掃描系統為硬件系統,主動式結構光的立體視覺系統由一個數字投影儀和兩個CCD攝像機組成[3],數字投影儀選用HG300G-JE數碼光顯投影儀。其基本原理是投影儀投射光柵條紋到工件表面,兩個攝像機捕捉不同角度投射后十幾組工件表面的圖像進行立體匹配,立體匹配通過每組圖像間的對應關系,運用三角測量原理得到視差圖,根據投影模型計算原圖像的深度信息和三維信息,重構工件獲取 3D點云數據。主動式結構光的立體視覺系統具有大視野和避免遮擋的優勢,結合結構光模板編碼,方便構建投影模型與其圖像上的投影點間的對應關系,在后續的工作中能夠降低匹配難度,優化匹配速度和精度,有利于工件重構獲取3D點云數據。
軟件系統致力于自動化處理3D掃描儀系統掃描工件后生成的3D點云數據和自動比較檢測,減少人工干預,自動快速檢測工件,耗時短、準確率高。該軟件系統的功能模塊包括相機標定,3D點云數據獲取和處理,STL掃描件與CAD設計模型的自動定位對齊以及自動比較檢測。
2.2.1 相機標定[4]
為了獲取最佳檢測效果,掃描工件前必須對工件表面進行標定。由于掃描工件表面形狀不同,需掃描識別的特征在工件表面分布位置不固定,且測量的硬件系統本身的測量精度、測量速度和測量范圍等要求不同,所以在測量掃描工件前要對掃描工件表面形狀和硬件測量系統的要求進行定位分析,并將硬件測量系統歸零回位,為后續準確掃描工件表面奠定良好的基礎,保證良好的檢測效果。采用張正友標定法[5]對工件標定,具體標定步驟如下:調整標定物或攝像機,拍攝不同方向和位置若干張標定板圖像,提取這些圖像中標定的特征點[6],通過閉式解算法,即根據攝像機坐標系、圖像坐標系和世界坐標系三者之間關系估算出攝像機的5個內參參數和所有外參參數,最后應用最大似然估計優化所有參數,包括優化鏡片徑向畸變而引起的畸變參數,提升標定精度。工件表面準確的標定可獲得高估計精度的內參、外參和畸變參數,這些參數信息為畸變矯正、圖像校正和重構3D點云數據奠定良好的基礎。
2.2.2 3D點云數據獲取和處理
完成工件表面標定后,啟動基于主動式結構光的3D掃描系統掃描獲取工件表面點云數據。主動式結構光的3D掃描系統是基于雙目立體視覺方法,基本原理是投影儀投射光柵條紋到工件表面,兩個攝像機捕捉不同角度投射后十幾組工件表面的圖像進行立體匹配,立體匹配通過每組圖像間的對應關系,運用三角測量原理得到視差圖,根據投影模型計算原圖像的深度信息和三維信息,獲取工件 3D點云數據。
自動化處理系統對工件3D點云數據處理包括預處理、點云表示和點云重構三個部分。掃描工件獲得的3D點云數據存在著固有的噪聲、盲點、密度不均和數據缺失等掃描問題[7],這些問題都是3D點云數據處理面臨的難點,因此需對其進行預處理。3D點云數據預處理由法向估算、噪聲去除和特征增強三個部分組成,本項目中掃描的工件都是薄面結構,采用局部權值優化投影因子(WLOP)算法[8]估算法向量,噪聲通過移動最小二乘法[9]去除,特征增強運用點云重采樣法[10]保持3D點云數據尖銳特征。采用橢圓加權平均拋雪球方法[11]實現對3D點云數據表示,傳統渲染顯示是通過光線追蹤法實現,但構建場景到達一定數量時,基本圖元量過多,導致渲染時許多面片退化,浪費空間資源且繪制速率受限。為解決上述問題,引入新的基本圖元——點,構建場景模型,在點云密度足夠大的情況下,點云就可表示模型。點云重構是基于導入3D點云數據自動構造出網格模型,這些網格模型易儲存、渲染和操作控制,同時修復缺失數據,還原模型形狀。采用多層次整體劃分法[12],基于自適應八叉樹結構劃分數據域,用二次函數在每個數據子域內擬合曲面形狀,再根據劃分的權重將局部形狀函數混合,即可重構3D點云數據,并將其以STL格式輸出。
2.2.3 STL掃描件與CAD設計模型的自動定位對齊
獲得工件STL掃描件即完成對工件的數字化測量,需對工件掃描結果進行自動檢測。原CAD設計模型作為參考模型,以最小包容法對其檢測。由于CAD設計模型與數字化掃描的3D點云數據處于不同坐標系,需對二者進行自動對齊再比較。二者自動定位對齊的基本原理是通過工件的幾何特征標定將掃描工件所得的3D點云數據定位到原CAD設計模型。工件圖像的幾何特征輪廓提取是工件幾何特征定位的關鍵技術[13]。本項目自動檢測的工件最顯著特征是圓孔,因此提取圓孔輪廓和確定圓心位置作為定位的幾何特征。采用Canny算子邊緣提取算法[14]在圖像域求出圓孔圖像輪廓,然后通過最小二乘法擬合圓確定圓心位置,并對圓孔輪廓和圓心進行標定即可完成STL掃描件與CAD設計模型的自動定位對齊。
2.2.4 自動比較檢測
STL掃描件與CAD設計模型的自動定位對齊后,就可對二者進行自動比較檢測。設置產生誤差圖形形式、最大計算范圍和角度值等,在自動比較檢測時,二者之間的距離超過設定值,則忽略結果。
將設計實現的基于3D掃描的工件自動檢測方法對工件進行自動檢測,驗證其有效性。以汽車鈑金工件為檢測實例,部分自動檢測結果如圖1所示。
圖1中汽車鈑金工件共有27個小尺寸圓孔,全部被自動定位對齊,且用白色實心點標定圓心,紅色圈標定圓孔輪廓。將研發的自動檢測方法檢測500塊汽車鈑金工件,準確率高達98%。目前傳統檢測方法完成一個汽車鈑金工件檢測大約1 h,運用該自動檢測方法完成同一個汽車鈑金工件的檢測時間可控制在15 min以內,大幅度提高生產檢測效率。

圖1 基于3D掃描的工件自動檢測方法結果
基于逆向工程技術,結合CAD設計模型研發了基于3D掃描的工件自動檢測方法。基于3D掃描的工件自動檢測方法解決了傳統檢測方法處理程序慢、人工干預多、報表固定、自動化程度低、無法批量檢測等問題,可大幅度節省檢測時間,降低生產成本,提高產品數量和質量,減輕檢測人員的勞動強度。