这篇文章结构比较简单,如果看过Swin-Transformer的话就没什么难点了。作者引入Swin-T结构应用于低级视觉任务,包括图像超分辨率重建、图像去噪、图像压缩伪影去除。SwinIR网络由一个浅层特征提取
模块、深层特征提取
模块、重建
模块构成。重建模块对不同的任务使用不同的结构。浅层特征提取就是一个3×3的卷积层。深层特征提取是k个RSTB块和一个卷积层加残差连接构成。每个RSTB(Res-Swin-Transformer-Block)由L个STL和一层卷积加残差连接构成。
原文链接:SwinIR: Image Restoration Using Swin Transformer
源码地址:https://github.com/JingyunLiang/SwinIR
图像超分问题最先进的方法是基于卷积神经网络的,很少有人尝试使用Transformer。Transformer在高级视觉任务中已经表现出令人印象深刻的性能。因此作者在本文引入了Transformer,提出了一种基于Swin-T的图像恢复模型SwinIR。SwinIR由三部分组成:浅层特征提取、深层特征提取和高质量图像重建。具体而言,深度特征提取模块由几个带残差连接的Swin Transformer块(RSTB)组成,每个块都有几个Swin Transformer层和一个残差连接。在三个具有代表性的任务上进行了实验:图像超分辨率(包括经典、轻型和真实世界的图像超分辨率)、图像去噪(包括灰度和彩色图像去噪)和JPEG压缩伪影去除。实验结果表明,在不同的任务上,SwinIR的性能比最先进的方法高出0.14个百分点∼0.45dB,而参数总数最多可减少67%。
基于CNN的方法通常会遇到两个基本问题,这两个问题源于其基本构造块,即卷积层。
作为CNN的替代方案,Transformer基于一种自注意力机制,以捕捉上下文之间的全局交互。用于图像恢复的视觉变换器ViT这种通常将输入图像分割成大小固定的小块,并独立处理每个小块。这种策略不可避免地会带来两个缺点。
边界伪影
。边界像素会丢失信息
。Swin Transformer结合了CNN和Transformer的优点。
本文提出了一种基于Swin-T的图像恢复模型SwinIR。更具体地说,SwinIR由三个模块组成:浅特征提取、深特征提取和高质量图像重建模块。浅层特征提取模块使用卷积层提取浅层特征,并通过长跳跃连接将其直接传输到重构模块,以保留低频信息。深度特征提取模块主要由带有残差连接的Swin Transformer块(RSTB)组成,每个块利用多个Swin Transformer层进行局部注意力计算和跨窗口交互。每个RSTB块的末尾添加了一个卷积层以增强特征,并使用残差连接为特征聚合提供快捷方式。最后,在重建模块中融合了浅层和深层特征,实现了高质量的图像重建。
与基于CNN的图像恢复模型相比,基于Transformer的SwinIR有几个优点:
SwinIR由三个模块组成:浅特征提取、深特征提取和高质量(HQ)图像重建模块。对所有恢复任务使用相同的特征提取模块,但对不同的任务使用不同的重建模块。
SwinIR由三个模块组成:浅层特征提取、深层特征提取和高质量(HQ)图像重建模块。对所有恢复任务使用相同的特征提取模块,但对不同的任务使用不同的重建模块。输入图像为 I L Q I_{LQ} ILQ
浅层特征提取:
使用一个3×3卷积层 H S F ( ⋅ ) H_{SF}(·) HSF(⋅)来提取浅层特征 F 0 F_0 F0。卷积层在早期视觉处理方面很好,能引导网络更稳定的优化和更好的结果,更简单的将输入图像空间映射到更高维特征空间。
深层特征提取:
H D F ( ⋅ ) H_{DF}(·) HDF(⋅)代表深度特征提取模块的算子,包含K个Swin-T块(RSTB)和一个3×3卷积层,最后用残差连接。 H R S T B i ( ⋅ ) H_{RSTB_i}(·) HRSTBi(⋅)表示第i个RSTB, H C O N V H_{CONV} HCONV是最后一个卷积层。每个块的输出F1,F2,…,FK和输出深度特征 F D F F_{DF} FDF按如下方式逐块提取:
在特征提取的最后使用一个卷积层可以将卷积运算的归纳偏置引入Transformer网络,为以后浅层和深层特征的聚合奠定更好的基础。
图像重建模块:
①图像超分:
通过聚集浅层和深层特征来重建高质量的图像 I R H Q I_{RHQ} IRHQ, H R E C ( ⋅ ) H_{REC}(·) HREC(⋅)是重建模块的功能。浅层特征主要包含低频,而深层特征则侧重于恢复丢失的高频。通过长跳跃连接,SwinIR可以将低频信息直接传输到重建模块,从而帮助深层特征提取模块聚焦高频信息,稳定训练。对于重建模块的实现,使用亚像素卷积层对特征进行上采样。
②图像去噪和JPEG压缩伪影去除
对于不需要上采样的任务,使用单个卷积层进行重建。此外,额外使用一个残差学习来重建LQ和HQ图像之间的残差,而不是HQ图像。 H S w i n I R ( ⋅ ) H_{SwinIR}(·) HSwinIR(⋅)表示SwinIR的功能。公式是:
具体来说就是: I R H Q = H C O N V ( F 0 + F D F ) + I L Q I_{RHQ}=H_{CONV}(F_0+F_{DF})+I_{LQ} IRHQ=HCONV(F0+FDF)+ILQ
LOSS:
①超分任务:L1loss
对于典型和轻量级的图像超分,只使用简单的L1像素损失。对于真实世界的图像SR,结合使用像素损失、GAN损失和感知损失来提高视觉质量。
② 图像去噪和JPEG压缩伪影去除:Charbonnier loss
ϵ ϵ ϵ 是一个常数,根据经验设置为 1 0 − 3 10^{−3} 10−3。
残差Swin Transformer block(RSTB)是由L个Swin Transformer层和1个卷积层加残差连接构成的。给定第i个RSTB的输入特征 F i , 0 F_{i,0} Fi,0,中间特征 F i , 1 , F i , 2 , . . . , F i , L F_{i,1},F_{i,2},...,F_{i,L} Fi,1,Fi,2,...,Fi,L, H S w i n i , j ( ⋅ ) H_{Swin_{i,j}} (·) HSwini,j(⋅)s 第 i i i个RSTB中的第 j j j个Swin-T层。公式表示为:
最后,在残差连接之前添加一个卷积层。第 i i i个RSTB的输出公式如下:
这种设计有两个好处:
(看过Swin-T的话,这个层就是单纯的Swin-T的使用。)
Swin Transformer layer(STL)来自于原始Transformer layer的标准多头自注意力的变体。详细介绍可以看这篇Swin Transformer。主要不同点在于在局部窗口内计算注意力和移动窗口的划分机制。
Swin Transformer首先通过将输入图像进行patch划分,每个patch作为一个token。再在patch的基础上划分为不重叠的M×M局部窗口,在窗口路内分别计算每个patch和其他patch的注意力,h个头。注意力模块后接多层感知器(MLP)进行进一步的特征变换,该感知器具有两个全连接层,层之间具有GELU激活函数。在MSA和MLP之前添加LayerNorm(LN)层,两个模块都使用残差连接,如上图2(b)就是一个标准的Swin-T Block。在连续的Swin-T Block间交替使用常规和移位窗口分区来启用跨窗口连接。
setting:
RSTB数K = 6 (轻量级图像SR,RSTB数 K= 4)
STL数L = 6
窗口大小M = 8 (减少JPEG压缩伪影,窗口大小M = 7)
通道数C = 180 (轻量级图像SR,通道数C = 60)
注意头数h = 6
自集成策略用“+”表示
在DIV2K上训练SwinIR获得经典图像SR(×2),并在Manga109上进行测试。
①通道数、RSTB数和STL数的影响:
图3中(a)、(b)和(c)展示了RSTB中通道数、RSTB数和STL数对模型性能的影响。可以看到到峰值信噪比与这三个超参数正相关。虽然对于大通道数,性能会不断提高,但参数总数会以二次方的方式增长。为了平衡性能和模型尺寸,在接下来的实验中选择180作为通道数。对于RSTB数和STL层数,性能增益逐渐趋于饱和,选择参数均为6,以获得一个相对较小的模型。
②patch大小和训练图像数量的影响;模型收敛性比较。
SwinIR与一个具有代表性的基于CNN的模型RCAN进行比较,以探索基于Transformer的模型和基于CNN的模型的差异。
③RSTB中残差连接和卷积层的影响:
表1显示了RSTB中的四种残差连接变体:无残差连接、使用1×1卷积层、使用3×3卷积层和使用三个3×3卷积层(中间层的通道数设置为网络通道数的四分之一)。
Classical image SR:
表2显示了SwinIR(中等规模)和最先进方法的定量比较。
Lightweight image SR:
还进行了SwinIR(小尺寸)与最先进的轻型图像SR方法的比较。除了PSNR和SSIM,还计算了参数总数和乘法累加运算(在1280×720 HQ图像上评估),以比较不同模型的模型大小和计算复杂度。如表3所示,在不同的基准数据集上,SwinIR比竞争方法的PSNR优势高达0.53dB,具有相似的参数总数和多次累积操作。这表明SwinIR体系结构是高效的。
Real-world image SR:
图像SR的最终目标是用于实际应用。Zhang等人为真实世界的图像SR提出了一个实用的退化模型BSRGAN,并在现实场景中取得了令人惊讶的结果。为了测试SwinIR在现实世界SR中的性能,使用与BSRGAN相同的退化模型对SwinIR进行了重新训练,用于低质量的图像合成,并在现实世界SR基准数据集RealSRSet上进行了测试。由于没有真实的高质量图像,只提供与代表性的双三次模型ESRGAN和最先进的现实世界图像SR模型FSSR、RealSR和BSRGAN的视觉比较。如图5所示,SwinIR生成的图像具有清晰锐利的边缘,视觉上令人愉悦,而其他比较方法可能存在不令人满意的伪影。
这两部分的实验就不详述了
总的来说这篇文章结构比较简单,是对Swin-T的下游任务应用。基于Swin-T的提出的图像恢复模型SwinIR。
该模型由三部分组成:浅层特征提取、深层特征提取和HR重构模块。
使用一堆残差结构的Swin Transformer块(RSTB)进行深度特征提取,每个RSTB由Swin Transformer层、卷积层和残差连接组成。
最主要是学习Swin-T的部分,可以看详细解说:Swin-Transformer。看懂Swin-T,这篇就是一个很常规的结构。
实验证明,SwinIR在经典图像SR、轻量化图像SR、真实图像SR、灰度图像去噪、彩色图像去噪和JPEG压缩伪影去除等三种典型图像恢复任务都取得了最先进的性能,这证明了该算法的有效性和通用性。在未来,作者还将继续把该模型扩展到其他恢复任务,如图像去模糊和去模糊。
最后祝各位科研顺利,身体健康,万事胜意~