APP下载

基于空间约束和递归的图斑融合方法优化

2022-10-06许金花

现代测绘 2022年4期
关键词:底图图斑图层

许金花,高 磊

(1.江苏省测绘市场管理中心,江苏 南京 210013;2.江苏省测绘工程院,江苏 南京 210013)

0 引 言

第三次全国国土调查(以下简称“三调”)主要数据成果已正式发布,全面客观真实地反映了我国国土利用的状况,是国家制定经济社会发展重大战略规划、重要政策举措的基本依据[1]。今后相当长的一段时期内,“三调”及其年度变更调查成果将作为自然资源监测、国土空间规划和各类相关专项规划的统一基数、统一底图[2]。由于分类体系不同,划界标准各异,数据来源不一,各种业务数据和底图数据叠加会产生大量碎小图斑,以此作为综合业务分析底图,将给作业人员的建库工作带来不便,工作量成倍增长,项目进度难以控制[3]。本文从数据建库作业实践出发,提出了基于空间约束和递归的碎小图斑融合优化方法,以期为同类工作提供参考。

1 方法研究

1.1 ArcGIS面消除工具

ArcGIS提供了面消除工具(Eliminate),可以将指定的多边形要素与同图层中具有最大面积或最长公用边的邻近多边形合并,从而实现融合效果(图1),通常用于去除叠加操作(如相交或联合)所生成的零碎的小面积图斑。

该工具融合小图斑的原理是通过删除公用边界的方法,仅将所选面与邻近的未选定面进行合并[5],因此待融合的图斑是由应用于面图层的选择内容决定的,在工具运行前必须通过属性或位置选择的方式标识需要被其相邻图斑合并的要素。图2为消除工具界面。

1.2 方法改进

1.2.1 空间约束

专题业务图层和基础图层(如三调图斑)进行叠置分析后得到综合业务分析底图,该图层本质上是由基础数据库图斑被业务数据库图斑分割产生的,同时带有基础数据和专题业务数据双重属性。为实现在每个基础图斑实体空间范围内进行分析,可以以基础数据库图层的唯一标识码作为分类依据,通过选择图层要素子集分别建立独立的图层对象,在各图层对象内部进行碎图斑消除操作,从而达到空间约束的目的。

1.2.2 递归融合

在空间约束的基础上,被选中标识的图斑将以公共边最长或相邻面积最大为规则,与同图层对象中的相邻图斑进行几何合并,并继承相邻图斑的属性。消除工具是单次运行,结果中还可能存在碎小图斑,需要按规则重新标识这些碎小图斑,然后再次运行消除工具。经多次递归循环后,图层中可能已不存在碎小图斑,或者是存在碎小图斑但均为独立要素,即不与任何其它图斑相邻,此时融合工作最终结束。

1.2.3 编程实现

以ArcGIS的消除工具为基础,利用其自带的Arcpy站点包[6],在高效的内存工作空间中进行数据编程处理。消除工具是基于图层进行操作的,因此还需引入创建要素图层、按属性选择图层等工具函数。算法的核心在于将含有多个相同底图唯一标识码的要素作为独立的要素图层进行处理,每次消除工具函数运行后都需重新创建要素图层及选择新的碎小图斑,临时结果存放在内存工作空间中以提高数据读写效率,最后以消除工具运行结果与输入图层的图斑数不再变化为递归停止标准。优化算法具体流程如图3所示。

优化算法流程的关键步骤代码如下:

(1)获取图斑唯一标识码列表

with arcpy.da.SearchCursor(图斑文件, “标识码”) as curs:

BSMs=set(cur[0] for cur in curs)

(2)以唯一标识码为约束,对碎图斑进行融合,并获取融合后的图斑数量

arcpy.MakeFeatureLayer(图斑文件, “处理图层”,“[BSM]= '{}'”.format(bsm))

arcpy.SelectLayerByAttribute(“处理图层”,“#”,“Area < 10”)(此处以将面积小于10的图斑选择为待消除的碎图斑为例)

arcpy.Eliminate(“处理图层”,“融合结果”)

c=arcpy.GetCount(“融合结果”)[0]

(3)重复步骤(2),直至c不发生变化为止,该标识码的图斑融合即结束。

2 应用实践

某设区市森林资源数据融合项目中,以三调成果为底图,叠加地理国情林木数据和林业一张图专题数据形成综合业务分析图层,套合最新遥感影像,通过人机交互进行森林资源现状影像解译工作。经统计,本次作业的基础数据中,包含三调图斑1 203 384个,地理国情林木图斑274 737个,林业专题图斑238 833个,叠加分析后的业务图层含图斑3 308 473个,其中面积小于200 m2认为是碎小图斑,有129 293个,需对这些小面积图斑进行融合清理,形成适合人工作业的工作底图。传统的方法是手工反复连续调用ArcGIS的图层创建、要素选择、消除等工具,使用本文研究的方法和编程工具,在一台常规配置的工作PC机上,耗时5.5 h完成了融合流程,处理后剩余碎小图斑43个,均为无相邻图斑的孤立要素。据有经验的技术人员估算,对照传统人工操作效率提高了近80%,有效地节省了大量人力和时间。

3 结 语

以三调成果为底图,叠合各种专题业务数据开展综合监测、规划任务,是三调成果共享和应用的主要形式。多源业务数据边界不一,叠加集成后产生大量没有实际意义的碎小图斑,必须进行消除清理[7]。本文分析了ArcGIS现有图斑消除工具的不足以及在实际生产中的不便,结合项目需求,基于Arcpy站点包,提出了基于空间约束和递归的碎图斑融合技术流程,开发了相关程序。实践应用表明,该方法可以在基础图斑空间范围内有效消除零碎图斑,大幅提高作业效率,在同类数据处理项目中具有一定的参考意义。

猜你喜欢

底图图斑图层
一种基于实际GIS底图的精准计费方式探究
地理国情监测中异形图斑的处理方法
新安县有序开展卫星遥感监测图斑核查工作
基于C#编程的按位置及属性值自动合并图斑方法探究
航道生产单位中底图档案工作存在的问题及思考
为《飞舞的空竹龙》加动感
土地利用图斑自动检测算法研究
以假乱真窥探湿玻璃后的风景
通过“底图”突破立体几何的建系难点
与众不同“跳出”画面更个性