2021FME博客大赛 —— 面向海量地貌数据的FME在线质检研究
作者:王慧
摘要:在浙江省新型基础测绘资源库建设中,地貌数据存在高曲矛盾、水曲矛盾、坎曲矛盾、等高线跳跃等典型质量问题,针对该类质量问题存在隐蔽、质检自动化程度低、质检模式受限于数据量等特点,研究提出海量地貌数据的自动化检查算法,结合使用FME和Python开发自动化质检方案,通过FME Integration在线平台实现海量地貌数据的自动化质检,经过在日常生产质检中的应用实践,证明质检算法的有效性和质检模式便捷性,为提升新型基础测绘数据库成果质量提供了重要支撑。
关键词:地貌数据;高曲矛盾;FME;在线质检
1研究背景
测绘地理信息事业正朝向生产与服务并重的新型基础测绘发展,为更好地在经济社会发展中提供多层次全方位服务,需要确保测绘地理信息数据成果质量。而新型基础测绘中质检工作范围不断拓展,质检对象数据量大幅提升,质检模式亟需向网络化转变,以全面提升质检技术和质检能力。
在新型基础测绘资源库建设中,海量地貌数据的质检是重点也是难点,为充降低人工质检负荷,并满足海量数据自动化快速质检需求,地貌数据的自动化质检算法和质检模式应具备检查全面、误报率低、稳定性好和运行速度快等关键性能,因此仍需在质检算法的优化和质检模式的改进方面展开深入研究。
本文基于对地貌数据整体质检规则的梳理,以高曲矛盾、水曲矛盾、坎曲矛盾、等高线跳跃等隐蔽复杂问题的自动化检查算法为重点展开研究,借助FME平台的二次开发实现海量地貌数据的在线自动化集成质检。
2地貌数据质检概述
2.1数据特征
新型基础测绘资源库中的地貌数据主要包括等高线、高程注记点及示坡线、独立石、冲沟、陡崖陡坎、斜坡、梯田坎等用符号标示的地貌元素。地貌数据中等高线表达了地势的渐变,具有无向性、不相交性、连通性和高程递变性等特点,与斜坡、梯田坎、陡坎等具有朝向意义的有向线和具有流向意义的水系线等地性线在图形表达上应满足一定的空间逻辑关系。
地貌数据汇总以节点密集的等高线的数据量居多,以单个普通县级区域的新型基础测绘资源库为例,等高线要素数据量达百万条,给地貌数据的质检造成了一定的挑战。
2.2质检内容
地貌数据的质检内容大致如表1所示:
表1 地貌数据质检内容
类别 |
内容 |
图形表达 |
等高线相交、等高线断裂、等高线落水、等高线高程值跳跃 |
属性一致性 |
等高线中首曲线、计曲线分类代码与高程不匹配;空间相连的等高线高程和代码不一致;高程注记点的高程属性不合理或与注记不匹配 |
空间逻辑关系 |
高曲矛盾、水曲矛盾、坎曲矛盾等 |
其中:等高线高程值跳跃指出现相邻的两条等高线的高差大于基本等高距等问题;高曲矛盾指当高程注记点高程值等于最邻近的等高线高程值时,或与最邻近的等高线高程值之差大于基本等高距时,或超出了空间邻近等高线构成的高程值区间时统称高曲矛盾;水曲矛盾指水系应由地势高处流向地势低处,若水系流经的等高线的高程序列未呈现递减的规律,则构成了水曲矛盾又称水系爬坡;坎曲矛盾指斜坡、陡坎等地貌线应朝向地势低处,若要素符号化后其齿线指向的空间相邻等高线为地势高处时构成了坎曲矛盾。
2.3质检难点
在地貌数据的质检中图形空间逻辑矛盾的检查是难点,水曲矛盾和坎曲矛盾问题隐蔽,并未直接通过外在表现出来,实际工作中常经过图面配置符号、显示线方向、标注属性等处理后进行人工图面巡视或要素遍历来完成检查。在高曲矛盾的自动化检查算法研究方面,常见的是引入相邻最近的四条等高线以检查高曲矛盾的算法,也有基于改变步长和角度的高曲矛盾检查方法,或通过构TIN内插比较法和放射线法实现高曲矛盾检查,以上算法中多次循环过程复杂且检查对象数据量有限。基于邻近分析的高曲矛盾的自动化检查算法在遇到图1所示情况时,常需调整搜索步长或放射角度以降低误判率,算法复杂度较高。因此,更为严谨和高效的自动化检查算法是研究重点。
(a) |
(b) |
(c) |
(d) |
图1 高曲矛盾示例
3技术方案
3.1基于封闭区间的高曲矛盾检查算法
地貌数据中高程注记点与等高线的空间位置关系多种多样,为能够有效检查图1所示的四种情况下的高曲矛盾,本文提出一种基于封闭区间的高曲矛盾检查方法,算法流程图如图2所示。
图2 高曲矛盾自动化检查算法
高曲矛盾检查算法的核心思想是利用等高线构建和网格构建封闭区间面,并形成封闭区间面的高程值列表,通过面和点的空间包含分析,通过调用PythonCaller判断位于该封闭区间的高程注记点的高程值是否处于高程值列表的最大值和最小值范围内,部分代码如图3所示。若超出高程范围则提示该高程注记点处构成了高曲矛盾,高曲矛盾自动化质检方案如图4所示。
图3 封闭区间高程值最大最小值计算代码
图4 高曲矛盾自动化检查方案
3.2基于法向量的坎曲矛盾检查算法
坎曲矛盾的自动检查算法的核心思想是通过构建地貌数据中的田坎等有向线要素的法向量,获取法向和反法向上的最邻近等高线的高程值,识别该要素的下游高程和上游高程,若下游高程不小于上游高程,则提示此要素构成了坎曲矛盾,算法具体步骤如下:
第1步:筛选出地貌数据中的田坎、陡坎、陡岸、陡崖等有向线要素,通过Snipper转换器截取各要素长度为0.1m的中间线段;
第2步:根据有向线要素创建中点P、垂点、反向垂点,再依据中点P并根据起点坐标和终点坐标计算线段的线方向A,再计算法线方向B=A+90,在FME中创建自定义转换器实现有向线要素的中点、垂点、反向垂点的提取,如图5所示:
图5 有向线要素中点、垂点、反向垂点提取自定义转换器
第3步:利用NeiborPairFinder转换器查找距离中点P最邻近的两条等高线,并构建以中点P为短点的两个矢量线段如图9(a)(b)所示,CloseVector为蓝色矢量,SecondClosedVector为黄色矢量,同时计算两个矢量线段的线方向V_A1和V_A2,具体实现如图6所示:
图6 最邻近两条等高线的方向计算
第4步:从两个矢量线段中找出与法线方向一致的矢量,通过LineExtender延伸0.05m,在与等高线进行空间相交分析,获取高程值,并记录为下游高程Low_Elevation,同时将另一矢量延伸获取相交的等高线高程值记录为上游高程High_Elevation,具体实现如图7所示:
图7区分出与有向线法方向一致的最邻近等高线
第5步:对比分析各有向线要素中间线段的下游高程Low_Elevation和上游高程High_Elevation,若下游高程大于上游高程则为坎曲矛盾,部分检查结果如图8所示。
(a) |
(b) |
(c) |
图8 坎曲矛盾检查结果示例
3.3基于高程序列的水曲矛盾检查方法
通过获取各水系要素流经的等高线的高程值列表,然后判断该列表中的高程是否逐次递增或递减,异常要素则提示该处为水曲矛盾点,步骤如下:
第1步:通过转换器LineOnLineOverLayer将单线水系线(地面河流、地面支渠、地面干渠)与等高线进行叠盖打断,形成无相交的散线,如图11(a)所示;
第2步:通过转换器LineExtender将打断后的单线水系线散线在首尾端点处延伸0.05m,再与等高线散线进行相交分析,获取高程值列表,然后将高程最大值max_Elevation挂接至原始单线水系线散线,具体实现如图9所示:
图9 水系线与等高线的打散挂接
第3步:通过转换器LineCombiner将原始单线水系线散线复原为原始单线水系,同时利用ListConcatenator将各散线要素中的高程最大值max_Elecation合并成高程最大值列表List_max_Elevation;
第4步:调用Python判断各个单线水系线中List_max_Elevation中各元素是否全部递增或者递减,若不符合规则输出要素,具体实现如图10所示:
图10水系线高程序列分析
第5步:根据不合规则元素的索引查找出单线水系线散线要素,即定位到水系爬坡处,如图11(b)所示。
(a) |
(b) |
图11 水曲矛盾检查结果示例
4成果与成效
经过算法研究和质检方案开发形成了9项地貌数据质检方案并在FME Integration平台上配置地貌数据质检方案,成果如图12所示。
图12 地貌数据质检方案
质检的效率和正确性是评价质检模式和方法的核心因素,因此选取浙江省某区县的资源库数据进行在线质检平台测试,该数据面积862.5km2,0等高距为2米的等高线共88138个要素。基于GIS软件的质检工具检查时会超出计算内存导致软件崩溃,但所研发平台能够稳定支撑质检任务的运行,部分统计结果表2所示:
表2质检效率统计
检查项 |
高曲矛盾 |
坎曲矛盾 |
水曲矛盾 |
要素个数 |
高程注记点88138个 |
地貌坎要素13540个 |
水系线要素8470个 |
检查结果数 |
155个 |
70个 |
62个 |
误判数 |
5个 |
3个 |
0个 |
用时 |
22min45sec |
4min18sec |
15min15sec |
地貌数据质检的效率与要素数量正相关,基于封闭区间的高曲矛盾检查算法在等高线离散、断裂、稀疏区域的检查完整性有待提高。
5总结
文中研究提出了基于高程序列的水曲矛盾检查算法、基于法向量的坎曲矛盾检查算法和基于封闭区间的高曲矛盾检查算法;同时采用基于FME和Python的技术方法,设计研发了较为完整的地貌数据质检方案,并依托FME Integration和FME Server实现地貌数据的在线自动化质检,所提技术方法具备以下优势:
1)水曲矛盾、坎曲矛盾自动化质检算法减少了人工检查工作量,确保了检查的全面性;高曲矛盾检查算法提高了检查的正确性,降低了质检误判率。
2)实现了质检的软件部署模式由C/S模式向B/S模式的转变,改变了传统多桌面端发布和安装的更新模式。
3)将质检过程占用资源转移至网络服务器,可稳定支撑海量数据的批量并行质检,避免了对本地作业的干扰。
经过在日常生产质检一线的推广应用,面向海量地貌数据的在线质检平台证实了提质检算法和质检模式的稳定性和高效性,为测绘地理空间数据库的质检提供了新的解决方法。
6参考文献
[1]张继贤,张莉,张鹤.面向新型基础测绘的质检任务探讨[J].测绘通报,2018(07):71-73+87.
[2]宋军.航测数字地貌制图质量控制措施研究[J].科技资讯,2012(20):39.
[3]刘建军,王东华,商瑶玲.数字化等高线质量的软件自动检查方法[J].测绘科学,2001(04):36-38+1.
[4]徐建达. 航测地貌数据的质量控制[D].中国人民解放军信息工程大学,2002.
[5]曾衍伟,龚健雅.空间数据质量控制与评价方法及实现技术[J].武汉大学学报(信息科学版),2004(08):686-690.
[6]李诺夫.GIS数据质量控制方法探讨[J].测绘通报,2011(08):66-68+80.
[7]武安状,李昕荷,武岩.高曲矛盾自动检查程序的设计和功能的实现[J].地矿测绘,2012,28(04):35-37.
[8]刘云波, 杨洁宇,朱苗苗.基于AutoCAD VBA的等高线点线矛盾检查[A].第十四届华东六省一市测绘学会学术交流会论文集, 2012, 210-212.
[9]宋旭东.基于ArcGIS平台与质检软件的地理国情普查快速质量控制方法[J].测绘与空间地理信息,2016,39(04):91-94.
[11]胡现辉,胡茂林,王三军,钱进.地形图点线矛盾检查软件开发[J].电力勘测设计,2018(08):14-17.
2021FME博客大赛 —— 面向海量地貌数据的FME在线质检研究相关推荐
- 2021FME博客大赛 —— 杭州城市西湖区活力评价
作者:刘松 1.前言 1.1研究区简介 杭州是浙江省省会和经济.文化.科教中心,长江三角洲中心城市,重要的风景旅游城市,首批国家历史文化名城.杭州山水相依.湖城合璧,江.河.湖.海.溪五水共导,风景如 ...
- 2021FME博客大赛 —— 基于FME的电子地图道路面快速构建方法研究
作者:吴国华 随着基础测绘成果应用的不断推广,电子地图数据的快速生产与更新的需求成为近年来备受关注的热点问题.道路面作为电子地图中主要地物要素有着举足轻重的作用,针对电子地图中道路面生产和更新的应用需 ...
- 2021FME博客大赛 —— FME与“快递小哥”的故事
作者:黎贵明 一.摘要 基于FME读取地籍dwg数据,批量制作宗地图,辅助制作宗地信息二维码,批量将二维码贴入各自宗地图信息框内和总图宗地红线内. (关键字:FME.批量.宗地图.二维码) 二.任务背 ...
- 2021FME博客大赛 —— FME在国土二调地类净面积计算中的应用
作者:韦前 摘要:国土二调技术规程决定了国土二调数据库的结构,分成DLTB.XZDW和LXDW三个图层,也是为后期计算地类净面积埋下了"地雷",特别是在项目范围线与二调图斑产生分割 ...
- 2021FME博客大赛 —— FME在年度重要地理信息更新中的应用
作者:刘善磊 摘要 本文针对2020年度重要基础性地理信息更新工作,以地理国情监测数据为参考资料,基于语义匹配和几何匹配等关键技术,利用FME分别设计了具有识别"增加"." ...
- 2019FME博客大赛——【零编码】利用FME实现城市高德路况抓取及增量更新——以深圳为例
参赛单元:互联网.大数据及云计算 作者:杨忠智 单位:平安国际智慧城市科技股份有限公司 前言 继续我的[零编码]系列. 简单是美.虽为"码农",但本身还是个GISer,所以在进行数 ...
- 关于51CTO博客大赛的感想
我的参赛页面:http://2010blog.51cto.com/1849649 我的参赛博客:http://www.feiyan.info 首先感谢51CTO为广大IT人员提供了这样一个平台,让平时 ...
- 2012年度IT博客大赛10强花落谁家暨圆满落幕
2012年度IT博客大赛 引无数业内专家.学者.技术牛人.热心的博客推荐者.关注传播者.尤其是IT博客参赛主们,翘首以待的"2012年度十大杰出IT博客",终于在大家满怀期待和竞相 ...
- 2012年度IT博客大赛10强诞生了
2012年度IT博客大赛 引无数业内专家.学者.技术牛人.热心的博客推荐者.关注传播者.尤其是IT博客参赛主们,翘首以待的"2012年度十大杰出IT博客",终于在大家满怀期待和竞相 ...
最新文章
- python comprehensions_python 列表生成式 List Comprehensions
- 动手动脑——登录界面
- 2018-2019-1 20165212 实验五 通讯协议设计
- 洛谷P1220 关路灯(区间dp)
- Android中文API(97)—— ContextMenu
- Yii Listview
- 外部依赖项很多未定义标识符_从日本编程书籍《我的第一本编程书》中译版看中文例程如何扬长避短——标识符(一)
- mysql 屏蔽索引_mysql强制索引和禁止某个索引
- err-disabled
- 如何继承SWT组件?
- 现实中简单配置路由器
- 实现textbox输入时模糊查询
- Centos下磁盘管理
- ENTBOOST V2014.183 Linux发布,开源企业IM免费企业即时通讯
- Linux下java进程CPU占用率高分析方法
- 华中师范大学计算机学院在哪个校区,关于《计科,你的力量在哪里?》★华师计算机科学系★研究生情况~~过来人指点下...
- google退出中国市场是战略性错误
- MAC下串口助手合集
- 网页布局颜色搭配布局总结
- 【GISer小O】JAVA后台的小白之路(一)_2 ——分分合合三剑客