基于自适应级联的注意力网络的超分辨率重建
2022-08-30陈一鸣周登文
陈一鸣 周登文
单图像超分辨率(Single image super-resolution,SISR)[1]技术是一个经典的计算机视觉任务,旨在从一个低分辨率(Low-resolution,LR)图像生成对应的高分辨率(High-resolution,HR)图像,在医学成像、监控和遥感等领域有十分广泛的应用.SISR 是一个病态的逆问题,要重建逼真的HR 图像非常困难,因为一个LR 图像可与多个HR 图像对应,需要假定的先验知识,正则化原HR 图像解[2].
近年来,深度学习[3]技术显著改进了SISR 性能,并主导了当前SISR 技术的研究.Dong 等[4]提出了第1 个基于卷积神经网络的SISR 算法称为超分辨率卷积神经网络(Super-resolution convolutional neural network,SRCNN).SRCNN 只有3个卷积层,感受野较小.之后的SISR 方法的一个趋势是:逐步加深网络,从而获得更强的LR-HR 映射能力,同时拥有更大的感受野,能够融入更多的背景信息,改进了SISR 性能[5].然而加深网络也会带来一些问题:更大的网络(更深或更宽),会有更多的参数,需要更大的内存和更强的计算力,这阻碍了在资源受限的设备,如移动设备上的实际应用.当前已有一些引人注意的基于轻量级网络的SISR方法被提出.Kim 等[6]提出的深度递归卷积网络(Deeply-recursive convolutional network,DRCN)方法,使用深度递归的方法,在卷积层之间共享参数,在加深网络的同时,尽可能不增加网络参数量.Tai 等[7]提出的深度递归残差网络 (Deep recursive residual network,DRRN),也使用了深度递归的方法.与DRCN 的区别在于DRRN 在残差块之间共享参数,不仅显著地减少了参数量,而且性能也显著更好.Tai 等[8]也提出了深度持续记忆网络(Deep persistent memory network,MemNet)方法,使用记忆模块,并多次递归,既能控制参数量,也能更好地利用多层特征信息.Ahn 等[9]提出的级联残差网络(Cascading residual network,CARN)方法,使用级联残差的形式,重用不同层次的信息.Li 等[5]提出的轻量级超分辨率反馈网络 (Lightweight super-resolution feedback network,SRFBN-S)方法,使用循环神经网络结构,共享隐藏层的参数,并多次利用各个隐藏层的输出,从而改进了网络性能.
本文提出了一个新的轻量级SISR 模型,称为自适应级联的注意力网络(Adaptive cascading attention network,ACAN).与当前类似的尖端SISR 方法相比,ACAN 有更好的性能和参数量平衡.的主要贡献包括:1)提出了自适应级联的残差(Adaptive cascading residual,ACR)连接.残差块之间的连接权重,是在训练中学习的,能够自适应结合不同层次的特征信息,以利于特征重用.2)提出了局部像素级注意力(Local pixel-wise attention,LPA)模块.其对输入特征的每一个特征通道的空间位置赋予不同的权重,以关注更重要的特征信息,更好地重建高频信息.3)提出了多尺度全局自适应重建(Multi-scale global adaptive reconstruction,MGAR)模块,不同尺寸的卷积核处理不同层次的特征信息,并自适应地组合处理结果,以产生更好的重建图像.
1 相关工作
1.1 注意力机制
注意力机制在计算机视觉领域中已经引起了越来越多的关注[10-12].在图像分类问题中,Wang 等[11]设计了软掩模支路,同时探索特征在空间维度和通道维度上的关系.Hu 等[12]提出了轻量级的挤压和激励(Squeeze-and-excitation,SE)模块,在网络训练过程中探索特征通道之间的内在联系.在图像理解问题中,Li 等[13]提出了引导的注意推理网络,网络预测结果能够聚焦于感兴趣的区域.Liu 等[14]首次将注意力机制引入到SISR中,提出了全局的注意力产生网络,能够定位输出特征的高频信息,以改进SISR 性能.Zhang 等[15]提出的残差通道注意力网络 方法,使用通道注意力机制,能够选择携带信息丰富的特征通道.本文主要受Wang 等[11]和Liu 等[14]的启发,提出了局部像素级注意力模块.在像素级别上定位高频信息丰富的区域,以更好地利用特征.
1.2 上采样层
上采样层是SISR 重建中很重要的一个组成部分.早期基于深度学习的SISR 方法[4,8,16],一般先将LR 图像,用双三次插值到目标HR 图像的尺寸,再输入到网络模型.这有助于减轻学习难度,但大大增加了网络的计算量与参数量[17].目前常用的重建方法是直接输入原始的LR 图像[18-19],再将网络模型的输出上采样得到重建的HR 图像.文献[18]和文献[20]使用转置的卷积作为上采样层,文献[15]和文献[19]使用亚像素卷积进行上采样.这些单尺度上采样能缓解预上采样的弊端,但是,其同样存在难以充分利用网络模型产生的丰富的特征信息的问题.本文提出了一种多尺度全局自适应的上采样方式:针对不同的层次特征使用不同尺寸的卷积核,多尺度地利用网络模型产生的特征信息,并能够根据自适应参数,自适应选择不同层次特征的结合方式,以改进超分辨率的重建效果.
2 方法
本文ACAN 网络模型主要包括:浅层特征提取模块(Shallow features extract block,SFEB)、非线性映射模块(Non-linear mapping block,NLMB)、多尺度全局自适应重建模块和全局残差连接,如图1 所示.SFEB 是一个3×3 卷积层,提取输入LR 图像的浅层特征,并将提取的特征输入到NLMB 模块.本文使用的所有大小的卷积层的尾部都伴随着激活层,并且使用PReLU 作为所有激活层的激活函数,后文不再详细说明.受SRFBN[5]的启发,本文在NLMB中采用类似结构,并在层次特征提取模块(Hierarchical features extract block,HFEB)之间参数共享,以减少参数量.NLMB是HFEB 的多次递归,在SFEB 的基础上进一步进行深层特征的提取.HFEB 由2 个3×3 的卷积层和一个提取及掩模(Extract-and-mask,EM)模块组成.由于本文设计的ACR 连接,第1 个HFEB 的输入仅为SFEB 的输出,之后递归的每一次,HFEB的输入都包含两个部分:1)上一层HFEB 的输出;2)前面所有HFEB的输出与对应的自适应参数相乘后的和,并直接输入到当前HFEB 的EM 模块中.MGAR 模块则接收NLMB 所有输出重建残差图像;最后,全局残差连接产生双三次插值的LR图像,与残差图像相加之后即为重建的HR 图像.由于文献[21]已经指出L2 函数作为损失函数所谓缺点,所以本文使用L1 损失函数,如下式所示:
图1 自适应级联的注意力网络架构(ACAN)Fig.1 Adaptive cascading attention network architecture (ACAN)
第2.1~2.3 节详细介绍HFEB、EM 模块和MGAR模块.
2.1 层次特征提取模块(HFEB)
HFEB 的重要特征是:每个HFEB 的输入来源不同.由于信息在流动过程中会不断损耗,因此希望使用跳跃连接解决这个问题.为了有效地进行特征重用,同时考虑参数量的问题,最终搭建了自适应级联残差(ACR)连接,如图1 所示.ACR 连接结构上类似于级联连接,但本质上仍为残差连接,并通过自适应参数控制信息流动.由图1 可知,由于ACR 连接,除第1 个HFEB 的输入只接收SFEB的输出外,之后的每个HFEB 的输入都包括两个部分:1)上一层HFEB 的输出;2)前面所有HFEB的输出与对应的自适应参数相乘后的和.
在第t个HFEB 中,第1 部分输入(即第t-1个HFEB 的输出),先经过两个3×3 的卷积层,然后将输出乘上对应的自适应参数,并与第2 部分输入相加,再输入到其中的EM 模块进行高频信息的定位与提取.第t个HFEB 的表达式如下:
式中,fHFEB表示HFEB,分别为第t个HFEB 的第1 部分输入和第2 部分输入,为第t个HFEB 的输出.
2.2 提取及掩模(EM)模块
在每个HFEB 中,使用EM 模块选择和提取高频特征信息.EM 模块主要由特征预处理单元、特征提取模块和局部像素级注意力模块3 个部分组成,如图2 所示.
图2 提取及掩膜模块Fig.2 The extract and mask block
如前所述,第t个EM 模块的输入来自两部分:1)当前HFEB 中,经过两个3×3 卷积层的输出,乘上对应的自适应参数αt后的积;2)前面所有HFEB 的输出与对应的自适应参数相乘后的和.二者之和为当前EM 模块的输入.EM 模块的输入可表示如下:
为了缓解梯度消失的问题,在EM 模块外增加了局部残差连接.第t个HFEB 中EM 模块的输出可表示如下:
下面详细介绍EM 模块的各个组成部分.
2.2.1 特征预处理单元
为了初步选择信息更丰富的特征,先在EM 模块中,使用类似于Hu 等[12]提出的SE 模块,进行通道级的特征选择.为了加权各个特征通道,将SE 模块中的Sigmoid 门函数替换成Softmax 门函数.同时为了减少因Softmax 门函数引起的信息损失,增加了局部残差连接.修改的SE 模块,可表示如下:
式中,fSE*表示修改后的SE 模块,Isum_in和ISE*是EM 模块的输入和输出.
2.2.2 特征提取模块
修改后的SE 模块的输出ISE*,输入至特征提取模块,进行高频信息的提取,如图3 所示.
图3 特征提取模块Fig.3 Feature extracting block
Haris 等[22]已经证明了使用递归的上下采样进行特征提取的有效性.因此,也使用这种采样方式进行特征提取.输入特征ISE*,先通过4×4 的转置卷积层上采样得到,然后,经过6×6 的卷积层下采样得到,如下所示:
特征提取模块中,使用的两次转置卷积和两次卷积,都使用了参数共享.特征提取模块fup_down可表示如下:
2.2.3 局部像素级注意(LPA)模块
由于通道注意力机制只按通道携带的信息量多少进行选择,对于高频信息的定位可能不够准确.受Wang 等[11]和Liu 等[14]的启发,提出局部像素级注意(LPA)模块,进行像素级的高频信息定位.LPA模块如图4 所示,为了减小参数量,各卷积层的参数都是共享的.
图4 局部像素级注意力模块Fig.4 Local pixel-wise attention block
在压缩阶段,使用了2 个连续的3×3 卷积层-最大池化操作.最大池化下采样有助于扩大感受野和定位高频特征信息区域.压缩阶段可表示如下:
ISE*和Iexp分别是LPA 模块的输入特征和压缩阶段的输出特征.W0是卷积层的参数(省略偏差以简化符号),f↓表示最大池化的下采样.
在扩张阶段,设置与压缩阶段对称的2 个连续的上采样-3×3 卷积层,并使用双三次插值作为上采样方式.考虑到下采样会造成部分信息丢失,在扩张阶段和压缩阶段的对应位置处建立了跳跃连接,并且引入了可学习的自适应参数α,调节从压缩阶段连接到扩张阶段的特征信息.扩张阶段如下所示:
式中,Iext和Imask分别是扩张阶段的输入(即压缩阶段的输出Iexp再经过3×3 的卷积层之后的输出)和扩张阶段的输出,Imask同时也是LPA 模块的输出.I1和I2分别是压缩阶段第1 次和第2 次卷积层的输出,α1和α2是自适应参数.f↑是双三次插值上采样.
2.3 多尺度全局自适应重建(MGAR)模块
文献[4-9]大多是单尺度的重建,受MSRN[21]的启发,提出了多尺度重建的MGAR 模块,可以利用NLMB 中提取的层次特征,进一步改进SISR 重建性能.MGAR 模块与MSRN 中MSRB的区别在于:MGAR 模块是一个SISR 重建模块,多尺度利用之前的层次特征,重建残差图像;MSRB 是一个特征提取模块,仅处理前一个MSRB 输出的特征.
MGAR 模块如图5 所示.由于NLMB 中低层HFEB 的感受野较小,故在MGAR 模块中使用较大的卷积核与之对应,然后,逐渐减少卷积核的大小.考虑到参数量的约束,选取最大的卷积核尺寸为9,最小的卷积核尺寸为3.假定NLMB 中有T个HFEB,第t(1≤T≤8)个HFEB 的输出在MGAR 模块中对应的卷积核的尺寸计算为:
图5 多尺度全局自适应重建模块Fig.5 Multi-scale global adaptive reconstruction block
当T>8 时,由于此时网络已经有足够的深度,所以设置MGAR 模块中前8 层的卷积核大小与T=8时相同,之后的卷积核大小均设置为3.
MGAR 模块的每一个输入,与对应卷积核卷积后,再与一个可学习的自适应参数相乘,作为当前支路的输出.各个分支的和,经过亚像素卷积[19]上采样之后,作为MGAR 模块的最终输出.对输入的LR 图像进行双三次上采样后,与MGAR 模块的输出求和,得到重构的HR 图像,用公式表示如下:
式中,ISR是输出的HR 图像,ILR是输入的LR 图像,fMGAR和fup分别表示MGAR 模块和双三次插值的上采样.
3 实验细节
3.1 设置
本文实验保持与之前的研究文献设置相同.训练图像:DIV2k 数据集[23]中800 张高质量图像;测试图像:共同使用的Set5[24],Set14[25]、Urban100[26]、B100[27]和Manga109[28]测试集;验证图像:DIV2k 数据集中第801~810 张高质量图像;训练图像增扩:进行90、180、270 度旋转、水平翻转和随机裁剪.训练阶段:在RGB 颜色空间上进行训练,并且使用梯度裁剪策略稳定训练过程.测试阶段:所有彩色图像均转换到YCrCb 颜色空间,在亮度通道Y 上进行测试.每一个最小批训练输入:16 个48×48 的图像.使用Adam 优化器[29]训练网络,其中设置β1=0.9,β2=0.999,ϵ=10-8.初始学习率e=10-4,每经过200 个回合,学习率e衰减一半.使用NVIDIA GeForce RTX 2080Ti GPU (11GB 内存)和PyTorch 框架构建网络.
在NLMB 中,每个HFEB 的第1 个卷积层,输出通道数为128,其余卷积层的输出通道数均为64.ACR 连接中,所有自适应参数的初始值为0.2.在MGAR 模块中,所有的自适应参数初始化为 1/n,n是NLMB 中HFEB 的个数,并且每个卷积层的输入通道数为64,输出通道数为 3×r×r,此处的r代表放大因子.除网络模型深度对图像重建的影响的对比实验外,在其他所有实验中均设置n=8 个HFEB.使用测试图像进行客观定量比较,使用验证图像选择模型参数及相关结构.
3.2 模型分析
3.2.1 MGAR 模块中卷积核尺寸的选择
在MGAR 模块中,选择卷积核尺寸为9、7、5、3 的排列顺序,具体参见第2.3 节.下面分析不同排列顺序对重建结果的影响,MGAR 模块结构见图5.MGAR 模块的输入来自NLMB 的HFEB,浅层HFEB 的感受野较小,使用较大的卷积核,以提取更加全局的背景信息;深层HFEB 的感受野较大,使用较小的卷积核,防止提取不相关的背景信.在MGAR 模块中,每个卷积层的输出特征如图6 所示.浅层HFEB 输出的特征包含更多连续的高频信息,深层HFEB 输出的特征包含更多分散的高频信息.不同层次特征信息互补,可以增强HR图像的重建效果.
图6 非线性映射模块中每个HFEB 输出特征的可视化结果Fig.6 Visual results of each HFEB's output feature in non-linear mapping
下面设置4 组对比实验,进一步量化卷积核的排列顺序对重建结果的影响.4 组实验使用的卷积核尺寸分别是:第1 组为9、7、5、3;第2 组为3、5、7、9;第3 组均为3;第4 组均为9.实验结果如表1所示,由于第1 组实验合理设置了卷积核的尺寸,因此获得最好的重建效果.
表1 不同卷积核的排列顺序对重建效果的影响Table 1 Effect of convolution kernels with different order on reconstruction performance
3.2.2 不同层次特征对重建结果的影响
为分析NLMB 中不同层次特征对重建结果的影响,依次移除MGAR 模块中不同大小的卷积层,计算重建HR 图像的峰值信噪比(Peak signal-tonoise ratio,PSNR).计算结果如表2 所示,与越小卷积核对应的HFEB 产生的层次特征对重建结果影响更大,即更深层的HFEB 产生的层次特征,对重建结果的影响更大.
表2 不同层次特征对重建效果的影响Table 2 Impact of different hierarchical features on reconstruction performance
3.2.3 MGAR 模块的优势
下面分析MGAR 模块相比于普通单尺度重建模块的优势.由于使用了类似深度反向投影网络(Deep back-projection networks,DBPN)[22]方法的采样方式,所以在DBPN 上进行实验,并且用MGAR模块替换原有的单尺度重建模块.在DBPN 中设置T=6,假定原始DBPN 方法称为O-DBPN;用MGAR 模块替换后的DBPN 方法称为M-DBPN.重建结果如表3 所示,使用了MGAR 模块的DBPN方法,比原始DBPN 方法的重建性能更好.
表3 原始DBPN (O-DBPN)和使用MGAR 模块的DBPN (M-DBPN)的客观效果比较Table 3 Objective comparison between original DBPN(O-DBPN)and DBPN (M-DBPN)using MGAR module
3.2.4 LPA 模块的设计考虑
LPA 模块中未包含Sigmoid 门函数.为了解Sigmoid 门函数的作用,进行了LPA 模块末尾包含和不包含Sigmoid 门函数2 种情形实验.实验结果如表4 所示,带有Sigmoid 门函数的LPA模块性能要低一些.
表4 Sigmoid 门函数的有无对LPA 模块性能的影响Table 4 Influence of Sigmoid gate function to LPA block
LPA 模块另一个考虑的因素是:压缩阶段和扩张阶段对应位置的跳跃连接方式,具体参见第2.2.3 节.本文设计了3 个对比实验:实验1 是直接使用残差连接;实验2 是去掉残差连接;实验3 是带有自适应参数的残差连接. 实验结果如表5 所示,实验2比实验1 效果好一些,实验3 效果最好.说明直接引入压缩阶段的特征确实会影响LPA 模块对高频信息的定位,并且加入自适应参数能够很好地缓解这个问题.
表5 不同残差的连接方式对重建效果的影响Table 5 Effect of different residual connection methods on reconstruction performance
3.2.5 LPA 模块对重建结果的影响
为验证LPA 模块对重建效果的影响,进行以下两种情形的对比试验:在HFEB 的EM 模块中,包含和不包含LPA 模块.实验结果如表6 所示,可以看出有LPA 模块效果更好.说明LPA 模块确实对重建效果有帮助.
表6 使用和未使用LPA 模块的客观效果比较Table 6 Comparison of objective effects of ACAN with and without LPA module
3.2.6 ACR 连接对重建结果的影响
ACR 连接参见图1(a).为了观察ACR 连接的有效性,分别在NLMB 中使用ACR 连接、残差连接和级联连接进行对比实验,实验结果如表7所示.
从表7 可以看出,残差连接优于级联连接,ACR连接效果最好.由此可见,使用自适应的级联残差能更有利地进行特征重用,改进了SISR 的重建性能.
表7 NLMB 使用3 种不同连接方式对重建效果的影响Table 7 Impact of using three different connection methods on NLMB on reconstruction performance
3.3 网络模型深度选择
为了探索NLMB 中HFEB 的个数(表示为T),对于重建性能的影响.设置了4 组对比实验:在放大因子为2 的情况下,T=1,3,6,8,对应的训练曲线及测试曲线如图7 和图8 所示.可以看出,HFEB的多次级联有利于提高重建效果.
图7 包含不同个数的HFEB 的ACAN 在验证集上的性能比较Fig.7 Performance comparison of ACAN on validation set with different numbers of HFEB
图8 包含不同个数的HFEB 的ACAN 在Set5 测试集上的性能比较Fig.8 Performance comparison of ACAN on Set5 testing set with different number of HFEB
为了进一步精确T的选择,在放大因子为2 的情况下设置T=6,7,8,9 进行对比实验.由表8可以看出,T=8 是合理的选择.
表8 不同网络模型深度对重建性能的影响Table 8 Impact of different network depths on reconstruction performance
3.4 与当前先进的方法比较
本文ACAN 方法与高分辨率图像 (High resol-ution,HR)、双三次插值 (Bicubic interpolation,Bicubic)、SRCNN、LapSRN、SRFBN-S、CARN、FSRCNN、VDSR 和SRMDNF 9 个方法进行主观效果比较.
1)客观定量结果.本文ACAN 方法与SRCNN[4]、快速超分辨率卷积神经网络(Fast superresolution convolutional neural networks,FSRCNN)[18]、极深卷积神经网络(Very deep convolutional networks,VDSR)[16]、DRCN[6]、拉普拉斯金字塔超分辨率网络(Laplacian pyramid super-resolution network,LapSRN)[30]、DRRN[7]、MemNet[8]、用于多重无噪衰减的超分辨率网络(Super-resolu-tion network for multiple noise-free degradations,SRMDNF)[31]、CARN[9]和SRFBN-S[5]10 个当前类似的先进方法进行比较,同时采用自组方法[32],进一步提高ACAN 的性能(称为ACAN+).采用共同的客观度量标准:平均峰值信噪比(PSNR)和结构相似性(Structural similarity index,SSIM)[33],计算结果如表9 所示.最好结果与次好结果分别用加粗和下划线标出.ACAN+的平均PSNR 和SSIM度量显著优于其他方法,包括之前最好的方法CARN,而在×2 情况下参数量大约只有其一半.即使未使用自组方法,本文ACAN 方法也优于其他所有的方法.本文方法性能提升的原因主要有:ACR 连接、LPA 模块和MGAR 模块发挥了作用.LPA 模块能够更加精准地选择高频特征信息,MGAR 模块能够充分利用多尺度的特征信息,ACR 连接更有效地进行特征重用,这些因素导致了本文ACAN 方法性能的显著提高.
表9 各种SISR 方法的平均PSNR 值与SSIM 值Table 9 Average PSNR/SSIM of various SISR methods
2)主观效果比较:如图9 所示:第1 组图是Urban 100 数据集中的image 024 在 ×4 下的比较结果;第2 组图是Urban 100 数据集中的image 061 在 ×4 下的比较结果;第3 组图是Urban 100数据集中的img 092 在 ×4 下的比较结果.ACAN方法显著优于其他方法.以Urban 100 中的img 061 图像为例,在放大因子为4 的情况下,对于图中玻璃上难以恢复的网格细节,SRFBN-S、CARN和SRMDNF 方法都遭遇了严重的失真,SRCNN方法的重建图像遭遇到严重模糊.而ACANCAN几乎完美地恢复了原HR 图像中纹理和网格信息.在放大因子为4 的情况下,另外两个图像的结果也与img 061 图像的结果类似.本文方法之所以能够更好地重建纹理和网格信息,主要得益于ACR 连接、LPA 模块和MGAR 模块.ACR连接能够有效地重用特征;LPA 模块能够准确定位特征中的高频信息;MGAR 模块能够利用多尺度层次特征.因此,能够更好地恢复规则的形状和结构[34].由于Urban 100 数据集中,包含较多建筑物的规则结构[22],本文方法性能提升显著.如何进一步提升不规则的形状和结构重建效果,仍是有待研究和解决的问题.
图9 视觉比较结果Fig.9 Visual comparison of images
4 结束语
本文提出了一个新的轻量级单图像超分辨率方法,使用自适应级联的注意力网络(ACAN)能够高质量重建超分辨率图像.本文的局部像素级注意力(LPA)模块,通过对输入特征进行像素级的高频信息定位,加强了特征流动过程中对高频特征信息的选择能力;本文的多尺度全局自适应重建(MGAR)模块,使用不同尺寸的卷积核,能够自适应地选择和组合多尺度的特征信息;本文的自适应级联残差(ACR)连接,能够自适应地组合不同层次特征.充分的实验结果也验证了ACAN 方法的良好性能.