楊軍建 吳良才
(東華理工大學 測繪工程學院,江西 南昌330013)
與傳統測量方法相比,三維激光掃描技術獲取點云具有快速性、高效性和高精度特性,在測繪領域中扮演著越來越重要的角色。三維激光掃描能快速獲取反映目標物實時、動態變化、真實形態特性的信息,是獲取空間數據的有效技術手段。
對點云數據進行擬合就是根據掃描點集中的點云匹配出特定的曲面模型,求取出最佳模型參數,使點云子集合與模型參數之間達到高度吻合的目的。三維點云數據集合中包含大量的平面特征,這些平面特征可以被用于匹配計算中配準點云、目標建模中簡化數據等,因此,三維點云精確的平面擬合具有非常重要的意義[1-2]。由于儀器本身或外部因素等原因,三維激光掃描得到的點云數據存在各種誤差。文獻[3-7]主要介紹了提取點云平面特征的方法,如最小二乘法、特征值法,可根據某種給定的目標方程,求出最佳模型參數。但這些方法都不能剔除異常值,特別是存在較大較多的異常值時擬合平面不穩定,算法不具有穩健性。針對含有較大誤差或異常值的點云數據,一般采用結合特征值法的隨機抽樣一致性(random sample consensus,RANSAC)算法擬合點云平面,在異常值存在的情況下可以得到比較理想的擬合效果,但是該方法對閾值t的選取比較敏感,本文對此算法進行了改進,通過自動選取閾值t來檢測并剔除異常值,得到最佳參數估值。
隨機抽樣一致性算法(RANSAC)根據尋找模型去擬合數據的思想,用滿足可行條件的盡量少的已知數據去得到一個初始解然后剔除異常數據,并使用一致性數據集去擴大已知數據集,在計算機視覺領域有較廣泛的應用[8-9]。隨機抽樣一致性算法要求在一定的置信概率下,基本子集最少迭代次數M與至少取得一個良性取樣子集的概率P( P<ε) 滿足如下關系:
式中,ε為數據錯誤率,m為計算模型參數需要的最小數據量,通常情況下ε和P是根據具體條件給定的[10],本文取ε=0.2,P=0.99。
利用改進的結合特征值法的RANSAC算法進行點云平面擬合,其過程為:
1)在原始點云中選取任意3個點,判斷其是否共線,若不共線則解算出其對應的初始平面ax+by+cz=d;
2)計算點云到該初始平面的距離,di=axi+byi+czi-d;
3)選取閾值t=2σ0,σ0為點云到初始平面模型距離的標準偏差。當di>t時該點被當做異常點剔除,反之被當做有效數據保留,統計有效數據的數量PNum;
4)重復1),2),3)步驟,迭代 M 次,比較并選取含有效數據點數量PNum最大的平面;
5)采用特征值法對有效數據點數量PNum最大的平面best Plane重新進行估計,即可得到所需的平面模型參數。
步驟3)中閾值t的選取很重要,若選取的t較小則會剔除應該選擇的有效點,而選取的t較大時則會將無效點或誤差點誤判為有效點。標準偏差σ是一種數據值偏離算術平均值程度的度量,此處利用點到初始平面模型距離的標準偏差來自動選取閾值t。該方法能有效地剔除異常數據,保留有效數據,且能自動選擇閾值,不需要人為設定其參數,方便易行。
用Riegl VZ400三維激光掃描儀獲取某建筑物立面的點云數據,主要為平面模型。采用人機交互的方式,手動選取部分處于同一平面的點云數據進行處理,如圖1。
分別采用特征值法、結合特征值法的RANSAC算法及改進的結合特征值法的RANSAC算法對圖1中的所選取的點云數據進
行平面擬合,得到平面模型的參數,所得結果見表1。將三種方法得到的模型參數進行平均,得到各個模型參數的均值,此均值可作為此平面模型參數的參考值。

表1 點云平面模型各參數的估值以及其平均值(不含異常值)
如圖2所示,在點云數據中加入1000個異常點(紅色點為異常點)。
為驗證結合特征值法的RANSAC算法中閾值t對點云平面擬合效果的影響,取t值為0.01、0.02、0.04、0.06、0.08時對加入異常值的點云數據進行處理。所得結果見表2,t=0.02時,剔除點個數為980,基本剔除了所有異常點,擬合參數與參考值比較接近,擬合效果較好;t=0.01時,雖然擬合參數與參考值接近,但剔除點個數為2382,遠大于異常點個數1000,剔除了過多的有效點;t=0.08時,剔除點個數128遠小于異常點個數1000,擬合值與參考值差別較大,擬合效果不理想。
用特征值法和改進結合特征值法的RANSAC算法對加入異常點的點云數據進行平面擬合,得到結果見表3,將所得結果與各模型參數的參考值進行比較,改進的算法得到的結果比特征法更為接近參考值,點云到最終擬合平面距離的標準偏差σ也比采用特征值法時的標準偏差 小,擬合效果更為理想。

表2 結合特征值法的RANSAC算法取不同閾值t時,點云平面模型各參數的估值(含異常值)

表3 點云平面模型各參數的估值以及其參考值(含異常值)
綜上所述,采用結合特征值法的RANSAC算法對含有異常值的點云數據進行平面擬合時,閾值t的選取直接影響最終擬合效果的精度,而不同的點云數據所含的誤差及異常值也不同,所需要的最佳閾值t也不同。本文算法對此進行了改進,根據點云到初始平面距離的標準偏差自動選取閾值t,對含有異常值的點云數據進行平面擬合,擬合效果比較理想,該算法不需要人為設定閾值t,方便易行。
結合特征值法的RANSAC算法在點云數據存在誤差和較多異常值的情況下,能穩定的擬合出平面參數值,比傳統的特征值平面擬合方法有更好的魯棒性和準確性。但是,此算法需要人為設定閾值t,閾值t過大或過小都會影響最終的擬合結果。
本文針對閾值t選取的問題,即閾值選擇過大會增大平面的腐蝕作用,相反閾值選擇過小又會造成平面范圍的縮小,采用了根據點到平面模型距離的標準偏差來選取t這一方法,考慮了實際點云數據允許的誤差范圍,能有效地剔除異常點和誤差點,能自動選擇閾值,不需要人為設定其參數,提高了算法的自適應性。