基于残差密集网络的单幅图像超分辨率重建
2019-10-18谢雪晴
谢 雪 晴
(重庆工业职业技术学院信息工程学院 重庆 401120 )
0 引 言
图像超分辨率重构是数字图像处理领域中的研究热点之一。图像超分辨率是指把分辨率比较低的图像通过某种算法得到分辨率较高的图像,使获得的高分辨率图像具有更加清晰的颜色、纹理等信息。提高低质量图像质量的方法一般有两种:一是改善硬件设备,二是图像超分辨率重建技术。然而在实际应用中,由于比较高的工程成本和制作流程,大多数场合一般不会采用分辨率较高的相机来采集数字图像。而是利用超分辨率重建技术来得到具有更加丰富的颜色纹理等信息的高分辨率图像。目前,常见的超分辨率重建技术分为三类:基于插值的方法、基于重建的方法、基于学习的方法。
基于插值的方法包括最近邻插值和三次插值,优点是算法复杂度较低,缺点是很容易出现阶梯锯齿状现象以及产生边缘模糊。
基于重建的方法使用了强制约束平滑和下采样技术,使得低分辨率图像和高分辨率图像保持一致性,由于该方法过分地依赖高分辨率图像的先验知识,当缩小或放大图像的时候,重建质量就会下降,重建的结果就会缺失重要的细节信息。
近年来,深度学习在图像超分辨率重建领域表现出巨大的潜力。文献[1]首次提出基于卷积神经网络的图像超像素重建方法,第一次用深度学习来解决SISR问题。该网络共三层卷积层:第一层提取输入的低分辨率图像的特征;第二层将提取的低分辨率图像的特征映射到高分辨率图像的特征;第三层为高分辨率图像的重建。损失函数为简单的MSE损失。文献[2]提出了基于学习的图像超分辨率算法,利用样本先验知识来重建图像,相较于其他重建方法有明显的优势,也是近年来研究的热点。本文首先分析了影响图像重建质量的原因,然后对基于深度学习的超分辨率重建算法[1]提出了两点改进:用随机线性纠正单元(Randomized rectified linear unit,RReLU)来避免原有网络学习中对图像某些重要的信息的过度压缩,同时用NAG(Nesterov’s accelerated gradient)方法来加速网络的收敛,进而避免了在梯度更新时产生较大的震荡。目前,图像超分辨率方法难以同时满足运算速度快和生成的图像高质量这一问题,文献[3]提出一种基于卷积的快速的图像超分辨率方法。此方法首先提取卷积特征,然后利用去卷积层对提取的特征放大膨胀,再以池化层对特征进行浓缩,提炼更鲁棒的特征,进而获得高分辨率图像。文献[4]提出了一种基于GAN网络的超分辨率重建。文中,作者论证了PSNR不能作为评价超分辨的标准,因为它和人对图片的感受结果不一致,并采用了MOS进行评价;另外作者在loss函数上进行了改进,更好地恢复出细节的纹理信息。文献[5]提出了用于图像超分辨率任务的新方法,分别是增强深度超分辨率网络EDSR和一种新的多尺度深度超分辨率MDSR,在减小模型大小的同时实现了比当前其他方法更好的性能。文献[6]提出了一个非常深的循环残差网络用于图像超分辨率,这个网络高达52层。文献[7]提出了一种多阶段级联残差卷积神经网络模型。该模型分为两阶段来进行超分辨率图像重建,首先重建2倍超分辨率图像,然后重建4倍超分辨率图像。第一阶段和第二阶段都使用残差层,对两阶段分别构建多任务损失函数,利用第一阶段的损失来指导第二阶段的损失,进而提高网络训练的速度。文献[8]针对经典的基于卷积神经网络的超分辨率(SRCNN)方法存在重建图像纹理结构模糊以及网络模型训练收敛过慢等问题,提出了一种多通道卷积的图像超分辨率(MCSR)方法。该方法通过增加残差链接,加快了模型收敛速度。同时利用多通道映射来提取更加丰富的特征,进而增强超分辨率重构效果。文献[9]提出了一种维度拉长策略,将模糊和噪声作为输入,可以应对多倍和空间改变的退化模型,提高了实用性。实验结果表明,提出的网络结构在多种多样的退化采样后,依然能生成比较好的结果。近年来,随着深度学习的快速发展,出现了很多基于神经网络的超分辨率算法。深度卷积网络在图像超分辨率重建方面取得了卓越的成就,但是参数数量往往非常巨大。文献[10]提出了一种简洁紧凑型递归残差网络结构。该网络通过局部残差的学习来减轻训练深层网络的困难;引入递归结构保证增加深度的同时控制模型参数数量;采用可调梯度裁剪方法来防止梯度消失。在网络末端使用反卷积层直接上采样图像,进而得到超分辨率图像。
然而,这些方法只是用了某些卷积层的信息,而没有用全部的卷积层的信息。图像中的物体有不同的尺度、视角和长宽比,深度卷积神经网络中的层次特征对于图像重构有很大的帮助。因此,本文提出了一个残差密集网络结构用于图像超分辨率。
1 残差网络和密集网络
在训练的过程中,深度神经网络容易遇到梯度消失问题,在块的归一化中,我们将输入数据由激活函数的收敛区调整到梯度较大的区域,在一定程度上缓解了这种问题。不过,当网络的层数急剧增加时,BP算法导数的累乘效应很容易让梯度慢慢减小直至消失。为了从根本上解决这个问题,文献[11]提出了一种深度残差网络,简化那些非常深的网络的训练过程,使得层能根据其输入来学习残差函数而非原始函数。实验表明,这些残差网络的优化过程比较简单,能够使得网络结构有更深的层,而且能获得更加高的性能。文献[11]在ImageNet数据集上使用了一个152层的网络结构来评估所提出的残差网络,虽然它相当于8倍深的VGG网络,但是在所提出的框架中仍然有非常低的复杂度。这些残差网络的一个组合模型,在ImageNet测试集上的错误率仅为3.57%。此结果在2015年的ILSVRC分类任务上获得了第一名的好成绩。每一个残差块如图1所示。
图1 残差块
其中:x是输入。假设H(x)是映射函数,我们不期望得到近似的H(x),而是把它们近似为一个残差函数F(x):F(x):=H(x)-x。因此,原始的函数H(x):=F(x)+x。
对每几个堆栈层都应用残差学习,残差块可以被表示为如下形式:
y=F(x,{Wi})+x
(1)
式中:x和y分别为输入和输出;函数F(x,{Wi})表示学习到的残差映射。对于图1所示的残差块,总共为两层,F=W2σ(W1x),其中,σ为ReLU。
2 方法设计
2.1 整体流程
本文提出了一种残差密集网络结构用于图像超分辨率,整体流程图如图2所示。该网络结构包括三部分:浅层的特征提取,残差密集块以及上采样操作。
图2 残差密集网络结构
我们用两层卷积层来提取浅层的特征,第一层卷积层提取输入的低分辨率图像(Low Resolution,LR)的特征,表示为:
F-1=HSF1(ILR)
(2)
式中:HSF1(·)表示卷积操作。F-1可以进一步用于浅层特征的提取,因此,可以依次类推得到F0:
F0=HSF2(F-1)
(3)
式中:HSF2(·)表示第二个特征提取层的卷积操作。特征F0作为残差密集块的输入。假设我们有D个残差密集块。第d层残差密集块的输入Fd可以表示为:
Fd=HRDB,d(Fd-1)=HRDB,d(…HRDB,0(F0))
(4)
式中:HRDB,d(·)表示第d个残差密集块(Residual Dense Block,RDB)的操作,它可以表示为复合函数运算,例如卷积层和Rectified Linear Units(ReLU)层。最后,所有的特征可以表示:
Fall=H(F-1,F0,F1,…,FD)
(5)
在提取了局部和全局的特征Fall之后,我们用一个上采样的网络,来得到高分辨率图像(High Resolution,HR)。
2.2 残差密集块
残差密集网络结构包括密集的连接层、局部特征融合层,如图3所示。
图3 残差密集块
令Fd-1和Fd分别表示第d个残差密集块的输入和输出。那么,第d个残差密集块中的第c个卷积层的输出可以表示为:
Fd,c=σ(Wd,c[Fd-1,Fd,1,…,Fd,c-1])
(6)
式中:σ为ReLU激活函数,Wd,c是第c个卷积层的权重。
本文所提出的残差密集网络生成高质量的超分辨率图像的方法,充分利用了原始低分辨率图像的每一层的特征。残差密集块不仅可以通过连续记忆机制从前一个残差密集块读取状态,还可以通过局部密集连接充分利用其中的所有层的信息。然后通过局部特征融合自适应地保留累积的特征。此外,还利用全局残差学习,将浅层特征和深层特征结合在一起,从原始LR图像中得到全局密集特征。
3 实 验
3.1 数据集和评价指标
为了评估本文提出的方法的有效性,本文训练模型用文献[1]提到的91幅图像。对于测试,本文用四个基准的数据集:Set5、Set14、B100和Urban100。Set5共包括5幅图像,Set14包括14幅图像。
图像超分辨率重构常用的客观评价指标主要包括峰值信噪比(Peak Signal to Noise Ratio,PSNR)和结构相似性(Structural Similarity Index Method,SSIM)。
峰值信噪比是一种简单且广泛使用的SISR测量方法,它通过均方差(MSE)进行定义。PSNR可以定义为:
(7)
式中:MAX表示图像颜色的最大数值,8 bit图像的最大取值为255。MSE为均方差,定义为:
(8)
式中:I和K分别是原始图像和处理后的图像,图像的大小为m×n。
SSIM评价指标采用更加直接的方法来比较重建图像和参考图像的结构,表示为:
(9)
式中:μx和μy表示图像所有像素的平均值,σx和σy表示图像像素值的方差,C1和C2为常数。
PSNR值越大,说明效果越好;SSIM值越小,说明效果越好。
3.2 实验结果与分析
对于每一个超分辨率的尺度(×2、×3和×4),本文分别训练独立的模型。将本文方法与SRCNN[1]方法、SRGAN[4]方法、SRRRN[6]方法、SRMulti[9]方法分别在数据集Set5、Set14、B100和Urban100上进行对比,实验结果如表1-表4所示。可以看出,本文方法更加有效。
表1 本文方法和其他先进的方法在Set5数据集上的比较
表2 本文方法和其他先进的方法在Set14数据集上的比较
表3 本文方法和其他先进的方法在B100数据集上的比较
表4 本文方法和其他先进的方法在Urban100数据集上的比较
本文除了对提出的方法进行定量的比较,还进行了定性的比较,如图4所示,为了得到更好的视觉效果,对标出的长方形框内的区域进行放大。图4中第一列是原始的图像,第二至第五列分别为比较先进的超分辨率方法,最后一列是本文提出的方法。可以看出,本文提出的方法可以更好地恢复出细节,进而得到更加清晰的高分辨率图像。
(a) (b) (c) (d) (e) (f)图4 超分辨率的定性比较
4 结 语
本文提出了一种残差密集深度网络用于图像超分辨率,该方法充分利用了每一层的特征,得到了纹理等细节更清晰的超分辨率图像。在四个公共的数据集上进行了定量的实验,用常用的评价指标进行评价,实验结果表明,本文的方法更有效。此外,本文进行了定性的比较,通过直观的视觉观察可以看出,本文的方法相比其他相对先进的方法可以得到更加清晰的高分辨率图像。