近年来,使用深度卷积神经网络(CNN)的单图像超分辨率(SISR)方法取得了令人印象深刻的结果。由于深度网络的强大表示能力,许多以前的方法可以学习低分辨率(LR)图像补丁与其高分辨率(HR)版本之间的复杂非线性映射。然而,过度的卷积将限制超分辨率技术在低计算能力设备中的应用。此外,任何任意比例因子的超分辨率在实际应用中都是一个关键问题,这在以前的方法中没有得到很好的解决。为了解决这些问题,我们通过构建级联信息多蒸馏块(IMDB),提出了一个轻量级信息多蒸馏网络(IMDN),其中包含蒸馏和选择性融合部分。具体而言,提取模块逐步提取分层特征,融合模块根据候选特征的重要性对其进行聚合,并通过所提出的对比度感知通道注意机制对其进行评估。为了处理任何大小的真实图像,我们开发了一种自适应裁剪策略(ACS),以使用相同的训练有素的模型来超分辨率逐块图像块。大量实验表明,所提出的方法在视觉质量、内存占用和推理时间方面优于最先进的SR算法。代码位于https://github.com/Zheng222/IMDN
1 INTRODUCTION
单图像超分辨率(SISR)旨在从其低分辨率(LR)观察中重建高分辨率(HR)图像,这是固有的病态,因为许多HR图像可以被下采样为相同的LR图像。为了解决这个问题,已经提出了许多基于深度神经架构[7,9,23]的图像SR方法[11,12,25,27,36,38],并显示出突出的性能。Dong等人[4,5]首先开发了三层网络(SRCNN),以建立LR和HR之间的直接关系。然后,Wang等人[31]根据传统稀疏编码框架提出了一种神经网络,并进一步设计了渐进式上采样样式,以在大比例因子(例如,×4)下产生更好的SR结果。受用于ImageNet分类的VGG模型[23]的启发,Kim等人[12,13]首先将SR网络的深度推至20,他们的模型大大超过了SRCNN。这表明更深的模型对提高生成图像的质量具有指导意义。为了加速深度网络的训练,作者引入了具有高初始学习率的全局剩余学习。同时,他们还提出了一种深度递归卷积网络(DRCN),将递归学习应用于SR问题。这种方式可以显著减少模型参数。类似地,Tai等人提出了两种新的网络,一种是深度递归残差网络(DRRN)[24],另一种是持久内存网络(MemNet)[25]。前者主要利用递归学习来达到节省参数的目的。后一种模型解决了以前CNN架构中存在的长期依赖性问题,其方法是使用密集连接结构堆叠的多个存储块[9]。这两种算法在训练和测试阶段都需要很长的时间和巨大的图形内存消耗。主要原因是发送到这两个模型的输入是LR图像的插值版本,并且网络没有采用任何下采样操作。这个方案将带来巨大的计算成本。为了提高测试速度并缩短测试时间,Shi等人[22]首先在低维空间中执行了大多数映射,并设计了一个有效的子像素卷积,以在SR模型结束时对特征图的分辨率进行上采样。
为此,Dong等人提出了快速SRCNN(FSRCNN)[6],该方法采用了可学习的上采样层(转置卷积)来完成上采样后的SR。随后,Lai等人提出了拉普拉斯金字塔超分辨率网络(LapSRN)[14],以逐步重建更高分辨率的图像。一些其他工作,如MS LapSRN[15]和渐进式SR(ProSR)[29]也采用了这种渐进式上采样SR框架,并实现了相对较高的性能。EDSR[18]在SR性能方面取得了重大突破,赢得了NTIRE 2017的比赛[1,26]。作者删除了SRResNet[16]中一些不必要的模块(例如,批量标准化),以获得更好的结果。基于EDSR,Zhang等人将密集连接块[9,27]并入残差块[7],以构建残差密集网络(RDN)。很快,他们为非常深的模型开发了剩余注意力结构,并引入了渠道注意力机制[8],以形成非常深的剩余注意力网络(RCAN)[36]。最近,Zhang等人还将空间注意力(非局部模块)引入残差块,然后为各种图像恢复任务构建残差非局部注意力网络(RNAN)[37]。
这些算法的主要趋势是增加更多的卷积层,以提高PSNR和SSIM测量的性能[30]。结果,他们中的大多数人都受到了模型参数大、内存占用大、训练和测试速度慢的影响。例如,EDSR[18]具有约43M个参数,69个层,RDN[38]在128个层上实现了相当的性能,其具有约22M个参数。另一个典型的网络是RCAN[36],其深度可达400,但参数约为15.59M。然而,这些方法仍然不适用于资源受限的设备。对于移动设备,期望的实践应该是当可用存储器和推断时间被限制在一定范围内时,尽可能追求更高的SR性能。许多情况下,不仅需要性能,还需要高执行速度,例如视频应用程序、边缘设备和智能手机。因此,设计一个轻量级但有效的模型来满足这些需求是非常重要的。
这将导致在执行SR处理时花费大量的计算时间。为了解决这个问题,更好的方法是设计轻量级和高效的网络结构,避免使用递归范式。Ahn等人通过级联网络架构为移动场景开发了CARN-M[2],但其代价是PSNR大幅降低。Hui等人[11]提出了一种信息蒸馏网络(IDN)将前面提取的特征分为两部分,一部分被保留,另一部分被进一步处理。通过这种方式,IDN在中等大小下获得了良好的性能。但在性能方面仍有改进的空间。
影响推理速度的另一个因素是网络的深度。在测试阶段,上一层和下一层具有相关性。简单地说,进行当前层的计算必须等待上一次计算完成。但是可以并行处理每一层的多个卷积运算。因此,模型架构的深度是影响时间性能的重要因素。这一点将在第4节中进行验证。关于使用单个模型解决不同比例因子(×2,×3,×4)SR问题,先前的解决方案将图像预处理为所需大小,并使用完全卷积网络,无需任何下采样操作。这种方式将不可避免地导致计算量的大幅增加。为了解决上述问题,我们提出了一种轻量级信息多重蒸馏网络(IMDN),以更好地平衡性能和适用性。与大多数以前使用递归结构的小参数模型不同,我们精心设计了一个受[11]启发的信息多重蒸馏块(IMDB)。所提出的IMDB在粒度级别提取特征,保留部分信息,并在每个步骤(层)进一步处理其他特征,如图2所示。为了聚集所有步骤提取的特征,我们设计了一个对比度感知通道注意力层,专门与低级视觉任务相关,以增强收集的各种精细信息。具体来说,我们利用更多有用的特征(边缘、角落、纹理等)进行图像恢复。为了用单个模型处理任意比例因子的SR,我们需要将输入图像缩放到目标大小,然后使用所提出的自适应裁剪策略(见图4)来获得具有下采样层的轻量级SR模型的适当大小的图像块。
本文的贡献总结如下:
我们提出了一种用于快速准确图像超分辨率的轻量级信息多重蒸馏网络(IMDN)。由于我们的信息多重蒸馏区块(IMDB)具有对比度感知注意力(CCA)层,我们以适度的参数获得了竞争性结果(参见图6)
我们提出了自适应裁剪策略(ACS),它允许网络包括下采样操作(例如,步长为2的卷积层)来处理任意大小的图像。通过采用该方案,在处理不定放大SR的情况下,可以显著降低计算成本、内存占用和推理时间。
我们通过实验探索了影响实际推理时间的因素,并发现网络的深度与执行速度有关。它可以作为指导轻量级网络设计的指南。我们的模型在视觉质量、推理速度和记忆占用之间实现了极好的平衡
2 RELATED WORK
2.1 Single image super-resolution
随着深度学习的快速发展,许多基于卷积神经网络(CNN)的方法已成为SISR的主流。SR的开创性工作由Dong等人[4,5]提出,名为SRCNN。SRCNN在将LR图像输入网络之前,使用双三次插值对LR图像进行了放大,这将导致大量不必要的计算成本。为了解决这个问题,作者删除了这种预处理,并在网络末端放大了图像,以减少[6]中的计算。Lim等人[18]修改了SRResNet[16],以构建更深入和更广泛的残差网络,称为EDSR。凭借智能拓扑结构和大量可学习参数,EDSR显著提高了SR性能。Zhang等人[38]将信道关注[8]引入到残差块中,以进一步提升非常深的网络(超过400层,而不考虑信道关注模块的深度)。Liu[19]探讨了应用于图像恢复的非局部模块的有效性。类似地,Zhang等人[37]利用非局部注意力更好地指导主干分支中的特征提取,以达到更好的性能。最近,Li等人[17]开发了反馈机制,该机制通过高级表达来增强低级表达。对于轻量级网络,Hui等人[11]开发了信息蒸馏网络,以便通过当前特征图的分离处理更好地利用分层特征。Ahn[2]设计了一种在残余网络上实现级联机制以提高性能的架构。
2.2 Attention model
注意力模型旨在集中于特征中更有用的信息,已广泛应用于各种计算机视觉任务中。Hu等人[8]引入了挤压和激励(SE)块,该块以计算高效的方式对信道关系进行建模,并增强了网络的表示能力,显示了其在图像分类上的有效性。CBAM[32]修改了SE块,以利用空间和通道注意力。Wang等人[28]提出了非局部模块,通过计算特征图中每个空间点之间的相关矩阵来生成广泛关注图,然后关注图引导密集的上下文信息聚合。
3 METHOD
3.1 Framework
在本节中,我们详细描述了我们提出的信息多重蒸馏网络(IMDN),其图形描述如图1(a)所示。上采样器(见图1(b))包括一个具有3×s2输出通道的3×3卷积和一个亚像素卷积。给定输入LR图像ILR,其对应的目标HR图像IHR。超分辨率图像ISR可以通过以下方式生成:
我们首先通过一个3×3卷积对64个输出通道进行LR特征提取。然后,我们的网络的关键组件利用多个堆叠信息多蒸馏块(IMDB),并通过1×1卷积层将所有中间特征组装到融合。该方案称为中间信息收集(IIC),有利于保证所收集信息的完整性,并且可以通过增加很少的参数来进一步提高SR性能。最终的上采样器仅由一个可学习层和一个非参数操作(亚像素卷积)组成,以尽可能地保存参数。
3.2 Information multi-distillation block
如图2所示,我们的信息多重蒸馏块(IMDB)由渐进细化模块、对比度感知通道关注(CCA)层和用于减少特征通道数量的1×1卷积构成。整个街区采用剩余连接。该块的主要思想是像DenseNet[9]一样一点一点地提取有用的特征。然后,我们将详细介绍这些模块。
表1:PRM架构。这些列表示层、内核大小、步幅、输入通道和输出通道。符号C和L表示卷积层,Leaky ReLU(α=0.05)
3.2.1 逐步细化模块。如图2中的灰色框所示,渐进细化模块(PRM)首先采用3×3卷积层来提取多个后续蒸馏(细化)步骤的输入特征。对于每一步,我们对前面的特性采用通道分割操作,这将产生两部分特性。一部分被保留,另一部分被送入下一个计算单元。保留的部分可视为细化的特征。给定输入特征Fin,第n个IMDB中的这个过程可以描述为
3.2.2 Contrast-aware channel attention layer.
初始通道注意力用于图像分类任务,被称为挤压和激励(SE)模块。在高级领域,特征图的重要性取决于激活的高价值区域,因为这些区域有利于分类或检测。因此,使用全局平均/最大池来捕获这些高级或中级视野中的全局信息。尽管平均池确实可以提高PSNR值,但它缺少关于有利于增强图像细节(与SSIM相关)的结构、纹理和边缘的信息。如图3所示,对比度感知通道关注模块专门用于低级别视觉,例如图像超分辨率和增强。具体来说,我们用标准差和平均值的总和(评估特征图的对比度)来代替全局平均值池。让我们将X=[x1,…,xc,…,xc]表示为输入,其具有空间大小为H×W的C个特征图。因此,对比度信息值可以通过
3.3 Adaptive cropping strategy
自适应裁剪策略(ACS)特别适用于任意大小的超分辨率图像。同时,它还可以用一个模型处理任何比例因子的SR问题(见图5)。我们通过引入两个下采样层略微修改了原始IMDN,并构建了当前的IMDN_AS(任何尺度的IMDN)。这里,LR和HR图像具有相同的空间大小(高度和宽度)。为了处理高度和宽度不能被4整除的图像,我们首先将整个图像分成4部分,然后将它们输入到IMDN_AS中。如图4所示,我们可以通过ACS获得4个重叠的图像块。以左上角的第一个面片为例,我们给有关ACS的详细信息。此图像修补程序必须满足
4 EXPERIMENTS
4.1 Datasets and metrics
在我们的实验中,我们使用DIV2K数据集[1],该数据集包含800幅高质量RGB训练图像,并广泛用于图像恢复任务[18,36–38]。为了进行评估,我们使用了五个广泛使用的基准数据集:Set5[3]、Set14[33]、BSD100[20]、Urban100[10]和Manga109[21]。我们使用两个度量来评估超分辨率图像的性能,包括峰值信噪比(PSNR)和结构相似性指数(SSIM)[30]。利用现有工作[2,11,12,18,24,36,38],我们计算亮度通道(即,从RGB通道转换的YCbCr通道的Y通道)上的值。此外,对于任何/未知比例因子实验,我们使用来自NTIRE2019 Real Super Resolution Challenge1的RealSR数据集。这是一个真实的低分辨率和高分辨率成对图像的新数据集。训练数据由60个真实的低分辨率和高分辨率成对图像组成,验证数据包含20个LR-HR对。值得注意的是,LR和HR的大小相同。
4.2 Implementation details
为了获得LR DIV2K训练图像,我们在MATLAB R2017a中使用双三次插值,使用缩放因子(×2、×3和×4)对HR图像进行降尺度。作为我们模型的输入,从HR图像中随机裁剪大小为192×192的HR图像块,并将小批量大小设置为16。对于数据扩充,我们执行随机水平翻转和90度旋转。我们的模型由ADAM优化器训练,动量参数β1=0.9。初始学习率设置为2×10−4,每2×105次迭代减半。我们在IMDN和IMDN_AS中将IMDB的数量设置为6。我们应用PyTorch框架在桌面计算机上实现所提出的网络,该计算机具有4.2GHz Intel i77700K CPU、64G RAM和NVIDIA TITAN Xp GPU(12G内存)
4.3 Model analysis
在本小节中,我们研究了模型参数、IMDB的有效性、中间信息收集方案和自适应裁剪策略。
4.3.1 Model parameters.
为了构建轻量级SR模型,网络的参数至关重要。从表5中,我们可以观察到,与其他最先进的方法(如EDSR基线(CVPRW'17)、IDN(CVPR'18)、SRMDNF(CVPR'18)和CARN(ECCV'18))相比,我们的IMDN具有更少的参数,可以实现比较或更好的性能。我们还在图6中可视化了性能和模型大小之间的权衡分析。我们可以看到,我们的IMDN在性能和模型大小之间实现了更好的权衡
4.3.2 Ablation studies of CCA module and IIC scheme.
为了快速验证对比感知注意(CCA)模块和中间信息收集(IIC)方案的有效性,我们采用4个IMDB进行以下消融研究实验,名为IMDN_B4。当移除CCA模块和IIC方案时,IMDN_B4变为IMDN_basic_B4,如图7所示。从表2中,我们可以发现CCA模块仅通过增加2K参数(增加了0.4%)就可以提高性能(PSNR:+0.09dB,SSIM:+0.0012,对于×4 Manga109)。与CA模块相比的结果列于表3中。为了研究IMDB中PRM的效率,我们将其替换为三个级联的3×3卷积层(64个信道),并移除最后的1×1卷积(用于融合)。表2给出了比较结果。尽管该网络具有更多的参数(510K),但其性能远低于我们的IMDN_basic_B4(480K),尤其是在Urban100和Manga109数据集上。
4.3.3 Investigation of ACS
为了验证所提出的自适应裁剪策略(ACS)的效率,我们使用RealSR训练图像来训练VDSR[12]和我们的IMDN_AS。在RealSR RGB验证数据集上评估的结果如表4所示,可以容易地观察到所提出的IMDN_AS在图像质量、执行速度和占地面积方面实现了更好的性能。因此,它还表明所提出的ACS对于解决任何规模的SR问题都是有效的。
4.4 Comparison with state-of-the-arts
我们将IMDN与11种最先进的方法进行了比较:SRCNN[4]、FSRCNN[6]、VDSR[12]、DRCN[13]、LapSRN[14]、DRRN[24]、MemNet[25]、IDN[11]、EDSR基线[18]、SRMDNF[34]和CARN[2]。表5显示了×2、×3和×4 SR的定量比较。可以发现,我们的IMDN在大多数数据集上的表现优于其他比较方法,尤其是在×2的缩放因子下。图8显示了Set5和Urban100数据集上的×2、×3和×4视觉比较。对于Urban100的“img_67”图像,我们可以看到网格结构恢复得比其他图像好。这也证明了我们IMDN的有效性。
......