金振阳
1广州全成多维信息技术有限公司,广东 广州511457
全国各地正在规模性地开展的农村地籍调查数据来源广泛、数据量大、数据格式复杂[1]。依赖传统功能单一的数据处理平台费时费力[2],无法满足批量处理需求。已有方法主要有:通过将图形转换成DXF格式后编制软件进行坐标转换,编写Python脚本对接边线要素进行自动接边[3],利用Access数据库实现接边,利用Geoway实现CAD数据到GIS数据的转换等[4]。本文在已有研究基础上,基于空间数据转换处理系统(feature mainpulate engine,FME)构建了一套完整的地籍图坐标转换与数据建库模板,实现了数据的自动化导入、接边、转换、入库、检查[5]。
本文基于加拿大Safe Software公司开发的FME系统进行二次开发[6],采用可视化的数据处理流程模式,能够直观定义数据的图形与属性对应关系,实现自动化地籍图坐标转换的一系列工作。
对范围较小的区域,数据量小,可将所有数据先进行接边处理,再坐标转换,将整幅大图进行裁剪,一次性得到所有目标坐标系下的分幅图;对范围较大的区域,数据量大,可先通过接图表得到原坐标系和目标坐标系下图幅间的对应关系,仅将具有对应关系的少数几幅图单独接边、坐标转换和裁剪,逐幅进行处理。具体流程如图1所示。
图1 地籍图坐标转换流程图Fig.1 Flow Chart of Coordinate Transformation
提取原坐标系下的所有图廓数据,首先对其进行坐标转换,得到这些图廓点在目标坐标系下的坐标(称为旧图廓);再按目标坐标系下分幅规则确定各幅图廓对应的西南角和东北角点坐标,利用2DGridAccumulator转换器生成能覆盖所有区域的格网,即目标坐标系下的图廓(称为新图廓)。利用AreaOnAreaoverlayer转换器将新旧两组图廓进行叠加分析,得到每一幅新图廓对应的多幅旧图廓的文件数量、名称、位置。本文设计实现了获取接图表模板,如图2所示。
图2 获取接图表模板Fig.2 Adjacent Map Chart Flow
通过叠加分析可以得到在目标坐标系下的新旧图廓的对应关系,黑色的图廓线为旧图廓的位置,红色的图廓线为新图廓的位置,如图3所示。
图3 在目标坐标系下的新旧图廓叠加分析Fig.3 Superposition Analysis of New and Old Map Borders in New Coordinate
按照接图表,根据两个坐标系下图廓线的对应关系导入相应路径的源数据或是导入所有的源数据,提取相邻的地籍图数据,进行要素几何与属性上的接边。数据接边包括地理接边和属性接边,地理接边是属性接边的基础。数据接边前进行预处理,利用bufferer转换器在图廓周围设置缓冲区域,通过SpatialFilter判断出与其相交的线要素和面要素,进行分类单独接边[7]。
1)地理接边。
两幅相邻图幅接边处同一要素的地理位置的重要特征是其与图廓线的交点坐标唯一。判断其是否为接边要素的重要转换器为LineOnLineoverlayer和LineOnAreaoverlayer,即进行压盖判断,若有压盖则说明该要素与图廓线相交。接着,通过Coordinate-Extractor转换器可以提取出图廓线处的交点坐标,查找相邻图幅图廓线交点中的相同坐标,即认为这两个要素在地理上是一致的,据此构建线要素与面要素地理接边模板。
2)属性接边。
在满足地理接边的条件下,两幅相邻图幅接边处同一要素属性也应当一致,当且仅当属性一致时,才进行接边,称为属性接边。而由于不同类别要素的属性表结构不一样,对全部属性项逐一地进行接边检查并无实际意义。因此,挑选部分表征要素本质特征的重要字段进行属性匹配接边检查,通过配置属性表确定各要素接边检查的字段,通过Feature-Merger转换器读取该表格来进行相关检查,据此构建属性接边模板。
FME软件中附带了多种坐标系,这些坐标系均是基于不同的投影、椭球体和基准面进行定义的。在本次调查中,为尽可能地减少变形误差,外业测图时采用的是西安80坐标系112°中央经线的高斯投影平面坐标,而最终的成果需要提交国家2000坐标系111°中央经线的高斯坐标地籍图,需要进行两种变换,一是相同大地基准下的投影换带处理,二是进行西安80坐标系至国家2000坐标系的不同大地基准之间的坐标转换[8,9]。
1)相同大地基准下的投影换带。
中央经线为112°的投影带不属于高斯投影标准分带,因此需要自定义这个投影带,定义主要包括以下内容:COORDINATE_SYSTEM_DEF(坐标系名称),PROJ(投影类型),UNIT(单位类型),DT_NAME或EL_NAME(基准面或椭球体类型),MAX_LAT,MAX_LNG,MIN_LAT,MIN_LNG(坐标系有效的经纬度范围),PARM(不同投影类型对应的投影参数,数量不定),QUAD(指定坐标系产生的笛卡尔坐标所在的象限),X_OFF(东方向加常数),Y_OFF(北方向加常数),ZERO_X(设定X最小值的非零值),ZERO_Y(设定Y最小值的非零值)。西安80坐标系下3°带东经112°高斯投影平面坐标系的定义如下:
COORDINATE_SYSTEM_DEF.XIAN.GK3d/CM-112E
DESC_NM“Xi’an 1980/3-degree Gauss-Kruger CM 112E”
DT_NAME Xi’an80
GROUP ASIA
MAP_SCL 1
PARM1 112
PROJ TM
QUAD 1
SCL_RED 1
UNIT Meter
X_OFF 500000
ZERO_X 0.0001
ZERO_Y 0.0001
将新定义的坐标系导入至FME坐标系库中,利用Reprojector转换器将源坐标系设定为112°高斯投影平面坐标系,目标坐标系设定为111°高斯投影平面坐标系即可进行坐标转换。2)西安80坐标系国
2)西安80坐标系至国家2000坐标系不同大地基准之间的坐标转换。
测区内多个控制点既有西安80坐标系数据,又有国家2000坐标系数据,都转换为各自对应的中央经线为111°的高斯平面直角坐标,进一步通过控制点对数据求解两者之间的平面坐标相似变换四参数,最后利用FME的Affiner转换器对地籍图实现坐标转换。四参数包括平移参数ΔX、ΔY,尺度参数k和旋转参数α,两个坐标系通过原点的平移、坐标轴的旋转和尺度的缩放完成转换。将西安80坐标(X0,Y0)向国家2000坐标(X1,Y1)转换,则相应的解析关系可表示为:
Affiner转换器中有6个转换参数A、B、C、D、E、F,其坐标间的对应关系为[10]:
由此可得,参数间的对应关系为:A=(1+k)cosα,B=-(1+k)sinα,C=ΔX,D=(1+k)sinα,E=(1+k)cosα,F=ΔY。
目前地籍数据大多数采用的是GIS平台对其进行管理,而地籍图绘制平台常采用CAD的dwg格式,因此需要进行数据格式的转换,将其转换成能被GIS系统识别的文件类型[11]。利用GeometryFilter转换器将地籍图要素分为:点、线、面、文本4类,检查面层间和面层内的拓扑关系,根据要求对属性进行修改,将属性表与图形进行关联,再依照数据特性筛出至不同的图层,进行分层入库[12,13]。在数据转换时,要特别注意CAD文件中的扩展属性,即属性块,是具有文字属性的图块,其实体是一个块参照,显示内容根据不同的属性值而不同,需要单独提取进行处理,从而构建数据建库FME模板[14]。
项目区域位于广东省某丘陵地带,含有多个乡镇,划分为1 647幅西安80坐标系1:500地籍图,采用中央经线为112°的高斯投影。利用本文FME模板进行处理,得到1 725幅西安80坐标系中央经线为111°的高斯投影带地籍图,1 739幅国家2000坐标系中央经线为111°的地籍图。
经过§1.3的两种转换,得到了西安80坐标系111°中央经线的地籍图和国家2000坐标系111°中央经线的地籍图,需要对其转换精度进行全面检查。将DLG数据中控制点层的控制点点号、等级、坐标等属性提取出来,通过DatabaseJoiner转换器与检查模板中GDCORS RTK获取的高精度控制点信息进行比较,从而得到控制点的检查结果[12]。该转换器能用数据库的一个或多个列与要素的一个或多个属性相关联,与之匹配的数据库表列的值会被添加到要素属性当中。本文选择了59个控制点进行前后对比,利用自定义将西安80坐标系中央经线为112°的高斯投影平面坐标转换至中央经线为111°的高斯投影平面坐标后,与控制网成果中相应坐标之间的差值,结果如图4所示,坐标误差在 ±0.9 mm内。根据式(1)、式(2)建立的Affiner转换器得到的国家2000坐标与GDCORS RTK测量坐标间的差值,结果如图5所示,坐标误差在±1.2 mm内,验证了坐标最终成果的准确性。
图4 换带处理后坐标差值Fig.Coordinate Difference after Zone Exchange
图5 相似变换后坐标差值Fig.5 Coordinate Difference after Similarity Transformation
本文以广东省某区域为例,研究了地籍图坐标转换的技术要点和实现方法,运用FME构建了地籍图坐标转换模板,实现了地籍图坐标转换、接边、分幅和建库等工作的自动化处理,并用高精度控制点的坐标对本文处理方法进行了正确性验证。