0 引 言
1 基於機器視覺的結構光三維掃描系統模型
結構光測量是將雷射器發出的光束經過光學系統形成某種形式的光,包括點、單線、多線、單圓、同心多圓、網格、十字交叉、灰度編碼圖案、顏色編碼圖案和隨機紋理投影等投向景物,在景物上形成特定的圖案,並通過圖像處理,對圖案進行提取,然後根據三角法進行計算,從而得到景物表面的深度信息。根據投射光圖案的種類可分為單點法、單線法和圖案法。
1.1 系統的硬體結構設計
如圖1所示,文中所設計的結構光三維掃描系統由3大部分組成,分別是運動平臺、雷射器和攝像機。系統的運動平臺由導軌絲槓機構成,絲槓上的滑塊帶動工件左右運動,絲槓由伺服馬達驅動。攝像機垂直於導軌運動平面。雷射器和攝像機與攝像機呈固定角度安裝。雷射器所射出的線形光斑垂直於工件的運動方向。雷射器與攝像機的相對角度可以調節,調節範圍由20~~45。之間。運動平臺行程為100 mm,圖像解析度為0.2 mm/pixel。
1.2 系統的數學模型建立
系統的數學模型如圖2所示。工件放置於運動平臺上,攝像機垂直安裝在運動平臺正上方,雷射與水平面的夾角θ,雷射器產生一字的線性結構光,由於物體表面與運動平臺的高度差,條形光斑同時照射在物體上的A處和平臺的B處。用攝像機獲得光斑的圖像,經圖像採集卡輸入至計算機,經過圖像處理,可以測量出點A與點B的距離d,根據三角法公式tanθ=H/d,可以通過光斑間距d計算出工件的高度H。因此物坐標和像坐標對應關係為:
其中:xg,yg,zg分別為物坐標;k為像素一毫米轉換係數;xi,yi分別為圖像坐標。
2 結構光光斑提取的相關理論與方法
從系統的數學模型可知,物體的深度信息H主要受θ和d的影響,而θ主要表現為系統誤差。因此,有必要對條紋間距d進行深入研究,以提高系統的精度。其主要包括:圖像增強、圖像二值化以及圖像細化。
2.1 圖像增強
圖像增強主要增加圖像的對比度,突出圖像中的高頻部分。算法描述為:設原圖像的灰度級為x,其最大和最小灰度級分別為xmax和xmin期望圖像灰度級的最大和最小值分別為ymax和ymin則與原圖像灰度級x相對應的期望灰度級:
式(3)是一個線性函數:參數n是函數的斜率;6是函數在y軸的截距;x表示輸入圖像的灰度;y表示輸出圖像的灰度。
2.2 圖像二值化
這裡所採用的256色的灰度圖像,通過選取閾值t,將小於t灰度全設為0,即黑色;將大於t的灰度全部設為255,即白色。這樣,目標就從背景中獨立出來。採用文獻提出的一種基於熵的自動閾值提取方法。一幅圖像的直方圖可以表示為:
式中:G表示灰度值的總和;g(h)表示圖像灰度等級為h的像素個數。一幅具有[O,N一1]灰度值範圍圖像的直方圖的熵可以表示為:
式(6)中,ta。表示圖像分割的閾值,則不同閾值範圍內的熵可以表示為:
總熵可以表示為。通過求解一組優化的閾值,可以使總熵達到最大。其中:L表示閾值的個數,a―O,1,…,L一1。
2.3 圖像細化
圖像的細化是一個通過迭代去除目標圖像上不影響連通性的輪廓象素點,以得到最終寬度為一個像素的圖像骨架的過程。對被處理的圖像進行細化有助於突出圖像的形狀特點和減少冗餘的信息量。
3 實驗結果與分析
3.1 系統標定
實驗通過基於機器視覺結構光三維掃描系統獲取扳手三維圖像,為獲得準確的三維圖像,首先採用40 mm的標準塊規進行測量,測量結果與誤差如表1所示。圖3為三維掃描系統的測量軟體界面。