ESRT: Transformer for Single Image Super-Resolution

文章提出了ESRT,一种用于SISR的混合CNN+Transformer模型,旨在解决传统Transformer在GPU内存占用和计算成本高的问题。ESRT包含轻量级CNN主干(LCB)和轻量级Transformer主干(LTB),能以较低的计算成本提取深度特征并捕获长期依赖性。实验表明,ESRT在性能和效率之间找到了良好平衡,且比原Transformer占用更少的GPU内存。
摘要由CSDN通过智能技术生成

随着深度学习的发展,单图像超分辨率(SISR)已经取得了巨大的进步。然而,大多数现有的研究集中于构建具有大量层的更复杂的网络。最近,越来越多的研究人员开始探索Transformer在计算机视觉任务中的应用。然而,视觉转换器的沉重计算成本和高GPU内存占用是不能忽视的。在本文中,我们提出了一种用于SISR的新型高效超分辨率变压器(ESRT)。ESRT是一种混合模型,由一个轻量级CNN主干(LCB)和一个轻量级变压器主干(LTB)组成。其中,LCB可以动态调整特征图的大小,以低计算成本提取深度特征。LTB由一系列高效变压器(ET)组成,由于特别设计的高效多头注意力(EMHA),它占用了很小的GPU内存。大量实验表明,ESRT以较低的计算成本获得了有竞争力的结果。与占用16057M GPU内存的原始Transformer相比,ESRT仅占用4191M GPU内存。

1. Introduction

单图像超分辨率(SISR)旨在从退化的低分辨率(LR)图像中恢复超分辨率(SR)图像,这是克服许多应用中分辨率限制的有用技术。然而,由于存在无限的HR图像,这仍然是一个不适定的问题。为了解决这个问题,已经提出了许多深度神经网络[10,13,18,21,22,26,39,40,45]。尽管这些方法已经取得了卓越的性能,但由于计算成本和存储成本高,它们无法在实际应用中轻易使用。为了解决这个问题,已经提出了许多递归网络和轻量级网络,例如DRCN[19]、SRRFN[23]、IMDN[16]、IDN[17]、CARN[2]、ASSLN[46]、MAFFSRN[31]和RFDN[27]。所有这些模型都致力于构建更高效的网络结构,但网络容量的降低将导致性能下降。如图1所示,具有相同颜色的框的内部区域彼此相似。因此,这些相似的图像块可以用作彼此的参考图像,从而可以使用参考块来恢复特定块的纹理细节。受此启发,我们将Transformer引入SISR任务,因为它具有强大的特征表达能力,可以对图像中的长期依赖性进行建模。换句话说,我们的目标是探索在轻量级SISR任务中使用Transformer的可行性。近年来,一些视觉转换器[11,28]被提出用于计算机视觉任务。然而,这些方法经常占用繁重的GPU内存,这极大地限制了它们的灵活性和应用场景。此外,这些方法不能直接转移到SISR,因为图像恢复任务通常需要更大分辨率的图像作为输入,这将占用巨大的内存。

 为了解决上述问题,提出了一种高效超分辨率转换器(ESRT),以增强SISR网络捕获远距离上下文依赖性的能力,同时显著降低GPU内存成本。值得注意的是,ESRT是一种混合架构,它使用“CNN+Transformer”模式以处理小SR数据集。具体来说,ESRT可以分为两部分:轻量级CNN骨干(LCB)和轻量级变压器骨干(LTB)。对于LCB,我们更多地考虑减少中间层的特征图形状,并保持较深的网络深度以确保较大的网络容量。受高通滤波器的启发,我们设计了一个高频滤波模块(HFM)来捕捉图像的纹理细节。在HFM的帮助下,提出了一种高保留块(HPB),通过尺寸变化有效地提取潜在特征。对于特征提取,提出了一种强大的自适应残差特征块(ARFB)作为基本特征提取单元,该单元能够自适应地调整残差路径和身份路径的权重。在LTB中,提出了一种高效的转换器(ET),它使用专门设计的高效多头注意力(EMHA)机制来降低GPU内存消耗。值得注意的是,EMHA仅考虑局部区域中图像块之间的关系,因为SR图像中的像素通常与其相邻像素相关。尽管它是一个局部区域,但它比常规卷积要宽得多,可以提取更多有用的上下文信息。因此,ESRT可以有效地学习相似局部块之间的关系,使超分辨区域具有更多的参考。主要贡献如下:

我们提出了一种轻量级CNN主干(LCB),它使用高保留块(HPB)来动态调整特征图的大小,以低计算成本提取深度特征。

我们提出了一种轻量级Transformer主干(LTB),以借助于专门设计的高效Transformer(ET)和高效多头注意力(EMHA)机制来捕获图像中类似补丁之间的长期依赖关系

提出了一种称为高效SR变换器(ESRT)的新模型,以有效地增强图像中相似面片的特征表达能力和长期相关性,从而以低计算成本实现更好的性能.

2. Related Works
2.1. CNN-based SISR Models

最近,针对SISR提出了许多CNN基础模型。例如,SRCNN[10]首先将深度CNN引入SISR,并取得了有希望的结果。EDSR[26]通过删除不必要的操作和扩展模型大小来优化残差块。RCAN[44]提出了一种具有residual-in-residual 结构和信道注意机制的深度残余网络。SAN[9]提出了一种二阶注意力网络,以增强特征表达和特征相关性学习。IDN[17]通过使用组卷积并结合短期和长期特征来压缩模型大小。IMDN[16]改进了IDN的体系结构,并引入了信息多重蒸馏块,以有效地提取分层特征。LatticeNet[29]设计了模拟蝴蝶结构快速傅里叶变换实现的晶格块。尽管这些模型取得了竞争性的结果,但它们都是纯粹基于CNN的模型。这意味着它们只能提取局部特征,无法学习全局信息,这不利于纹理细节的恢复。

2.2. Vision Transformer

Transformer在NLP中的突破引起了计算机视觉界的极大兴趣。Transformer的关键思想是“自我关注”,它可以捕获序列元素之间的长期信息。通过将Transformer应用于视觉任务,它已成功应用于图像识别[11,24,36]、对象检测[7,47]和低级别图像处理[8,41]。其中,ViT[11]是第一个用Transformer代替标准卷积的作品。为了生成序列元素,ViT将2D图像块展平为矢量,并将其输入Transformer。IPT[8]使用一种新颖的基于Transformer的网络作为低级别图像恢复任务的预训练模型。SwinIR[25]将Swin Transformer[28]引入SISR,并展示了Transformer在SISR中的巨大前景。尽管这些方法取得了很有希望的结果,但它们需要大量的训练数据,并且需要大量的GPU内存来训练模型,这不适合实际应用。因此,我们的目标是探索一种更有效的SISR视觉转换器。

3. Efficient Super-Resolution Transformer

 如图2所示,高效超分辨率变换器(ESRT)主要由四个部分组成:浅层特征提取、轻量级CNN主干(LCB)、轻量级变换器主干(LTB)和图像重建。将ILR和ISR分别定义为ESRT的输入和输出。首先,我们使用卷积层从ILR中提取浅层特征......

3.1. Lightweight CNN Backbone (LCB)

轻量级CNN主干(LCB)的作用是提前提取潜在的SR特征,从而使模型具有超分辨率的初始能力。根据图2,我们可以观察到LCB主要由一系列高保真块(HPB)组成。

High Preserving Block (HPB).

以前的SR网络通常在处理过程中保持特征图的空间分辨率不变。在这项工作中,为了降低计算成本,提出了一种新的高保真块(HPB)来降低处理特征的分辨率。然而,特征图尺寸的减小总是导致图像细节的丢失,这导致视觉上不自然的SR图像。为了解决这个问题,在HPB中,我们创造性地保留了高频滤波模块(HFM)和自适应残差特征块(ARFB)。

如图3所示,首先使用ARFB提取Fn−1作为HFM的输入特征。然后,使用HFM计算特征的高频信息(标记为Phigh)。在获得Phigh之后,我们减小了特征图的大小,以减少计算成本和特征冗余。下采样特征图表示为F 0 n−1。对于F0 n−1,使用几个ARFB来探索完成SR图像的潜在信息。值得注意的是,这些ARFB共享权重以减少参数。同时,单个ARFB用于处理Phigh以使特征空间与F 0 n−1对齐。在特征提取之后,通过双线性插值将F0 n−1上采样到原始大小。之后,我们将F0 n−1与P0high进行融合,以保留初始细节,并获得特征F00 n−1。此操作可以表示为

对于F 00 n−1,由于它由两个特征连接,因此使用1×1卷积层来减少信道数量。然后,使用频道关注模块[14]来突出显示具有高激活值的频道。最后,使用ARFB提取最终特征,并提出全局残差连接来将原始特征Fn−1添加到Fn。该操作的目标是从输入中学习剩余信息并稳定训练。

3.2. High-frequency Filtering Module (HFM)

由于傅里叶变换很难嵌入CNN,本文提出了一种可微HFM。HFM的目标是从LR空间估计图像的高频信息。如图4所示,假设输入特征图TL的大小为C×H×W

其中k表示池化层的内核大小,中间特征图TA的大小是C×H k×W k。TA中的每个值可以被视为TL的每个指定小区域的平均强度。之后,TA被上采样以获得大小为C×H×W的新张量TU。TU被视为与原始TL相比的平均平滑度信息的表达式。最后,TU被从TL中逐元素减去以获得高频信息。TL、TU和高频信息的视觉激活图也如图5所示。可以观察到,TU比TL更平滑,因为它是TL的平均信息。同时,高频信息在下采样之前保留了特征图的细节和边缘。因此,必须保存这些信息。

3.2.1 Adaptive Residual Feature Block (ARFB)

如ResNet[12]和VDSR[18]中所探讨的,当模型的深度增加时,残余架构可以减轻梯度消失问题,并增加模型的表示能力。受其启发,提出了一种自适应残差特征块(ARFB)作为基础特征提取块。如图6所示,ARFB包含两个残差单元(RU)和两个卷积层。为了节省内存和参数数量,RU由两个模块组成:缩减和扩展。对于减少,特征图的通道减少一半,并在扩展中恢复。同时,设计了具有自适应权重的残差缩放(RSA)来动态调整残差路径和身份路径的重要性。与固定残差缩放相比,RSA可以改进梯度流,并自动调整输入特征图的残差特征图的内容。假设xru是RU的输入,RU的过程可以公式化为:

3.3. Lightweight Transformer Backbone (LTB)

在SISR中,图像中的相似图像块可以用作彼此的参考图像,从而可以参考其他图像块来恢复当前图像块的纹理细节,这适合使用Transformer。然而,视觉变压器的先前变体通常需要高昂的GPU内存成本,这阻碍了变压器在视觉领域的发展。在本文中,我们提出了一种轻量级变压器主干(LTB)。LTB由专门设计的高效变压器(ET)组成,可以低计算成本捕捉长期依赖图像中的相似局部区域

3.3.1 Pre- and Post-processing for ET

标准Transformer将一维序列作为输入,学习序列的长距离依赖性。然而,对于视觉任务,输入总是二维图像。将二维图像转换为一维序列的常见方法是逐个对图像中的像素进行排序。然而,该方法将失去图像的唯一局部相关性,从而导致次优性能。在ViT[11]中,一维序列是通过非重叠块划分生成的,这意味着每个块之间没有像素重叠。根据我们的实验,这些预处理方法不适合SISR。因此,提出了一种处理特征图的新方法。

 如图7所示,我们使用展开技术将特征图分割成块,每个块被视为一个“单词”。具体而言,特征映射Fori∈RC×H×W被展开(通过k×k核)为一系列面片,即Fpi∈Rk2×C,i={1,…,N},其中N=H×W是面片的数量。这里,由于“展开”操作自动反映每个面片的位置信息,因此消除了每个面片的可学习位置嵌入。之后,这些补丁Fp被直接发送到ET。ET的输出具有与输入相同的形状,我们使用“折叠”操作来重建特征图。

3.3.2 Efficient Transformer (ET)

为了简单和高效,与ViT[11]一样,ET只使用标准Transformer的编码器结构。如图8所示,在ET的编码器中,有一个有效的多头注意力(EMHA)和一个MLP。同时,在每个块之前采用层归一化[4],并且在每个块之后也应用残余连接。假设输入嵌入是Ei,输出嵌入Eo可以通过

 Efficient Multi-Head Attention (EMHA). 

如图8所示,与原始MHA相比,EMHA中有几个修改,以使EMHA更高效,并占用更低的GPU内存成本[37]。假设输入嵌入Ei的形状为B×C×N。首先,使用减少层将信道数量减少一半(B×C1×N,C1=C2)。之后,采用线性层将特征图投影为三个元素:Q(查询)、K(键)和V(值)。正如在Transformer中使用的那样,我们线性地投影Q、K、V和m次以执行多头注意力。m是头的数量。接下来,三个元素的形状被重塑并排列为B×m×N×C1m。在原始MHA中,Q、K、V直接用于计算大规模矩阵乘法的自我注意,这需要巨大的内存。假设Q和K计算形状为B×m×N×N的自我关注矩阵。然后该矩阵计算形状为V的自我关注,第3和第4维度为N×N。

对于SISR,图像通常具有高分辨率,这导致N非常大,并且自关注矩阵的计算消耗了大量GPU内存成本和计算成本。为了解决这个问题,使用特征分割(FS)模块将Q、K和V分割为s个相等的分段,分割因子为s,因为超分辨率图像中的预测像素通常仅取决于LR中的局部相邻区域。

因此,最后一个自矩阵的第3和第4个维度为Ns×Ns,这可以显著降低计算和GPU内存成本。将这些段表示为Q1。。。,Qs,K1。。。,Ks和V1。。。,Vs.这些段的每个三元组分别应用标度点积注意(SDPA)操作。SDPA的结构也如图8所示,它只是省略了Mask操作,然后,SDPA的所有输出(O1,O2,…,Os)被连接在一起以生成整个输出特征O。最后,使用扩展层来恢复信道的数量。

4. Experiments
4.1. Datasets and Metrics

在这项工作中,我们使用DIV2K[35]作为训练数据集。为了进行评估,我们使用了五个基准数据集,包括Set5[5]、Set14[42]、BSD100[30]、Urban100[15]和Manga109[3]。同时,PSNR和SSIM用于评估重建SR图像的性能。

4.2. Implementation Details

培训设置。在训练期间,我们在每个历元中随机裁剪16个大小为48×48的LR图像块作为输入。随机水平翻转和90度旋转用于数据扩充。初始学习率设置为2×10−4,每200个时期降低一半。该模型由Adam优化器以等于0.9的动量训练。同时,使用L1损失,因为与L2损失相比,L1损失可以产生更清晰的图像。同时,我们使用PyTorch框架实现ESRT,并使用一个GTX1080Ti GPU培训ESRT大约需要两天。

Implements Details.

在ESRT中,我们将3×3设置为除Reduction模块外的所有卷积层的大小,Reduction模块的内核大小为1×1。除了两倍的融合层之外,每个卷积层具有32个信道。对于图像重建部分,遵循之前的大多数方法,我们使用PixelShuffle[32]将最后的粗糙特征升级为精细特征。HFP中的k设置为2,意味着特征图被缩小一半。同时,HPB的数量被设置为3,ARFB中的可学习权重的初始值被设置为1,并且LTB中的ET的数量被设为1以节省GPU内存。此外,ET中的分割因子s设置为4,ET的前处理和后处理中的k设置为3,EMHA中的头数m分别设置为8。

4.3. Comparisons with Advanced SISR Models

在表1中,我们将ESRT与其他高级SISR模型进行了比较。显然,我们的ESRT在所有规模因素下都取得了有竞争力的结果。可以看出,尽管EDSR基线的性能接近ESRT,但其参数几乎是ESRT的两倍。同时,MAFFSRN和LatticeNet的数量接近ESRT,但ESRT的结果优于它们。此外,我们可以观察到,我们的ESRT在Urban100上的表现比其他模型要好得多。这是因为在这个数据集的每个图像中都有许多相似的补丁。因此,ESRT中引入的LTB可以用于捕获这些相似图像补丁之间的长期相关性,并学习它们的相关性,从而获得更好的结果。

在图9中,我们还提供了ESRT和其他轻量级SISR模型在×2、×3和×4上的视觉比较。显然,ESRT重建的SR图像包含更精确的纹理细节,尤其是边缘和线条。值得注意的是,在×4尺度上,ESRT与其他SR模型之间的差距更为明显。这得益于所提出的高效变压器的有效性,它可以从其他明确领域了解更多信息。所有这些实验都验证了所提出的ESRT的有效性。

4.4. Comparison on Computational Cost

在表2中,我们对每个模型进行了更详细的比较。可以看出,ESRT可以实现163层,同时仍然实现了这些方法中第二少的FLOP(67.7G)。这得益于所提出的HPB和ARFB,它们可以有效地提取有用的特征并保留高频信息。同时,我们可以观察到,即使ESRT使用Transformer架构,执行时间也很短。与CARN和IMDN相比,增加的时间完全可以接受。此外,我们还在图10中可视化了模型参数数量和性能之间的权衡分析。显然,我们可以看到,我们的ERST在模型的大小和性能之间实现了很好的权衡

4.5. Network Investigations
4.5.1 Study of High Preserving Block (HPB)

 HPB是ESRT的重要组成部分,它不仅可以减小模型尺寸,而且可以保持模型的高性能。为了证明这一点,我们在表3中探讨了ESRT每个组成部分的有效性。根据案例1、2和3,我们可以观察到,引入的HFM和CA可以以几个参数为代价有效地提高模型性能。根据案例2和4,我们可以看到,如果RB用于表示ARFB,则PSNR结果仅增加0.01dB,但参数数量增加到972K。这意味着ARFB可以显著降低模型参数,同时保持优异的性能。所有这些结果充分说明了HPB中这些模块和机制的必要性和有效性。

4.5.2 Study of Efficient Transformer (ET)

 为了捕捉图像中类似局部区域的长期相关性,我们引入了Transformer,并提出了一种高效Transformer(ET)。在表4中,我们分析了使用和不使用Transformer的模型。可以看出,如果ESRT删除Transformer,模型性能将从32.18dB明显下降到31.96dB。这是因为引入的Transformer可以充分利用图像中类似图像块之间的关系。此外,我们将ET与表中的原始变压器[11]进行了比较。我们的模型(1ET)以更少的参数和GPU内存消耗(1/4)实现了更好的结果。该实验充分验证了所提出的ET的有效性。同时,我们还可以看到,当ET的数量增加时,模型性能将进一步提高。然而,值得注意的是,当ET数量增加时,模型参数和GPU内存也会增加。因此,为了在模型的大小和性能之间实现良好的平衡,最终ESRT中只使用一个ET。为了验证所提出的ET的有效性和通用性,我们还将ET引入RCAN[44]。值得注意的是,我们使用了RCAN的小版本(剩余组数设置为5),并在重建部分之前添加ET。根据表5,我们可以看到“RCAN/2+ET”模型的性能接近或甚至优于原始RCAN,但参数较少。这进一步证明了ET的有效性和通用性,它可以很容易地移植到任何现有的SISR模型中,以进一步提高模式的性能

4.6. Real Image Super-Resolution

为了进一步验证模型的有效性,我们还将ESRT与真实图像数据集上的一些经典轻量级SR模型进行了比较(RealSR[6])。根据表6,我们可以观察到ESRT比IMDN获得更好的结果。此外,ESRT实现了×4上的LK-KPN更好的性能,这是专门为真正的SR任务而设计的。该实验进一步验证了其在真实图像上的有效性。

4.7. Comparison with SwinIR

ESRT中的EMHA类似于SwinIR的Swin Transformer层[25]。然而,SwinIR使用滑动窗口来解决Transformer的高计算问题,而ESRT使用分割因子来减少GPU内存消耗。根据表7,与SwinIR相比,ESRT以更少的参数和GPU内存实现了接近的性能。值得注意的是,SwinIR使用了额外的数据集(Flickr2K[1])进行训练,这是进一步提高模型性能的关键。为了与IMDN等方法进行公平比较,我们在这项工作中没有使用这个外部数据集。

5. Conclusion

在这项工作中,我们提出了一种用于SISR的新型高效超分辨率变压器(ESRT)。ESRT首先利用轻量级CNN主干(LCB)提取深度特征,然后使用轻量级变压器主干(LTB)对图像中类似局部区域之间的长期相关性进行建模。在LCB中,我们提出了一种高保留块(HPB),以降低计算成本,并借助于专门设计的高频滤波模块(HFM)和自适应残差特征块(ARFB)保留高频信息。在LTB中,设计了一个高效转换器(ET),以在所提出的高效多头注意力(EMHA)的帮助下,以较低的GPU内存占用来增强特征表示能力。大量实验表明,ESRT在模型性能和计算成本之间实现了最佳平衡。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值