張 勇
(馬鋼冷軋總廠,安徽馬鞍山 243000)
三維點云配準技術是實現物體三維測量的關鍵環節之一,文章針對點云配準精度、速度及魯棒性提出基于GICP 改進的配準算法。該算法結合基于主成分分析(Principal Component Analysis,簡稱PCA)的粗配準獲取點云大致的配準位姿,并針對不同視角點云數據進行背景去除、剔除噪聲點及降采樣等一系列預處理方法,以降低處理點云數目和無效點云對配準性能的影響,同時使用K-Dtree 搜索最近點提高改進的GICP 配準速度及精準度。
GICP 是基于ICP 的衍生算法,核心思想是將概率模型添加到ICP 最小化步驟中,以提高算法的精準度和魯棒性。由于GICP 保留ICP 其他步驟的初始參數設置,降低了算法復雜性并保持運行速度,在此假設點云數據通過最近鄰域查找確定了對應關系,即且ai與bi相互對應。根據高斯模型生成A、B點集:
對公式(12)取對數進行化簡:
由于外界環境、噪聲干擾和點云稠密度會影響GICP 算法速度和精確度,文章在優化GICP 精配準前對點云數據進行預處理,以提高改進算法的速度和效率。背景去除可以通過點云分割技術來實現,這里采用基于隨機一致性采樣算法(RANSAC)將工件點云從背景點云中分割開。在工件點云中隨機選取兩個點記并計算直線模型,根據點pi到直線距離和人為設定的閾值τ將點云分為兩類,迭代上述步驟,直到搜索閾值內點云數目最多,即平面背景擬合完成。在噪聲點處理中利用高效便捷的統計分析法,可以快速將無效點云從點集中剔除,該法計算所有點及鄰域點的距離dij并根據點云分布計算均值μ 和標準差σ,那么鄰域點集中所有點與其鄰域距離大于區間以外的點均可視為噪聲點,其中mul是標準差倍數閾值。在降采樣中利用八叉樹(Octree)建立體素并用內點均值代替體素內所有點,通過設置體素大小改變體素網格大小,在達到降采樣同時不破壞點云幾何結構。
采用雙目線結構光相機系統對工具采集10組點云數據,取其中3組數據為例說明。圖1(a)、(b)、(c)分別是工件A、B、C 實物圖。因獲取的點云背景噪聲多,配準難度大,故在保留完整點云特征的前提下,對點云數據進行RANSAC 算法去除背景、剔除噪聲點及基于八叉樹(Octree)體素濾波降采樣的預處理,圖1(d)、(e)、(f)是工件A、B、C 預處理后的點云數據。

圖1 工件實物和預處理后的工件點云
實際獲取的點云數據龐大,影響后續處理速度,故利用八叉樹(Octree)建立體素,對點云進行體素濾波達到降采樣目的。如圖2所示,對相應工件的目標點云進行降采樣處理,表1 數據顯示工件A、B、C 的源點云和目標點云數目經過體素濾波降采樣后驟減。

表1 真實數據集下算法精度對比

圖2 體素濾波后的工件點云
實驗數據見表1,以迭代30次為例,工件A、B、C 在傳統ICP 算法RMSE 值較PCA 配準算法RMSE值依次高9.59倍、3.44倍、1.02倍,而PCA 配準算法RMSE 值較文章改進算法RMSE 值依次高0.43倍、0.90倍、3.48 倍,證實工件A、B、C 在文章3 種配準算法中配準精度最高的是GICP 優化算法,該算法解決了傳統ICP 算法精度不足且容易陷入局部收斂問題。
現將工件A、B、C 三種算法的配準速度進行對比,如圖3所示,在迭代次數由10次增加至90次過程中,工件A、B、C 傳統ICP 配準時間依次增加2.43倍、7.48倍、2.63倍,而GICP 優化算法配準時間不會隨迭代次數增加而大幅度增長,如圖3所示。

圖3 傳統ICP與優化GICP配準時間比較
對測量工件進行數據采集和實驗分析,包括點云數據背景和噪聲點去除、K-Dtree 臨近搜索、Octree建立體素降采樣的一系列預處理,分別進行了傳統ICP 配準、基于PCA 配準以及文章提出的GICP 優化配準算法等實驗,結果表明,在相同點云數據下,GICP 優化算法在配準精度上均高于傳統ICP 算法和基于PCA 配準算法,在相同迭代次數下,GICP 優化算法的配準速度比傳統ICP 算法配準速度更快。實驗證明了GICP 優化算法配準效率更高于傳統ICP 算法,并因融合PCA 配準算法使初始位姿參數誤差極小而不易陷入局部收斂。