程序员:左正康 完成时间:2013/12/3

系统开发背景:

原始的DEM精度评价方法:采用ArcGIS结合Excel的方式完成DEM的精度评价。具体操作是:利用ArcGIS工具箱中的创建TIN,TIN转DEM,坡度分析等工具将等高线的坡度图生成,然后在坡度图上选择坡度大的地方人工矢量28个检查点,然后再返回到矢量图层,人工判断计算每个检查点的高程值并依次手动填写完成属性表。然后利用ArcGIS的ExtractMultiValuesToPoints工具以检查点和DEM为录入数据,算出DEM上对应检查点的表面Z值,然后将2列属性信息导入到EXCEL中,利用EXCEL的数学工具算出高程差,中误差,然后根据2者之间的关系评价DEM的精度。

缺点:在生成检查点的这个环节中,工作量不仅大,而且由于人为的矢量和判读误差,造成评价的2次误差,最后得出的结果不精确。一般来说,检查点采集的越多,评价的结果越精确,这样就会造成工作量的增大,工作量增大就容易出错。

基于目前的现状和原始DEM精度评价的缺点,开发一款全自动的DEM评价系统很必要。

DEM精度评价自动化系统的开发思路与实现要点:

此系统将DEM评价的一整套流程集成在了此系统中。主要包括以下几个流程:DEM的自动生成,检查点的自动生成,DEM表面Z值的计算,中误差的计算以及评价结果图的生成。

此系统中较为核心的突破是检查点的自动生成。其它的环节都是基于AE的2次开发,检查点的自动生成是通过设计一套算法来实现的,该环节的自动化有效的解决了原始方法的不足,提高了评价结果的精度,全自动化大大降低了人类的工作量。以下具体展示该环节的设计与实现过程。

自动生成检查点的算法设计与实现:

由于对地形图的矢量化工作比较庞大,所以不同的人的数据质量有差异,数据风格也各不相同,所以第一步就是对数据的预处理。

1.预处理包括以下内容:

将等高线根据高程信息从大到小排序。

将相同高程的等高线归组。

这2项预处理保证了我们每遍历的2条等高线空间位置相邻并相差一个等高距。

接下来就是两两相邻等高线间坡度最大的点的自动选择。
 2.主要包括以下内容:

计算2相邻等高线之间的最短距离。

在最短距离上选择中间点。

最后一步就是生成点图层了。

3.主要包括以下内容:

空间点的生成。

属性数据的生成。

系统测试成果展示:

通过以下的前2个等高线放大图我们可以清楚的看到检查点精确的生成在了2相邻等高线最靠近的地方,也就是坡度最大的地方,测试结果说明:自动生成检查点的算法是准确的。






 
  附:原始方法评价的结果,经过比较,此系统的评价结果是正确的,此DEM不合格。

DEM精度评价自动化系统的成果展示的更多相关文章

  1. 【软件需求工程与建模 - 小组项目】第6周 - 成果展示3 - 软件设计规格说明书V4.1

    成果展示3 - 软件设计规格说明书V4.1

  2. 【软件需求工程与建模 - 小组项目】第6周 - 成果展示2 - 软件需求规格说明书V4.3

    成果展示2 - 软件需求规格说明书V4.3

  3. Kivy 中文教程 实例入门 简易画板 (Simple Paint App):0. 项目简介 & 成果展示

    本教程咪博士将带领大家学习创建自己的窗口部件 (widget).最终,我们完成的作品是一个简易的画板程序. 当用 kivy 创建应用时,我们需要仔细思考以下 3 个问题: 我们创建的应用需要处理什么数 ...

  4. Python关于PIL库的学习总结与成果展示

    一.关于PIL库的学习总结 PIL(Python Image Library)库是Python语言的第三方库,需要通过pip工具安装.安装PIL库的方法如下,需要注意,安装库的名字是pillow. : ...

  5. FivePlus——成果展示

    思路描述:描述对于自己此次任务是如何思考的 这次作业没能帮上什么忙,刚开始还对这次作业有所期待,然而,第一次听他们讨论的时候就??? 之后又去查了一些诸如贪吃蛇类的小游戏,知道大概可以达成什么效果,但 ...

  6. iOS 微信消息拦截插件系列教程-附录(服务端成果展示)

    微信iOS消息拦截插件教程 标签: 越狱开发 背景介绍 本教程所有内容免费 本教程来源于一次知识分享,如果有需要了解更多的 请联系QQ:480071411 iOS逆向高级开发群:375024882 服 ...

  7. 【Alpha阶段汇总】成果展示与体验总结

    一.燃尽图 二.软件截图 三.代码与图片.音乐素材仓库 git仓库 四.问题与总结 1.git提交问题 之前创建的仓库地址是http://git.oschina.net/8265559926/grou ...

  8. 成果展示-RSA算法工具

  9. Python之虚拟机操作:利用VIX二次开发,实现自己的pyvix(系列一)成果展示和python实例

    在日常工作中,需要使用python脚本去自动化控制VMware虚拟机,现有的pyvix功能较少,而且不适合个人编程习惯,故萌发了开发一个berlin版本pyvix的想法,暂且叫其OpenPyVix.O ...

随机推荐

  1. linux 中varnish服务

    一.安装varnish在server1中安装两个包varnish-3.0.5-1.el6.x86_64.rpm varnish-libs-3.0.5-1.el6.x86_64.rpm1.在server ...

  2. 爬虫(POST)——有道翻译(有bug)

    工具:python3 过程:抓包得到有道翻页面的url:复制post请求头,得到headers中的信息:复制post请求的body,得到formdata中的信息.构造post请求,返回响应 impor ...

  3. Hbase 表操作

    1. list 操作 2. 创建table column family, 3. 插入数据: put 'user' 3. 检索数据: scan table

  4. 操作集合的线程安全考虑——java

    运行场景:多个线程同时调用ArrayList存放元素 两个线程A和B,在A线程调用的时候,list中暂时还未有元素存在,此时,list的size值为0,同时A在添加元素的时候,add进了一个元素,此时 ...

  5. linux查看当前用户登陆信息

    @(Linux基础)[linux查看当前用户登陆信息] linux查看当前用户登陆信息 作为系统管理员,你可能经常会(在某个时候)需要查看系统中有哪些用户正在活动.有些时候,你甚至需要知道他(她)们正 ...

  6. RobotFramework读取mysql和oracle数据库

    一.robotframework连接mysql数据库 1.安装databaselibrary.pymysql 通过cmd命令执行:pip install robotframework-database ...

  7. python—datetime time 模板学习

    写在前面:本人在学习此内容是通过 https://www.cnblogs.com/pycode/p/date.html 文章学习! 时间模块——time python 中时间表示方法有:时间戳_:格式 ...

  8. Mybatis学习笔记14 - 动态sql之foreach标签

    一.查询给定集合中员工id对应的所有员工信息 示例代码: 接口定义: package com.mybatis.dao; import com.mybatis.bean.Employee; import ...

  9. nginx虚拟主机配置和反向代理

    虚拟主机有三种配置方式(常用于本机测试使用,将一个ip和端口的请求根据域名不同分配到不同的应用服务器) 基于ip 不常用 基于端口 可选 基于域名 可选 #user nobody; worker_pr ...

  10. Python第三方库使用感言

    Python第三方库使用的感言加使用笔记 一般来讲第三方库会提供大量的类与对象, 对象方法的返回值和库中函数的返回值一般不会是Python原始自带的对象, 而是由该第三方库提供的对象, 因为Pytho ...