[发明专利]一种基于GPU计算的干涉数据快速傅里叶变换方法有效
申请号: | 201610034648.X | 申请日: | 2016-01-19 |
公开(公告)号: | CN105719231B | 公开(公告)日: | 2019-05-07 |
发明(设计)人: | 李建欣;王昊;沈燕;柏财勋 | 申请(专利权)人: | 南京理工大学 |
主分类号: | G06T1/20 | 分类号: | G06T1/20;G06F17/14 |
代理公司: | 南京理工大学专利中心 32203 | 代理人: | 朱显国 |
地址: | 210094 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明了一种基于GPU计算的干涉数据快速傅里叶变换方法。首先对傅里叶变换光谱仪采集到干涉图像进行预处理,得到预处理后的二维干涉数据,根据二维干涉数据的横维像素点数创建一维索引空间,并将一维索引空间映射到GPU,计算快速傅里叶变换所需的旋转因子表,然后在GPU内部开辟多块缓存并建立流水线结构,然后将干涉数据映射到GPU的二维索引空间进行多重逆序操作,最后将干涉数据映射到GPU的二维索引空间进行多重迭代蝶形运算得到复原光谱数据。该方法能够提高光谱复原中快速傅里叶变换的效率,实现了干涉数据快速处理的通用化,适用于大规模干涉数据的处理。 | ||
搜索关键词: | 一种 基于 gpu 计算 干涉 数据 快速 傅里叶变换 方法 | ||
【主权项】:
1.一种基于GPU计算的干涉数据快速傅里叶变换方法,其特征在于,步骤如下:步骤1:对傅里叶变换光谱仪采集到干涉图像进行预处理,得到预处理后的二维干涉数据,根据二维干涉数据的横维像素点数创建一维索引空间,并将一维索引空间映射到GPU,计算快速傅里叶变换所需的旋转因子表:对于横维为L点的,结构为(n×m)×L的预处理后的二维干涉数据,n为单幅干涉图横向像素点数,m为单幅干涉图横向像素点数,L为依据实际所需光谱分辨率选定的干涉图数目,n为单幅干涉图横向像素点数,m为单幅干涉图纵向像素点数,需计算拥有L/2个元素的旋转因子表;创建并行一维索引空间NDRange(L/2,1,1),空间大小为L/2,将上述一维索引空间映射到GPU,GPU分配L/2个处理单元用于计算旋转因子,L/2个处理单元计算L/2个元素时,仅需单个处理单元计算一个元素的时间,待处理单元计算完毕,得到旋转因子表;步骤2:在GPU内部开辟t块缓存并建立流水线结构,实现方法如下:在GPU内部开辟t块缓存,t为大于0的整数,将步骤1中的结构为(n×m)×L的预处理后的二维干涉数据分解为tk个批次,k为干涉数据的分割因子,且k为大于0的整数;将分解后的结构为的各块二维干涉数据分别送入GPU中开辟的t块缓存中,单块缓存对应结构为的二维干涉数据;按此顺序操作缓存,GPU内第一块缓存读出数据时,正值第二块缓存执行数据处理,同时第三块缓存开始写入数据,以此类推,在t块缓存中形成异步操作;步骤3:将二维干涉数据映射到GPU的二维索引空间进行多重逆序操作:对于结构为的二维干涉数据,k为干涉数据的分割因子,创建多重逆序二维索引空间其中X维大小为L,Y维大小为将所述多重逆序二维索引空间映射到GPU,GPU分配个处理单元对缓存中的组数据同时进行逆序操作;其中干涉图数目L应为整数数值,同时要合理调整m、n、t、k的数值,使得表达式的量值为整数,使其值为GPU内核数的整数倍;步骤4:将干涉数据映射到GPU的二维索引空间进行多重迭代蝶形运算,得到复原光谱数据:对于结构为的二维干涉数据,创建多重迭代蝶形运算二维索引空间其中X维大小为L/2,Y维大小为将多重迭代蝶形二维索引空间映射到GPU,GPU分配个处理单元,对缓存中的组干涉数据同时进行迭代蝶形运算,得到复原光谱数据。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京理工大学,未经南京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610034648.X/,转载请声明来源钻瓜专利网。