国土变更调查拓扑错误自动化修复工具的研究

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

  • 目录

    一、拓扑错误的形成原因

    1.边界不一致

    2.不规则图形

    3.尖锐角

    4.局部狭长

    5.细小碎面

    6.更新层相互重叠

    二、修复成果展示

    1.边界不一致

    2.不规则图形

    3.尖锐角

    4.局部狭长

    5.细小碎面

    三、修复率统计

    四、如何使用

    总结



前言

随着国土变更调查,在土地管理中的重要程度越来越高,对其数据的要求也越来越高。数据能通过质检软件,作为年度国土变更调查每年能否将数据汇交至部的硬性要求,每年从事该行业的人会耗费大量的精力和时间在质检错误修改上,而修改的重点主要在拓扑错误上面,往往一个面积大一点的区县,初次建库的拓扑错误量都非常高,有些甚至是好几万个错误,虽然市面上目前有一些批量修复工具,但是整体效果都不尽人意,修复率只能到百分之60左右。针对这一行业痛点,在深入了解变更调查的技术规范和建库流程后,终于开发出了修复率能稳定在百分之90以上的修复工具。


提示:以下是本篇文章正文内容,下面案例可供参考

一、拓扑错误的形成原因

1.边界不一致

边界不一致主要是地类图斑更新层和对应的更新过程层的边界不一致,以及更新过程层和去年的基础库边界不一致。这个错误的产生原因大部分是因为建库软件容差系统和arcgis的不一样导致的,因为变更图斑多为从举证平台下载而来,因为平台采用的是4490经纬度坐标系,因为坐标保留小数位的问题,在转换为对应的高斯2000横轴墨脱卡坐标系的时候,会出现细微误差,一些建库软件因为容差问题可能会认为该图斑和对应的基础库边界是一致的,于是就导致了该问题。就如下图所示:

左边是DLTBGX层,右边是DLTB,明显看到基础库是没有拓扑错误的,但是建库软件因为容差原因,将这个错误忽略了,就导致DLTBGX层出现了边界不一致的情况。

2.不规则图形

不规则图形的主要表现特征是图形过于狭长,而判断面几何要素是否是狭长,一般有如下几种方法:

周长与面积比(P/A 指数):这个指标是多边形的周长与其面积之比。通常来说,紧凑的多边形具有较小的周长与面积比,而非紧凑的多边形则可能有较大的比值。

Boyce-Clark半径形状指数:该指数是通过计算多边形内切圆的半径与外接圆的半径之比来度量多边形的形状规则度。规则的多边形会有较小的Boyce-Clark半径形状指数。

等周指数(Isoperimetric Quotient):这是通过计算多边形的实际面积与等周多边形(相同周长的正多边形)的面积之比来度量紧凑度。规则的多边形具有较大的等周指数。

方向性(Aspect Ratio):方向性是指多边形的主要轴与次要轴之比。一个正方形的方向性为1,而长条形的方向性较大。规则的多边形通常有较小的方向性。

Reock 紧凑度指数:Reock指数是通过计算多边形内切圆的半径与外接圆的半径之比来度量多边形的紧凑度。

Feret Diameter 指数:Feret Diameter是指多边形在不同方向上的最大宽度与最小宽度之比,用于度量多边形的细长程度。

形状指数(Shape Index):形状指数是通过计算多边形边缘曲率的平均值来度量多边形的形状规则度

这里很难推测出质检软件采用的那种方法进行的判断,但是如果我是开发,从性能,综合稳定性来判定的话,我大概率会采用周长面积比进行判断,形成这个错误的原因也很简单,大部分都是因为变更图斑和基础库裁剪后,因为边界上的细缝导致的。

3.尖锐角

尖锐角的形成原因的多种多样的,有本身图形就存在尖锐角,也有因为平台下载图斑边界和基础库不一致然后叠加造成的。但是尖锐角的查找是相对非常简单的,只需要遍历每个图形,并计算每个节点的角度,并找出角度小于10度的或者大于350度的部分即可。

4.局部狭长

局部狭长的产生原因主要是在变更图斑和基础库相交的时候,两个相邻图斑,一个和基础库贴合,另外一个和基础库边界存在缝隙,在相交后就产生了局部狭长。如下图所示,A地块和基础库完美贴合,B地块和基础库存在缝隙,就产生了局部狭长

局部狭长的检查方式有很多,比如将图形向内buff对比前后几何的一致性,也有建立三角网TIN并判断是否存在长宽比超限的三角形等方法,这里很难推断出质检软件使用的那种,但是这个并不重要,只需要搞懂产生原因即可写出针对性的算法进行修复。

5.细小碎面

这个算是最好理解的拓扑错误,产生原因也很多,只要面积小于30平米的多边形就会被质检软件检测出碎片多边形,需要值得注意的是,很多狭长面、尖锐角、不规则图形本身也是碎片多边形。

6.更新层相互重叠

这个质检错误很难出现,目前大部分的建库软件都会规避这个问题, 修复方式也相对简单,找出重叠部分,再将重叠部分合并到空间关系中共边占比最多的面即可。

二、修复成果展示

展示前做个统一说明,所有的修复都考虑了村级行政区和203城镇村用地,保证修复的准确性

1.边界不一致

修复前                                                                 修复后

2.不规则图形

修复前

修复后

3.尖锐角

修复前

修复后

4.局部狭长

修复前

修复后

5.细小碎面

修复前

修复后

三、修复率统计

目前已经测试过三个区县单位的成果修复情况,直接上统计图

可以看到,不管是面积较大的区县还是面积较少的区县,修复率都能稳定百分之90以上,并且在使用其他市面上的修复工具后,依旧还能有百分之90以上的修复成功率。

四、如何使用

使用方式也很简单,无需安装任何插件,软件。登录网站即可使用修复工具。只需要准备好成果包和质检错误表即可。


总结

对该工具感兴趣的伙伴,可以后台联系。告别人海战术、告别通宵加班、科技改变生产!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/60444.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

react 使用中注意事项提要

1、尽可能的减少数组index作为key,数组中插入元素的等操作时,会使得效率底下; 2、如果在 JSX 中给元素添加类, 需要使用 className 代替 class;类似:label 的 for属性,使用htmlFor代替; 3、在…

异常和中断

在计算机系统中,异常和中断是两种常见的用于处理异步事件的机制。以下是常见的异常和中断及其特点的详细解释: 异常(内中断) 异常,也称为内中断,是由CPU内部事件引起的中断。异常通常与程序执行的当前指令…

WPS 加载项开发说明wpsjs

wpsjs几个常用的CMD命令: 1.打开cmd输入命令测试版本号 npm -v 2.首次安装nodejs,npm默认国外镜像,包下载较慢时,可切换到国内镜像 //下载速度较慢时可切换国内镜像 npm config set registry https://registry.npmmirror.com …

Javaweb梳理18——JavaScript

今日目标 掌握 JavaScript 的基础语法掌握 JavaScript 的常用对象(Array、String)能根据需求灵活运用定时器及通过 js 代码进行页面跳转能通过DOM 对象对标签进行常规操作掌握常用的事件能独立完成表单校验案例 18.1 JavaScript简介 JavaScript 是一门跨…

android 使用MediaPlayer实现音乐播放--权限请求

在Android应用中,获取本地音乐文件的权限是实现音乐扫描功能的关键步骤之一。随着Android版本的不断更新,从Android 6.0(API级别23)开始,应用需要动态请求权限,而到了android 13以上需要的权限又做了进一步…

GPT系列文章

GPT系列文章 GPT1 GPT1是由OpenAI公司发表在2018年要早于我们之前介绍的所熟知的BERT系列文章。总结:GPT 是一种半监督学习,采用两阶段任务模型,通过使用无监督的 Pre-training 和有监督的 Fine-tuning 来实现强大的自然语言理解。在 Pre-t…

NUXT3学习日记四(路由中间件、导航守卫)

前言 在 Nuxt 3 中,中间件(Middleware)是用于在页面渲染之前或导航发生之前执行的函数。它们允许你在路由切换时执行逻辑,像是身份验证、重定向、权限控制、数据预加载等任务。中间件可以被全局使用,也可以只在特定页…

汽车免拆诊断案例 | 2012款路虎揽胜运动版柴油车加速无力

故障现象  一辆2012款路虎揽胜运动版车,搭载3.0T柴油发动机(型号为306DT),累计行驶里程约为10.2万km。车主进厂反映,车辆行驶中加速无力,且发动机故障灯异常点亮。 故障诊断 接车后试车,发动…

网络安全与加密

1.Base64简单说明描述:Base64可以成为密码学的基石,非常重要。特点:可以将任意的二进制数据进行Base64编码结果:所有的数据都能被编码为并只用65个字符就能表示的文本文件。65字符:A~Z a~z 0~9 / 对文件进行base64编码…

DrissionPage爬虫工具教程

当然可以!下面是一些更高级和复杂的 DrissionPage 使用示例,包括处理动态加载的内容、处理登录和会话、处理多页面操作等。 处理动态加载的内容 许多现代网站使用 JavaScript 动态加载内容。在这种情况下,我们需要等待特定的元素出现&#…

C语言:数组转换指针的时机

1、指针数组 如果一个数组中的所有元素保存的都是指针,那么我们就称它为指针数组,指针数组的定义形式一般为: dataType *arrayName[length];[ ]的优先级高于*,该定义形式应该理解为: dataType *(arrayName[length])…

华为机试HJ60 查找组成一个偶数最接近的两个素数

首先看一下题 描述 任意一个偶数(大于2)都可以由2个素数组成,组成偶数的2个素数有很多种情况,本题目要求输出组成指定偶数的两个素数差值最小的素数对。 数据范围:输入的数据满足 4≤n≤1000 输入描述: 输…

UE5 DownloadImage加载jpg失败的解决方法

DownloadImage加载jpg失败的解决方法 现象解决方案具体方法 现象 用UE自带的 DownloadImage 无法下载成功,从 failure 引脚出来。 接入一个由监控器自动保存起的图像,有些可以正常加载成功,有些无法加载成功。 经调查问题出现在,…

使用 helm 部署 gitlab

一、下载 Gitlab chart 进入 artifacthub 官网 选择你想要的版本(我选择的chart版本是 8.4.0 , gitlab 版本是17.4.0 ) 进入到控制台,添加helm仓库 如果你想不改任何配置,你可以执行安装命令,等待安装即可helm instal…

FreeRTOS信号量(一)

目录 什么是信号量? 1.信号量简介 2.二值信号量 2.1二值信号量简介 1. 首先,创建时,二值信号量默认无效 2. 之后中断释放信号量 3.信号量获取成功 4、任务再次进入阻塞态 2.2 创建二值信号量 1、函数vSemaphoreCreateBinary () 2、…

51单片机-独立按键与数码管联动

独立键盘和矩阵键盘检测原理及实现 键盘的分类:编码键盘和非编码键盘 键盘上闭合键的识别由专用的硬件编码器实现,并产生键编码号或键值的称为编码键盘,如:计算机键盘。靠软件编程识别的称为非编码键盘;在单片机组成…

springboot课程答疑系统(代码+数据库+LW)

摘要 随着信息互联网信息的飞速发展,无纸化作业变成了一种趋势,针对这个问题开发一个专门适应师生交流形式的网站。本文介绍了课程答疑系统的开发全过程。通过分析企业对于课程答疑系统的需求,创建了一个计算机管理课程答疑系统的方案。文章…

electron主进程和渲染进程之间的通信

主进程 (main.js) const { app, BrowserWindow, ipcMain } require("electron"); const path require("node:path"); // 导入fs模块 const fs require("fs");const createWindow () > {const win new BrowserWindow({width: 800,height…

MyBatis 的多对一,一对多以及多对多的增删改查的xml映射语句

1. 多对一(Many-to-One) 表结构 users id (INT, 主键)username (VARCHAR)password (VARCHAR)email (VARCHAR)department_id (INT, 外键)created_at (TIMESTAMP) departments id (INT, 主键)name (VARCHAR)created_at (TIMESTAMP) 实体类 public class…

麒麟部署一套mysql集群,使用ansible批量部署可以提高工作效率

一、 服务端和客户端同时配置kylin镜像 配置麒麟的yum源 rm -rf /etc/yum.repos.d/CentOS-Base.repo vim /etc/yum.repos.d/Kylin_aarch64.repo Copy 写入如下yum源 [ks10-adv-os] name = Kylin Linux Advanced Server 10 - Os baseurl = http://update.cs2c.com.cn:8080/…