曹永桃, 黄勇军, 吴杰明
(湖北省国土测绘院,湖北 武汉 430010)
信息化建设的高速发展,使得空间数据的处理越来越重要。在城镇地籍数据库建设中,需要处理大量的数据,比如数据的格式转换、坐标系转换、图层叠加、要素及图层的提取、属性操作等,怎样提高空间数据处理的速度和质量,减轻数据处理的劳动强度,缩短数据库建设的周期,增加经济效益和社会效益,一直是空间数据处理者不断追求的目标。选择一个技术成熟、功能强大的空间数据处理软件是很重要的,针对目前主流空间数据处理软件FME,结合在城镇地籍数据库建设中的实际应用,本文主要介绍FME在城镇地籍数据库建设中的应用。
FME(Feature Manipulate Engineering)直译为数据特征操作引擎,是加拿大Safe Software公司推出的空间数据转换处理系统,该系统基于OpenGIS(开放式)组织提出的新的数据转换理念,通过提供在转换过程中重新构造数据的功能,实现超过200多种不同空间数据格式之间的转换[1]。FME是一个多功能组件系统,包括以下几个组成部分[2]:
在FME工作台上能够以图形化的界面实现对数据转换和转换流程的完全控制,随时掌控从源数据到目标数据转换的全过程,FME Workbench提供了一个图形化的数据处理过程和强大的数据处理能力。
在FME通用转换器上可以利用系统提供的默认配置实现一些基本的数据转换任务,或者如果是FME的高级用户,可以创建和运行用户自定义的FME映像文件(*.fme)来完成较为复杂数据处理任务。
在FME通用浏览器上可以浏览数据的转换过程以及转换后的数据,检查数据的特征和属性。FME Universal Viewer以特定的颜色、符号和标签来增强相关数据的显示效果,便于浏览。
提供了基于多种工程的坐标系统,根据需要也可以自己定义坐标系统。
应用程序开发人员可以将FME Objects控件嵌入到其他应用程序中,增强程序的可移植性。
应用程序开发人员可以根据需要利用某种程序语言动手编写程序小插件添加到FME转换内核中,用以实现一些特殊功能,便于FME功能的扩展。
城镇地籍数据库建设中大量的宗地背景图需要事先经过预处理才能满足数据转换前的要求。利用FME可以很好地完成这一任务。
使用FME对入库数据的处理过程如下:先将*.dwg格式的源数据通过FME Workbench转换为*.mdb格式的二进制数据,再将该二进制数据导入Oracle数据库,形成目标数据库。在进行数据转换之前,要事先做好以下两项工作[3]:
(1) 按城镇地籍数据库建设项目入库要求建立一个FME数据转换模板文件,文件名格式为*.fmw。FME数据转换模板文件建好后,运行FME Workbench,打开模板工作空间,可以看到模板以图形化的结构显示在窗口中,它由一系列特征属性转换器(Transformer)、管道(Pipe)和过滤器(Filter)等组成。以下是一个模板文件结构示例(图1),图中带有箭头的黑线代表管道(Pipe)。
图1 模板文件结构图Fig.1 Structure diagram of template file
利用模板进行数据处理过程,就好象是一个具有生产流水线的工厂加工产品,源数据从左端进入模板,经过层层处理经由管道传输,从右端输出,形成目标数据。
(2) 入库前要对源数据文件即*.dwg宗地背景图进行地物要素编码设定处理。地物要素主要由点状地物、线状地物、面状地物和行政区划等构成,按几何特征分为5种特征类型,即点(Point)、线(Line)、面(Area)、复合(Compound)和文字(Text)[4]。地物符号的几何特征只能是其中的一种,具体是哪一种,要由该地物的编码来定。入库前要对源数据文件即*.dwg图形中的每个地物要素给定一个六位数的要素编码,要素编码除了表达符号特征信息之外,也包含了点(Point)、线(Line)、面(Area)、复合(Compound)和文字(Text)等所有属性信息,只需正确地设定了地物要素编码,也就同时赋予了地物要素所有的属性信息[5],地物要素编码在*.dwg图形中以图层名的方式存贮,在数据处理时FME会自动识别。图2窗口中最左边显示的由6位数组成的图层名就是已经设定好了的地物要素编码。
图2 地物要素编码结构图Fig.2 Structure diagram of coding of geographical elements
宗地背景图只有经过严格的要素编码设定后,才能在数据转换模板的约束下被FME工作台正确识别和读取,数据转换最终得以顺利进行。当然,要使用编码就得先编制编码,要素编码的编制需要一套完整的编码体系作保证,编制出的编码既要有利于计算机的处理又要符合国家相关标准和规范,是一项系统而复杂工作。
(3) 由于系统对源数据分层处理的要求十分严格,为了提高对宗地背景图进行分层处理的效率,可以结合数据转换模板(*.fmw)在FME Workbench上辅助进行,实践证明,采用该方法能收到事半功倍的效果,极大地提高了地物要素编码处理(分层处理)的速度。
首先采用AutoCAD绘图软件对宗地背景图进行初步分层处理,即按要求用编码作图层名,将每一种地物要素分别赋予一个图层名,该图层名是地物的编码名称。经过初步分层处理的源数据*.dwg格式宗地背景图此时还不能保证百分之百达到数据入库的严格要求,图形中可能还隐藏着一些难以发现的错误,正是这些看起来微不足道的错误,可能会导致数据转换时中途彻底失败,因此需要作进一步处理。作为数据库建设项目,宗地背景图数据总量巨大,单凭肉眼仅仅依靠AutoCAD绘图软件要想彻底查找出这些错误,无异于大海捞针。利用FME工作台来检查宗地背景图可以很好地帮助我们解决这个难题。
启动FMEE工作台,打开数据转换模板文件,执行ADD Dataset(加载源数据)命令,将需要检查的宗地背景图文件加载到*.fmw模板窗口上,执行Feature Connections(特征连接)命令,将宗地背景图与模板连接上,执行数据转换功能,FME工作台开始对宗地背景图进行数据转换。此时执行数据转换不是要得到目标数据,而是用过滤器(Filter)筛选出宗地背景图中的错误。前面说过,FME工作台给用户提供了以图形化的界面实现对数据和转换流程的完全控制,数据处理完成后,系统就会自动运行并打开FME通用浏览器,将过滤器筛选出的错误信息以图文形式反馈给用户,用户可以直观地判别出显示的错误。FME通用浏览器运行界面如图3。
窗口中显示的阴影图形是筛选出来的错误内容,右边窗口显示的是对该错误信息的描述说明。参照反馈出来的错误信息,可以用AutoCAD绘图软件对宗地背景图中的错误进行修改,为避免有遗漏,修改完后应该再运行FME进行检查一次,直到FME通用浏览器没有错误信息显示为止,这时说明宗地背景图的地物要素编码已经设定和修改完毕,可以用于最终的数据转换。
图3 FME Universal Viewer运行界面Fig.3 Running interface of FME Universal Viewer
利用FME的基本特性结合AutoCAD的强大图形编辑处理功能对数据进行入库前的预处理,该方法很好地融合了两者的特点,实现了对入库数据检查和转换的批量处理功能,极大地提高了数据处理的速度和质量。实践证明,该方法创造性地发挥了FME软件的优异性能,使作业人员从繁琐的手工劳动中解脱出来,减轻了劳动强度,使数据处理的效率大大提高,缩短了数据库建设的周期。
参考文献:
[1]安丹,汤军.基于FME的CAD与GIS数据转换的应用研究[J].软件导刊,2010,10(10):26-27.
[2]陈影,程耀东,闫浩文.利用FME进行GIS数据的无损转换[J].测绘科学,2007,3(2):75-76.
[3]贺博斐,敬小东.浅谈城镇地籍数据库的建设[J].地理空间信息,2013,8(4):157-158.
[4]TD/T 1015—2007,城镇地籍数据库标准[S].
[5]TD/T 1001—2012,地籍调查规程[S].