发明名称 一种混合并行方式栅格影像金字塔构建方法
摘要 本发明属于地理空间信息处理技术领域,涉及一种混合并行方式栅格影像金字塔构建方法,具体包括步骤:(1)初始化金子塔总级数,进程总数与进程号,初始级数为0;(2)获取原始栅格影像,各进程读取原始栅格影像的元数据信息;(3)指定一个进程为主进程,创建空金字塔框架文件,并对创建的空金字塔框架文件采用多线程技术进行结构组织;(4)按照行划分的方式把栅格影像的数据量平均划分给各个进程,并计算在原始影像上的逻辑偏移位置;(5)根据逻辑偏移位置,采用GDAL类库函数将栅格影像的各波段数据依次读取到内存;(6)各个进程根据当前金字塔级数采用最邻近内插算法依次对数据进行对应粒度为2<sup>lev</sup>的重采样;(S7)并行写出结果,构建金子塔文件。
申请公布号 CN105677488A 申请公布日期 2016.06.15
申请号 CN201610018294.X 申请日期 2016.01.12
申请人 中国人民解放军国防科学技术大学 发明人 陈荦;吴秋云;刘世永;钟志农;熊伟;吴烨;陈浩;伍江江;李军;景宁
分类号 G06F9/50(2006.01)I 主分类号 G06F9/50(2006.01)I
代理机构 北京中济纬天专利代理有限公司 11429 代理人 胡伟华
主权项 一种混合并行方式栅格影像金字塔构建方法,其特征在于,包括以下步骤:(S1)初始化设定金字塔级数level、进程总个数n和金字塔级数迭代初始值lev为0级;消息传递接口(MPI)为每个进程分配一个进程号i,0≤i&lt;n,作为该进程的唯一标识,其中i,level,n为整数;(S2)获取原始栅格影像,各进程读取原始栅格影像的元数据信息;所述栅格影像的元数据信息包括原始栅格影像的长,宽,波段数,数据类型;(S3)指定一个进程为主进程,创建空金字塔框架文件,并对创建的空金字塔框架文件采用多线程技术进行结构组织;具有过程为:主进程根据金字塔级数和栅格影像的元数据信息计算待创建空的金字塔框架文件的大小;若金字塔框架文件不超过4GB,则创建GeoTIFF格式的金字塔文件;如果金字塔文件大小超过4GB,则创建BigTIFF格式的金字塔文件;其中,GeoTIFF表示地理参考标签影像文件格式,BigTIFF表示大规模标签影像文件格式;主进程采用多线程的方式并行设置相应标记位把数据区和标签区的位置划分出来;将每层金字塔的元数据信息写入金字塔文件中标签区相应标签位,将数据区预留;(S4)数据任务划分:按照行划分的方式把栅格影像的数据量平均划分给各个进程,每个进程根据进程号计算其所分配得到的数据块在原始影像上的逻辑偏移位置;(S5)读取数据:各个进程根据步骤(S4)中的数据划分的逻辑偏移位置,采用GDAL类库的RasterIO函数将栅格影像的各波段数据依次读取到内存;(S6)各个进程根据当前金字塔级数采用最邻近内插算法依次对步骤(S5)中读取的数据进行对应粒度为2<sup>lev</sup>的重采样,lev为当前金字塔级数;将各波段重采样后的结果存入内存中;(S7)并行写出结果,各个进程根据进程号以及波段号解算各波段在结果文件中的写入偏移位置;根据写入偏移位置采用MPI的MPI_File_write_at函数将内存中各波段重采样后的结果依次并行写入金字塔文件;(S8)将当前金字塔级数加1,如果当前金字塔级数小于等于设定金字塔级数,则返回步骤(S6);如果当前金字塔级数大于设定金字塔级数,则金字塔构建完毕。
地址 410073 湖南省长沙市开福区德雅路109号