APP下载

海量大比例尺地形图自动接边方法

2023-03-09田喜平

北京测绘 2023年8期
关键词:边界线边线缓冲区

郭 霄 袁 远 刘 斌 田喜平

(解放军61363部队,陕西 西安,710000)

0 引言

由于目前计算机内存、显示等硬件发展与作业方式的限制,地形图生产更新多以单幅数据为基础进行处理,这就导致处理后的数据存在缝隙,不符合无缝数据库的要求,因此实现快速批量接边检查并自动接边就成为急需解决的问题[1]。文献[2]以线要素为实验数据,提出了通过边界线搜索附近线要素点集,对这些数据点集进行匹配,如配对合适则正确,否则警告。该方法为目前提出大多数接边方法的基础,但存在问题是参与计算点数量过多不利于海量数据检查;文献[3]提出改进,通过属性筛选后,使用筛选后要素首末端点代替全要素结点生成缓冲区点集,再通过结点距离远近进行匹配。该文献提出了属性与几何共同控制匹配的理念,使用端点匹配加快了速度,但论文指出属性约束条件指是否按照图层、地物类、高程等条件,涉及约束过多,端点与缓冲区内所有要素比较都增加了算法运行消耗的时间;文献[4]提出面要素接边与线要素类似,只是将点概念换成了面边线概念,判断该边线是否在缓冲区中,并对缓冲区中边线配对,当缓冲区设置宽度较大时,易将不用接边的边线存入待接边数据中;文献[5]中指出不是所有图幅数据都有接边线,提出通过全图搜索获取面要素边线角度呈现0°(180°)或90°(270°)的边线默认为其接边线,再通过比较获取的接边线长度坐标属性匹配,但全图搜索时间会降低执行效率,且会将图内面要素识别为需要接边要素。

为提高接边的算法效率与接边算法的广泛适用性,本文提出一种适用于海量大比例尺地形图接边算法,并对其进行了详细的阐述。目前学者对接边检查算法的实现大多依赖美国环境系统研究所公司(Environmental Systems Research Institute,Inc.简称ESRI公司)公司提供的二次开发类库[6],或其设计的Arcpy等已打包好的算法模块[7-8],不利于开发者自主设计,因此文中使用C#,不借助二次开发类库设计接边工具。并通过实验测试证明其高效性。

1 内接边与外接边

1.1 接边要素基本特征

地形图接边需保证有相同的数学基础,且其内部地理要素与内图廓线间需完成内接边处理。不论是线要素还是面要素,其都由多个坐标对连接组成,如果线要素坐标对写入的首尾坐标不同且其首尾坐标有且至少存在一端在接边线附近,则该线要素即为需要接边检查的要素实体,查找较为便捷,因此可考虑将面要素接边检查转换为线要素接边。

1.2 内接边原理

内接边即将所有处于边界的要素捕捉到内图廓线上,内图廓线通过图号计算获得。内接边分为两类,一类为出头要素,一类为不到边要素,第一类使用裁剪的方法处理,第二类采用点坐标映射,图1中点(x0,y0)为需要映射的图内点,过(x0,y0)作垂直于图廓边的直线,该直线方程为y=k1x+b1,内图廓线一边的公式假设为y=kx+b。

图1 图内点映射

通过点斜式可得y=k1x+b1为(y-y0)=k1(x-x0),且k1·k=-1。

因此可通过式(1)求得(x1,y1)的值。

(1)

修改(x0,y0)的值为(x1,y1)保证后续所有待接边数据与内图廓线间没有缝隙,其中设置修改后值与(x1,y1)的x或y方向任意距离小于0.013 m时,即认为两点相等,0.013 m为拓扑容差,通常设置为实际距离0.001 m,具体设置值,按照接边数据精度的10倍取值。

1.3 外接边

1.3.1属性约束

属性约束的作用在于减少待接边点的数量,减少程序输入/输出(Input/Output,IO)的次数,提高算法运行的速度。目前不论是地方还是部队,数据都是按层来管理,默认在标准的数据格式下,接边配对的地理要素应该具有相同的层归属与属性项,且标准格式下,通过属性的关键字即可确定该要素实体归属,无须通过多个属性条件限制进行匹配,因为类似道路要素其宽度在不同位置采集数据可能不同,如全部限制为一致可能导致匹配失败,属性的匹配只要保证关键字段的一致即可[9]。

1.3.2几何约束

几何约束,是对配对对象重要的特征点位置的约束,对于线要素,为其两端端点,面要素则为在边界处面边线的端点。大部分接边算法通过距离与阈值比较确定最终匹配对象[10],但基准要素点匹配目标要素点,是在内图廓线缓冲区点集合进行全部搜索,为加快搜索速度,在缓冲区点集录入时对其标记,不论是规则的内图廓线框还是不规则的任意线框,对组成线框的每一条边线进行编号,缓冲区内点坐标靠近那个边线就在录入点坐标时增加该边线编号的属性[11-12]。

1.4 技术路线

待接边数据类型可分为三类,第一类为线要素,获取线要素端点,通过端点匹配接边[13];第二类为存在缓冲区面边界线要素;第三类为不存在缓冲区面边界线要素[14],不包含缓冲区面边界线情况,参考文献[5]改进,不进行全图计算只计算内图廓线缓冲区内面边线角度为0°(180°)或90°(270°)的边线生成面边界线转换为第二类情况。其中,输出标记信息结构如表1所示。整体接边技术路线见图2。

表1 记录文件结构

图2 要素接边信息准备

图3 检查结果部分符号化显示

相邻图幅线状数据输出的线端点坐标、属性与缓冲区标记,将具有相同关键字属性与图廓线缓冲区标记的信息在相邻图幅间进行对比。分两个阶段,先对比记录个数,个数不同标记,个数相同则比较其他属性信息进行匹配,如不匹配则标记,其中涉及两幅图等高线间距不同的情况,如缺少配对等高线高程值呈现等差数列现象,则无问题不记录,匹配后数据比较坐标信息,两点间实际距离阈值大于0.013 m时认为其存在问题,进行标记。

面状数据全部转换为第二类数据类型,对面边界线进行匹配检查,具体方法与线数据相同,如存在问题标记该面边界线,通过标记的面边界线记录对应面信息找到该边界线旁的面要素,进行错误标记。

2 实验与精度

2.1 接边实验

全国大比例尺国军标地形图改化项目中,需对原始数据与最终成果进行接边检查与自动接边处理,使用新疆3 491幅5万数据。改化使用国标数据不具有面边界线。

通过图号对待接边检查数据生成对应标准内图廓线,以生成内图廓线为标准设置缓冲区宽度为图上0.006 5 mm,实际距离0.325 m,使用1.2节中算法完成待接边数据的内接边处理,通过国标数据面边线生成面边界线数据,设置面边界线要素属性与为对应面要素属性一致。

对处理后具有面边界线的数据遍历,遍历对象为所有线要素,获取的需要接边的结点数据,会以一定格式写出到接边信息文件中,以数据标准中常年河(160201)与国家政区(210301)为例,设置图廓左边界编号为4,右边界编号为6,下边界编号为8,上边界编号为2。

使用表2记录信息在相邻图幅间对比个数、属性、坐标信息,如面边界线不匹配则输出对应面要素信息,将不匹配结果输出错误文件。实验数据3 491幅,面边界线生成时间共1 243 s,标记信息输出时间1 794 s,问题检查输出时间2 587 s。采用第一节中自动接边算法自动处理使用时间为3 603 s,将参考文献[2-3]中线接边算法与文献[5]中面接边算法组合为全搜索接边算法与本文方法对比时间如下,可以看出全搜索耗时是本方法的3倍。

表2 接边文件记录内容

表3 实验时间对比 单位:s/幅

表4 精度对比

2.2 接边精度

在全搜索接边算法考虑等高距不同的图幅接边情况下,且两方法设置缓冲区宽度阈值、两点相等阈值与自动处理阈值相同时,与本文方法进行实验对比,实验数据都为3 491幅5万标准分幅DLG数据,两方法查找错误都为818处,最终核实错误为901处,全搜索方法漏检多,主要因属性全对比,导致本应接边数据被过滤,多检则因文献[5]中提出的无效接边结果过滤方法没有起到作用,导致图内出现接边错误提示,本文方法多检14处,漏检97处,可自动接边处理个数513处,整体接边检查正确率为89%,自动接边处理占总错误个数比为56.9%。经核实本文方法多检与错检由拓扑限差阈值设置太大导致。

3 结束语

数据接边直接影响数据的最终质量,进而影响对矢量数据的后续利用。本文针对大比例尺数据存在接边线与不存在接边线等情况进行分析,在分析了现有接边算法利弊与接边的原则后,提出了一种通过算法生成内图廓线,并通过搜索内图廓线缓冲区内面边线按照角度获取需要接边面的面边界线,将面的接边转换为线的接边,使用几何与属性约束输出处于边界的各类线要素信息,与相邻图幅线要素信息进行匹配,通过已核查有误的面边界线获取可接边面的信息,并使用1.3.3节中方法进行接边。实验结果表明,该方法与全搜索算法在精度上没有损失且速度有大幅度的提升,提高了接边的效率,具有一定参考价值,且未来可将内图廓线转换为不规则多边形,处理非规则的接边处理[15]。

猜你喜欢

边界线边线缓冲区
海岸水边线提取方法在GF-2卫星影像中的适应性研究
弟弟尿床了
“边界线”风波
“边界线”风波
神奇的边界线:一不留神就出国
嫩江重要省界缓冲区水质单因子评价法研究
认识足球(六)
突破矩形上边线买入法(1)
关键链技术缓冲区的确定方法研究
地理信息系统绘图缓冲区技术设计与实现