下面是做的3D線激光重建的方法主要有三角法和移相法。下面記錄三角法進行3D線激光的重建和測試:
1 硬件配置
相機:海康相機
線激光器:波長650nm的某激光器
濾光片
標定板:棋盤格標定板
圖 1 測試實物圖
2 開發步驟
(1) 硬件佈局爲相機傾斜,激光器豎直。根據要檢測的精度,靜距離等參數 他,調整相機的傾斜角度以及相機和激光器之間的距離。 相機傾斜角度爲30度左右,間距爲180mm。
(2) 標定線激光平面參數 (已經標定完相機內參數的情況下)
- 將激光打在標定板上, 調整標定板的高度。採集不同高度下的標定板圖片。
- 圖像線激光細化處理。常用的算法就是二值化之後,形態學運算,然後進行骨架細化處理。 骨架細化算法,採用的是Zhang-Suenalgorithm的並行迭代算法。網上有很多此算法的c++實現。
- 利用每張圖片的標定板外參數,計算每張圖片中線在相機座標下的三維座標。
- 將計算的三維座標進行面擬合。即可計算出激光面在相機座標系下的面方程參數。
(3)三維重建
任取一幀線激光圖像,經過骨架提取之後,利用標定的面方程以及激光線上點的成像原理,即可求出任意線激光點的三維座標。
(4) 系統參數線性優化
利用實驗結果,可以對系統參數進行二次線性優化。
3 標準量塊測試結果
- 10mm標準量塊:9.98mm
- 20mm標準量塊:20.01mm
- 30mm標準量塊:29.97mm
- 40mm標準量塊:39.98mm
測試結果顯示,精度在0.05mm以內。
4 總結
(1)因爲標定測試的時候,選用的相機分辨率太高,也沒有進行截圖。實時處理的速度有點慢。後 期改用100完像素左右的。
(2)圖像處理有待優化的是,骨架提取沒有做到亞像素級別的提取。
(3)系統參數的二次優化策略還需要繼續改善。