王繼紅 李俊杰
摘要:空間坐標(biāo)的轉(zhuǎn)換有利于多坐標(biāo)系統(tǒng)下的數(shù)據(jù)統(tǒng)一,各個(gè)用戶之間的數(shù)據(jù)共享,是測(cè)繪過程中經(jīng)常遇到的實(shí)際問題?;诜涸跍y(cè)繪對(duì)測(cè)繪儀器和工具去專業(yè)化的必然要求,該文通過VB語言編寫了界面簡(jiǎn)潔、操作方便、功能全面的坐標(biāo)轉(zhuǎn)換軟件,并通過實(shí)例數(shù)據(jù)驗(yàn)證軟件可靠性,評(píng)定了轉(zhuǎn)換精度。該坐標(biāo)轉(zhuǎn)換工具克服了算法復(fù)雜、操作繁瑣、功能單一等缺陷,精度滿足大多數(shù)工程應(yīng)用中的坐標(biāo)轉(zhuǎn)換需求,可提供便捷、全面、可靠的服務(wù)。
關(guān)鍵詞:坐標(biāo)系??坐標(biāo)轉(zhuǎn)換??數(shù)據(jù)共享??精度評(píng)定
中圖分類號(hào):P226.3???文獻(xiàn)標(biāo)識(shí)碼:A
Design?and?Implementation?of?Spatial?Coordinate?Conversion?Program
WANG?Jihong1??LI?Junjie2
(1.?Hunan?Huawei?Survey?and?Design?Co.,?Ltd.,?Loudi,?Hunan?Province,?417000?China;
2.?Bazhong?Emergency?Management?Bureau,?Sichuan,??Bazhong,?Sichuan?Province,?636000?China)
Abstract:?The?conversion?of?spatial?coordinates?is?conducive?to?the?unification?of?data?under?the?multi-coordinate?system?and?data?sharing?among?users,?which?is?a?practical?problem?often?encountered?in?the?process?of?surveying?and?mapping.?Based?on?the?inevitable?requirement?of?universal?surveying?and?mapping?for?the?deprofessionalization?of?surveying?and?mapping?instruments?and?tools,?this?paper?compiles?a?coordinate?conversion?software?with?simple?interface,?convenient?operation?and?comprehensive?functions?through?VB?language,?and?verifies?the?reliability?of?the?software?and?evaluates?the?conversion?accuracy?through?example?data.?This?coordinate?conversion?tool?overcomes?the?defects?of?complex?algorithm,?cumbersome?operation,?single?function,?etc.,?and?the?accuracy?meets?coordinate?conversion?requirements?in?most?engineering?applications,?which?can?provide?convenient,?comprehensive?and?reliable?services.
Key?Words:?Coordinate?system;Coordinate?transformation;Data?sharing;Precision?assessment
CGCS2000(2000國(guó)家大地坐標(biāo)系)是定義在ITRF97框架下的區(qū)域性地心坐標(biāo)系統(tǒng),是目前中華人民共和國(guó)自然資源部強(qiáng)制要求全面采用的大地坐標(biāo)系統(tǒng)[1]。
隨著智能時(shí)代的來臨,泛在測(cè)繪正在發(fā)展以實(shí)時(shí)精準(zhǔn)時(shí)空感控為特征,以實(shí)現(xiàn)陸海天空網(wǎng)一體化、室內(nèi)外一體化,并實(shí)現(xiàn)人與物理世界及虛擬網(wǎng)絡(luò)世界交互的感知、探測(cè)、認(rèn)知和調(diào)控[2],將不同來源的空間數(shù)據(jù)統(tǒng)一在CGCS2000空間坐標(biāo)系中,是測(cè)繪實(shí)踐中常常遇到的問題[3]。而移動(dòng)互聯(lián)、5G通信、大數(shù)據(jù)、云計(jì)算、人工智能等新興技術(shù)和測(cè)繪地理信息技術(shù)的不斷交叉融合,測(cè)繪地理信息的相關(guān)應(yīng)用和服務(wù)正向著千行百業(yè)拓展[4-5]。越來越多不同行業(yè)的工作人員、甚至普通民眾都參與測(cè)繪數(shù)據(jù)的采集和應(yīng)用,測(cè)繪儀器和工具的去專業(yè)化是泛在測(cè)繪的必然要求[6]。
目前能實(shí)現(xiàn)坐標(biāo)轉(zhuǎn)換的軟件比較多,但往往算法復(fù)雜[1,7],或者操作繁瑣,要么功能單一,迫切需要一款界面簡(jiǎn)潔、操作方便、便捷實(shí)用、功能全面又能滿足一般情況下精度要求的坐標(biāo)轉(zhuǎn)換軟件。該文正是基于以上背景,設(shè)計(jì)了空間坐標(biāo)的轉(zhuǎn)換程序并用VB語言加以實(shí)現(xiàn)。
1坐標(biāo)轉(zhuǎn)換的基本方法
坐標(biāo)轉(zhuǎn)換主要包括在同一參考基準(zhǔn)下的坐標(biāo)轉(zhuǎn)換和在不同參考基準(zhǔn)下的坐標(biāo)轉(zhuǎn)換。坐標(biāo)轉(zhuǎn)換示意圖如圖1所示。
1.1大地坐標(biāo)與空間直角坐標(biāo)之間的轉(zhuǎn)換
大地坐標(biāo)(B,L,H)向空間直角坐標(biāo)(X,Y,Z)的轉(zhuǎn)換公式:
式中,N為該點(diǎn)橢球卯酉圈曲率半徑;e為參考橢球第一偏心率。
空間直角坐標(biāo)(X,Y,Z)向大地坐標(biāo)(B,L,H)的轉(zhuǎn)換公式:
式中,L可以直接計(jì)算求得,B可由迭代計(jì)算法求得。
1.2高斯正反算
高斯正算是將大地坐標(biāo)(B,L)轉(zhuǎn)換為高斯平面直角坐標(biāo)(x,y)的計(jì)算過程。高斯投影具有正形投影的性質(zhì),并且考慮到投影后的中央子午線長(zhǎng)度不變且仍然為直線,將函數(shù)展開為經(jīng)差的冪級(jí)函數(shù)。公式如下:
1.3四參數(shù)法
兩個(gè)不同的平面直角坐標(biāo)系統(tǒng)通過四個(gè)參數(shù)(兩個(gè)平移參數(shù)(△x、△y),一個(gè)旋轉(zhuǎn)參數(shù)(α),一個(gè)尺度伸縮參數(shù)(k)搭建函數(shù)關(guān)系,可以實(shí)現(xiàn)這兩個(gè)平面坐標(biāo)數(shù)據(jù)的統(tǒng)一。函數(shù)關(guān)系式如下所示:
如果已知4個(gè)參數(shù),則可直接將4個(gè)參數(shù)引入方程,再根據(jù)原平面坐標(biāo)來求解轉(zhuǎn)換后的所需坐標(biāo)。如果參數(shù)提前未知,則可以利用兩個(gè)平面坐標(biāo)系上的公共坐標(biāo)來求解四參數(shù),公共坐標(biāo)點(diǎn)個(gè)數(shù)不少于兩個(gè)。若公共點(diǎn)個(gè)數(shù)大于2個(gè),可按照最小二乘原理,通過間接平差方法解算四參數(shù)。
當(dāng)公共點(diǎn)坐標(biāo)數(shù)量為n個(gè)時(shí),按照間接平差寫出誤差方程,則誤差方程如下所示:
1.4?七參數(shù)法
七參數(shù)法是實(shí)現(xiàn)不同空間直角坐標(biāo)系坐標(biāo)轉(zhuǎn)換的方法,其中布爾沙模型最為常見。其中包含3個(gè)平移參數(shù)(),3個(gè)旋轉(zhuǎn)參數(shù)(即3個(gè)歐拉角,),1個(gè)尺度參數(shù)(k)。若已知七參數(shù),則可直接引入七參數(shù)到下式(14),進(jìn)行解算轉(zhuǎn)換坐標(biāo)。若七參數(shù)待求,則選取三個(gè)或三個(gè)以上的公共點(diǎn)按照最小二乘原則計(jì)算七參數(shù)。
2坐標(biāo)轉(zhuǎn)換的功能實(shí)現(xiàn)
基于VB6.0程序開發(fā)設(shè)計(jì)軟件,在設(shè)計(jì)實(shí)現(xiàn)空間數(shù)據(jù)坐標(biāo)轉(zhuǎn)換程序中,主要分為實(shí)現(xiàn)同一橢球體坐標(biāo)基準(zhǔn)下不同坐標(biāo)系下的坐標(biāo)轉(zhuǎn)換與實(shí)現(xiàn)不同橢球坐標(biāo)基準(zhǔn)下建立的坐標(biāo)系下的坐標(biāo)轉(zhuǎn)換兩大部分。主窗體界面及兩大部分功能內(nèi)容如圖2所示。
此次設(shè)計(jì)的坐標(biāo)轉(zhuǎn)換軟件將前述4個(gè)基本理論方法編寫成子過程,當(dāng)要實(shí)現(xiàn)某一個(gè)坐標(biāo)轉(zhuǎn)換功能時(shí),采用調(diào)用子過程的方式來實(shí)現(xiàn)。對(duì)于某些功能可調(diào)用多個(gè)子過程。
在數(shù)據(jù)格式方面,輸入大地經(jīng)度和大地緯度時(shí),為方便輸入,提高效率,輸入格式統(tǒng)一為“度.分秒”,例如12°23′45.6″的輸入內(nèi)容就為“12.23456”。并且為與輸入方法對(duì)應(yīng),輸出的格式也為“度.分秒”形式。無特殊說明下,長(zhǎng)度單位為米(m),角度單位為度分秒(°,′,″)。
2.1?“大地坐標(biāo)與空間直角坐標(biāo)”相互轉(zhuǎn)換的功能實(shí)現(xiàn)
當(dāng)選擇從大地坐標(biāo)(B,L,H)到空間直角坐標(biāo)(X,Y,Z)轉(zhuǎn)換時(shí),調(diào)取大地坐標(biāo)轉(zhuǎn)換為空間直角坐標(biāo)子過程,即可實(shí)現(xiàn)大地坐標(biāo)向空間直角坐標(biāo)的轉(zhuǎn)換。反之,調(diào)用空間直角坐標(biāo)轉(zhuǎn)換為大地坐標(biāo)子過程,便能實(shí)現(xiàn)空間直角坐標(biāo)向大地坐標(biāo)的轉(zhuǎn)換?!按蟮刈鴺?biāo)與空間直角坐標(biāo)”功能實(shí)現(xiàn)窗體如圖3所示。
2.2?“大地坐標(biāo)與平面直角坐標(biāo)”相互轉(zhuǎn)換的功能實(shí)現(xiàn)
此功能也包括兩部分的內(nèi)容,選擇大地坐標(biāo)(B,L)向高斯平面直角坐標(biāo)(x,y)轉(zhuǎn)換時(shí),調(diào)用高斯正算子過程,即完成該轉(zhuǎn)換。反之,調(diào)用高斯反算子過程,可實(shí)現(xiàn)高斯平面直角坐標(biāo)向大地坐標(biāo)的轉(zhuǎn)換。“大地坐標(biāo)與平面直角坐標(biāo)”功能實(shí)現(xiàn)窗體如圖4所示。
2.3?“投影換帶計(jì)算”的功能實(shí)現(xiàn)
高斯投影換帶計(jì)算的功能實(shí)現(xiàn),先調(diào)用高斯反算子過程計(jì)算出大地坐標(biāo)值,這個(gè)過程的中央子午線采用原高斯平面直角坐標(biāo)系所使用中央子午線。然后再調(diào)用高斯正算子過程計(jì)算出高斯平面直角坐標(biāo),這個(gè)過程的中央子午線采用新高斯平面直角坐標(biāo)系所使用中央子午線?!巴队皳Q帶計(jì)算”的功能實(shí)現(xiàn)窗體如圖5所示。
2.4?“大地坐標(biāo)之間”相互轉(zhuǎn)換的功能實(shí)現(xiàn)
在本次設(shè)計(jì)的軟件中,此功能的實(shí)現(xiàn)采用間接法計(jì)算實(shí)現(xiàn),在參數(shù)求解上采用三對(duì)公共點(diǎn)的方法。首先是將兩個(gè)橢球體下的公共點(diǎn)大地坐標(biāo)數(shù)據(jù)通過調(diào)用大地坐標(biāo)轉(zhuǎn)換為空間直角坐標(biāo)子過程,使數(shù)據(jù)都統(tǒng)一轉(zhuǎn)換為空間直角坐標(biāo)數(shù)據(jù)。然后調(diào)用求解七參數(shù)子過程,計(jì)算兩個(gè)空間直角坐標(biāo)數(shù)據(jù)的七參數(shù)。最后,對(duì)待轉(zhuǎn)換的原大地坐標(biāo)系上的坐標(biāo)數(shù)據(jù)進(jìn)行轉(zhuǎn)換,首先也是通過調(diào)用大地坐標(biāo)轉(zhuǎn)換為空間直角坐標(biāo)子過程得到空間大地坐標(biāo)數(shù)據(jù),然后通過前面已經(jīng)求出的七參數(shù)作為轉(zhuǎn)換參數(shù),將原橢球體上的空間大地坐標(biāo)數(shù)據(jù)轉(zhuǎn)換為現(xiàn)橢球體下的空間直角坐標(biāo)數(shù)據(jù),最后再通過空間直角坐標(biāo)轉(zhuǎn)換為大地坐標(biāo)子過程得到最終的結(jié)果?!按蟮刈鴺?biāo)之間”功能實(shí)現(xiàn)窗體如圖6所示。
3坐標(biāo)轉(zhuǎn)換實(shí)例驗(yàn)證
為使轉(zhuǎn)換結(jié)果的精度達(dá)到毫米級(jí),在長(zhǎng)度單位為米(m)的狀態(tài)下取到小數(shù)點(diǎn)后4位。而在地球赤道附近,為使緯度上的長(zhǎng)度精度也對(duì)應(yīng)到毫米級(jí)上,則大地緯度以秒(″)為單位的狀態(tài)下取到小數(shù)點(diǎn)后五位,同樣,大地經(jīng)度上也取到小數(shù)點(diǎn)后五位。
此處僅討論大地坐標(biāo)與空間直角坐標(biāo)相互轉(zhuǎn)換、投影換帶計(jì)算、大地坐標(biāo)之間轉(zhuǎn)換的精度評(píng)定三個(gè)部分。
3.1“大地坐標(biāo)與空間直角坐標(biāo)”相互轉(zhuǎn)換的精度評(píng)估
北京54坐標(biāo)系下,點(diǎn)A大地坐標(biāo)為(23°05′58.98725″,113°18′52.17926″,44.5874),空間直角坐標(biāo)為(-2323186.0947,5390623.6334,?2486942.8149)。轉(zhuǎn)換后的坐標(biāo)對(duì)比數(shù)據(jù)如下所示表1、表2所示。
從上述兩表的對(duì)比數(shù)據(jù)可以看出,該功能實(shí)現(xiàn)的大地坐標(biāo)與空間直角坐標(biāo)的轉(zhuǎn)換精度嚴(yán)密可靠。
3.2“投影換帶計(jì)算”的精度評(píng)估
換帶計(jì)算的驗(yàn)證數(shù)據(jù)采用西安80坐標(biāo)系下,中央子午線為117°下高斯平面直角坐標(biāo)為點(diǎn)B(3102979.191,827982.595),其轉(zhuǎn)換為中央子午線123°下高斯平面直角坐標(biāo)參考值為點(diǎn)B′(3101364.1438,237656.2178)。
將上述的轉(zhuǎn)換值再進(jìn)行反算回去,得出的B″值與B值相對(duì)比,可進(jìn)一步進(jìn)行可靠性驗(yàn)證。其對(duì)比結(jié)果如表4所示。
從上表3、表4可以看出,高斯投影換帶計(jì)算的精度較高。
3.3“大地坐標(biāo)之間”轉(zhuǎn)換的精度評(píng)定
選用西安80坐標(biāo)系上五個(gè)坐標(biāo)點(diǎn)向CGCS2000坐標(biāo)系上轉(zhuǎn)換為例。采用直接輸入七參數(shù)法進(jìn)行坐標(biāo)計(jì)算,七參數(shù)列表如表5所示。計(jì)算結(jié)果誤差表如表6所示。
由上述表6數(shù)據(jù)可知,轉(zhuǎn)換誤差在厘米級(jí),精度能滿足大多數(shù)工程應(yīng)用。
4?結(jié)語
該文針對(duì)當(dāng)前市面上教學(xué)和生產(chǎn)作業(yè)的坐標(biāo)轉(zhuǎn)換軟件大都功能單一、操作繁瑣、不便于學(xué)習(xí)與使用的問題,作者設(shè)計(jì)了此坐標(biāo)轉(zhuǎn)換軟件。該軟件可實(shí)現(xiàn)高斯正反算、換帶計(jì)算、不同常用大地坐標(biāo)系之間的大地坐標(biāo)轉(zhuǎn)換等多個(gè)功能,并且頁面直觀簡(jiǎn)潔、操作方便、結(jié)果準(zhǔn)確。
經(jīng)過系列精度評(píng)定,該坐標(biāo)轉(zhuǎn)換軟件在同一參考基準(zhǔn)下的轉(zhuǎn)換嚴(yán)謹(jǐn)細(xì)致,在不同坐標(biāo)基準(zhǔn)下的坐標(biāo)轉(zhuǎn)換精度,可滿足大多實(shí)際工程應(yīng)用。本坐標(biāo)轉(zhuǎn)換工具可為地理信息方面的建設(shè)和應(yīng)用提供便捷、全面、可靠的服務(wù)。不足之處在于不同坐標(biāo)基準(zhǔn)下的坐標(biāo)轉(zhuǎn)換精度不是很理想。究其原因,可能由于下面這幾個(gè)因素的影響:(1)轉(zhuǎn)換模型帶有固定誤差;(2)公共點(diǎn)坐標(biāo)攜帶測(cè)量誤差;(3)公共點(diǎn)數(shù)量不足。期望能在后續(xù)工作中加以改進(jìn)與完善。
參考文獻(xiàn)[1]?劉寶建,宋學(xué)忠.?區(qū)域CGCS2000坐標(biāo)獲取的歐拉矢量法[J].?導(dǎo)航定位學(xué)報(bào),?2022,?10(4):?108-114.