韓夢澤,李克昭
(1.河南理工大學(xué) 測繪與國土信息工程學(xué)院,河南 焦作 454003;2.商丘工學(xué)院 土木工程學(xué)院,河南 商丘 476000)
?
基于羅德里格矩陣的空間坐標轉(zhuǎn)換
韓夢澤1,2,李克昭1
(1.河南理工大學(xué) 測繪與國土信息工程學(xué)院,河南 焦作 454003;2.商丘工學(xué)院 土木工程學(xué)院,河南 商丘 476000)
摘要:三維坐標轉(zhuǎn)換一直是測量領(lǐng)域的一個重要內(nèi)容。針對現(xiàn)有算法普遍存在的不適用大旋角轉(zhuǎn)換、計算繁雜等缺點,從旋轉(zhuǎn)矩陣的表達方式入手,提出了一種基于羅德里格矩陣的三維坐標轉(zhuǎn)換方法。算例分析表明,文中方法無需線性化,計算簡便,且能適用大旋角轉(zhuǎn)換。
關(guān)鍵詞:坐標轉(zhuǎn)換;旋轉(zhuǎn)參數(shù);羅德里格矩陣
不同空間直角坐標系之間的坐標轉(zhuǎn)換一直是測繪領(lǐng)域的一個重要內(nèi)容,國內(nèi)外很多學(xué)者在這方面做了大量研究[1-5]。空間坐標轉(zhuǎn)換的實質(zhì)是用公共點的2套坐標和非公共點的1套坐標推估非公共點的另1套坐標。坐標轉(zhuǎn)換過程通常分2步,先由公共點坐標解算轉(zhuǎn)換參數(shù),再由轉(zhuǎn)換參數(shù)轉(zhuǎn)換非公共點。轉(zhuǎn)換參數(shù)通常分為旋轉(zhuǎn)、平移和尺度參數(shù),其中旋轉(zhuǎn)參數(shù)的確定是坐標轉(zhuǎn)換的核心。傳統(tǒng)的三維坐標轉(zhuǎn)換模型是用3個旋轉(zhuǎn)角作為旋轉(zhuǎn)參數(shù),建立的模型是非線性的,常需要用泰勒級數(shù)展開的方法將模型線性化,計算比較繁雜[6-8]。在小角度旋轉(zhuǎn)情況下,可對旋轉(zhuǎn)矩陣作近似處理,得到線性模型,如常用的布爾莎模型[9]。針對大旋角的坐標轉(zhuǎn)換問題,陳義提出了一種用9個方向余弦參數(shù)作為旋轉(zhuǎn)參數(shù)的解算模型,雖然能適用大旋角轉(zhuǎn)換,但參數(shù)個數(shù)達到了13個[10]。游為直接從三維直角坐標轉(zhuǎn)換的非線性方程出發(fā),根據(jù)最優(yōu)化問題的極值條件,采用基于同倫連續(xù)思想的Li-Yorke算法求解7個轉(zhuǎn)換參數(shù),雖然能適用大旋角轉(zhuǎn)換,但計算較復(fù)雜[11]。針對這些情況,本文提出了一種用羅德里格矩陣表示旋轉(zhuǎn)矩陣的坐標轉(zhuǎn)換方法,僅有3個旋轉(zhuǎn)參數(shù),計算過程無需線性化,且能適用大旋角轉(zhuǎn)換。
1空間坐標轉(zhuǎn)換的數(shù)學(xué)模型
設(shè)A點在空間直角坐標系o-uvw和o-xyz中的坐標分別為(u,v,w)和(x,y,z);a1,a2,a3為軸u與軸x,y,z間夾角的余弦;b1,b2,b3為軸v與軸x,y,z間夾角的余弦;c1,c2,c3為軸w與軸x,y,z間夾角的余弦;λ為尺度參數(shù);(Δx,Δy,Δz)為平移參數(shù),則有如下關(guān)系:
(1)
方向余弦矩陣通常由繞3個坐標軸順次旋轉(zhuǎn)的歐拉角φ,ω,κ表示,這時需要求取的轉(zhuǎn)換參數(shù)為λ,φ,ω,κ,Δx,Δy,Δz。
2基于羅德里格矩陣的三維坐標轉(zhuǎn)換模型
2.1羅德里格矩陣
羅德里格矩陣可由反對稱矩陣構(gòu)建,引入一個具有3個獨立元素的反對稱矩陣

則R=(I+S)(I-S)-1是個正交矩陣,其中I是3階單位陣。
將R展開為
(3)
這個正交矩陣就是羅德里格矩陣。
2.2轉(zhuǎn)換參數(shù)的求解
用羅德里格矩陣表示方向余弦矩陣時,需要求取的轉(zhuǎn)換參數(shù)為λ,a,b,c,Δx,Δy,Δz。參數(shù)解算過程可分3步,先求尺度參數(shù),再求旋轉(zhuǎn)參數(shù),最后求平移參數(shù)。尺度參數(shù)可由2個公共點在不同坐標系下的距離之比算出,其表達式為
(4)
公共點較多時,可求出各點間多個距離比,再取平均值。
在解算旋轉(zhuǎn)參數(shù)a,b,c時,可以先消去平移參數(shù),將2個公共點的坐標代入式(1),求差得
(5)
上式兩端同時左乘(I-S)得
(6)
由R=(I+S)(I-S)-1知(I-S)R=(I+S),將其代入式(6)得
(7)
將I和S代入,整理得
(8)
式中:u21=u2-u1,v21=v2-v1,w21=w2-w1,x21=x2-x1,y21=y2-y1,z21=z2-z1。
這個方程組左邊的系數(shù)矩陣為奇異陣,3個方程里僅有2個獨立,需要至少2個這樣的方程組才能解算出a,b,c,也就是至少需要3個公共點。當有n個公共點時,可列出(n-1)個形如上式的方程組,共有3(n-1)個方程,其總誤差方程為

式中:
按最小二乘法間接平差原理求解未知數(shù)
(10)
計算出a,b,c后,即可求出旋轉(zhuǎn)矩陣,然后按下式求解平移參數(shù):
(11)
3算例分析
為驗證上文算法的適用性,現(xiàn)用一組模擬數(shù)據(jù)進行計算分析。空間坐標轉(zhuǎn)換的核心是確定旋轉(zhuǎn)參數(shù),尺度參數(shù)和平移參數(shù)的求取是很簡單的,為了更簡明的驗證本文的算法,這里將尺度參數(shù)設(shè)為1,將3個平移參數(shù)都設(shè)為0。目標坐標系與原坐標系間坐標軸按Y軸、X軸、Z軸的順序旋轉(zhuǎn),旋轉(zhuǎn)角度依次為2°、4°和6°,則旋轉(zhuǎn)矩陣為
設(shè)3個點在原坐標系中的坐標分別為(5,8,15)、(10,10,10)、(20,30,40),則由旋轉(zhuǎn)矩陣可計算出其在目標坐標系下的坐標為(3.591 0,7.411 8,15.689 8)、(8.519 6,10.266 2,11.046 4)、(15.274 1,29.058 2,42.688 7)。由這3個點的2套坐標,用上文的算法計算出的羅德里格參數(shù)a,b,c分別為0.034 0、0.019 3、0.053 0,羅德里格矩陣為
可見,R2與R1相差極小,僅有3個方向余弦值不同,且都是相差0.000 1。需要指出的是,用MATLAB計算數(shù)值,默認的顯示精度是到小數(shù)點后4位,當顯示精度設(shè)置為更高時,R2與R1的差值會更小。
上面的算例是小角度旋轉(zhuǎn)的情況,為了更好地驗證本文算法的適用性,現(xiàn)再模擬一組大角度旋轉(zhuǎn)下的數(shù)據(jù)。坐標軸的旋轉(zhuǎn)順序不變,旋轉(zhuǎn)角度依次為20°、40°和60°,則旋轉(zhuǎn)矩陣為
設(shè)3個點在原坐標系中的坐標分別為(5,8,15)、(10,10,10)、(20,30,40),則由旋轉(zhuǎn)矩陣計算出的其在目標坐標系下的坐標為(-9.922 5,-3.260 6,14.314 7)、(-9.062 7,4.036 5,14.197 7)、(-32.602 7,-0.952 6,42.850 4)。由這3個點的2套坐標,用上文的算法計算出的羅德里格參數(shù)a,b,c分別為0.272 3、0.401 3、0.666 2,旋轉(zhuǎn)矩陣為
可見,R4與R3相差極小,僅有2個方向余弦值不同,且都是相差0.000 1。由以上算例分析可知,本文的模型是正確的,可用于小角度和大角度旋轉(zhuǎn)的坐標轉(zhuǎn)換,且轉(zhuǎn)換精度很高。
4結(jié)束語
本文從旋轉(zhuǎn)矩陣的表達方式入手,用羅德里格矩陣表示方向余弦矩陣,推導(dǎo)了基于羅德里格矩陣的三維坐標轉(zhuǎn)換模型。與常規(guī)的坐標轉(zhuǎn)換模型相比,該模型用代數(shù)運算替代了三角運算,無需對旋轉(zhuǎn)參數(shù)線性化,模型簡單,計算簡便,可用于大旋角的坐標轉(zhuǎn)換,且具有很高的轉(zhuǎn)換精度。
參考文獻:
[1]王解先,王軍,陸彩萍.WGS-84與北京54坐標的轉(zhuǎn)換問題[J].大地測量與地球動力學(xué),2003,23(3):70-73.
[2]田桂娥,宋利杰,尹利文.地方坐標系與CGCS2000坐標系轉(zhuǎn)換方法的研究[J].測繪工程,2014,23(8):66-69.
[3]李博峰,沈云中,李微曉.無縫三維基準轉(zhuǎn)換模型[J].中國科學(xué):地球科學(xué),2012,42(7):1047-1054.
[4]劉毅,岳建平,盧銀宏,等.補償最小二乘法在大地坐標轉(zhuǎn)換中的應(yīng)用[J].測繪工程,2012,21(5):80-82.
[5]段鵬碩,劉根友,龔有亮,等.空間坐標系變換的函數(shù)梯度描述方法[J].測繪學(xué)報,2014,43(10):1005-1012.
[6]張卡,張道俊,盛業(yè)華,等.三維坐標轉(zhuǎn)換的兩種方法及其比較研究[J].數(shù)學(xué)的實踐與認識,2008,38(23):121-128.
[7]許文學(xué),王保豐,羊遠新,等.坐標系轉(zhuǎn)換參數(shù)初值快速計算的新方法[J].測繪工程,2010,19(4):4-7.
[8]潘國榮,周躍寅.兩種坐標系轉(zhuǎn)換計算方法的比較[J].大地測量與地球動力學(xué),2011,31(3):58-62.
[9]鮑建寬,李永利,李秀海.大地坐標轉(zhuǎn)換模型及其應(yīng)用[J].測繪工程,2013,22(3):56-60.
[10] 陳義,沈云中,劉大杰.適用于大旋轉(zhuǎn)角的三維基準轉(zhuǎn)換的一種簡便模型[J].武漢大學(xué)學(xué)報(信息科學(xué)版),2004,29(12):1101-1105.
[11] 游為,范東明,黃瑞金.適用于任意旋轉(zhuǎn)角的三維直角坐標轉(zhuǎn)換方法[J].測繪科學(xué),2009,34(5):154-155.
[責(zé)任編輯:劉文霞]
Spatial coordinate transformation based on Rodrigues matrix
HAN Mengze1,2,LI Kezhao1
(1.School of Surveying and Land Information Engineering,Henan Polytechnic University,Jiaozuo 454003,China;2.College of Civil Engineering,Shangqiu Institute of Technology,Shangqiu 476000,China)
Abstract:The three-dimensional coordinate transformation has always been an important content in the field of surveying and mapping.The existing algorithms are usually difficult to calculate or can’t adapt to big angle rotation transformation.The transformation model based on Lodrigues matrix was deducted.Numerical examples show that the method is feasible and simple,which needn’t linearization and can adapt to big angle rotation transformation.
Key words:coordinate transformation;rotation parameters;Rodrigues matrix
中圖分類號:P226+.3
文獻標識碼:A
文章編號:1006-7949(2016)04-0025-03
作者簡介:韓夢澤(1988-),男,碩士.
基金項目:國家自然科學(xué)基金資助項目(41272373,41202245)
收稿日期:2015-01-03