李 霜,樊 亞,付 貴,周騰飛
(1.安徽理工大學 空間信息與測繪工程學院,安徽 淮南 232001;2.中國建筑材料工業地質勘查中心 貴州總隊,貴州 貴陽 551400;3.貴州建設職業技術學院,貴州 貴陽 551400;4.同濟大學 測繪與地理信息學院,上海 200092)
隨著地面三維激光掃描儀(terrestrial laser scanner,TLS)測量技術的發展,點云數據成為三維測量和建模的重要來源。然而,由于系統誤差的存在,點云數據可能無法完全反映目標物的真實特征,從而影響測量結果的精度和質量[1]。因此,為保證測量質量和結果的可靠性,必須了解隨機誤差和系統誤差對點云數據的影響,并采取相應的消除方法。傳統檢校方法[2]的數學模型雖然簡單,但不能同時解算多種觀測值的系統誤差,且需要嚴格的實驗條件和較高的成本。近年來,自檢校方法受到越來越多的關注,其本質是將所有檢校參數(calibration parameters,Cps)與其他未知參數一起納入某個函數模型中進行解算[3]。
目前TLS自檢校研究主要包含以下3類:①識別系統誤差來源方面,現有的研究大多參考全站儀測距誤差和軸系誤差制定TLS的Cps[4]。由于TLS與全站儀結構不完全相同,此措施在理論上不嚴密,一些學者試圖從掃描儀構造和觀測原理出發探究誤差的來源[5-6];②自檢校模型構建方面,一般基于剛體坐標轉換模型實現[7],例如,官云蘭等[8]基于Gauss-Markov模型構建了一個具有11個參數的掃描儀自檢校誤差模型;Reshetyuk[9]將所有參數視為觀測值,通過附有參數的條件平差實現了檢校參數的求解。盡管自檢校法在平差過程中可同時估計Cps和轉換參數,但不可避免地導致參數間的高度相關性[10];③影響因素方面,部分學者對粗差[11]、掃描目標分布[12]、目標中心點不確定性[13]與溫度[14]對于自檢校結果的影響進行了分析。以上研究對系統誤差的影響因素和解算方法等進行討論,為選擇適當的自檢校方法和參數提供了參考,然而當前的自檢校函數模型往往忽略了點云數據的隨機誤差,理論上不夠嚴格,或者缺乏隨機誤差對檢校結果影響程度的合理評定。
本研究基于Gauss-Helmert模型和TLS觀測原理,提出一種顧及隨機誤差的三維激光掃描儀非線性自檢校方法,并聯合方差分量估計理論(variance component estimation,VCE)[15]實現不同種類觀測值(距離與角度)的后驗估計,旨在分析和量化觀測值隨機誤差對TLS自檢校未知參數解算和坐標改正的影響。
常規自檢校函數模型未考慮觀測值的隨機誤差,鑒于此,本研究基于TLS觀測方程,提出一種新的基子點的TLS自檢校方法;同時,采用Newton-Gauss法對函數模型進行線性化處理。
在掃描過程中,TLS以其幾何中心為原點,構建獨立的空間極坐標系,利用飛行時間理論(time of flight,TOF)測得儀器中心與目標點P之間的斜距s,同時通過角度編碼器記錄激光線在極坐標系中的垂直角θ和水平角α。遵循球坐標系與笛卡爾坐標系的空間幾何關系,以左手系為例,掃描儀觀測原理如圖1所示。其中:O為坐標系原點;X、Y、Z軸分別表示掃描儀的瞄準軸、水平軸與垂直軸;(x,y,z)表示目標點的三維笛卡爾坐標;(s,θ,α)表示極坐標系下目標點的原始觀測值。
脈沖式TLS依托光電測距原理進行測量,距離觀測值一般包括加常數m與乘常數λ的系統誤差。另外,參考全站儀的軸系誤差[8],角度觀測值的系統誤差項通常包括瞄準軸誤差c、水平軸誤差i及垂直軸誤差t。因此,點云數據的原始觀測值與真值往往存在一定偏差,需要進行相應的改正。值得一提的是,相位式掃描儀與脈沖式掃描儀的測量原理不盡相同,兩者的系統誤差項可能并不等價,使得自檢校函數模型的形式存在一定差異,但這對于自檢校理論沒有直接影響。基于以上5個Cps,顧及系統誤差項的TLS觀測方程可表示為:
(1)
式中,c′與i′分別為瞄準軸誤差與水平軸誤差對于水平角觀測值的改正。
(2)
基于點的自檢校法通常會利用待檢校掃描儀和高精度全站儀對預先設定的目標進行觀測。為了保證參考坐標的精度,高精度全站儀的目標物一般選取平面靶標或靶球[16]。在獲得目標點的兩套坐標數據后,需要將點云數據的三維坐標轉換為原始觀測值,根據坐標轉換模型實現系統誤差項的求解。常規自檢校函數模型可表示為:
(3)

(4)
式中,φ、ω、κ為3個旋轉參數。
觀察式(3)不難發現,模型沒有考慮觀測值的隨機誤差,在一定程度上特別是觀測數據精度較低時易導致模型的不穩定。鑒于此,基于Gauss-Helmert模型和掃描儀觀測原理,提出一種新的基于點的TLS自檢校方法,函數模型為:
(5)

相應地,未知參數可表示為:
(6)
由于常規自檢校過程并沒有考慮到目標點觀測值的隨機特征,此時權陣應為單位陣。根據式(5)中不同坐標系下目標觀測值的屬性,假設全站儀和掃描儀的測量中誤差分別為(σX,σY,σZ)和(σs,σθ,σα),且隨機誤差服從正態分布,則隨機模型可表示為:
(7)
此處掃描儀及全站儀的先驗信息可根據儀器的標稱精度及誤差傳播定律獲得。
由于函數模型采用完整的旋轉矩陣R且點云坐標采用原始觀測值表示,故因變量與自變量間不能表示為線性對應關系,即提出的自檢校法實質上為非線性模型。鑒于此,本研究基于Newton-Gauss法[17]對函數模型進行線性化以實現未知參數的迭代計算。
為便于理解及簡化推導過程,首先令:
(8)
設第j次迭代計算后獲得的參數估計值為:
(9)
(10)
式中,dT、dφ、dω、dκ、dm、dλ、dc、di、dt為各未知參數的改正數。
(11)
再令
(12)
此時,系統誤差項改正數的系數矩陣元素為:
(13)
結合式(11)~(13),對式(10)整理后可得:
(14)
(15)
Aj、Bj分別為第j次迭代時掃描儀觀測值隨機誤差及未知參數改正數的系數矩陣,且有:
(16)
(17)
式中,I3×3表示維度為3的單位陣。
為實現參數的解算,采用式(14)構建加權整體最小二乘問題的拉格朗日目標函數Φ:
(18)
式中:K為拉格朗日乘子,P1、P2分別表示e1、e2的權陣。
令
(19)
根據拉格朗日必要條件,對各變量求導,并令導數為0,即:
(20)

(21)

(22)
值得注意的是,觀測值的隨機誤差在迭代過程中需要不斷更新[18],且參數向量在第j+1次迭代時的預測值為:
(23)

(24)
另外,為提高迭代效率并避免收斂失敗,在迭代開始前應確定各變量的初始值。假定儀器在觀測時處于理想狀態,系統誤差和隨機誤差的初值可設定為零;平移參數和旋轉參數的初值可利用線性Bursa-Wolf模型或采用重心化后的坐標獲得[8]。
為分析觀測值隨機誤差對于自檢校結果的影響,實驗基于仿真數據和實測數據進行,其中仿真數據由真實儀器參數生成,以保證算法的普適性。實驗方案設計如下:
方案1文獻[8]提出的基于Gauss-Markov模型的自檢校法;
方案2僅考慮掃描儀觀測值隨機誤差的自檢校法;
方案3本研究提出的基于Gauss-Helmert模型的自檢校法;
方案4利用仿真的系統誤差真值對觀測值進行改正的自檢校法。
由于均勻分布的觀測目標易導致參數間的高相關性[19],根據TLS真實視場,假設空間中隨機分布60個目標點,其中選取50個作為公共點,其余視為檢核點。根據真實的檢校實驗,設定掃描儀幾何中心至目標物的距離為5~30 m,垂直角范圍為-45°~90°,水平角范圍為0~360°;未知參數的真實值與原始觀測值中誤差如表1所示。假定掃描儀的水平角與垂直角具有相同的先驗信息,在仿真過程中按照零均值和給定的單位中誤差生成相應的隨機誤差,仿真1 000次。

表1 原始觀測值中誤差與未知參數的真實值


圖2 參數偏差與均方根誤差
為比較參數估計值與真值對坐標改正的成效,在計算坐標分量誤差及點位中誤差時利用系統誤差的真值對觀測值進行改正(方案4),并與以上3種方案進行比較,結果如圖3所示.

圖3 坐標分量誤差及點位中誤差
采用文獻[8]給出的實測坐標序列進行實驗,數據通過HDS3000掃描儀(σs=0.004 m,σθ,α=12″)與NET1200 全站儀(σs=0.001 m,σθ,α=1″)先后觀測固定位置的3個平面靶標及5個靶球的幾何中心獲得,實測數據見表2。

表2 實測坐標數據
以5個靶球作為公共點、3個平面靶標作為檢核點。鑒于實測數據沒有真值,僅利用仿真實驗中的方案1、方案2和方案3對HDS3000掃描儀進行自檢校并評定結果。計算過程中認為垂直角與水平角觀測精度相同,在獲取未知參數估值后,計算公共點與檢核點的坐標分量中誤差(σx,σy,σz)及點位中誤差σp以驗證本算法的有效性。
(25)
式中:(xc,yc,zc)為經誤差改正后的目標坐標;M表示目標點數量,對于公共點M=5,檢核點M=3。計算結果如表3所示。

表3 實測數據計算結果
由圖2~3及表2可知,在仿真實驗中不考慮觀測值隨機誤差時,參數估計值與真實值差距最大且變化顯著,表明隨機誤差的存在直接關系到未知參數的解算精度。方案2在函數模型中考慮了掃描儀觀測值的隨機誤差,與方案1相比有一定程度改善,特別是平移參數與垂直角系統誤差項。就參數估計精度而言,新算法得到的結果更接近真實值,與方案1和方案2相比具有更優的RMSE且參數估計值更加穩定;根據式(15)中參數的排列順序,方案3較方案1的參數RMSE分別提高了59%、65%、66%、19%、14%、31%、2%、1%、33%、14%和56%,表明合理剔除觀測值中的隨機誤差可有效提高參數的解算精度。但與距離有關的系統誤差改善效果并不明顯,可能由于數值相對角度系統誤差項較大引起的。
此外,經過系統誤差和隨機誤差改正后,方案2與方案3的公共點的坐標分量誤差及點位中誤差更小,較方案1與方案4的坐標分量精度提高30%,點位精度提高60%;方案1與方案4的公共點精度具有大致相同的變化趨勢,表明了考慮隨機誤差的必要性。為進一步驗證算法的有效性,利用3種方案對沒有加入隨機誤差的檢核點進行處理,經誤差改正后方案3較方案1與方案2更接近真實全站儀坐標,表明方案3獲取的參數估計值更接近于真實值。
實測數據實驗中,方案1得到的坐標分量誤差及點位中誤差均滿足儀器的檢校需求,原因是在觀測過程中儀器與目標的距離較近,觀測值中的隨機誤差可被有效控制,但當儀器精度較低或與目標的距離較遠時,上述結果將很難保證。方案3較方案1的點位精度在公共點處提高90%,檢核點處提高27%,且驗后單位權中誤差提高24%;方案3較方案2的公共點點位精度提高60%,檢核點精度幾乎相同,原因是高精度全站儀觀測值的隨機誤差極小,不足以對結果產生顯著影響。方案2的公共點與檢核點的精度優于方案1,但驗后單位權中誤差卻有所增加,可能是由標稱精度定權導致隨機模型不精確引起的。
提出一種新的基于Gauss-Helmert模型的TLS自檢校方法,與常規方法相比,可同時考慮全站儀和掃描儀觀測值的隨機誤差。仿真數據和實測數據驗證表明,該方法可獲得更高精度的參數解,且經過系統誤差和隨機誤差修正后的坐標更接近真實值。此外,由于自檢校模型是非線性模型,在迭代計算過程中需要不斷更新未知參數和隨機誤差,導致運行時間增加。因此,如何提高計算效率還需要進一步研究。另外,隨機模型對于參數估計至關重要,在后續研究中應增加合理的驗后估計。