基于小卷积递归神经网络的单帧超分辨重建方法与流程

文档序号:15350321发布日期:2018-09-04 23:15阅读:252来源:国知局

本发明涉及卷积递归神经网络和计算机图像处理计算,尤其涉及一种基于小卷积递归神经网络的单帧超分辨重建方法。



背景技术:

随着信息技术的发展和智能设备的推广,用户对于图像质量的要求也越来越高。然而由于光学成像系统的像差、图像采集设备本身的带宽限制以及传输过程中的带宽限制,图像的像质不可能无限制的提高。因此如何采用合适的超分辨算法,提升图像质量,克服上面提到的种种问题,就成为一个很热门的研究课题。硬件实现超分辨常常精度较高性能较好,但是常常应用较为局限,且成本很高,也无法应用于其它的成像环境。

而现有的软件实现超分辨算法有两种,第一种是基于多帧的超分辨重建,从图像退化模型出发,对多张低分辨图像进行亚像素级配准,并利用配准信息重建出原始的高分辨图像,然而,该方法要求多张低分辨图像之间的曝光等因素完全相同,并且对配准的精度要求极高,大大限制了该方法的应用,而单帧的超分辨算法往往存在模型复杂,依赖外界训练样本数量大,计算复杂度极高的问题。因此研究的重点就是如何控制模型的复杂度,充分利用有限的训练样本数量,以较低的运算开销实现单帧图像的超分辨成像技术。



技术实现要素:

本发明要主要解决的问题是提供一种基于小卷积递归神经网络的单帧超分辨重建方法,针对一张低分辨图片,生成对应的高分辨图像。

为解决上述技术问题,本发明采用的技术方案为:一种基于小卷积递归神经网络的单帧超分辨重建方法,该方法包括以下步骤:

(1)建立线性激活函数的递归卷积神经网络,其输入为图像某个像素点的一块邻域,输出为该像素位置的对应临时超分辨输出结果;该递归卷积神经网络的数学定义如下:

oj(x,y)=cj(x,y)(3)

其中,ij(x,y)为第j次迭代的坐标为(x,y)的网络像素输入,cj(x,y)为第j次迭代的坐标为(x,y)的网络内存,oj(x,y)为第j次迭代的坐标为(x,y)的网络输出;卷积核的大小为(2s+1)×(2s+1),w(m,n)为卷积核在(m,n)位置的数值,x0(x,y)为初始高分辨图像x0坐标为(x,y)位置的像素值,f(a)为对输入a进行重采样的固定操作;ij(m,n;x,y)表示输入矩阵ij(x,y)在(m,n)的数值;

(2)在训练阶段,利用步骤(1)建立的递归卷积神经网络,输入一张低分辨图像,经过若干次迭代输出最终的超分辨成像结果,与样本图像的计算残差利用反向传递算法对网络完成训练;在测试阶段,利用步骤(1)建立的递归卷积神经网络,输入一张低分辨图像,经过若干次迭代输出最终的超分辨成像结果。

进一步地,所述步骤1具体为:

(1.1)在第j次迭代中,如果需要对坐标为(x,y)的位置的像素重建,那么选取以该位置为中心,大小为(2s+1)×(2s+1)的矩形区域作为输入ij(x,y);

(1.2)ij(x,y)与卷积核做内积后加上原先该位置内存中的数据cj-1(x,y),即得到该点的新的内存cj(x,y),因为采用线性激活函数,所以重建像素值oj(x,y)=cj(x,y);

(1.3)完成整张图像所有位置像素值的重建以后,这些像素值被存储在内存中,即完成了一轮迭代;

(1.4)该轮迭代的输出图像逐像素经过f(a)的固定操作,即经过退化模型,并且计算与实际观测低分辨图像的残差,对残差进行上采样后,作为下一轮迭代的输入。

进一步地,所述步骤1中,f(a)的固定操作具体如下:

假设图像退化算子为d,未知的原始高分辨图像为x,在经过成像系统后,得到的低分辨图像b可以表示为:

b=dx(4)

因为无法准确估计下采样算子d,因此近似利用下采样算子来大致估算出退化前的图像x,将推算出的结果记为那么需要保证估算的高分辨图像在经过对应的图像退化模型后,可以得到和获得的低分辨图像b一致的结果,这个求解高分辨图像的过程可以表示为:

对公式(5)的求解可以表示成如下形式:

其中为第j步得到的近似高分辨图像,为第j+1步迭代得到的近似高分辨图像,λ为迭代步长,为近似下采样算子,为近似的下采样算子逆运算;实际上是一个上采样操作,将拆分成两个操作,一个是可训练卷积操作w,一个是插值上采样操作u,令则:

那么f(a)的输入即为第j步得到的近似高分辨图像的每个像素,对整个输入图像a而言:

其中u和均采用双三次插值算子,b为获得的低分辨图像。

进一步地,所述步骤1中,可训练卷积操作w具体如下:

假定图像退化过程具有各向同性,即近似下采样算子对应的卷积核为中心对称,那么必然该下采样算子对应的逆变换也是各向同性的运算,即对应的卷积核也为中心对称;因u使用双三次插值作为上采样运算,具有中心对称的特性,那么如果w对应的卷积核中心对称,就可以保证中心对称;如果w∈r(2s+1)×(2s+1),即w为一个大小为(2s+1)×(2s+1)的矩阵,那么:

w=x·yt(9)

其中x和y都是长度为(2s+1)的列向量,即x,y∈r(2s+1)×1。这样就使用两个可训练的列向量代替原来的一个可训练矩阵,并且保留了原矩阵的特性。两个可训练的列向量实际需要训练的参数数量变为原来的可训练矩阵的训练出x和y后,通过公式(9)计算w。

进一步地,所述步骤1中,针对不同颜色信息的图像采用不同的预处理方法,具体如下:

在测试过程中:如果输入为单通道灰度图,只包含图像的亮度信息,那么将图像的像素值从原先的取值范围(例如0-255等)归一化到0-1之间,采用双三次插值上采样得到初始高分辨图像x0;

如果输入为多通道图,不仅包含图像的亮度信息,同时包含有图像的颜色信息,那么将图像从原来的颜色空间(rgb等)先转换到ycbcr颜色空间中,将y通道的信息作为图像的亮度信息,并进行归一化,采用双三次插值上采样得到初始高分辨图像x0;而cb和cr通道也进行归一化,然后采用一次双三次插值来保证与最终生成的超分辨图像大小一致,与超分辨处理后的图像亮度信息合并,并且转换到原来的颜色空间中,作为最终输出图像;

在训练过程中,采用和测试过程相同的方法,只针对亮度通道的信息进行训练。

本发明的有益效果是:首先,由于采用了基于图像退化模型的递归卷积神经网络结构,所以相比较现有的基于统计学习的图像超分辨方法,具有几乎可以忽略不计的运算复杂度,通常参数数量不及一些较为复杂的超分辨算法的千分之一,而运算时间常常不及它们的十分之一。其次,由于采用了卷积的操作,所以存在进一步将算法并行化的可能,从而进一步提升算法的运行效率。另外,由于对可训练卷积核采用了tucker分解,进一步将需要优化的卷积核参数减少为原来的最后,由于相比较传统迭代反投影算法,本方法借鉴基于统计学习的算法,引入了可优化卷积核,所以本方法进行超分辨重建的图片,相比较于简单的双三次插值得到的图片,常常可以将psnr提升1db以上(以超分辨倍率为3为例)。

附图说明

图1为输入低分辨图像(超分辨倍率为3);

图2为输入低分辨图像的高分辨初始估计(超分辨倍率为3);

图3为基于递归卷积网络模型的超分辨模型;

图4为输出超分辨图像(超分辨倍率为3)。

具体实施方式

下面结合附图和具体实施例对本发明作进一步详细说明。

本发明要主要解决的问题是提供一种基于小卷积递归神经网络的单帧超分辨重建方法,针对一张低分辨图片,生成对应的高分辨图像。为解决上述技术问题,本发明采用的技术方案为:建立线性激活函数的递归卷积神经网络,其输入为图像某个像素点的一块小邻域,输出为该像素位置的对应临时输出结果;利用上一步骤建立的递归卷积神经网络,输入一张低分辨图像,经过一定次数的迭代,输出最终的超分辨成像结果。具体包括以下步骤:

步骤1:建立线性激活函数的递归卷积神经网络。

本发明设计了以下线性激活函数的递归卷积神经网络模型来实现超分辨成像。为了方便,令卷积核的大小为(2s+1)×(2s+1),那么在j时刻,如果需要对复原图像坐标为(x,y)的位置的像素需要重建,那么选取以该位置为中心,大小为(2s+1)×(2s+1)的矩形区域作为输入,与卷积核做内积后加上原先该位置内存中的数据,即得到该点的新重建像素值。完成整张图像所有位置像素值的重建以后,这些像素值被存储在内存中,即完成了一轮迭代。由于采用线性激活函数,所以输出值即为内存中的数据。输出图像经过对应的退化模型、计算与实际观测低分辨图像的残差和上采样后,被作为下一轮迭代的输入。在j时刻,令神经网络在图像坐标(x,y)位置的输入为ij(x,y),神经元内存为cj(x,y),输出为oj(x,y)。那么该网络的数学定义如下:

oj(x,y)=cj(x,y)(10)

图1为待重建高分辨图像,它双线性插值得到的结果(图2)为初始高分辨图像估计,ij(m,n;x,y)表示输入矩阵ij(x,y)∈r(2s+1)×(2s+1)在(m,n)的数值。f(x)为重采样的固定操作。如果是在测试阶段,在完成一定次数迭代后,模型将输出最终的重建结果,如果是在训练阶段,该结果与实际高分辨图像之间的均方差将被用于计算开销函数和反向传递更新网络参数。

步骤2:迭代计算最终的超分辨图像。

直接将成像过程中的图像退化模型作为提出模型中的约束,本发明首先讨论成像过程中的图像退化模型,在获取图像的过程中,由于探测器噪声、较低的采样频率、光学系统的像差等因素的存在,必然导致图像退化,假设图像退化算子为d,在实验中选取双线性插值近似作为d的算子。未知的原始高分辨图像为x,在经过成像系统后,得到的低分辨图像为b可以表示为:

b=dx(11)

其中:假设原始的高分辨图像,其采样倍率为低分辨图像的k倍,列向量化后的低分辨图像b∈rm×1,那么可得x∈rkm×1,d∈rm×km。在成像的过程中,真实的高分辨图像x已经无法获得,只能得到退化后的低分辨图像b,与此同时,往往也无法准确估计下采样算子d,因此只能利用近似的下采样算子来大致估算出退化前的图像x,将推算出的结果记为那么需要保证估算的高分辨图像在经过对应的图像退化模型后,可以得到和获得的低分辨图像b一致的结果,这个求解高分辨图像的过程可以表示为:

根据梯度下降法,对的求解可以表示成如下形式:

其中为第j步得到的近似高分辨图像,为第j+1步迭代得到的近似高分辨图像,λ为迭代步长,为重建的高分辨图像经过图像退化后获得的低分辨图像与实际获得的低分辨图像之间的残差。该式可以进一步化简得到:

上式即为实现单帧图像超分辨的迭代模型。其中的变化由两部分组成:第一部分是即重建的高分辨图像经过图像退化后获得的低分辨图像与实际获得的低分辨图像的残差;第二部分为即将该残差由对应的上采样算子上采样所得到的残差图像。所以相当于步骤(1)中的卷积操作,相当于步骤(1)中的迭代运算,在迭代一定次数后,将输出最终的超分辨结果(图4),这个过程可以用图3来表示。

相比较现有的基于统计学习的图像超分辨算法,本发明方法的模型复杂度和计算量几乎可以忽略不计,同时内部的参数也有着更加明确的物理意义。又因为引入了外部数据辅助对相应的模型参数进行学习,所以本发明方法取得比迭代反投影算法更好的超分辨重建效果。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1