基于递归残差网络的超分辨率图像重建方法与流程

文档序号:16120341发布日期:2018-11-30 23:07阅读:320来源:国知局

本发明实施例涉及图像重建技术领域,尤其涉及一种基于递归残差网络的超分辨率图像重建方法。

背景技术

单图像超分辨率(singleimagesuper-resolution,简称sisr)是一种经典的计算机视觉问题,旨在从一个给定的低分辨率(low-resolution,简称lr)图像中恢复高分辨率(high-resolution,简称hr)图像。由于sisr恢复了高频信息,因此被广泛应用于需要更多图像细节的领域,诸如医疗成像,卫星成像,安全监控等。

现有超分辨率(super-resolution,简称sr)图像重建方法主要分为三大类:基于插值的sr技术,基于重建的sr技术和基于学习的sr技术。目前的sr算法大多是基于学习的方法,通过学习lr图像和hr图像之间的映射来重建sr图像。

现有技术中常用的几种超分辨率图像重建算法有:srcnn、fsrcnn、和vdsr。

srcnn共由三部分组成:第一部分为特征提取,第二部分为特征的非线性映射(卷积神经网络),第三部分为高分辨图像重建。srcnn将插值后的lr图像作为输入,直接输出hr图像,从而证明了超分辨率卷积神经网络可以用端到端的方式学习图像间的非线性映射。

fsrcnn的提出旨在加速srcnn网络,该方法重新设计了srcnn网络,提出一个紧凑的沙漏形卷积神经网络(convolutionneuralnetwork,简称cnn)结构。该模型在网络末端引入去卷积层,并重新制定了映射层,在映射之前先缩小输入特征维度,映射之后再扩大特征维度。该模型提速了40多倍,甚至图像有更好的恢复质量。

残差网络(resnet)是常用的图像分类和目标检测方法,其主要思想是根据输入学习残差函数而非原始函数,这使得深层网络的训练更加简单,而且能由更深的网络获得更好的性能。假设所需的底层映射为h(x),让堆叠的非线性层来拟合另一个映射:f(x):=h(x)-x。则原来的映射转化为:f(x)+x。残差映射比原始映射更容易优化。在极端情况下,如果某个恒等映射是最优的,那么将残差变为0比用非线性层的堆叠来拟合恒等映射更为简单,可以通过前馈神经网络的短连接来实现,并且恒等的短连接并不增加额外的参数和计算复杂度。

“accurateimagesuper-resolutionusingverydeepconvolutionalnetworks(kimj,leejk,leekm.)”文献提出一个非常深的卷积网络(20层卷积层),简称vdsr,使得精度显著提升。该方法在cnn学习之前要通过双三次插值将原始lr图像上采样到所需尺寸,然后在深层网络结构中重复级联卷积层和非线性层对,每层卷积层使用64个3×3的小型滤波器学习残差映射得到残差图像,最后将插值后的lr输入图像和残差图像相加即为超分辨率输出图像。

作为sr的先驱cnn模型,srcnn可以以端到端的方式学习lr/hr间的非线性映射,其性能显著优于传统的非深度学习方法。但srcnn网络只有3层,浅层网络不能学到更多的细节特征,图像恢复质量不佳。

fsrcnn在网络末端引入去卷积层,直接从原始lr图像(无插值)学习映射到hr图像,大大减小了计算复杂度,但其同样使用浅层网络直接学习原始映射函数,不能重建出高质量sr图像。

resnet的提出,打破了加深网络层数不能提升性能的说法。然而,原始resnet被提出来是用于解决更高层次的计算机视觉问题,如图像分类和目标检测,将resnet架构直接应用于超分辨率图像重建的低级视觉问题可能不是最佳模型。

vdsr使用非常深的网络使得图像恢复质量得以提升,然而,深层网络会产生大量参数,占用过多内存。同时,vdsr模型需要在cnn学习之前通过双三次插值对lr图像进行上采样,这一做法增加了计算复杂度。过高的计算复杂度通常要求我们使用gpu或者高性能的cpu对神经网络进行运算。实际应用中,很多诸如移动设备、嵌入式设备在计算、体积、功耗等方面受限,导致现有的高性能深度神经网络无法在上面进行有效的计算和应用。



技术实现要素:

针对上述问题,本发明实施例提供一种基于递归残差网络的超分辨率图像重建方法。

本发明实施例提供一种基于递归残差网络的超分辨率图像重建方法,包括:

将低分辨率图像输入训练后的递归残差神经网络中,获取超分辨率重建图像,其中,所述递归残差神经网络包括若干个残差单元,对于任一残差单元,所述任一残差单元的输入信息为所述任一残差单元的上一残差单元的输出信息和所述低分辨率输入图像的高频特征图像,所述任一残差单元包括若干个卷积层和若干个激活函数层。

本发明实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述基于递归残差网络的超分辨率图像重建方法。

本发明实施例提供的一种基于递归残差网络的超分辨率图像重建方法,通过局部残差学习而非vdsr所用全局残差学习来训练神经网络,更有助于信息传输和梯度流动,将未插值的低分辨率图像作为输入,最后在网络末端使用去卷积层直接上采样到超分辨率输出图像,并通过在残差单元中引入递归结构,使得参数大大减少,降低了递归残差神经网络的计算复杂度。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例一种超分辨率图像重建方法的流程图;

图2为本发明实施例一种超分辨率图像重建方法中递归残差网络的结构示意图;

图3为本发明实施例中一种超分辨率图像重建方法中残差单元的结构示意图;

图4为本发明实施例一种超分辨率图像重建方法中递归结构示意图;

图5为本发明实施例提供的一种超分辨率图像重建方法与其它方法分别对一低分辨率测试图像的重建效果;

图6为本发明实施例提供的一种超分辨率图像重建方法与其它方法分别对另一低分辨率测试图像的重建效果。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1为本发明实施例一种超分辨率图像重建方法的流程图,如图1所示,该方法包括:将低分辨率图像输入训练后的递归残差神经网络中,获取超分辨率重建图像,其中,所述递归残差神经网络包括若干个残差单元,对于任一残差单元,所述任一残差单元的输入信息为所述任一残差单元的上一残差单元的输出信息和所述低分辨率输入图像的高频特征图像,所述任一残差单元包括若干个卷积层和若干个激活函数层。

本发明实施例主要提出通过递归残差神经网络来实现对低分辨率图像的重建,为了获得超分辨率重建图像,首先将低分辨率图像作为整个递归残差神经网络的输入,经过训练后的递归残差神经网络对该低分辨率输入图像进行处理,最后获得超分辨率重建图像。

该递归残差神经网络一定含有若干个残差单元,每个残差单元之间按照顺序连接,也就是说,前一个残差单元的输出与后一个残差单元的输入连接,后一个残差单元的输出与下一个残差单元的输入连接,在此基础上,每个残差单元的输入如下:

如果该残差单元是第一个残差单元,那么该残差单元的输入就是该低分辨率输入图像的高频特征图像,如果该残差单元不是第一个残差单元,说明该残差单元的输入与上一个残差单元的输出连接,那么该残差单元的另一输入为该低分辨率输入图像的高频特征图像,也就是说,每一个残差单元的输入都必定有一个恒等分支,就是该低分辨率输入图像的高频特征图像。本发明实施例将这种学习方法称为局部残差学习,由于残差单元所有恒等分支的输入都保持相同,该方法不仅能够将图像细节传送至后层,还有助于梯度流动,并且恒等分支有助于训练期间梯度的反向传播,避免出现过拟合现象。

在上述实施例的基础上,优选地,所述递归残差神经网络中还包括特征提取单元,所述特征提取单元用于获取所述低分辨率输入图像的高频特征图像。

递归残差神经网络除了包括若干个残差单元,还包括提取单元,提取单元位于若干个残差单元的前面,提取单元用来提取低分辨率输入图像的高频特征图像,并将提取到的高频特征图像作为第一个残差单元的输入。

具体地,提取单元的结构为一个卷积层和一个激活函数层。

本发明实施例中激活函数是指relu函数。

在上述实施例的基础上,优选地,所述递归残差神经网络中还包括去卷积层,所述去卷积层用于对残差图像进行上采样,获取所述超分辨率重建图像,所述残差图像为所述若干个残差单元的输出图像。

低分辨率输入图像首先经过递归残差神经网络中提取单元,获取到该低分辨率输入图像的高频特征图像,接着,以高频特征图像作为第一个残差单元的输入,残差单元的连接按照前面描述的方式,最后一个残差单元的输出为学习到的残差图像,该残差图像经过去卷积层,去卷积层直接对学到的残差图像进行上采样,重建出超分辨率输出图像。

图2为本发明实施例一种超分辨率图像重建方法中递归残差网络的结构示意图,如图2所示,低分辨率输入图像首先经过递归残差神经网络中特征提取单元,获取到该低分辨率输入图像的高频特征图像,接着,以高频特征图像作为第一个残差单元的输入,经过第一个残差单元后,将第一个残差单元的输出和低分辨率输入图像的高频特征图像输入到第二个残差单元中,如此递归下去,最后第n个残差单元的输出为残差图像,该残差图像经过去卷积层,得到超分辨率重建图像。

图3为本发明实施例中一种超分辨率图像重建方法中残差单元的结构示意图,如图3所示,每个残差单元包括2个卷积层和2个激活函数层,卷积层和激活函数层交替连接。

在上述实施例的基础上,优选地,所述任一残差单元的输出结果为:

hu=r(hu-1)=f(hu-1,w)+h0,(1)

其中,hu表示所述任一残差单元的输出结果,r表示所述任一残差单元的残差单元函数,f(hu-1,w)表示待学习的残差映射,hu-1表示所述任一残差单元的上一残差单元的输出结果,w表示权重集合,h0表示所述低分辨率输入图像的高频特征图像。

由于每个残差单元的恒等映射均为h0,由此形成递归结构,构成递归残差网络。图4为本发明实施例一种超分辨率图像重建方法中递归结构示意图,如图4所示,b表示递归块数,h0为恒等映射,hu为经过第u个递归块的输出结果。(a)表示只有一个递归块的网络结构;(b)表示有两个递归块的网络结构;(c)表示有u个递归块的网络结构。

残差单元被递归学习,权重集合w在递归块内的残差单元之间共享,能够在增加网络深度的同时控制模型参数,从而大大减少了参数数量,节省了存储空间。

根据公式(1),可得第u个残差单元的结果为:

hu=ru(h0)=r(r(…(r(h0))…)),(2)

本发明实施例中递归残差神经网络末端为去卷积层,该去卷积层使用一组去卷积滤波器对输出的残差图像进行上采样。不同于传统的插值方法,去卷积是可以学习到图像特征的上采样内核,可被视为卷积的逆运算。

对于卷积操作,当卷积层中滤波器的移动步幅为k时,输出为输入的反之,去卷积操作的输出则为输入的k倍。

当k等于放大因子n时,通过去卷积层可直接输出超分辨率图像,这一做法降低了网络计算复杂度。

在上述实施例的基础上,优选地,所述递归残差网络的计算复杂度为:

其中,fi(i=1,2,…,l)表示所述递归残差网络中第i层滤波器的大小,ni(i=1,2,…,l)表示所述递归残差网络中第i层滤波器的个数,sinput表示低分辨率输入图像的大小。

vdsr模型与本发明的卷积层均使用64个大小为3×3的滤波器,本发明的去卷积层使用1个大小为5×5的滤波器。

如公式(3)所示,网络计算复杂度与输入图像的大小成正比,vdsr输入图像的大小约为本发明输入图像的n2倍(此处n为放大因子)。此外,vdsr网络共有20层,而本发明只有12层,即vdsr的计算复杂度约为本发明的2n2倍。

为了验证本发明实施例提供的一种超分辨率图像重建方法的效果,本发明将与bicubic、selfex、srcnn、fsrcnn和vdsr这几种sisr方法的比较结果。表1提供了几个数据集的定量评估总结。其中,bicubic、selfex、srcnn和vdsr的结果从vdsr中引用,fsrcnn的结果来自我们的重新测试,代码为作者公开发布的源代码。

表1

表1为不同sr方法在放大倍数为2、3和4时,分别在测试集set5、set14、b100上的平均psnr值与ssim值。

图5和图6展示了本文方法与先进方法生成图像的比较。图5为本发明实施例提供的一种超分辨率图像重建方法与其它方法分别对一低分辨率样品图像的重建效果,如图5所示,以b100测试集中的“img_092”为重建对象,第一行图片为不同cnn方法对“img_092”图像的重建结果;第二行示出对应方法重建图像中红色框标注区域的放大图像;第三行为对应方法重建图像的psnr值与ssim值。

对于桥上木板的重建,除了vdsr其他方法严重模糊,甚至条纹产生畸变,而本文方法的恢复图像中木板缝隙清晰,条纹平行,相较之前方法图像的恢复质量,本文方法有了很大的提高。

图6为本发明实施例提供的一种超分辨率图像重建方法与其它方法分别对另一地分辨率样品图像的重建效果,如图6所示,以set5测试集中的butterfly_gt为重建对象,第一行图片为不同cnn方法对butterfly_gt图像的重建结果;第二行示出对应方法重建图像中红色框标注区域的放大图像;第三行为对应方法重建图像的psnr值与ssim值。本发明实施例提供的方法完美地重建了蝴蝶翅膀上的花纹,而其他方法生成的图像有明显的振铃现象,且边缘比较模糊。

综上,本发明实施例提供的一种超分辨率图像重建方法,具体来说有以下三点贡献:

(1)本发明引入局部残差学习。在vdsr中,残差图像是从网络的输入和输出估计的,称为全局残差学习。此外,如视觉识别和图像恢复中观察到的那样,非常深的网络可能会遇到性能退化问题,其原因在于图像经过多层传输后,会丢失大量的细节信息。为了解决这个问题,本发明提出局部残差学习的增强型残差单元结构,其中恒等分支不仅将深层图像细节传送到后层,还有助于梯度流动。

(2)本发明采用递归结构,减少参数数量。本发明还将递归结构引入到残差单元中,构成一个递归残差网络,并且权重集合在这些残差单元之间共享,大大减少了参数的数量。

(3)本发明的计算复杂度低。网络计算复杂度与输入图像的大小成正比,本文模型使用原始未插值的lr图像作为输入,而vdsr则是将插值后的lr图像作为输入,其大小约为rrsr的n2倍。同时,本发明使用更少的网络层数,经计算,vdsr的计算复杂度约为本发明的2n2倍。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

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