孟庭偉
(南京市測繪勘察研究院股份有限公司,江蘇 南京 210019)
坐標轉換廣泛應用于測量行業(yè)中,其實質是利用公共點的兩套坐標及非公共點的第一套坐標值推估第二套坐標值。三維基準轉換通常采用7參數(3個平移參數,3個旋轉參數,1個尺度因子)進行坐標轉換,先用公共點坐標解算轉換參數,再利用轉換參數轉換非公共點坐標。
空間直角坐標轉換的模型與方法眾多,常用的三維基準轉換模型有Bursa模型、Molodensky模型、武測模型等,其中,Bursa模型適用于大范圍(>1002km)、小角度(3°以內)的坐標轉換,對于小范圍區(qū)域,公共點間隔較小,平移參數與旋轉參數具有復共線性,導致法方程矩陣病態(tài),從而導致解算的平移參數值與旋轉參數值有較大的誤差[1,2]。坐標重心化減小了參與計算的坐標數值,有效地弱化平移參數與旋轉參數的強相關性,降低了法方程矩陣的嚴重病態(tài)性,增強了數值計算的可靠性[3]。Tikhonow提出的正則化方法是解算病態(tài)方程的有效方法,小范圍公共點主要引起平移參數的解不穩(wěn)定,對平移參數進行正則化處理,提高外圍點坐標的轉換精度[4]。對于大旋轉角的坐標轉換已有大量研究,游為等直接從三維直接坐標轉換的非線性模型出發(fā),采用基于同倫連續(xù)思想的Li-Yorke算法最優(yōu)解7個轉換參數,該方法雖然適用于大旋轉角轉換,但計算過程比較復雜[5]。本文提出顧及病態(tài)的融合解算坐標轉換模型,有效地解決了Bursa坐標轉換模型病態(tài)性問題,通過算例分析驗證該算法適用于任意旋轉角度的空間直角坐標轉換。
空間直角坐標轉換模型:
(1)
(2)
式中,∈x、∈y、∈z為空間直角坐標變化的三個旋轉角,由于三個坐標系的旋轉角度小,故取cos∈x=cos∈y=cos∈z=1,sin∈x=∈x,sin∈y=∈y,sin∈z=∈z同時忽略二階以上的微小量。
根據最小二乘原理,利用多個公共點信息進行平差解算轉換參數。
(3)
其線性方程為:
AX=L
(4)
由于坐標轉換中各觀測值相互獨立,故可設權陣P=I,根據最小二乘原理得:
X=(ATPA)-1ATPL
(5)
V=AX-L
(6)
其單位權中誤差為:
(7)
式中,n為公共點的個數。
由于已知公共點坐標含有粗差,觀測向量誤差對解向量誤差的影響與法方程系數陣的條件數成正比,當法方程系數陣的條件數Cond(ATPA)=‖ATPA‖‖(ATPA)-1‖(≥1000)很大時,很小的觀測誤差引起解得的未知參數向量有很大的誤差,轉換參數精度低,導致轉換模型病態(tài),經坐標轉換的目標坐標誤差較大。因此,將原始坐標系與目標坐標系中的坐標值分別進行重心化,使得參與計算的數值變小,其坐標系的原點平移到點集的重心,法方程矩陣為對角陣,弱化平移參數與旋轉參數之間的復共線性,降低法方程的病態(tài)性。
(8)
式中,(Xi重,Yi重,Zi重)為坐標系i(i=1,2)公共點的重心坐標,利用重心坐標求出各個公共點的重心坐標(XZij,YZij,ZZij)。
(9)
通過坐標重心化得到兩組新的公共點坐標,使得參與計算的數值變小,將兩組新的坐標值帶入到式(6),組成新的誤差方程。
坐標重心化弱化了平移參數與旋轉參數的復共線性,但并沒有完全解決轉換模型的病態(tài)問題,法方程系數陣ATPA的條件數仍很大,為了得到更加穩(wěn)定的解,采用Tikhonov正則化處理思想,引入正則化參數,以式(10)取得極小值為準則:
(10)
式中,Φα為Tikhonov光滑函數,α為正則化參數,‖·‖為向量的二范數,將式(5)中系數矩陣疊加正則化參數α,滿足條件α>0,式(10)存在唯一的極小值,其相應的解為:
Xα=(ATPA+αIn)-1ATPL
式中,In為n階單位陣,若已知正則化參數α,則可解算未知參數的正則化估值Xα。由于正則化解是有偏的,用均方誤差評定精度,其偏差△Xα與均方誤差MSE(Xα)為:
(11)
均方誤差由觀測誤差引起的估值誤差和正則化引起的估值誤差兩部分組成,合理的正則化參數平衡這兩類誤差,使兩類誤差值之和最小。因此,正則化參數不僅與系數矩陣A有關,而且與觀測值的精度有關。
(12)
只對平移參數進行正則化處理,引入正則化矩陣R,其相應的計算公式為:
Xα=(ATPA+αR)-1ATPL
(13)
(14)
求解正則化參數的準則是均方誤差最小,即均方誤差的跡取極小值:
Trance(MSE(Xα))=min
(15)
采用L-曲線法確定α值。
羅德里格矩陣由反對稱矩陣構建,引入一個具有3個獨立元素的反對稱矩陣S。
(16)
則R=(I+S)(I-S)-1為正交矩陣,其中I為3階單位矩陣。
(17)
利用羅德里格矩陣解算旋轉參數,尺度參數可通過兩個公共點在不同坐標系下的歐式距離之比得到,當含有的公共點個數較多時,可分別求取各點距離之比,取其均值作為尺度因子。
(18)
選取兩個公共點帶入式(1)作差,消去平移參數。
(19)
由于R為反對稱矩陣,根據R與羅德里格矩陣S的關系,可得:
(20)
將兩套坐標系下的公共點3帶入到式(1),與公共點1代入式(1)的結果作差,將結果與式(20)聯立。
(21)
式中,X2ji=X2j-X2i,Y2ji=Y2j-Y2i,Z2ji=Z2j-Z2i,X1ji=X1j-X1i,Y1ji=Y1j-Y1i,Z1ji=Z1j-Z1i,X2ki=X2k-X2i,Y2ki=Y2k-Y2i,Z2ki=Z2k-Z2i,運用最小二乘原理得到反對稱矩陣參數a、b、c。
將引入正則化參數解算的平移參數,羅德里格矩陣解算的旋轉參數與尺度因子帶入式(1),解算非公共點在目標坐標系下的坐標。
根據旋轉角的大小不同,將實驗數據分為兩組,小旋轉角的公共點坐標作為一組數據,大旋轉角的公共點坐標作為另一組數據,兩組數據如表1和表3所示。分別選取表1與表3中的點1、2、3作為解算旋轉參數的公共點,分別用Bursa模型、坐標重心化模型與融合解算模型解算轉換參數,點4、5的原始坐標數據利用所得轉換參數解算目標數據,驗證三種模型的轉換精度如表2與表4所示。
小旋轉角的原始坐標與目標坐標 表1
中誤差精度對比分析 表2
大旋轉角的原始坐標與目標坐標 表3
中誤差精度對比分析 表4
本文分別利用小旋轉角與大旋轉角數據進行算例分析,由于平移參數與旋轉參數之間存在復共線性,顧及病態(tài)的融合解算坐標轉換模型首先進行坐標重心化轉換模型減小了參與計算的數值,有效弱化了參數之間的強相關性,分兩步解算平移參數、旋轉參數及尺度因子,改善了Bursa模型的病態(tài)性,羅德里格矩陣無須對旋轉參數進行線性化,具有高的轉換精度,適用于任意范圍與角度的空間直角坐標轉換。