原文发布时间:2011/5/23 20:42:11
作者:李兆雄
(1.武汉大学测绘学院,湖北 武汉 430079;2.国家测绘局重庆测绘院,重庆 400015)
摘要:介绍了大范围地理空间信息点对点坐标转换的思路,重点论述了该技术的关键,即在充分记录多点定位图形的原始构成信息后,将其分解为离散点,以点方式进行坐标转换,最后根据图形的原始信息来恢复图形。
关键词:地理空间信息;坐标转换;点对点
Design and Realization of Coordinate Transforming
of Wide Range by Point to Point
LI Zhao-xiong1,2
(1.School of Geodesy and Geomatics, Wuhan University, Wuhan 430079, China;
2.Chongqing Institute of Surveying and Mapping , SBSM, Chongqing, 400015, China)
Abstract:.The paper show a method of coordinate transforming of Wide Range by Point to Point. Befor coordinate transforming, you should record the composed information of Geo- entities such as lines and polygons, and then chop them into individual points for transforming, at last compose these points into original Geo- entities using the record information befor.
Key words:geospatial information; Coordinate Transforming; point to point
0 引言
在测绘生产和地理空间信息数据应用中,坐标系的互相转换是经常遇到的问题,比如国家坐标系与地方坐标系的转换,一般常用的是以同名控制点计算的转换参数进行转换。这种转换在小范围内精度很高,但当大范围转换时,特别是转换上百或上千公里跨度图形的时候,不管有多少同名点,如果采用一套转换参数,部分区域的变形可能都会较大。要想达到一定的转换精度就必须划分为几个、几十个甚至上百个转换区域,采用不同的转换参数转换。但是这样又会带来另外的问题,一个是接边问题,相邻图形实体如果采用了不同转换参数,其原有的合理接边就会被破坏;另一个是数据间的拓扑关系由于同样的原因会遭到破坏。手工处理这两种影响又将会产生很大的工作量。
本文将探讨大范围地理空间信息点对点坐标转换技术。
1 解决思路
1.1 分区转换
不同坐标系之间的坐标转换有很多种方法,小范围平面坐标系之间的转换可以采用仿射变换六参数来实现,其转换公式如下:
x’= Ax + By + C
y' = Dx + Ey + F
式中x’和y'为新坐标系下坐标,x和y为旧坐标系下坐标,A、B、C、D、E和F为转换参数,是由三个以上的同名点经过最小二乘法求得。这种转换的精度一是跟同名点的数量有关,点多则精度相对较高;二是跟同名点的分布有关,分布的越均匀精度越高。
由于不同坐标系椭球参数、投影面、中央子午线、投影方式的不同,在较大范围内采用仿射变换转换的坐标将会产生较大的误差,这是客观存在的,不会因为同名点的增加而消除。解决的方法就是将整个转换区域划分成若干个转换区,转换区的划分原则是全覆盖、无重叠、无缝隙,只要每个转换区有均匀分布的足够的同名点,分区越小精度越高。
1.2分区转换存在的问题
空间图形基本的表现形式一般有点、线、面、文字等几种表达形式,不同的数据平台略有不同,例如AutoCAD其实没有真正的面,另外还存在一些特殊的标准图形形式如弧和圆。一个空间图形可以是一点定位(例如点和文字),也可以是多点定位(例如线和面)。
一点定位图形和多点定位图形在分区坐标转换过程中是有区别的。对于一点定位的图形,该图形只能位于一个转换区内,不可能同时位于一个以上的转换区内,因此其转换参数唯一确定。而对于线状或面状等多点定位图形来讲,有可能同时位于一个以上的转换区内,见图1。这时如果采用图形中心或重心所处区域来确定其转换参数的话,那么相邻图形就可能选择不同的转换参数,转换后它们将会产生接边和拓扑问题。在图1中,假设有两个面,大面是一个带有一个小洞的面,小面的节点跟小洞的节点完全重合,在坐标转换过程中,大面使用了转换区域二的参数转换,而小面则使用了转换区域三的参数转换,其结果是大小面之间不但产生了接边误差,而且出现了重叠和缝隙。
要解决这个问题,就要采用点对点转换,即在转换前,先将多点定位图形分解成一个个独立的定位点,将这些点分别使用本转换区域的转换参数转换坐标后再重新还原为原始的图形。
图1 位于多个转换区内的图形
1.3 点对点转换解决方案
实现地理空间信息点对点转换的关键在于将多点定位图形(例如面)分解成离散点的时候,要能够全面准确的记录、保留它们构成该图形的所有信息,这些信息要能够保证在坐标转换后准确无误的恢复该图形。
经过对各类CAD或GIS数据的研究,空间图形根据其结构可划分为三个层次:第一个层次是聚合图形,即若干点、线、面、文字可以聚合成一个整体,这些图形的空间位置可能不相邻;第二个层次是针对面状图形的,面状图形可能包含洞,即若干个简单面构成一个复杂面;第三个层次,所有的线和面都可以看成是由其节点连接而成,即离散点组成了线和面。
按照这种分类我们在坐标转换之前依次记录第一、第二和第三层次的图形信息,在对分解后的离散点进行坐标转换后,又依次按照这些信息来恢复第三、第二直至第一层次的图形,这样就实现了图形完全恢复。地理空间信息数据点对点转换步骤如下:
1)全面检查数据的聚合情况,为每组聚合图形都赋予一个唯一的聚合ID,非聚合数据也赋予一个唯一的聚合ID;
2)打散聚合图形,然后为每个面状图形都赋予一个唯一的复杂面ID,而不论其是否是复杂面;
3)将复杂面打散为简单面,为所有的点、线、简单面、文字赋予一个唯一的图形ID;
4)以其节点打散线和简单面为点,成为一系列的点,并记载其次序信息,保留图形所有的属性信息,包括上述三步生成的ID;
5)根据各点所在转换区域的转换参数转换每个点;
6)根据图形ID和节点次序,恢复线和简单面;
7)根据复杂面ID,恢复复杂面;
8)根据聚合ID,恢复聚合图形;
9)输出成果,原数据的属性不变,如果是CAD数据,恢复其层、色、线型和扩展属性等。
1.4 利用FME实现转换
对于地理空间信息点对点转换可以使用各图形处理平台的二次开发语言来实现。如果采用加拿大SAFE公司的数据转换平台FME来开发,则可以起到事半功倍的效果。
FME是一个功能强大的可视化操作空间ETL(提取、变换和加载)工具,能够对两百多种世界主流的空间和非空间数据格式进行转换。FME采用语义转换的方式进行数据转换,其转换功能的实现是建立在对两百多种数据模型的完全彻底破解之上,通过解译不同数据格式的信息并进行数据模型重组从而实现不同数据源的转换,是一种智能转换方式。
FME以数据模型重组来实现数据转换,同时它也提供了大量的空间数据和属性数据处理功能(transformers),在数据模型重组过程中实现常用GIS软件平台的大部分地理空间信息处理功能,而且从实践中证明,相当一部分功能的性能超过GIS软件平台提供的相应功能。
在实现地理空间信息点对点转换的过程中,需要采用以下一些功能(transformers):
1)使用Deaggregator实现聚合数据实体的打散;
2)使用DonutHoleExtractor实现复杂面实体的分解;
3)使用Chopper完成线、面等实体分解成点;
4)使用PointOnAreaOverlayer来确定点所在的转换区;
5)使用Affiner或AffineWarper进行仿射转换;
6)使用PointConnector实现点到线、面等实体的复原;
7)使用DonutBuilder完成复杂面的重组;
8)使用Aggregator实现聚合数据实体的重新聚合。
2 结论
本文提出的地理空间信息点对点转换思路在理论上是严密的,在技术上也是完全可行的。我们通过对八十公里AutoCAD带状图的坐标转换,得出的高精度转换结果验证了该技术方案。由此得出结论,只要转换区划分合理,各分区同名点满足转换要求,严格按照各步骤记载原始图形的组成信息,有效的利用这些信息恢复图形,最终的转换结果不但精度高,而且不会丢失图形的任何空间和属性的信息。
参考文献:
[1]李美娟,李立瑞.仿射变换模型在地形图坐标转换中的应用.勘察科学技术2009年第一期.
[2]陈继光,马国梁.高速公路控制网中的坐标转换应用研究.华东公路,2001,(4).
[3]北京安图数码科技发展有限责任公司.FME中文教程.2008.
[4]姚宜斌. 平面坐标系统相互转换的一种简便算法[J]测绘信息与工程,2001,(01).
[5]李莉,李建榕,魏福银. FME在空间数据加工项目中的应用[J]测绘信息与工程,2006,(02).
[作者简介] 李兆雄(1972- ),男,甘肃白银人,高级工程师,主要从事地理信息系统开发与地理空间信息数据处理方面的工作。
项目来源:地理空间信息工程国家测绘局重点实验室经费资助项目(编号200958)
========================
说明:不好意思,由于小编工作疏忽,这篇投稿没能及时发到博客,请作者谅解。现在补发,文章以邮箱收到的时间为准,因此依然有效,可参加抽奖活动!再次表示抱歉!