一种基于ps软件的遥感影像数据快速处理方法

文档序号:6626632阅读:415来源:国知局
一种基于ps软件的遥感影像数据快速处理方法
【专利摘要】本发明涉及一种基于PS软件的遥感影像数据快速处理方法,具体包括以下几个步骤:1)将大于4G遥感影像数据分块并编码;2)读取数据块进入内存;3)数据块传输至GPU显存中;4)构建混合影像金字塔底层数据;5)对GPU显存中数据块进行重采样;6)将传输到内存的数据块存入影像金字塔文件;7)循环步骤2-6,直到采样完成;8)将所需的显示范围从混合影像金字塔中快速导入至Photoshop中显示;9)坐标的自动匹配与拼接。与现有技术相比,本发明在保持Photoshop原有功能的基础上使Photoshop能够支持数据量大于4G的遥感影像,通过GPU对影像的快速混合影像金字塔构建使遥感影像的导入速度加快,且可以对导入的数据进行自动匹配,实现了多幅影像同时处理的可能,节省了时间。
【专利说明】一种基于PS软件的遥感影像数据快速处理方法

【技术领域】
[0001]本发明涉及数据存储【技术领域】,特别涉及一种基于PS软件的遥感影像数据快速处理方法。

【背景技术】
[0002]众所周知,PS软件即Photoshop是一款国际上通用的图像处理软件,具有价格便宜,操作简便,图像处理工具齐全,效率高以及效果好等优势,Photoshop还具有很多遥感影像的处理功能,如直方图统计拉伸、色彩空间变换、色彩平衡、反差增强等,这些功能与专业的遥感处理软件相比具有一定的优势,深受遥感技术人员所推崇。
[0003]遥感影像数据是用遥感器探测来自地表的电磁波,是通过采样及量化后获得的数字化数据,遥感影像数据的一个最主要的特点是数据量大,通常情况下一幅卫星影像数据容量有三四百兆,很多遥感影像数据容量都超过五六百兆,有的甚至超过4G,比如SAR图像,其最大可超过5G,又比如经过镶嵌的遥感影像则可能会超过10G甚至是100G以上,虽然前面已述Photoshop具有很多关于遥感影像的处理功能,但是Photoshop在进行遥感影像处理时会受到4G数据量的限制,即在导入容量大于4G的遥感影像数据时会出现导入失败以及数据导入速度慢的现象,并且Photoshop会忽略掉遥感影像数据内原有的坐标投影信息,而无法实现导入数据与原有数据的快速自动匹配,使得在Photoshop处理后的影像恢复坐标投影信息需通过专业遥感处理软件后期配准添加获得,目前解决大数据量遥感影像显示处理的方法之一是构建影像金字塔,它的原理是,将原始影像按一定规则生成由细到粗不同分辨率的影像集,但是构建影像金字塔耗时长,系统资源开销大,并且数据量较原始数据增加约1/3,可见,如何更加快速高效地构建影像金字塔具有重要意义。
[0004]为了解决Photoshop无法导入容量大于4G的遥感影像数据、数据导入速度较慢以及导入的遥感影像数据无法实现自动匹配的问题,本发明提出一种基于PS软件的遥感影像数据快速处理方法。


【发明内容】

[0005]本发明克服了上述现有技术中存在的不足,提出了一种基于PS软件的遥感影像数据快速处理方法。
[0006]本发明的技术方案是这样实现的,该方法包括以下步骤:
[0007]I)通过影像分块方法将遥感影像数据进行分块以形成数据块,然后通过编码方式将划分出的数据块进行编码并按此编码实现数据块的有序存储,所述的遥感影像数据为容量大于4g的遥感影像数据;
[0008]2)在内存中分配一块区域用以建立内存池,所述内存池通过最先适应算法和最佳适应算法划分出内存块,将一部分数据块顺序读取到内存池中等待处理,所述一部分数据块所指的数量需根据内存容量大小而定,具体为内存阈值的2/5-3/5 ;
[0009]3) CPU通过锁页内存方法将数据块从内存传输至GPU显存中处理;
[0010]所述锁页内存方法是通过地址映射机制实现设备端对主机内存数据的直接访问,这样可以避免主机端和设备端的数据传输,实现数据的零拷贝,提高运行速度。
[0011]4)对GPU显存中的数据块进行提前预处理以分别构建混合影像金字塔中三个预定义金字塔模型的底层数据;
[0012]5)预处理后的数据块在CUDA全局存储器内按照第一预设规则进行重采样并调度回内存中;
[0013]其中所述的第一预设规则又包括以下步骤:
[0014]①将数据块的每个像素映射到一个线程;
[0015]②每个线程中通过双线性内插方法进行重采样计算;
[0016]③重采样完的像素按照线性四叉树策略组织成数据块并调度回内存;
[0017]6)调度回内存的数据块保存至预定义的混合影像金字塔文件中;
[0018]7)循环步骤2-6来处理各数据块,直到全部数据块采样完成,循环结束;
[0019]8)将所需的显示范围通过第二预设规则从混合影像金字塔文件中快速导入影像至Photoshop中显不;
[0020]其中所述的第二预设规则又包括以下步骤:
[0021]①通过内存映射文件方法为混合影像金字塔文件创建内存映射对象;
[0022]②按照预定义的缓存大小将混合影像金字塔文件的内存映射对象的全部或一部分映射到进程的地址空间;其中所述的一部分的大小为64个字节或为128个字节;
[0023]全部映射到进程的地址空间指影像金字塔文件中的指定位移开始到整个文件的结尾的视图映射的地址空间,具体地说,在映射时需指定数据文件的偏移地址以及待映射的长度。
[0024]③根据屏幕显示范围计算影像的坐标范围来确定当前影像显示的金字塔级别;
[0025]④根据判断坐标范围来判断当前所读取的关于金字塔级别的数据是否已经在缓存中,如果没有在缓存中,就释放上一次的内存映射空间并重新映射新的对应金字塔级别的数据;如果在缓存中,就直接显示当前影像的金字塔级别;
[0026]在每个金字塔模型中都有级别层数,即为金字塔级别,第二预设规则是根据显示范围来调用金字塔级别相应层数据,以达到显示的详尽程度,减少了内存开销。
[0027]9)将导入的影像与Photoshop中已导入的影像通过第三预设规则实现坐标的自动匹配与拼接;
[0028]其中所述的第三预设规则又包括以下步骤:
[0029]①通过自定义的坐标统一的数据结构导入影像的坐标,使导入的影像和Photoshop中已导入的影像两者数据的投影坐标保持一致;
[0030]②调用镶嵌线算法计算拼接范围,并调用几何接边纠正算法以纠正影像的坐标;
[0031]具体为通过平移、旋转、缩放等几何变换来纠正影像坐标。
[0032]③通过匀色匀光算法调整色彩,实现导入的影像与Photoshop中已导入的影像的自动匹配与拼接。
[0033]作为优选,步骤I)中所述的数据块取大小为2的幂次方正方形块。如64x64、128x128,256x256,512x512 等。
[0034]作为优选,步骤I)中所述的编码方式包括Hilbert码、Morton码、常规四叉树编码中的一种。
[0035]作为优选,步骤4)对GPU显存中的数据块进行提前预处理以分别构建混合影像金字塔中三个预定义金字塔模型的底层数据是对原数据块按照其分辨率大小提前进行两次重采样,通过两次重采样所得到的两个数据块与原数据块分别作为混合影像金字塔中三个预定义金字塔模型的底层数据。
[0036]作为优选,步骤6)混合影像金字塔文件包括文件头和数据体两部分,文件头包括文件总体信息、头文件信息、影像金字塔分层分块索引信息;其中文件总体信息由头文件信息长度、影像数据格式、影像数据位深度构成,头文件信息由影像角坐标范围、金字塔层数、各层分块信息起止位置构成。
[0037]所述的混合影像金字塔文件是由混合影像金字塔存储得到的文件,而前述的混合影像金字塔为数据模型。
[0038]采用了上述技术方案的本发明的有益效果是:
[0039]本发明提出了一种基于PS软件的遥感影像数据快速处理方法,在保持Photoshop原有功能的基础上使Photoshop能够支持容量大于4G遥感影像的导入和处理,由于GPU拥有大量的并行处理单元以及存储单元,能有效的提高数据处理能力,并且拥有更高的存储器带宽,使得GPU在影像处理上拥有比CPU更明显的优势,通过GPU对导入数据块的快速影像金字塔构建使遥感影像的导入速度明显加快,并且可以对导入的数据进行自动匹配处理,实现了多幅影像同时处理的可能,节省了大量影像匹配操作的时间。

【专利附图】

【附图说明】
[0040]图1为本发明实施例的方法流程图;
[0041]图2为本发明实施例的数据块重采样流程图;
[0042]图3为本发明实施例的混合影像金字塔结构图;
[0043]图4为本发明实施例的内存映射文件方法流程图;
[0044]图5为本发明实施例的影像自动匹配流程图;
[0045]图6为本发明实施例的一个实现效果图。

【具体实施方式】
[0046]本发明的【具体实施方式】如下:
[0047]实施例:一种基于PS软件的遥感影像数据快速处理方法,如图1所示,该方法包括以下的步骤:
[0048]Sll:通过影像分块方法将遥感影像数据进行分块以形成数据块,然后通过编码方式将划分出的数据块进行编码并按此编码实现数据块的有序存储,所述的遥感影像数据为容量为4g的遥感影像数据;
[0049]具体地说,所述的数据块取大小为2的幂次方正方形块,本实施例采用256x256像素作为剖分面片剖分,本实施例采用的编码方式为Hilbert码。
[0050]S12:在内存中分配一块区域用以建立内存池,所述内存池通过最先适应算法和最佳适应算法划分出内存块,将一部分数据块顺序读取到内存池中等待处理,所述一部分数据块所指的数量需根据内存容量大小而定,具体为内存阈值的3/5 ;
[0051]S13:CPU通过锁页内存方法将数据块从内存传输至GPU显存中处理;
[0052]所述锁页内存方式是通过地址映射机制实现设备端对主机内存数据的直接访问,这样可以避免主机端和设备端的数据传输,实现数据的零拷贝。
[0053]S14:对GPU显存中的数据块进行提前预处理以分别构建混合影像金字塔中三个预定义金字塔模型的底层数据;
[0054]具体地,对原数据块按照其分辨率大小提前进行两次重采样,通过两次重采样所得到的两个数据块与原数据块分别作为混合影像金字塔中三个预定义金字塔模型的底层数据。
[0055]S15:预处理后的数据块在CUDA全局存储器内按照第一预设规则进行重采样并调度回内存中;
[0056]其中所述的第一预设规则又包括以下步骤:具体步骤参见图2:
[0057]S21:将数据块的每个像素映射到一个线程;
[0058]S22:每个线程中通过双线性内插方法进行重采样计算;
[0059]S23:重采样完的像素按照线性四叉树策略组织成数据块并调度回内存。
[0060]S16:调度回内存的数据块保存至预定义的混合影像金字塔文件中;
[0061]具体参见图3,在该步骤中,所述混合影像金字塔文件包括文件头和数据体两部分,文件头包括文件总体信息、头文件信息、影像金字塔分层分块索引信息;而文件总体信息由头文件信息长度、影像数据格式、影像数据位深度构成,头文件信息由影像角坐标范围、金字塔层数、各层分块信息起止位置构成;所述的影像金字塔分层分块索引信息即图3中第一层分块信息、第二层分块信息、......、第N层分块信息。
[0062]S17:循环步骤S12-S16来处理各数据块,直到全部数据块采样完成,循环结束;
[0063]S18:将所需的显示范围通过第二预设规则从混合影像金字塔文件中快速导入影像至Photoshop中显示;
[0064]其中所述的第二预设规则又包括以下步骤:具体参见图4:
[0065]S41:通过内存映射文件方法为混合影像金字塔文件创建内存映射对象;
[0066]S42:按照预定义的缓存大小将混合影像金字塔文件的内存映射对象的全部映射到进程的地址空间;
[0067]S43:根据屏幕显示范围计算影像的坐标范围来确定当前影像显示的金字塔级别;
[0068]S44:根据判断坐标范围来判断当前所读取的关于金字塔级别的数据是否已经在缓存中,如果没有在缓存中,就释放上一次的内存映射空间并重新映射新的对应金字塔级别的数据;如果在缓存中,就直接显示当前影像的金字塔级别;
[0069]S19:将导入的影像与Photoshop中已导入的影像通过第三预设规则实现坐标的自动匹配与拼接;
[0070]其中所述的第三预设规则又包括以下步骤:具体参见图5:
[0071]S51:通过自定义的坐标统一的数据结构导入影像的坐标,使导入的影像和Photoshop中已导入的影像两者数据的投影坐标保持一致;
[0072]S52:调用镶嵌线算法计算拼接范围,并调用几何接边纠正算法以纠正影像的坐标;
[0073]S53:通过匀色匀光算法调整色彩,实现导入的影像与Photoshop中已导入的影像的自动匹配与拼接。
[0074]如图6所示,为本实施例所采取该方法的实现效果图。
[0075]本发明在保持Photoshop原有功能的基础上使Photoshop能够支持容量大于4G遥感影像的导入和处理,由于GPU拥有大量的并行处理单元以及存储单元,能有效的提高数据处理能力,并且拥有更高的存储器带宽,使得GPU在影像处理上拥有比CPU更明显的优势,通过GPU对导入数据块的快速影像金字塔构建使遥感影像的导入速度明显加快,并且可以对导入的数据进行自动匹配处理,实现了多幅影像同时处理的可能,节省了大量影像匹配操作的时间。
【权利要求】
1.一种基于PS软件的遥感影像数据快速处理方法,其特征在于该方法包括以下的步骤: 1)通过影像分块方法将遥感影像数据进行分块以形成数据块,然后通过编码方式将划分出的数据块进行编码并按此编码实现数据块的有序存储,所述的遥感影像数据为容量大于4g的遥感影像数据; 2)在内存中分配一块区域用以建立内存池,所述内存池通过最先适应算法和最佳适应算法划分出内存块,将一部分数据块顺序读取到内存池中等待处理,所述一部分数据块所指的数量需根据内存容量大小而定,具体为内存阈值的2/5-3/5 ; 3)CPU通过锁页内存方法将数据块从内存传输至GPU显存中处理; 4)对GPU显存中的数据块进行提前预处理以分别构建混合影像金字塔中三个预定义金字塔模型的底层数据; 5)预处理后的数据块在CUDA全局存储器内按照第一预设规则进行重采样并调度回内存中; 其中所述的第一预设规则又包括以下步骤: ①将数据块的每个像素映射到一个线程; ②每个线程中通过双线性内插方法进行重采样计算; ③重采样完的像素按照线性四叉树策略组织成数据块并调度回内存; 6)调度回内存的数据块保存至预定义的混合影像金字塔文件中; 7)循环步骤2-6来处理各数据块,直到全部数据块采样完成,循环结束; 8)将所需的显示范围通过第二预设规则从混合影像金字塔文件中快速导入影像至Photoshop 中显不; 其中所述的第二预设规则又包括以下步骤: ①通过内存映射文件方法为混合影像金字塔文件创建内存映射对象; ②按照预定义的缓存大小将混合影像金字塔文件的内存映射对象的全部或一部分映射到进程的地址空间;其中所述的一部分的大小为64个字节或为128个字节; ③根据屏幕显示范围计算影像的坐标范围来确定当前影像显示的金字塔级别; ④根据判断坐标范围来判断当前所读取的关于金字塔级别的数据是否已经在缓存中,如果没有在缓存中,就释放上一次的内存映射空间并重新映射新的对应金字塔级别的数据;如果在缓存中,就直接显示当前影像的金字塔级别; 9)将导入的影像与Photoshop中已导入的影像通过第三预设规则实现坐标的自动匹配与拼接; 其中所述的第三预设规则又包括以下步骤: ①通过自定义的坐标统一的数据结构导入影像的坐标,使导入的影像和Photoshop中已导入的影像两者数据的投影坐标保持一致; ②调用镶嵌线算法计算拼接范围,并调用几何接边纠正算法以纠正影像的坐标; ③通过匀色匀光算法调整色彩,实现导入的影像与Photoshop中已导入的影像的自动匹配与拼接。
2.根据权利要求1所述的一种基于PS软件的遥感影像数据快速处理方法,其特征在于:步骤I)中所述的数据块取大小为2的幂次方正方形块。
3.根据权利要求1所述的一种基于PS软件的遥感影像数据快速处理方法,其特征在于:步骤I)中所述的编码方式包括Hilbert码、Morton码、常规四叉树编码中的一种。
4.根据权利要求1所述的一种基于PS软件的遥感影像数据快速处理方法,其特征在于:步骤4)对GPU显存中的数据块进行提前预处理以分别构建混合影像金字塔中三个预定义金字塔模型的底层数据是对原数据块按照其分辨率大小提前进行两次重采样,通过两次重采样所得到的两个数据块与原数据块分别作为混合影像金字塔中三个预定义金字塔模型的底层数据。
5.根据权利要求1所述的一种基于PS软件的遥感影像数据快速处理方法,其特征在于:步骤6)混合影像金字塔文件包括文件头和数据体两部分,文件头包括文件总体信息、头文件信息、影像金字塔分层分块索引信息;其中文件总体信息由头文件信息长度、影像数据格式、影像数据位深度构成,头文件信息由影像角坐标范围、金字塔层数、各层分块信息起止位置构成。
【文档编号】G06F17/30GK104268169SQ201410460752
【公开日】2015年1月7日 申请日期:2014年9月11日 优先权日:2014年9月11日
【发明者】李英成, 王恩泉, 廖明, 俞凯杰, 敖楠, 叶冬梅 申请人:浙江中测新图地理信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1