APP下载

基于层次注意力的图像超分辨率重建

2021-11-14臧永盛周冬明王长城聂仁灿

无线电工程 2021年11期
关键词:残差尺度卷积

臧永盛,周冬明,王长城,聂仁灿

(云南大学 信息学院, 云南 昆明 650504)

0 引言

随着人们对图像要求的逐渐提高,如何获得高质量图像成为了一个严峻的挑战。单幅图像超分辨率(Single Image Super Resolution,SISR)重建技术正在解决这一问题,其目标是从一幅低分辨率(Low Resolution,LR)图像重建出一幅高分辨率(High Resolution,HR)图像。因此,SISR重建技术广泛应用于计算机视觉[1]、医学、视频和安全等各个领域。

基于插值[2]和基于重构[3-4]的传统算法简单有效,计算量小,但是重建后的图像存在边缘模糊、高频信息丢失的问题。基于深度学习的方法利用卷积神经网络自动提取特征的能力,把LR和HR图像之间看作一种映射关系,有效地恢复出了HR图像。VDSR[5],DRCNN[6]等算法通过残差学习思想,构建深达20层的网络模型来学习LR和HR图像之间的映射关系。SRGAN[7]利用生成对抗网络和感知损失函数生成的图像更自然逼真。EDSR[8]通过去除批量归一化网络层和使用ReLU作为激活函数,恢复出了更高质量的图像。RCAN[9]利用通道注意力机制差异性地对待同一层中的特征通道,使网络关注信息更丰富的通道,重建出的图像包含更多的纹理信息。尽管这些模型取都得了重大进展,却忽略了利用原始超分辨图像在卷积神经网络中的不同层次特征之间的相关性,重建后的图像往往在细节方面趋于平滑。

因此,针对上述问题提出了基于层次注意力的超分辨重建模型 (Hierarchical Attention Network,HAN),层次注意力可以不平等地对待网络中不同层次的中间特征,提高卷积神经网络的特征表示能力,获取更多的图像特征信息。实验结果表明,通过建立中间层次特征之间的相关性,重建后的图像能保留更多的高频细节信息。

1 本文方法

本文网络结构如图1所示。实验中提出的网络由4部分构成:浅层特征提取模块(Shallow Feature Extraction,SFE)、多尺度残差模块(Multi-scale Residual Block,MRB)、层次注意力模块(Hierarchical Attention Block,HAB)和重建模块(Reconstruction,RE)。网络的工作流程如下:首先,使用浅层特征提取模块对低分辨率图像进行通道变换并获得低频特征;接着,把低频特征输入至N个串联起来的多度残差模块中,以获得不同层次的中间特征和高频特征;最后,在层次注意力模块对不同层次的中间特征进行融合,然后再送入到重建模块中恢复出超分辨率图像。接下来对每一个模块进行详细描述。

图1 本文网络结构Fig.1 Structure of the proposed network

1.1 浅层特征提取模块

令ILR表示输入的LR图像,IHR表示输出的超分辨图像。为了获得浅层的特征信息,首先通过一个核大小为3×3,输入通道为3和输出通道为64的卷积层来提取浅层特征:

L0=HSFE(ILR)=δ(WSFE×ILR+BSFE),

(1)

式中,HSFE(.)表示卷积操作;WSFE表示滤波器权重项;BSFE表示偏置项;δ表示激活函数。在本文中激活函数使用的是ReLU函数,其数学表达式为:

δ(x)=max(0,x)。

(2)

1.2 多尺度残差模块

卷积神经网络中的卷积层能自动从训练过程中学习卷积核权重,以提取源图像的局部特征。因此,选择卷积核的大小对于特征提取来说是至关重要的。传统上,小尺寸的卷积核会提取短边或低频内容,但不能同时提取图像的高频细节或其他合适的细节。对于使用相同卷积核大小的卷积层,它使得卷积神经网络模型能变得更深,但同时使得模型的计算会变得更加复杂,训练变慢。在同一层中应用不同卷积核大小的卷积层,可以确保获取源图像的低频和高频细节。因此为了学习用一层不同尺度的图像特征和整个网络的高频特征,提出了MRB,如图2所示。

图2 多尺度残差模块Fig.2 Multi-scale residual block

MRB由3部分构成:多尺度特征融合、长跳连接和短跳连接。第n个多尺度残差模块表示为:

Ln=Hn(Ln-1),

(3)

式中,Hn表示第n个MRB的作用;Ln-1和Ln表示第n个MRB的输入和输出。与以往的实验不同,在多尺特征融合部分构建了一个双旁路网络,不同的旁路使用了不同的卷积核。众所周知,2个3×3卷积层串联的感受野相当于一个5×5卷积层的感受野,但是在输入通道数和输出通道数相等的情况下,3×3卷积层的参数量为18,而5×5卷积核的参数量为25。因此,为了进一步控制模型参数的大小,在保证模型的准确度和复杂度不变的条件下,本文用2个3×3卷积核串联代替一个5×5的卷积核。以这种方式,MRB能够提取出不同尺度的图像特征。此外,LR图像的输入中包含大量丰富的信息,可以通过长跳连接和短跳连接来绕过大量的低频信息,恢复更多有用的信息。Ln具体操作表示为:

(4)

(5)

(6)

(7)

(8)

(9)

Ln=Ln-1+w3×3*PS2,

(10)

式中,w和b分别表示权重和偏差,上标表示它们所位于的层数,而下标表示在该层中使用的卷积核的大小;δ代表ReLu函数;[S1,P1],[S2,P2]表示串联操作。在多尺度残差模块的第一层中,使用2个核大小分别为3×3,5×5,输入和输出通道数都是64的卷积层对输入特征进行卷积,它们分别卷积得到的特征图沿着通道维度进行串联运算,合并成通道数为128的特征图,接着使用核大小为1×1的卷积层进行通道数压缩,以保持通道数和输入特征一致。为了促进网络训练过程中的梯度流动,在模块的每层之后加入了短跳连接,在整个模块后加入了长跳连接。第二层结构和第一层结构类似,唯一不同的是在进行通道降维后,使用核大小为3×3的卷积层对前两层获得的多尺度信息进行融合。此外,在网络中没有使用池化层,因为池化层在缩小图像大小的同时,会忽略一些重要的图像细节,而这些细节对于之后的图像重建来说是必不可少的。

1.3 层次注意力模块

尽管不同等级的跳过连接可以绕过浅层信息,提升网络提取效率,但这些操作忽略了不同深度特征之间的相互依赖性,导致部分重要的图像信息被忽略。对此,实验中将每个MRB的输出特征输入进HAB来建立图像特征之间的依赖关系,并将不同层次的特征进行融合。HAB模块可以适应性地学习不同层次特征之间的关系,并为不同层次特征分配不同的关注权重,从而能提高网络的特征表示能力。HAB结构如图3所示。

图3 层次注意力模块Fig.3 Hierarchical attention block

模块的输入来源于不同深度的N个中间特征,即N个多尺度残差块的输出,它们一起构成维度为N×H×W×C的中间特征组(Feature Groups,FGS)。然后,通过变形操作将中间特征组变形为N×M(M=C×H×W)的二维矩阵FGr,并将它和对应的转置矩阵相乘,相乘的结果输入到softmax函数中计算不同层之间的相关性:

FGr=φ(FG),

(11)

W=φ(FGr·(FGr)T),

(12)

式中,φ(·)和φ(·)表示变形操作和softmax函数;W是一个维度为N×N的二维相关矩阵,表示不同层之间的相关指数。接着,将变形的特征组与相关矩阵相乘,相乘的结果表示不在公平地对待不同深度的特征,而是赋予了它们不同的权重。最后利用残差学习的思想,把经过变形特征组和输入的特征组相加得到模块的输出特征。总的来说,经过层次注意力模块后可以更充分利用不同层次的特征信息,有利于提高了卷积神经网络的特征表示能力,帮助网络恢复出更多的图像纹理细节。为了验证层次注意力模块的有效性,在实验过程中设置了消融实验,详情参见2.4节。

FLj=φ(W·FGr)+FG。

(13)

1.4 重建模块

单图像超分辨率的上采样操作方法主要分为3种:基于插值的、反卷积的和亚像素卷积[10]的。本文采用亚像素卷积作为上采样操作。具体重建过程为:首先使用亚像素卷积操作将上采样至目标倍数,然后通过一层3×3卷积得到映射,生成清晰的超分辨率图像。

LUP=HUP(LHFF),

(14)

IHR=HRE(LUP),

(15)

式中,HUP表示亚像素卷积操作;HRE表示3×3的卷积。

1.5 损失函数

图像超分辨率重建技术的目标是使重建后的超分辨图像和真实图像尽可能接近,在图像超分辨率重建领域常用均方差函数L2和平均绝对误差函数L1作为损失函数。其中均方差函数虽然可以使重建结果有较高的信噪比,但是容易出现缺少高频细节信息和过度平滑等问题。而L1函数除了可以有效防止重建图像由于过度平滑而导致的失真现象,还能有效实现更好的主观效果和客观评估性能。因此本文使用L1函数作为优化函数,则优化目标表示为:

(16)

2 实验结果与分析

2.1 数据集

整个实验中所采用的数据集是高质量(2K分辨率)数据集DIV2K[11],它已经被广泛应用于超分辨领域。该数据集包含800张训练图像、100张验证图像和100张测试图像。在本文模型训练过程中,使用数据集中的800张训练图像和5张验证图像来训练和验证模型;另外,使用了5个标准的基准数据集来测试重建模型,分别是Set5[12],Set14[13],B100[14],Urban100[15]和Manga109[16]。其中Set5和Set14分别包含5张和14张自然场景的图片,B100和Urban100分别包含100张自然场景图和城市场景图,Manga109由109幅漫画组成。这5个测试集包含了各个频段的图像细节,可以充分验证模型性能。此外,在进行网络训练之前,还需要对数据集进行图像预处理操作。对DIV2K中的800张训练图片分别进行了2倍,3倍和4倍双3次下采样降质处理之后,再作为网络的输入进行网络训练。

2.2 评价指标

为了与其他算法进行公平比较,采用峰值信噪比(Peak Signal-to-Noise Ratio,PSNR)和结构相似性(Structural Similarity Index,SSIM)这2个客观指标评价不同算法生成的超分辨率图像质量。PSNR主要根据误差敏感来评价重建图像的质量,如式(17)所示,其数值越大,重建图像质量越好。

(17)

式中,N表示图像大小;X表示原始HR图像;Y表示重建的超分辨图像。

SSIM通过比较2幅图像之间的相似性来评估图像的质量,因该评价指标更符合眼视觉系统,常常被用来评价重建后的超分辨率图像的质量。如式(18)所示,其数值越接近1,重建的超分辨率图像质量越好。

(18)

式中,x表示原始HR图像;y表示重建的超分辨图像;μx,μy分别表示2幅图像的灰度平均值;σx,σy分别表示2幅图像的方差;σxy是2幅图像的协方差;C1,C2是2个常数。和其他算法一样,仅在Y通道上进行PSNR和SSIM评价。

2.3 训练细节

为了使模型有足够的训练数据,本实验通过缩放、旋转和水平翻转这3种方式来扩充数据集,使训练数据增加到原来的8倍,从而网络模型有丰富的训练数据,同时还增加网络的鲁棒性,使网络可以适应更复杂的情况。在每个训练批次中,随机提取16个大小为64×64的LR色块作为网络的输入,并进行1 000次迭代反向传播。实验中采用ADAM optimizer作为优化器,其中设置β1=0.9,β2=0.999和ε=10-8。初始学习率设置为lr=0.000 1,然后每2×105重复反向传播减小一半。在最终模型中,使用24个多尺度残差块,每个MRB 的输出具有64个通道的特征图。根据实验需求,训练时采用深度学习框架Pytorch1.5实现网络模型,使用Cuda10.0对网络模型进行加速,测试时,使用Matlab R2018a进行指标评估。

2.4 消融实验分析

为了研究局部中的短跳残差连接以及层次注意力模块对模型影响,实验中引入了消融学习的思想。以尺度因子factor=4为例,在Set5数据集上进行比较以上模块对PSNR和SSIM平均值的影响,如表1所示。在表1中,√表示网络模型使用该模块,×表示没有使用该模块。从表中可以看出,在没有使用任何一个模块的情况下,PSNR值和SSIM值都是最低的,在增加短跳连接的条件下,PSNR值提高了0.17 dB,在增加层次融合特征模块的情况下,PSNR值提高了0.2 dB,而同时使用局部中的短跳连接和层次注意力模块的情况下,PSNR值提高了0.29 dB,由此证明了短跳连接和层次融合模块在网络模型中的有效性。

表1 在Set5中不同模块组成下的PSNR与SSIM平均值Tab.1 Average PSNR and SSIM for different module composition at Set5

2.5 实验比较

为了验证提出方法的有效性,将本文提出的重建算法与深度学习较先进的5种单图像超分辨率重建方法(SRCNN[17],VDSR,DRCN,FSRCN[18],LapSRN[19]以及传统的Bicubic图像重建算法)进行了对比。本文根据这些模型的具体实现,在相同的测试集上进行比较。表2和表3分别给出了在 Set5,Set14,BSD100,Urban100和Manga109这5个测试集上,不同方法分别扩大2倍,3倍,4倍的评估结果,把PSNR/SSIM值最好的结果用黑体加粗进行了标注。

表2 在Set5,Set14,Urban100,BSDS100,Manga109中不同算法的PSNR平均值Tab.2 Average PSNR for different algorithms at Set5,Set14,Urban100,BSDS100 and Manga109 单位:dB

从表2可以看出,本文提出的模型HAN在不同倍数、不同测试集上PSNR值都超越了其他6种算法,说明本文的网络性能相较优于其他几种算法。在上采样因子为2时,在Set5测试集上,本文提出的算法的PSNR值比LapSRN提高了0.69 dB,比SRCN增加了1.55 dB。在Manga109测试集上,本文算法比LapSRN提高了1.93 dB,比SRCN提高了3.6 dB。

表3 在Set5,Set14,Urban100,BSDS100,Manga109中不同算法的SSIM平均值Tab.3 Average SSIM for different algorithms at Set5,Set14,Urban100,BSDS100 and Manga109

从表3不难看出,提出的算法在不同倍数、不同测试集上SSIM值都高于其他6种算法,特别是当上采样为4,在Urban100测试集上,本文算法比LapSRN增加了0.044 5,比SRCNN提高了0.078 4。此外,对不同的算法结果在主观效果上进行了对比,所涉及的算法结果均通过使用作者公开的源代码以及文献中的参数训练得到。图4表示Set5测试集中名称为“baby”的图像扩大2倍后各超分率方法的重建结果,与其他算法相比,本文提出的超分辨率重建算法重建结果主观视觉表现优异,将测试集小孩眼睛进行局部放大并置于各重建结果左下方进行对比,本文方法可以清楚地观察到睫毛包含更多的纹理和结构细节。

(a) HR

(b) Bicubic

(c) SRCNN

(d) VDSR

(e) DRCN

(f) FSRCNN

(g) LapSRN

(h) Ours图4 尺度因子为2时,不同视觉算法重建结果Fig.4 Reconstruction results of different vision algorithms when the scale factor is 2

图5表示Set14测试集上名称为“comic”的图像扩大3倍后各重建方法的可视化结果,同样对各重建结果局部放大进行对比,本文重建算法在帽子边缘部分表现的更加清晰。图6表示BSD100测试集中名称为“8 600”的图像经过扩大4倍后各重建结果,在对局部进行放大后,本文重建算法在瓷砖部分可以看到更清晰、更细腻的细节信息。

(a) HR

(b) Bicubic

(c) SRCNN

(d) VDSR

(e) DRCN

(f) FSRCNN

(g) LapSRN

(h) Ours图5 尺度因子3时,不同视觉算法重建结果Fig.5 Reconstruction results of different vision algorithms when the scale factor is 3

(a) HR

(b) Bicubic

(c) SRCNN

(d) VDSR

(e) DRCN

(f) FSRCNN

(g) LapSRN

(h) Ours图6 尺度因子为4时,不同视觉算法重建结果Fig.6 Reconstruction results of different vision algorithms when the scale factor is 4

经过本文算法和其他算法分别在尺度因子为2,3,4下的重建主观效果对比,本文重建出的图像包含更多高频信息,恢复出了更多细节信息,无论是纹理细节,还是线性细节和结构细节。因此,综合客观指标和主观指标2个方面,本文算法相较于其他主流超分辨率重建算法能够得到更好的重建效果。

3 结束语

本文提出了一种基于密集残差多尺度的超分辨重建模型。通过密集残差多尺度模块,既能自适应学习提取不同尺度的图像特征,又能绕过低频信息,使主网络专注于学习高频信息。同时层次注意力模块可以灵活地处理不同层次的特征,保留更多的图像细节信息。实验结果表明,通过该方法重建的图像拥有更丰富的图像细节,主观视觉优越。并且在客观指标评估方面相较其他方法有较大的提升。接下来将进一步研究不同层次特征之间的联系,以获得更理想的图像重建效果。

猜你喜欢

残差尺度卷积
基于双向GRU与残差拟合的车辆跟驰建模
基于3D-Winograd的快速卷积算法设计及FPGA实现
基于残差学习的自适应无人机目标跟踪算法
财产的五大尺度和五重应对
卷积神经网络的分析与设计
基于递归残差网络的图像超分辨率重建
从滤波器理解卷积
基于傅里叶域卷积表示的目标跟踪算法
宇宙的尺度
综合电离层残差和超宽巷探测和修复北斗周跳