基于FME的多尺度时空DLG坐标转换与分幅转换
武汉市测绘研究院 曹文涛
一、 概述
地形图数据,即DLG在规划、国土、测绘等部门用途非常广泛。武汉市测绘研究院在国家标准的基础上,在考虑武汉市具体地物地貌分布的前提下,进一步细化了地物要素分类,根据“先库后图,图库一体”的基本原则,对1:500、1:2000和1:10000三种比例尺时空DLG数据的要素编码、要素属性结构、图层分类等进行了统一规范,已经建设完成了在北京1954坐标系下覆盖武汉市域范围的一整套Map 3D dwg格式的标准分幅时空DLG数据。
国家测绘地理信息局于2014年批复同意建立武汉2000坐标系(WH2000),武汉市人民政府和国土规划局下发相关通知和文件,武汉市将于2016年7月全面启用WH2000坐标系。为保证武汉城市建设和管理工作的可持续发展,保持测绘成果使用的延续性,避免重复投资、重复测绘,必须将已有测绘成果由现行北京1954坐标系(BJ54)转换至WH2000坐标系,建立一套完整的基于WH2000坐标系的基础测绘数据成果,为WH2000坐标系的顺利推广与应用提供基础保障。
二、 总体思路流程
多尺度时空DLG坐标转换和分幅转换的整个处理过程主要分为两个流程:接边检查与赋值接边标识码流程(以下简称接边检查流程);坐标转换、接边融合、裁剪分幅流程(以下简称分幅裁剪流程),总流程图如下:
图2.1总体思路流程图
2.1 接边检查流程
图2.2接边检查与赋值接边GUID流程图
该流程思路如下:
(1)首先对本图幅与相邻左与上图幅数据进行接边检查,用FME只读取与图廓线缓冲区范围相交的线面数据,主要用到了FeatureReader转换器进行数据读取,本来可选取Intersects的方法就可以获取到所要的数据,但是当数据存在几何错误时会报错,所以此处采用了Envelope Intersects方法,之后用GeometryValidator修复几何错误,再用SpatialFilter做空间判断。
对于容差范围外的要素与在相邻图幅找不到接边要素(可能是无接边的正常情况,也可能是编码错误或者超出容差、图形缺失等情况,需要人工判断)按本图幅号生成dwg报错文件,报错文件在原图的基础上增加报错图层,以品红色对错误的要素以及错误描述进行输出如下图:
图2.4检查结果样例
(2)其中线要素只考虑首尾节点(暂不考虑一条线在图框线上有多节点)与图幅间的容差关系,相邻图幅的两节点容差关系;面要素先转成以两个节点为一段的线要素,选出在图框缓冲区范围内的线段,对不同图幅线段生成缓冲区,判断本图幅接边线段是否在临图幅缓冲区范围内。考虑到跨多图幅的情况,如下图:
图2.5线跨多图幅接边情况
图2.6面跨多图幅接边情况
对于接边的要素全部重新赋值新的接边属GUID,然后将接边的数据分为Line与Area图层输出到中间mdb成果中。
(3)此时由于每幅图都与左、上做判断,会有重复的接边要素,对mdb进行去重处理,保证所有跨图幅接边要素其GUID一致,对mdb跨图幅接边要素进行去重后的结果如下:
图2.7去重后mdb文件样例
(4)最后将根据dwg文件名称,批量利用where语句在mdb进行查找,替换dwg中的接边GUID属性。
2.2 分幅裁剪流程
图2.8坐标转换、接边融合、裁剪分幅流程图
该流程思路说明下:
(1)由于WH2000坐标系下的分幅图廓与将BJ54坐标系下分幅图廓进行坐标转换后的结果有差异,如下图:
图2.9 WH2000坐标系下两种分幅对比
需要先获取到每个WH2000图幅所对应的BJ54图幅号与文件路径,如下图file_concatenated为对应的BJ54坐标系的文件路径,whereclause为对应的WH2000图幅号。
图2.10两种坐标系分幅关系获取
(2)利用已配置好的自定义坐标系完成坐标转换。在FME中可以直接利用“Reprojector”转换器进行处理,但是对于地方坐标系涉及保密FME本身不会有,需要自定义。因此,向坐标系统文件,即LocalCoordSysDefs.fme和MyCoordSysDefs.fme文件中添加WH2000坐标系的相关定义描述,就可以使用WH2000坐标系。
图2.11 FME坐标转换参数设置
(3)对获取到的BJ54标准图幅进行图幅接边处理,对于部分编码考虑属性接边,通过excel配置表进行配置与挂接。
图2.12 FME实现图幅接边融合
(4)完成裁剪与新的接边GUID赋值,生成mdb文件去重之后再替换接边GUID。
图2.13 FME实现分幅裁剪
三、 关键技术
3.1 图幅查找
由于过程中涉及到本图幅与其左、上图幅的接边,这里涉及到根据本幅文件名称查找相邻图幅,以1:2000比例尺为例,文件命名规则如下:
1:2000比例尺DLG数据文件名为8位,前6位分别取图幅坐标三位整公里数,X坐标在前,Y坐标在后。第7、8两位为0,如:40452500.dwg。对于该比例尺分幅的DLG,直接采取减100或者加100000的方法获取上和左图幅。
图3.1 1:2000比例尺DLG图幅查找
3.2 块状要素的处理
在数据转换过程中,FME可以针对要素实体的不同类型包括点状要素、线状要素和面状要素等进行图形和属性的编辑处理,在处理线和面要素时,抽象化之后的线面要素是不需要线型等符号化的表现信息的,因此可以对线和面要素进行有效地处理;在处理点要素主要包括点(Point)、块参照(BlockReference)和文字(Text)等类型时,其中的块参照是需要进行特别处理的,因为FME在缺省模式下会将块参照强制转换为点,那么这样以来就会丢失掉块参照本身的符号信息,所以FME在处理数据转换中的块参照时,需要通过一些必要手段来避免块参照符号信息的丢失。
为解决这一问题,制作了各比例尺基本图的DWG符号库文件作为模板文件,在对点要素写出时,参照模板文件的符号信息进行输出。
3.3 属性接边检查
在接边检查中,除了几何接边外,要素的属性一致性也应是检查项。而针对这一项的检查,由于不同类别要素的属性表结构不一样,表中的内容也多种多样,且DLG数据中实际存在着大量非必填属性项为空的情况,对全部属性项逐一地进行接边检查不仅工作量大,也并无实际意义。因此挑选部分要素的重要字段进行属性匹配接边检查,通过配置各比例尺的属性检查表确定各要素接边检查的字段,检查程序直接读取该表格来进行相关检查,简化了检查流程,集中了检查内容,大大提升了程序运行效率。
图3.3 属性接边检查配置表
3.4 标准分幅处理
DLG数据均采用分幅管理的模式,完成坐标系统转换后,BJ54坐标系下的图幅范围与WH2000坐标系下的标准图廓并不一致,存在偏移与旋转。因此,需要先将在BJ54坐标系下被图廓线分割开的相邻图幅同一地理对象的不同部分进行拼接融合,再用WH2000坐标系下的标准分幅结合表进行裁剪,最终生成WH2000坐标系下的标准分幅地形图。
图3.4 WH2000新图幅分幅
3.5 FME Server多引擎并发处理
利用“FMEServerJobSubmitter”技术,通过制作模板获取批量提交文件的路径,通过“FMEServerJobSubmitter”转换器获取文件路径参数,提交FME空间ETL任务到FME Server中用于运行。将批量的提交任务作为服务发布给FME Server,通过配置更多的FME引擎并发性的处理提交的服务,通过内建负载平衡和基于优先级队列技术,在多FME引擎上自动分配空间ETL处理和加载任务,同时进行排队等待,因此能够将海量数据的处理分布到多个引擎上并行处理,通过分布式处理的方式提高实现任务并发与处理效率。
图3.5 FME Server服务发布
图3.6 FME Server已发布模板界面
图3.7 FME Server多引擎并发处理任务完成界面
四、 转换精度评价
多尺度DLG的坐标转换涉及到的图幅数量多,内容复杂,通过从不同区域不同复杂程度不同地物类型的1:2000地形图中挑选图幅样本进行精度统计来说明坐标系统转换的质量,表明坐标转换的质量合格。
4.1 样本数据概况
本次坐标转换前后,要素的变化情况是通过17幅样本数据来统计的,17幅样本数据主要分布在武汉市主城区和3个远城区,每个城区选择的图幅个数均匀,且包含地物类型有水系及附属设施、居民地及附属设施、交通及附属设施、管线、境界、地貌、植被、注记等。
4.2 要素颜色和线型变化情况
由于坐标转换前后,所处理的文件均为库文件,即Map 3D dwg格式文件,要素对象并没有线型,所以在转换过程前后,线型没有发生变化,而库文件对应的符号化线型文件在转换前后没有发生改变,因此,如果要素个数没有发生改变,则库文件所符号化出来的图文件展示效果也不会改变;同时在转换过程中针对要素对象的颜色并未进行处理,因此与源文件保持一致。
4.3 要素图层个数变化情况
坐标转换前后17幅样本数据的图层个数、名称和定义均未发生变化。
4.4 要素个数变化情况
坐标转换前后17幅样本数据的要素个数均未发生变化,没有发生要素丢失或新增的情况。
4.5 坐标转换精度统计
为了对坐标转换的精度进行统计,从17幅样本数据中,每幅选取16个特征地物点,作为样本点位,例如房角点、旗杆等独立地物点,共272个点。
样本分布地区 | X坐标残差 中误差(mm) | Y坐标残差 中误差(mm) | 平面点位 中误差(mm) |
中心城区 | 0.30 | 1.22 | 1.25 |
新洲区 | 0.28 | 1.25 | 1.28 |
经济开发区 | 0.50 | 1.21 | 1.31 |
黄陂区 | 0.46 | 1.24 | 1.32 |
所有区域 | 0.39 | 1.23 | 1.29 |
坐标转换选取的样本数据均为1:2000比例尺地形图数据,图上0.1mm对应地面为0.2m,由上表可以看出,各样本区域的平面点位中误差均小于0.002m,因此,样本数据坐标转换精度均符合图面精度要求。
五、 结语
作为武汉市的基础测绘成果,多尺度时空DLG数据广泛地服务于城市建设、城市规划和城市管理。随着WH2000坐标系的推广,这些城市基础测绘图件在其他国土规划成果之前先行完成坐标转换,最终生成的WH2000坐标系下标准分幅的DLG数据可以率先运用到各行业各领域中,同时也从数据的规范、作业方式、数据格式转换、数据坐标转换等步骤制定了一整套详细的作业流程与作业细则,并开发了批量进行数据处理的基本图接边检查程序与坐标转换程序,也是今后大批量的测绘成果进行坐标转换的技术基础与方法来源。