ESRT: 集轻量高效于一体的单图超分网络

在这里插入图片描述
Title: Transformer for Single Image Super-Resolution
PDF: https://arxiv.org/pdf/2108.11084
Code: https://github.com/luissen/ESRT
提示:涉及图片皆来源论文本身,论文解读个人理解


Abstract

随着深度学习的发展,单幅图像超分辨率(SISR)技术取得了长足的进步。近来越来越多的研究人员开始探索Transformer在计算机视觉任务中的应用。然而,Vision Transformer巨大的计算成本和高GPU内存占用问题阻碍了其脚步。在本文中,提出了一种用于SISR的新型高效超分辨率Transformer(ESRT)。ESRT是一种混合模型,由轻型CNN主干网(LCB)和轻型Transformer主干网(LTB)组成。其中,LCB可以动态调整特征图的大小,以较低的计算成本提取深层特征。LTB由一系列高效Transformer(ET)组成,使用专门设计的高效多头注意(EMHA),它占用的GPU内存很小。大量实验表明,ESRT以较低的计算成本获得了有竞争力的结果。与原始Transformer占用16057M GPU内存相比,ESRT仅占用4191M GPU内存。


一、Introduction?

因为在同一张图像中相似的图像patch可以用作彼此的参考图像,以便使用参考patch来恢复特定patch的纹理细节。受此启发,作者将Transformer引入到SISR任务中,因为Transformer具有很强的特征表达能力,可以在图像中建模这种长期依赖关系。目标是探索在轻量级SISR任务中使用Transformer的可行性。近来有一些Transformer已经被提出用于计算机视觉任务。然而,这些方法往往占用大量GPU内存,这极大地限制了它们的灵活性和应用场景。

为了解决上述问题,提出了一种高效的超分辨率Transformer(ESRT),以增强SISR网络捕获长距离上下文依赖的能力,同时显著降低GPU的内存成本。

ESRT是一种混合架构,使用“CNN+Transformer”模式来处理小型SR数据集。ESRT可分为两部分:轻型CNN主干网(LCB)和轻型Transformer主干网(LTB)。

1.对于LCB,更多地考虑减少中间层特征图的形状,并保持较深的网络深度,以确保较大的网络容量。受高通滤波器的启发,设计了一个高频滤波模块(HFM)来捕捉图像的纹理细节。在HFM的内,又提出了一种高保留块(HPB),通过大小变化有效地提取潜在特征。在特征提取方面,提出了一种功能强大的自适应残差特征块(ARFB)作为基本特征提取单元,能够自适应调整残差路径和路径的权重。
2.在LTB中,提出了一种
高效Transformer(ET)
,它使用专门设计的高效多头注意(EMHA)机制来降低GPU内存消耗。且只考虑局部区域中图像块之间的关系,因为SR图像中的像素通常与其相邻像素相关。尽管它是一个局部区域,但它比常规卷积要宽得多,可以提取更多有用的上下文信息。因此,ESRT可以有效地学习相似局部块之间的关系,使超分辨区域具有更多的参考。

主要贡献如下:

1.提出了一种轻量级的CNN主干(LCB),它使用高保留块(HPB)来动态调整特征图的大小,以较低的计算成本提取深层特征
2.提出了一种轻量级Transformer主干(LTB),利用专门设计的高效Transformer(ET)和高效多头注意(EMHA)机制,捕捉图像中类似patch之间的长期依赖关系
3.提出了一种称为高效SR Transformer(ESRT)的新模型,以有效地增强图像中相似patch的特征表达能力和长期依赖性,以较低的计算成本获得更好的性能。

二、Efficient Super-Resolution Transformer

高效超分辨率Transformer(ESRT)主要由四部分组成:浅层特征提取、轻型CNN主干(LCB)、轻型Transformer主干(LTB)和图像重建。
来之论文

1.框架解读

  1. 浅层特征提取:

    一个3×3卷积层
    在这里插入图片描述

  2. 轻型CNN主干(LCB):
    由多个高保留块High Preserving Blocks(HPBs)组成(实验中为3个),ζ^n是第n个HPB的输出Fn,公式:
    在这里插入图片描述
    轻量级CNN主干网(LCB)的作用是提前提取潜在的图像特征,使模型具有超分辨率的初始能力。LCB主要由一系列**高保留块(HPB)**组成。
    在这里插入图片描述

    HPB:

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

    先介绍HPB的整体结:由HFM和ARFB组成。再详细剖析HFM和ARFB的结构。

    整体结构: 前一个HPB的输出F_{n-1},作为当前HPB的输入。先经过一个ARFB用于提取F_{n-1}作为HFM的输入功能。然后,使用HFM计算特征的高频信息(标记为P_{high})。在获得P_{high}后,减小了特征映射的大小,以减少计算成本和特征冗余。下采样特征图表示为f’{n−1}、对于f’{n−1}使用多个共享权重的ARFB来探索SR图像的潜在信息(减少参数)。同时,使用单个ARFB处理P_{high}来对齐特征空间f’{n−1}f 。f’{n−1}在特征提取后通过双线性插值上采样到原始大小。拼接融合f’{n−1}和P’{high},得到f’‘{n−1},用于保留初始细节。得到f’'{n−1}的公式为:
    在这里插入图片描述
    其中,↑和↓代表上下采样; f_a代表ARFB的功能。为了平衡模型尺寸和性能,采用五个共享参数的ARFB。
    f’'{n−1}由两个特征拼接,因此先使用1×1卷积层来减少t通道数。然后,使用通道注意力来加大具有高激活值的频道权重。最后,使用ARFB提取最终特征,并提出全局残差连接来添加原始特征 F{n−1}至F_n。该操作的目的是从输入中学习残差信息并稳定训练。

    通道注意力模块引自Squeeze-and-excitation networks这篇文章,或者和RCAN中使用的CA模块是一样的。

    这篇文章实际上也是套娃残差结构,但在残差结构上进行了很多改进,比如说加入了自适应的Res scaling、高频滤波器,下采样循环卷积等等。
    HFM:High-frequency Filtering Module
    由于傅里叶变换很难嵌入到CNN中,本文提出了一种可微HFM。HFM的目标是从LR空间估计出图像的高频信息
    在这里插入图片描述
    如图4所示,假设输入特征映射T_L的大小为C×H×W,首先使用平均池化获得T_A:在这里插入图片描述
    其中k表示池化层的kernel大小,中间特征映射T_A的大小为C × H/ k × W /k 。T_A中的每个值都可以被视为指定的T_L小区域的平均强度。之后,对TA进行上采样,以获得尺寸为 C×H×W的新张量T_U。T_U是平均平滑度信息的表达式。最后,从T_L中按元素减去T_U以获得高频信息。
    T_L、T_U和高频信息的视觉激活图如图5所示。可以观察到,T_U比T_L更平滑,因为它是T_L的平均信息。同时,高频信息在下采样(平均池化)之前保留了特征图的细节和边缘。因此,保存这些信息至关重要。

ARFB:Adaptive Residual Feature Block
受ResNet和VDSR启发,当模型的深度增加时,残差结构可以缓解梯度消失问题,并增加模型的表示能力。于是提出了一种自适应残差特征块(ARFB)作为基本特征提取块。
在这里插入图片描述
ARFB包含两个残差单元(RU)和两个卷积层。为了节省内存和参数数量,RU由两个模块组成:缩减模块和扩展模块。对于缩减,将特征映射的通道减少一半,并在扩展中恢复。同时,设计了一种带自适应权值的残差缩放算法(RSA),动态调整残差路径权重。与固定Res scaling相比,RSA可以改善梯度的流动,并自动调整残差特征映射的内容,以用于输入特征映射。假设x_{ru}是RU的输入,RU的过程可以表示为:
在这里插入图片描述
其中y_{ru}是RU的输出,f_{re}f和f_{ex}表示缩减和扩展操作,λ_{res}和λ_x分别是两条路径的自适应权重。使用1×1卷积层来改变通道数,以实现缩减和扩展功能。同时,将两个RU的输出拼接后输入1×1卷积层,以充分利用层次特征。最后,采用3×3卷积层来减少特征映射的通道,并从融合后的特征中提取有效信息

LCB,CNN的部分就结束了,回顾一下:LCB由三个HPB构成。每个HPB由HFM和ARFB构成,结构中包含通道注意力和上下采用及五个共享参数的ARFB。全文贯穿了一个理念:减少参数。(ARFB共享参数、上下采样、缩减扩展层都是为了减少参数,体现轻量高效)。

  1. 轻型Transformer主干(LTB):
    每个HPB的输出拼接后送进LTB融合特征,LTB由多个Efficient Transformers (ETs)组成(实验中为1个),ϕ 代表的是ET的功能,F d 是LTB的输出,公式如下:
    在这里插入图片描述

  2. 图像重建:

最后F d和F0同时馈入重建模块,以获得重建图像Isr。f和f p 分别代表卷积层和亚像素卷积层,获得Isr的公式如下:
在这里插入图片描述
在SISR中,图像中的相似图像块可以用作彼此的参考图像,**因此可以参考其他图像块来恢复当前图像块的纹理细节,这非常适合使用Transformer。**然而,以前的vision Transformer变体通常需要大量的GPU内存,这阻碍了Transformer在vision领域的发展。在本文中,作者提出了一种轻型Transformer主干(LTB)。LTB由专门设计的高效Transformer(ETs)组成,可以以较低的计算成本捕获图像中相似局部区域的长期依赖性
在这里插入图片描述
前后的准备工作: 将feature map展成一维序列、将序列转回feature map

标准Transformer将一维序列作为输入,学习序列的长距离依赖关系。而对于视觉任务,输入始终是二维图像。

在ViT中,一维序列是通过非重叠块划分生成的,这意味着每个块之间没有像素重叠。作者认为这种预处理方法不适用于SISR。

因此,提出了一种新的特征映射处理方法。如图7所示,使用展开技术将特征地图分割成小块(其实就是用重叠的块来划分patch),每个小块都被视为一个“单词”。具体而言,feature map∈ R^{C×H×W} (通过k×k核)展开为一系列patch,即F_{pi}∈ R{k2×C},i={1,…,N},其中N=H×W是patch数量。关键部分就在于N的数量是H×W,意味着分割的时候每次k×k的kernel移动步长为1,每个patch之间有很大的重叠。而ViT和Swin-T都是以不重叠的块来划分,得到N数量为H /k × W/ k 。

作者说由于“unfold”操作会自动反映每个patch的位置信息,因此每个patch的可学习位置嵌入都会被消除(???这是咋消除的)。然后,这些patch直接送进ET。ET的输出与输入具有相同的形状,使用“fold”操作来重建特征图。

总结

ESRT的整体结构比较常规,深层特征提取联合使用了CNN和Transformer。LCB内使用了比较复杂的结构,推理速度比较慢,而ET中仅使用了一个Transformer的encoder结构并不会带入太大的计算量。后面实验也证明了加入ET能给网络带来增益。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值