张 沛,陈朝晖,周怀许
(1.南宁市国土资源局,广西 南宁 530021;2.南宁市国土资源信息中心,广西 南宁 530021)
空间数据的坐标转换一直以来都是空间数据研究和应用的热点.由于历史原因,南宁市国土系统现存的资料均为1954年北京坐标系统(以下简称北京54坐标),难以满足第二次土地调查农村调查部分中空间数据坐标统一到1980国家大地坐标系统(以下简称西安80坐标)的要求.因此在南宁市第二次土地调查工作中涉及大量的地图数据坐标转换工作.另一方面,在日常的国土管理工作中,如何对这两套坐标系统下的数据进行保存管理,如何保证数据变更时其完整性不被破坏,是设计坐标转换方案时必须考虑的重要问题.
由于北京54坐标和 80坐标系统采用不同的参考椭球体,而不同椭球体间的转换是不严密的,不存在一套可以全国适用的转换参数,因此各地必须根据地区实际解算出满足精度要求的转换参数[1].截止目前已有大量的文献介绍坐标转换的原理和办法[2-6],如七参数模型、神经网络模型、二元双n次多项式模型等.
从转换精度、转换效率、易编程性等方面考虑,本地区采用二元双三次多项式模型作为54坐标系到80坐标系坐标转换的数学模型.
二元双三次多项式模型表达式为:
其中,X0,Y0为模型所使用的坐标原点:X0=25 000 km=2 500 000 m,Y0=500 km=500 000 m.
根据上述模型表达式利用最小二乘法平差计算出的转换参数为:
A00=-59.059 451 117 372 6;B30=-4.991 692 235 027 99E-17;
A01=-2.499 496 947 416 33E-06;B31=-1.303 262 485 296 98E-21;
A02=-2.375 980 152 632 84E-11;B32=4.405 130 074 777 19E-27;
A03=-1.541 716 636 659 11E-17.B33=-5.821 047 954 897 31E-32.
注:共32个参数,因为保密需要,这里这列出8个.
图1 转换流程图
建立54坐标系与80坐标系间相互转换的数学模型后,一个54坐标系下的坐标点,经过模型计算,便可以得到其相应的80坐标.而地图数据的类型多种多样,如通常可分为栅格、矢量,故而对于不同的数据类型,需要分别定义转换方式.此外,对于不同的计算机辅助制图软件(如MicroStation、AutoCAD)及GIS平台软件(如SuperMap、MapGIS),其数据类型的定义又各不相同.因此在不同的软件平台上,需要开发其相应的转换软件.
1)不同坐标系数据的存储更新问题.当对一幅图件进行坐标转换后,便有了54和80两坐标系下的两套数据.进行转换的原始数据显然须要进行备份,而不能删除.随着转换的图件越来越多,需要大量的磁盘空间用于存储数据.尤其是栅格数据,其数据量大,须要的存储空间多.此外,所有的地图数据均具有其时态性,随着时间的变更而变更.如权属地类的变更,面积界址的变化等.
对此,如果对54和80坐标系下相应的两套数据均进行更新.一是工作量大,如一宗地的权属发生变化,不但要对80坐标系下的宗地进行变更,还要找到其相应的54坐标系下的宗地进行变更.二是增加了出错几率,如对于一宗地的权属变更,更新了80坐标系下的数据而忘记了同时更新54坐标系下的数据的情况是不可能完全避免的.
假如通过开发软件来解决这一问题,且不说是否会对数据的编辑更新操作带来不便.单是开发成本也是一笔不小的开支.
2)动态坐标转换的解决方法.而相反,在不增加成本的情况下,利用动态坐标转换技术,便可以轻松解决上述问题.本文所指的动态坐标转换,可以用即需即转四个字来概括.对于不同坐标系下的各类数据,只存储一套原始数据,使用或更新维护.当需要提交的图件成果和原始数据坐标系不一致时,即进行坐标转换.转换流程图如1所示.
1)两种转换方法.方法一:对每幅影像进行逐像素转换.每一个像素点都利用二元双三次多项式计算出对应的80坐标值P80,再利用仿射变换原理将该像素点移动到P80.有多少像素点就计算多少次,有多少像素点就移动多少次.方法二:采用中心点平移的方法.首先找到54坐标系下该影像图的中心点P54,利用二元双三次多项式模型计算出该点的80坐标值P80.然后将该影像图整体平移P80减P54个距离,整幅影像即移动到对应的80坐标系位置.
2)两种方法的比较.使用逐像素转换方法可以获得很高的精度,但是一幅DRG1∶1万地形图约有50万个像素点,一幅1∶5万的DOM影像图约有5亿个像素点!逐像素转换这样一幅影像图需要耗费很长时间,显然不宜使用动态转换的方法.反之,对于每幅影像,使用中心点平移的方法由于只需要转换一个点,速度为毫秒级,比使用第一种方法快几十万倍.在转换速度上完全满足动态转换的要求.当然,中心点平移转换法会产生误差,离中心点越远的像素点误差越大.为了了解误差大小,分别用两种方式对128幅1∶1万DRG地形图进行了54坐标到80坐标的转换.统计出每幅影像距中心点最远的四个角点的误差,统计结果显示:平均误差在3 cm左右,最大误差亦不超过5 cm,完全满足1∶1万比例尺误差≤1 m的要求.
使用同样的方式转换了32幅1∶5万的DOM影像进行误差统计,平均误差在15 cm左右,最大误差不超过24 cm,完全满足1∶5万比例尺误差≤10 m的要求.误差统计如表1所示.
表1 1比1万DRG地形图逐像素转换与整体平移转换结果对比表
表2 1比5万DOM影像图逐像素转换与整体平移转换误差对比表
说明:表1与表2中误差计算方式均为逐像素转换各角点坐标减去平移转换各角点坐标.
基于以上分析,使用中心点平移转换方法的优势明显.故对于栅格影像图的转换,采用中心点平移的动态转换方法.
1)矢量图的数据类型.现阶段,国土系统的矢量数据均为二维.矢量图中的数据类型可分为点、线、面三种.而元素类型多种多样,比如线有直线、线串、弧线、多线等.但是仔细考察这些数据不难发现,线可分为折线和弧线两个大类(直线是只有两个端点的折线).弧线和折线的最大不同在于两点就可以确定折线中的一条线段,但是弧线中的一段圆弧必须要有三点才能定义.因此在对线状数据进行坐标转换时,必须将折线与弧线分开考虑.而面是由闭合的线构成的.因此,在坐标转换时,不需要将面作为一类特殊的数据进行转换.按照转换线数据的方法,将其作为特殊的线进行坐标转换即可.总括起来,矢量图的坐标转换需要转换的即为点、折线、弧线三类数据.
2)矢量数据的转换要求.将这些矢量数据转换到80坐标系后,既要保证转换的精度,又要使数据的拓扑结构不被破坏.比如转换之后,一条线串仍然是线串;一个多边形仍然是一个多边形.这是矢量数据转换的难点所在.
3)选用点对点转换方法.采用整体平移(选取一个中心点,计算出对应的80坐标,用这个值减去54坐标的值,得到一个差值,将整个矢量图移动差值的距离)的方法可以确保数据的结构不被破坏,但是这种方法的转换精度较低,达不到二调的要求.并且几幅矢量图拼接的时候衔接处会出现错位、重合、缝隙等问题.
采用点对点转换的方式首先可以确保转换的精度,其次经过对各数据类型的深入研究,各种类型采用合适的点对点转换方法,可以最大限度的保证其数据结构的完整性.下面就各种矢量数据的点对点转换方式进行阐述.
1)文本及文本节点类数据的点对点转换.文本及文本节点数据主要指矢量图中的界址点、界址点号、地类代码、地块编号、权属注记等.属于点数据类型,其放置位置都只由一个原点决定,改变了原点的坐标也就改变了其位置.
因此转换时只需要通过程序获取它的坐标原点P54,计算出该点在80坐标系下的值P80,将坐标原点移到P80,即完成转换.
2)符号的点对点转换.矢量图中的标注符号仍然为点类型数据,可按上述点对点的转换方法转换.此处不再赘述.
3)折线类数据的点对点转换.矢量图中的折线类数据主要为地类界线、行政界线、权属界线等.折线可分为有限条线段,由有限个点组成.将每个点转换到相应的80坐标系下,再将这些点按照次序连接起来.
4)圆弧的点对点转换.圆弧的转换有两种方式.一是根据三点即可定义一段圆弧的原理,分别计算出圆弧起始点、圆弧上的中点和圆弧结束点在80坐标系下的坐标,依次序连成圆弧.二是根据两点再加半径即可定义一段圆弧的原理,计算出一段圆弧首尾点对应的80坐标,圆弧的半径保持不变进行转换.
经过测试,这两种方法都可以达到点对点转换的目的,数据的拓扑结构也不会被破坏.但在细微处有差别,各有优缺点.圆弧上三点的转换方法是严格的点对点转换,圆弧变形较大,但较真实.圆弧首尾点加半径的转换方法保证了圆弧半径不变,圆弧变形较小.
综合起来考虑,选择第一种圆弧上三点对应转换的方法.
参考文献:
[1]董钧祥, 杨德宏.测量坐标转换模型及其应用[J].昆明理工大学学报:理工版,2006,31(4):1-4.
[2]覃振康,廖超明,何健.北京54坐标系与西安80坐标系坐标转换方法探讨[J].南方国土资源,2007(9):41-43.
[3]柯金朴.空间三维坐标转换原理及实现[J]. 江西测绘,2008,74(3):16-20.
[4]张龙其,刘平,刑光成,等.关于北京54和西安80坐标系相互转换的探讨——基于湖北省境内控制成果[J].工程地球物理学报,2005(1):18-21.
[5]陈兆林,张书毕,闵珊.两种坐标转换模型的数据比较[J].四川测绘,2007,30(5):224-227.
[6]彭爱文,曹佩瑶.平面坐标转换方法拼报转控制件的设计思路[J].测绘与空间地理信息,2007,30(3):189-191.