APP下载

基于ArcGIS模型构建器处理1∶5 000专题地理信息数据的方法

2020-05-12张忠斌

吉林地质 2020年1期
关键词:数据格式批量图层

张忠斌

吉林省地矿测绘院,吉林 长春 130062

0 引言

目前,ArcGIS平台已经广泛地运用到测绘数据采集和生产过程中,同时也出现了基于ArcGIS开发的数据处理程序[1]。但由于各项目数据结构的不同,各个采集软件的编辑和批处理功能都不是很完善,为了快速进行采集和处理数据,提高作业效率,编写了基于ArcGIS模型构建器1∶5 000专题地理信息数据处理程序,实现了数据处理的批量面擦除、批量数据整合和裁切、数据属性一致性检查、数据格式转换的基本功能,大大提高了数据采集、处理的工作效率。

1 数据处理程序的思路

1.1 数据情况分析

1∶5 000专题地理信息数据是单幅采集的,格式为GDB文件,项目区一共1 782幅。每个单幅数据中有地表覆盖类和地理要素类两个数据集。地表覆盖类数据集里包括8个数据层(GRD_S、DGP_S、SFC_S、RES_S、AGR_S、WATER_S、ROA_S、AGR_L),地理要素类包括3个数据层(RIV_L、HYD_S、ROA_L),包含线和面要素,S代表面,L代表线。每层数据属性字段都有要素代码、类别、子类别等,要素代码是4位数字代码,子类别是要素代码的文字描述,类别包含不同的子类别,有对应的数据字典。内业数据检查完成后外业还需要进行数字化平板野外核查和采集遥感样本解译,数据上交成果要求为一个整体的GDB文件和以行政区为界线的三个分GDB文件。

1.2 批量面擦除

在数据采集过程中,居民地要求房屋单独采集,采集后会与植被层产生重叠,用编辑器功能里的裁剪只能单个裁剪擦除,人工操作效率低下。批量面擦除调用擦除、删除要素和追加三个模块,思路为选择居民地图层进行擦除植被图层,然后删除植被图层要素,最后将擦除居民地后的植被图层追加到植被图层中。

1.3 批量数据整合和裁切[2]

在数据处理过程中,数据上交要求为一个整体的数据库文件和三个以行政区为单位的数据库文件,数据成果是单幅的,图幅众多,人工合并和裁切工作量极大。

数据整合调用迭代要素类、追加和融合三个模块,思路为先打开一幅图作为要追加的模板,然后建立一个子模型,利用迭代要素类模块选择要合并的数据,将该数据内的11个图层循环追加到模板中,把工作空间和目标数据集作为模型参数,最后建立模型把11个图层作为目标数据集加载到子程序中,把工作空间作为模型参数,这样11个图层循环追加到模板数据当中。

数据裁切调用迭代要素类、创建文件地理数据库、迭代要素选择、裁剪模块,由于一个模型不能有两个迭代器存在,要建立两个模型来实现,思路为将要裁剪的数据库文件利用迭代要素类依次输出11个要素类,然后通过裁剪模块调用结合表作为裁剪对象依次裁剪,建立一个子模型,将输入的裁剪数据库、输出工作空间、裁剪的结合表(面状)作为模型参数。主模型首先创建文件地理数据库,利用结合表属性字段里图幅名称作为输出名称,输出位置作为模型参数,同时将裁剪区域的结合表进行迭代要素选择,选出结合表属性中的图幅名称字段进行循环迭代,最后将需要裁剪的数据库、创建的文件地理数据库和结合表图幅名称字段输入到子模型参数中实现批量裁剪数据的功能。

1.4 数据属性一致性检查

数据一致性检查是检查验证各图层数据属性要素代码、类别、子类别是否相互匹配,是否有空值。主要调用选择数据、筛选、追加功能。思路为通过选择数据将数据库11个图层选择出来,然后通过筛选功能,表达式按数据字典编写PYTHON脚本规则,选出不符合规则的数据,然后追加到检查错误记录数据库中。

1.5 数据格式转换[3]

外业调查系统采用地理国情普查处理系统,支持的数据格式为MDB格式,而本项目数据成果采用文件地理数据库(GDB文件),并且图层设置和要素属性结构上都不一致。利用选择数据、追加、计算字段模块解决上述问题,编程思路为首先建立一个地理国情普查处理系统所识别的模板(MDB文件),然后将GDB文件通过选择数据将地表覆盖类的7个面图层追加到模板LCA图层,将AGR_L追加到模板LCTL图层,将ROA_L追加到模板LRDL图层,将RIV_L追加到模板HYDL图层,将HYD_S追加到模板HYDA图层,然后利用计算字段功能将要素代码(GeoCode)赋值到地理识别码(CC)中,最后将内业标注需要外业核查的追加到外业核查图层。

2 程序的关键技术

2.1 迭代器

模型迭代器可以在不同的设置和数据循环执行同一操作过程,利用灵活,既可以迭代要素也可以迭代要素属性。但同一个模型中只能有一种迭代器,如果有多次迭代可以将一个存在迭代器的模型加载到另一个模型再次进行迭代。

数据的裁剪就是通过对结合表要素属性迭代要素选择和数据库中的要素类迭代完成的批量操作[4],见图1。

2.2 模型参数与变量的选取

在迭代器中,模型参数包括通配符和要素类型,一般情况下可以默认为空,但在复杂处理过程中,通配符参数就会很有用处。例如在本项目中的数据整合模型的通配符就选择了目标数据集,限定了追加数据的图层,达到了数据整合的目的[5],见图2。

图1 数据裁剪模型与子模型图Fig.1 Data clipping model and sub model diagram

图2 数据整合子模型图Fig.2 Data integration sub model diagram

2.3 前提条件的运用

前提条件可用于显式控制模型中的运算顺序。例如,使第一个过程的输出成为第二个过程的前提条件,可以让一个过程在另一个过程后运行。任何变量都可用作工具执行的前提条件,并且任何工具都可以有多个前提条件。

在批量擦除面模型中(图3),先要运行擦除工具输出要素后才能执行删除要素工具,否则程序会出现错误,所以在输出要素类后是删除要素的前提条件,用虚线表示。

图3 批量擦除面模型图Fig.3 Batch erase surface model diagram

3 应用实例

本项目主要建立了7个模型工具,其中有2个是子模型。即批量面擦除、批量数据整合和裁切、数据属性一致性检查、数据格式转换模型工具。上述模型工具保存到工具箱里,可以独立运行或者镶嵌在其他程序中(图4),方便快捷使用。人工处理会产生人为失误错误,效率低,模型工具在效率和质量上都起到了关键作用。具体对比见表1。

图4 程序主页面Fig.4 Program main page

表1 一幅图人工处理与程序处理时间对比表

Table 1 Comparison between manual processing time and program processing time of a map

程序名称人工处理程序处理面擦除4 min5 s数据整合和裁切25 min5 min数据一致性检查10 min2 min数据格式转换15 min3 min

由此计算,项目总图为1 782幅,利用模型工具可以使项目工期至少缩短了55天。

4 结束语

利用模型构建器可以更快捷、高效、方便的处理专题地理信息数据,操作人员只需要简单的编程基础就可以实现软件的二次开发,大大提高了测绘生产效率,在实际工作中取得了良好的效果,为测绘一线没有时间学习编程人员提供了处理数据的解决方案。

猜你喜欢

数据格式批量图层
批量提交在配置分发中的应用
采用经济数控车床批量车削孔类工件的再实践
解密照片合成利器图层混合模式
MIT—BIH心率失常数据库的识读
基于RFID的户外广告监管系统的设计与实现
一种融合多业务的信息化系统框架研究
跟我学添加真实的光照效果
在数控车床上批量钻铰孔类工件的实践
考虑价差和再制造率的制造/再制造混合系统生产批量研究
国外建筑CAD图层标准发展现状与研究