一种基于GPU的双相机光谱成像系统的快速重构方法技术方案

技术编号:16917048 阅读:44 留言:0更新日期:2017-12-31 13:34
本发明专利技术公开的一种基于GPU的双相机光谱成像系统的快速重构方法,涉及能够快速获取高分辨率高光谱图像的方法,属于计算摄像学领域。本发明专利技术应用于基于编码孔径快照光谱成像+灰度相机的双相机光谱成像系统,将高光谱图像重构问题转化为多个子优化问题,并使用GPU完成各个子问题的求解:使用cuBLAS库和共轭梯度下降法更新高光谱图像;使用软阈值函数更新辅助变量;重复迭代完成高光谱图像的重构。本发明专利技术能够高质量地完成双相机光谱成像系统的高光谱图像重构,在保证重建结果具备高空间分辨率和高光谱保真性的同时,大幅度提高高光谱图像重建的效率,扩展高光谱图像的应用范围。本发明专利技术可用于载人航天、地质勘测和植被研究等多个领域。

【技术实现步骤摘要】
一种基于GPU的双相机光谱成像系统的快速重构方法
本专利技术专利涉及一种用于双相机光谱成像的高光谱图像重构方法,尤其是能够快速获取高分辨率高光谱图像的方法,属于计算摄像学领域。
技术介绍
高光谱成像技术是将空间成像技术和频谱成像技术相结合,对目标场景在频谱上进行几十甚至上百个波段的连续测量。该技术得到的图像包含目标场景的二维空间信息和一维光谱信息,被称为数据立方体。相比传统彩色成像,高光谱成像技术能够获得内容更为丰富,细节更为显著的有用信息。该技术已经被应用于植被研究、大气检测,载人航天、医学诊断等多个领域。近年来,基于压缩感知的计算光谱成像技术被广泛运用到高光谱成像。与传统光谱成像系统相比,计算光谱成像能够获得更高空间分辨率、光谱分辨率和时间分辨率的高光谱图像,具有更为广阔的应用前景。AshwinWagadarikar等人提出的编码孔径快照光谱成像仪(CodedApertureSnapshotSpectralImager,CASSI)采用编码孔径和色散介质来对目标场景进行调制,通过探测器获取三维图谱数据的二维压缩投影。双相机光谱成像系统则是在CASSI系统的基础上,加入了灰度相机通道。该系统在获取目标场景的二维压缩光谱投影的同时,还获取目标场景的二维灰度投影。与最初的CASSI系统相比,双相机系统能够最大化入射光利用率,大幅度提高高光谱图像的成像质量,因此已成为该领域的重点研究对象。目前,从双相机系统重构出原始的三维高光谱图像的方法主要有两类:基于全变差最小化的两步迭代收缩/阈值算法(Two-StepIterativeShrinkage/ThresholdingAlgorithms,TwIST)和基于自适应字典学习的重构算法。TwIST算法建立在迭代收缩阈值算法和迭代加权收缩算法的基础上,其核心是使用反向投影函数去噪,并利用前两次的结果进行迭代更新,从而完成高光谱图像的重建。由于其计算复杂度很高,TwIST算法重构高光谱图像时间很长,完全不能满足快速重建的要求。同时,重构的高光谱图像分辨率也有待提高。基于自适应字典学习的重构算法利用光谱图像和灰度图像在空间维的相似性,采用字典学习和稀疏表示的方法完成高光谱图像的重构。这种方法虽然能够获得较好的重构质量,但是每次重构都需要重新学习字典,导致重构时间比TwIST算法更长,因此也不能满足快速重建的要求,极大地限制了高光谱图像的应用和发展。CUDA(ComputeUnifiedDeviceArchitecture),是显卡厂商NVIDIA推出的通用并行计算架构,该架构使用图像处理器GPU作为计算核心完成复杂的计算难题。相比传统CPU处理器,GPU拥有更多的计算单元,能够快速完成运算量大的计算任务,且已经在深度学习和人工智能等多个领域得到应用。
技术实现思路
针对现有重构算法存在的重构时间长、图像质量低等问题。本专利技术要解决的技术问题是提供一种基于GPU的双相机光谱成像系统的快速重构方法,能够快速完成双相机光谱成像系统的重构,具有重构速度快,成像质量高等优点。为达到以上目的,本专利技术采用以下技术方案:本专利技术公开的一种基于GPU的双相机光谱成像系统的快速重构方法,应用于基于编码孔径快照光谱成像+灰度相加的双相机光谱成像系统,将高光谱图像重构问题转化为多个子优化问题,并使用图形处理器GPU完成各个子问题的求解:使用共轭梯度下降法更新高光谱图像;使用软阈值函数更新中间变量;重复迭代完成高光谱图像的重构。本专利技术公开的一种基于GPU的双相机光谱成像系统的快速重构方法,包括以下步骤:步骤101:输入双相机光谱成像仪的采样图像Y、标定后的前向响应矩阵H、主函数最大迭代次数Maxiters和正则化系数τ。步骤101中所述双相机光谱成像仪为基于编码孔径快照光谱成像仪(CodedApertureSnapshotSpectralImager,CASSI)+灰度相机的双相机采样光谱成像仪。双相机光谱成像仪主要由分光镜、物镜、编码模版、中继镜、色散棱镜和灰度相机等部件构成。目标场景的高光谱图像X大小为M×N×Ω,高光谱图像X上任意一点的像素值为x(i,j,λ),1≤i≤M,1≤j≤N,1≤λ≤Ω。其中,M×N表示高光谱图像的空间分辨率,Ω表示高光谱图像的频段数。入射光首先到达分光镜将其能量一分为二,一半进入编码孔径快照光谱成像仪CASSI分支,一半进入灰度相机分支。进入编码孔径快照光谱成像仪CASSI分支的光会到达编码模版进行0-1编码。经编码后的图像到达色散棱镜后,不同频段的图像会沿着竖直方向进行偏移。最后所有频段的图像到达灰度相机后进行叠加,得到压缩的二维混叠光谱图像。编码孔径快照光谱成像仪CASSI成像仪的数学模型为:其中ω(λ)表示CCD相机的频谱响应函数,Cu(i,j)表示编码模版函数,φ(λ)表示色散棱镜的波段偏移函数,yc(i,j)为二维压缩光谱采样图像,v1(i,j)表示高斯白噪声。进入灰度相机分支的入射光会直接到达灰度相机得到目标场景的二维灰度投影,数学模型为:将式(1)和式(2)联立,并写成矩阵的形式为:Y=HX+V(3)其中Y=[Yc;Yp]表示二维压缩光谱采样图像+二维灰度图像。X表示三维数据立方体,V=[Vc;Vp]表示高斯白噪声。H表示对编码孔径快照光谱成像仪CASSI+灰度相机标定后的前向响应矩阵,为编码模版函数、色散棱镜偏移函数和CCD灰度相机频谱响应的综合作用。步骤102:申请主机CPU内存,将前向矩阵H和二维压缩光谱采样图像Y读入到主机CPU内存。步骤102所述申请主机CPU内存优选C语言的malloc内存分配函数,申请的主机CPU内存为一维线性内存,方便后续处理中将CPU内存读入图像处理器GPU显存的操作。步骤102所述将矩阵H和Y读入主机CPU内存的方式是根据编码孔径光谱仪的色散棱镜偏移方向确定:如果色散棱镜是沿竖直方向偏移,则以二维采样图像的水平方向为基准进行读入,即逐行读入;如果色散棱镜是沿水平方向偏移,则以二维采样图像的竖直方向为基准进行读入,即逐列读入。目的是方便在后续处理中编码孔径快照光谱成像仪CASSI系统前向模型的计算,提高计算效率。步骤103:为输入输出、以及后续计算过程所需要的数据申请GPU显存,将二维压缩光谱图像Y和前向响应矩阵H拷贝到GPU显存中。设置CUDA并行计算时需用的线程格/块数。步骤103所述申请图形处理器GPU显存的方法优选通用并行计算架构CUDA的cudaMalloc函数,拷贝到图形处理器GPU显存的方法优选通用并行计算架构CUDA的cudaMemcpy函数。步骤104:初始化重构高光谱图像X0,优化目标函数的初始值f0,以及辅助矩阵S和U,辅助因子ρ。初始化当前迭代次数t=0。步骤104所述重构高光谱图像X0的初始化方式为:X0=HTY(4)其中HT表示编码孔径快照光谱成像仪CASSI系统前向响应H的转置,即从二维压缩光谱图像+二维灰度图像反演到三维数据立方体的过程。步骤104所述优化目标函数为全局优化目标函数。根据自然图像的平滑特性,将高光谱重构问题转化为基于全变差约束的最优化问题,从而得到全局优化目标函数为:其中运算符表示L2范数的平方。||DX||1表示图像的全变差值,其定义如下:||DX||1=Σi本文档来自技高网
...
一种基于GPU的双相机光谱成像系统的快速重构方法

【技术保护点】
一种基于GPU的双相机光谱成像系统的快速重构方法,其特征在于:包括以下步骤,步骤101:输入双相机光谱成像仪的采样图像Y、标定后的前向响应矩阵H、主函数最大迭代次数Maxiters和正则化系数τ;步骤102:申请主机CPU内存,将前向矩阵H和二维压缩光谱采样图像Y读入到主机CPU内存;步骤103:为输入输出、以及后续计算过程所需要的数据申请GPU显存,将二维压缩光谱图像Y和前向响应矩阵H拷贝到GPU显存中;设置CUDA并行计算时需用的线程格/块数;步骤104:初始化重构高光谱图像X

【技术特征摘要】
1.一种基于GPU的双相机光谱成像系统的快速重构方法,其特征在于:包括以下步骤,步骤101:输入双相机光谱成像仪的采样图像Y、标定后的前向响应矩阵H、主函数最大迭代次数Maxiters和正则化系数τ;步骤102:申请主机CPU内存,将前向矩阵H和二维压缩光谱采样图像Y读入到主机CPU内存;步骤103:为输入输出、以及后续计算过程所需要的数据申请GPU显存,将二维压缩光谱图像Y和前向响应矩阵H拷贝到GPU显存中;设置CUDA并行计算时需用的线程格/块数;步骤104:初始化重构高光谱图像X0,优化目标函数的初始值f0,以及辅助矩阵S和U,辅助因子ρ;初始化当前迭代次数t=0;步骤105:使用共轭梯度下降算法更新高光谱图像Xt+1;针对优化问题式(10),X的最小二乘解为:Xt+1=(HTH+ρDTD)-1(HTY+DT(Ut+ρSt))(12)由于矩阵H和矩阵D的规模很大,无法直接求其解析解,因此需利用共轭梯度下降法求高光谱图像Xt+1的近似解,从而完成高光谱图像Xt+1的更新;步骤106:更新辅助矩阵S和U;根据优化问题式(11),S的最小二乘解为:上式为软阈值收缩函数,运算符表示点乘,St+1能够直接求出;辅助矩阵U的更新公式如下:Ut+1=Ut+ρ(St-DXt)(14)步骤107:使用更新后的高光谱图像Xt+1计算全局优化目标函数值ft+1;步骤107所述全局优化目标函数与步骤103的相同,即:步骤108:根据步骤107计算的结果执行迭代选择策略,完成双相机光谱成像系统的快速重构。2.如权利要求1所述的一种基于GPU的双相机光谱成像系统的快速重构方法,其特征在于:步骤101中所述双相机光谱成像仪为基于编码孔径快照光谱成像仪(CodedApertureSnapshotSpectralImager,CASSI)+灰度相机的双相机采样光谱成像仪;双相机光谱成像仪主要由分光镜、物镜、编码模版、中继镜、色散棱镜和灰度相机等部件构成;目标场景的高光谱图像X大小为M×N×Ω,高光谱图像X上任意一点的像素值为x(i,j,λ),1≤i≤M,1≤j≤N,1≤λ≤Ω;其中,M×N表示高光谱图像的空间分辨率,Ω表示高光谱图像的频段数;入射光首先到达分光镜将其能量一分为二,一半进入编码孔径快照光谱成像仪CASSI分支,一半进入灰度相机分支;进入编码孔径快照光谱成像仪CASSI分支的光会到达编码模版进行0-1编码;经编码后的图像到达色散棱镜后,不同频段的图像会沿着竖直方向进行偏移;最后所有频段的图像到达灰度相机后进行叠加,得到压缩的二维混叠光谱图像;编码孔径快照光谱成像仪CASSI成像仪的数学模型为:其中ω(λ)表示CCD相机的频谱响应函数,Cu(i,j)表示编码模版函数,φ(λ)表示色散棱镜的波段偏移函数,yc(i,j)为二维压缩光谱采样图像,v1(i,j)表示高斯白噪声;进入灰度相机分支的入射光会直接到达灰度相机得到目标场景的二维灰度投影,数学模型为:将式(1)和式(2)联立,并写成矩阵的形式为:Y=HX+V(3)其中Y=[Yc;Yp]表示二维压缩光谱采样图像+二维灰度图像;X表示三维数据立方体,V=[Vc;Vp]表示高斯白噪声;H表示对编码孔径快照光谱成像仪CASSI+灰度相机标定后的前向响应矩阵,为编码模版函数、色散棱镜偏移函数和CCD灰度相机频谱响应的综合作用。3.如权利要求2所述的一种基于GPU的双相机光谱成像系统的快速重构方法,其特征在于:步骤102所述申请主机CPU内存优选C语言的malloc内存分配函数,申请的主机CPU内存为一维线性内存,方便后续处理中将CPU内存读入图像处理器GPU显存的操作。4.如权利要求3所述的一种基于GPU的双相机光谱成像系统的快速重构方法,其特征在于:步骤102所述...

【专利技术属性】
技术研发人员:黄华张仕鹏王立志付莹
申请(专利权)人:北京理工大学
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1