牛麗娟 王騰軍 李立功
(1.陜西鐵路工程職業技術學院,陜西 渭南 714000; 2.長安大學地質工程與測繪學院,陜西 西安 710054)
測量坐標轉換系統設計與實現
牛麗娟11王騰軍22李立功11
(1.陜西鐵路工程職業技術學院,陜西 渭南 714000; 2.長安大學地質工程與測繪學院,陜西 西安 710054)
本文介紹了坐標轉換的方法及流程,詳述了利用C#語言構建測量坐標轉換系統的設計過程,并以CGCS2000大地坐標到西安80平面坐標的轉換為例,介紹了其具體實現過程。通過對轉換結果進行精度分析,能夠滿足一定的要求。
坐標轉換;布爾莎模型;四參數轉換模型;坐標轉換系統
2008年7月1日,2000國家大地坐標系(簡稱CGCS2000)在全國范圍內正式啟用[1]。但我國目前的測繪成果以北京54坐標和西安80坐標居多,所以就需要通過坐標轉換,將原有的測量成果以較高的精度轉入CGCS2000坐標系下使用[2]。
測量坐標轉換主要包括坐標系轉換和坐標基準轉換兩方面的內容。坐標系轉換是指在同一基準下的空間點不同坐標形式之間的轉換。在橢球體參數已知的情況下,可以直接利用確定的公式來實現,如高斯正反算、同一點的大地坐標與空間直角坐標之間的相互轉換等。坐標基準轉換是指不同基準下測量坐標之間的轉換。由于橢球參數不同,且沒有確定的數學關系,往往需要先求取轉換參數再進行轉換,其實現的關鍵在于確定轉換的數學模型和轉換參數[3一4]。
通過對不同坐標基準轉換模型的理論分析,本文采用基于七參數的空間轉換模型——布爾莎模型和四參數平面轉換模型[5]。根據各種坐標轉換算法,筆者利用C#語言構建了測量坐標轉換系統,實現了高斯平面直角坐標、大地坐標與空間直角坐標之間的相互轉換,以及坐標換帶計算等功能。本文以CGCS2000大地坐標向西安80平面坐標的轉換為例,詳細闡述其轉換與實現過程。
1.1 轉換方法
當測區內公共點較少時,可以選擇整體轉換法,即整個轉換區域求解一套轉換參數,進而進行坐標轉換。鑒于在不同區域地面網的系統誤差并非完全相同,當公共點較多時,可以將整個轉換區域分成若干個分區,然后對各分區分別計算轉換參數并進行坐標轉換。考慮到各分區在接邊處轉換參數的連續性,可以在各分區之間的重疊部分選擇一些重合點,并反復使用求解轉換參數。分區轉換法可以提高坐標轉換的精度。
1.2 轉換流程
1.2.1 公共點選取
公共點一方面可以通過實測獲得,另一方面可以通過收集獲得。在進行轉換參數計算時,鑒于粗差點會明顯降低轉換參數的精度,必須先進行粗差點的剔除工作[6]。為了提高測量坐標轉換精度,應對參與求取轉換參數的公共點進行分析、篩選、試算,盡量選取高等級、高精度的公共點,且使所選擇的點均勻分布在整個控制網中[7]。
1.2.2 轉換參數計算模型
(1)布爾莎模型
布爾莎模型是空間七參數坐標轉換常用的數學模型,且表示如下:

上式中,(X′i,Y′i,Z′i)為目的坐標系下的空間直角坐標;(Xi,Yi,Zi)表示原坐標系下的空間直角坐標;(XOB,YOB, ZOB)為三個方向上的平移參數;εx、εy、εz為旋轉參數,KB為縮放參數。
設有n(n≥3)個公共點,在求解轉換參數時,公式(1)可等價變換為:

有n個公共點,則可以列出3n個誤差方程,其誤差方程矩陣形式為

其中,V表示殘差矩陣,A為系數矩陣,X為未知七參數,L為閉合差:


若各觀測量為等精度(設權陣為單位權),則可得轉換參數的最小二乘解:

(2)四參數平面轉換模型
在一個小區域范圍內,同一點在兩種坐標系中的高斯平面坐標,可以認為是由兩個坐標系進行旋轉和尺度伸縮而產生的,可以用四參數平面轉換公式來表示,具體表達如下:


由于α角很小時,近似地有cosα=1,sinα=α,忽略其間的互乘項,則公式(5)可變換為:

選取n(n≥2)個公共點,則可以列出2n個誤差方程,其矩陣形式為:

其中,

若各觀測量為等精度(設權陣為單位權),則可得轉換參數的最小二乘解:

1.2.3 坐標轉換實施步驟
以CGCS2000大地坐標向西安80平面坐標的轉換為例,具體坐標轉換實施步驟如下:
(1)收集、整理坐標轉換區域內公共點成果。
(2)分析、選取用于計算坐標轉換參數的公共點。
(3)確定坐標轉換參數計算模型。
(4)對兩坐標系下公共點的坐標形式進行轉換。
①若采用布爾莎模型,具體步驟為:
a.取當地中央子午線,將公共點的西安80坐標系下的平面坐標根據1975國際橢球參數進行高斯反算,求其大地坐標,進而求得空間直角坐標;
b.根據2000參考橢球參數,將CGCS2000大地坐標換算成空間直角坐標;
c.根據公共點在CGCS2000和西安80坐標系下的兩套空間直角坐標,求出布爾莎模型七個轉換參數的最小二乘解。
②若采用四參數平面轉換模型,具體步驟為:
a.取當地中央子午線,將公共點的CGCS2000根據2000參考橢球參數進行高斯正算,求其高斯坐標;
b.根據公共點在兩個坐標系下的兩套高斯平面坐標,求出平面轉換模型四個轉換參數的最小二乘解。
5.分析參與坐標轉換的各公共點殘差,剔除粗差點后重新計算轉換參數,直到滿足精度要求。
6.當坐標轉換殘差滿足精度要求時,計算最終的坐標轉換參數,并估計其精度。
7.將轉換點的原坐標系下坐標換算為空間直角坐標或高斯坐標,然后根據轉換參數,計算目的坐標系下的坐標,進而轉化為其他所需的坐標形式。
鑒于上述坐標轉換的模型和步驟,筆者利用C#語言設計了測量坐標轉換系統,目的在于彌補目前市面上坐標轉換軟件功能的不足,滿足測量工作者的不同需求。
2.1 總體設計
在系統總體設計時,主要考慮坐標轉換內容、轉換模型、轉換方式及用戶界面等幾方面的內容。輸入轉換數據時,若數據量較少,可以直接輸入;若轉換點較多,需要采用文件化管理(格式為文本文件),相應地也就需要有文件的導入、導出功能。用戶界面應是與用戶交互、友好的,能夠方便用戶添加、編輯、修改坐標數據,并可以對計算的轉換參數進行保存、導入、導出。
2.2 功能設計
該系統充分利用C#面向對象的程序開發功能[8],采用模塊化設計,以人性化操作為目標,利用文件接口方式,實現模塊間的有機結合。界面主菜單主要有參數設置、參數計算、坐標系轉換、平面坐標轉換、坐標基準轉換、換帶計算、角度轉換等7部分組成,每個子菜單都以彈出對話框形式與用戶交互,在對話框中,添加可編輯的數據表格控件DataGridView,體現直觀性、人性化。
2.3 流程設計
根據坐標轉換的基本原理和方法,以及系統的內容和功能設計,對坐標轉換的處理流程進行設計,其流程圖如圖1所示。

圖1 坐標轉換系統流程圖
2.4 系統實現
根據2.2.3中介紹的坐標轉換步驟,筆者先將西安80平面坐標通過高斯反算轉換為大地坐標形式,然后轉換為空間直角坐標,具體實現如圖2和3。

圖2 高斯反算

圖3 西安80大地坐標轉換為空間直角坐標
同理,將CGCS2000大地坐標轉換為空間直角坐標形式。
點擊“參數計算”下的“七參數計算”(如圖4),選擇原坐標系和新坐標系的類型,相應的參考橢球參數將隨之改變。將公共點的兩套空間直角坐標通過“文件導入”形式導入到DataGridView中。

圖4 七參數計算
確定公共點坐標無誤后就可以直接“解算七參數”,查看彈出對話框中顯示的轉換參數,并“保存參數”以備導入參數時使用。
解算出七參數后,在“坐標基準轉換”下選擇“大地→平面”子菜單,選擇原坐標系和新坐標系類型,“文件導入”待轉點的坐標,并導入求取的七參數,點擊“轉換計算”,就可以在右邊的DataGridView中查看轉換結果了,并可通過“數據另存”保存到文本文件中,轉換結果如圖5。

圖5 CGCS2000大地坐標轉換為西安80平面坐標
坐標轉換是測量工作者經常遇到的問題,本文通過自編程序,設計并實現了測量坐標轉換系統,并以CGCS2000大地坐標到西安80平面坐標的轉換為例,詳述了坐標轉換的方法、流程及具體實現過程。在精度方面,空間轉換模型的殘差中誤差分別為:Mx= 0.138mm,My=0.396mm,點位中誤差Mp=0.419mm,可以認為所求的轉換參數是可靠的。在以后的工作中,期望對其他的坐標轉換方法和數學模型進行更多的驗證,并進一步完善、優化改系統功能,以滿足更多用戶需求。
[1]魏子卿.2000中國大地坐標系及其與WGS一84的比較[J].大地測量與地球動力學,2008,28(5):1一5.
[2]魏子卿.我國大地坐標系的換代問題[J].武漢大學學報,2003,28(2):138一143.
[3]武繼軍.不同大地坐標系間坐標轉換模型研究[J].河南理工大學學報,2006,25(5):383一385.
[4]牛麗娟.測量坐標轉換模型研究與轉換系統實現[D].長安大學,2010.
[5]朱華統.大地坐標系的建立[M].北京:測繪出版社, 1986.
[6]柳光魁,趙永強,王振祿,等.西安1980坐標系與WGS一84坐標系轉換方法及精度分析[J].測繪與空間地理信息, 2006,29(6):40一41.
[7]徐仕琪,張曉帆,周可法,等.關于利用七參數法進行WGS一84和北京54坐標轉換問題的探討[J].測繪與空間地理信息,2007,30(5):33一38.
[8]黃國平.C#實用開發參考大全[M].北京:電子工業出版社,2008.
Designand ImPlementation of Geodetic Coordinate Transformation System
Niu Lijuan1Wang Tengjun2Li Ligong1
(1.Shaanxi Railway Institute,Weinan Shanxi 714000;2.School of Geology Engineering and Geomatics,Chang’an University,Xian Shanxi 710054)
This paper introduces the methods and processes of coordinate transformation,explains the design processes of geodetic coordinate transformation system with C#language in detail,then introduces the specific implementationprocesses by the example of geodetic coordinates in CGCS2000 to Gauss plane coordinates in Xian 80 coordinate system.By analyzing the precision of transformation results,it can meet certain requirements.
coordinate transformation;Bursa一wolf model;four一parameters transformation model;coordinate transfor mation system
P226.3
A
1003一5168(2015)07一0125一4
2015一6一4
陜西鐵路工程職業技術學院科研立項研究生項目(2012一9)。
牛麗娟(1984一),女,助教,研究方向:測繪教學及科研管理。