- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
并行算法设计与实现任务指导书教程
PAGE \* MERGEFORMAT 12
空间信息处理并行算法设计与实现任务指导书
课题目的
通过对HPC、Linux、并行计算基础、MPI变成模型的理论讲授,以及对应的上机实践,同学们已经为如何利用HPC技术,尤其是MPI并行编程方法实现空间信息领域的典型空间信息处理算法并行化奠定了一定的基础。这部分课题设计就是检验同学们对前面知识的整体掌握程度而设计的。
课题介绍
本次课题设计算法是基于格网的栅格数据(DEM栅格影像数据)生成等高线(矢量数据结构,Shapefile格式)算法的并行化实现。该算法涉及地理空间信息系统常见的两种数据格式:栅格数据、矢量数据结构,属于数据格式转化算法中的一类(栅格数据转换成矢量数据)。因为等高线生成算法是一个比较典型的栅格-矢量数据转化算法,是GIS的常见空间分析算法之一,具有较为广泛的应用领域。随着获取栅格数据,尤其是DEM数据能力的提高,该算法需要处理的数据越来越大;另一方面,该算法本身处理极为耗时,是一个典型的集数据密集、计算密集型的空间信息处理算法。
因此,选择该算法作为研究空间信息处理算法在不同HPC计算手段下的研究对象是适合的;通过该并行算法设计,对探索其他地学计算的算法并行化研究具有较为重要的作用。
课题任务
设计并实现基于高性能集群平台的MPI版本的等高线生成并行算法,以及并行算法的测试、性能分析报告。最后提交《实验报告》(参见附件中的“电子科技大学标准实验报告模板”文件进行)。
课题要求
提交的《标准实验报告》(纸质版和电子版)。提交报告的内容部分需包含串行算法原理、热点分析、并行算法设计、并行算法编码实现、并行算法测试、并行算法优化改进(可选)、系统测试等部分。
提交对应的源代码(电子版);
必须独立完成,避免抄袭(会用相关代码克隆检测软件进行扫描,务必引起重视);
同时也请提交平时上机练习的作业代码;
上机时间:2016年6月22日,地点请查看系统;请大家提前准备好相关材料,上机的时候统一提交给我。
课题实现
在具体实施该课题时,提供对应的基础知识与大体的思路与方法,以及列出在实现过程中需要注意的问题,以供同学们参考使用。
等高线串行算法原理
目前,获取等高线的手段多种多样,其中通过地形数据自动生成等高线,如通过纸质地图扫描矢量化生成等高线,DEM栅格数据转换成生成等高线等多种途径和方法。其中利用DEM栅格数据通过算法自动生成等高线(图1)是获取等高线的最主要手段,该途径既是利用DEM进行地形分析的重要部分,也是GIS自动制图的一个重要研究内容。此外,空间数据转换既是GIS数据处理的一项重要任务,也是GIS的技术难题之一。有时候,为了方便分析和应用,需要将矢量数据转换成栅格数据,或者将栅格数据转换为矢量数据,而由栅格数据生成等高线则是数据格式转换中的一类。
图1 栅格DEM生成等高线
传统DEM数据获取主要通过航空摄影测量、卫星遥感、已有地形图矢量化等手段完成,随着先进空间数据获取技术的进步与发展,尤其是LiDAR (light detection and ranging)技术的革命性发展,使快速、低成本、自动处理获取大面积、高精度的DEM数据成为可能。如何将海量的DEM数据快速转换成等高线数据,成为一个急需解决的问题。显然选择利用HPC手段,将是解决这个问题不二的选择。
目前,应用得最为广泛的栅格生成等高线算法采用的是等值线传播算法,隶属于网格法这一类,该算法的时间复杂度为O(N)。等值线传播算的基本原理是:为了得到某一高程值的等高线,首先找到一个有对应等高线穿过的格网作为初始格网;然后由这个初始格网开始向邻近的栅格(上、下、左、右)传播这条等高线;当某一条等高线穿过格网时,可通过线性内插方法求出等高点;同时利用下述公理判断其下一个传播方向:
公理1:单元格网的边与等高线交点的个数为0,2或4 ;
公理2:已知等高线与单元格网的边有4个交点,则在单元格网内中心点和两个顶点同号的对角线与等高线没有交点。
直至所有栅格单元遍历一遍,再利用相同方法进行下一条等高线的获取。一个完整的可实现的栅格数据生成等高线算法的描述如下:
(1)标志栅格图像的栅格。
设置一个标志,用来说明该栅格是否需要再被搜索,初始值与说明不再对该栅格进行搜索的标志值不同,被标志后直至等高线高程发生变化后,标志才会失效。
(2)构成栅格矩形。
图2 栅格格网设置
将待搜索的栅格与其右,右下,下方各栅格一起组成栅格矩形。如图2所示:
(3)判断栅格点间等高线是否穿过。
如上图所示,以点0和1为例,设点0高程为Z0,点1高程为Z1,判断它们之间是否有高程值为level的等高线穿过,只需判断level-Z0level-Z10的值。如果满足条件,则说明点0和点1之间有等高线穿过。
(4)插入等高
文档评论(0)