大数跨境
0
0

CVPR 2024 | CAMixerSR:2K/8K/轻量级/全景图像超分又快又强!(字节&南开)

CVPR 2024 | CAMixerSR:2K/8K/轻量级/全景图像超分又快又强!(字节&南开) 极市平台
2024-03-30
0
↑ 点击蓝字 关注极市平台
作者丨AI生成未来
来源丨Yan Wang
编辑丨极市平台

极市导读

 

本文提出了一种内容感知混合器(CAMixer),通过根据内容复杂度调整不同复杂度的神经操作符(自注意力和卷积),从而整合了模型加速和token混合设计策略。 >>加入极市CV技术交流群,走在计算机视觉的最前沿

文章链接:https://arxiv.org/pdf/2402.19289

开源地址:https://github.com/icandle/CAMixerSR

为满足对大尺寸图像(2K-8K)超分辨率(SR)不断增长的需求,主流方法遵循两个独立的路径:

  • 通过内容感知路线加速现有网络
  • 通过token混合器改进设计更好的超分辨率网络。

尽管这些方法直接,但它们会遇到无法避免的缺陷(例如,不灵活的路线或非判别性处理),从而限制了进一步改善质量-复杂度权衡。为了消除这些缺点,本文将这些方案集成在一起,提出了内容感知混合器(CAMixer),它为简单的上下文分配卷积,为稀疏纹理提供额外的可变形窗口注意力。

具体而言,CAMixer使用可学习的预测器生成多个引导,包括用于窗口warping的偏移量,用于分类窗口的mask,以及用于赋予卷积动态属性的卷积注意力,这可以自适应地调节注意力以包含更多有用的纹理,并提高卷积的表示能力。进一步引入全局分类损失以提高预测器的准确性。通过简单地堆叠CAMixer,获得了CAMixerSR,它在大尺寸图像SR、轻量级SR和全景图像SR方面实现了卓越的性能。

先来看看效果图:

介绍

近年来,神经网络的研究显著提高了图像超分辨率(SR)的质量。然而,现有方法在生成视觉上令人愉悦的高分辨率(HR)图像的同时,在现实世界的应用中遭遇了密集的计算负担,特别是对于2K-8K分辨率的输入。为了减轻这种开销,许多加速框架轻量级网络被引入用于实际的超分辨率应用。然而,这些方法是完全独立的,缺乏协作。

第一个策略,加速框架,基于这样一个观察:不同的图像区域需要不同的网络复杂性,这从变化的模型内容感知路线的角度解决了问题。如下图1中的中间图所示,它们将大输入图像分解为固定的块,并通过额外的分类网络将块分配给网络。ARM通过引入基于查找表的分类器和参数共享设计进一步发展了这一策略以提高效率。

尽管这些策略对所有神经网络都是通用的,但仍存在两个不可避免的缺陷。一是糟糕的分类和不灵活的分区。如图1所示,具有少量细节的窗口被错误地发送到简单模型。

另一个是有限的感受野。如下表2所示,将图像裁剪成块会限制感受野,从而影响性能。

第二个策略,轻量级模型设计,侧重于改进神经运算器(自注意力或卷积)和主干结构,以在有限的层内具有更强的特征表示能力,即利用更多的内部信息重构图像。例如,NGswin利用N-Gram自注意力来减少计算量并扩大感受野。IMDN引入了信息多重蒸馏以实现高效的块设计。尽管这些轻量级方法在720p/1080p图像上取得了令人印象深刻的效率,但它们很少用于更大的输入(2K-8K)。此外,这些方法忽略了不同内容可以被有区别地处理的内在特性。

本文首先整合了上述策略,其基础是得出的观察结论:不同特征区域需要不同级别的token混合器复杂性。如下表1所示,简单卷积(Conv)可以在简单块中与复杂卷积+自注意力(SA)表现类似。因此,这里提出了一个内容感知混合器(CAMixer),根据内容路线具有不同复杂性的token混合器。

如前面图1所示,CAMixer对于复杂的窗口使用复杂的自注意力(SA),对于简单的窗口使用简单的卷积。此外,为了解决ClassSR的局限性,引入了一个更复杂的预测器。这个预测器利用多种条件生成额外的有价值信息,从而增强CAMixer的分区准确性和表示效果。

基于CAMixer,构建了用于超分辨率任务的CAMixerSR。为了充分评估CAMixer的性能,进行了轻量级SR、大输入(2K-8K)SR和全方位图像SR的实验。如下图2所示,CAMixerSR在轻量级SR和加速框架上都取得了巨大的进步。

本文的贡献总结如下:

  • 提出了一种内容感知混合器(CAMixer),整合了卷积和自注意力,可以通过将简单区域分配给卷积和复杂区域分配给自注意力,自适应地控制推理计算。
  • 提出了一个强大的预测器,用于生成偏移、mask和简单的空间/通道注意力,调节CAMixer以更少的计算量捕获更长距离的相关性。
  • 基于CAMixer,构建了CAMixerSR,展示了在三个具有挑战性的超分辨率任务上的最新质量-计算权衡:轻量级SR、大输入SR和全方位图像SR。

相关工作

超分辨率加速框架。随着为了获得更好的恢复质量而不断增加的复杂性,超分辨率模型的实际应用变得更加困难,特别是对于2K-8K超分辨率。近期的研究从不同的角度解决了这个问题。他们不是设计轻量级模型,而是使用内容感知路线动态地将裁剪后的块发送到具有不同复杂性的模型。ClassSR 利用了一个3类分类器来确定由复杂/中等/简单网络计算的子图像,这使得在8K数据集上为RCAN节省了50%的计算量。PathRestore学习选择特征路径以根据上下文调整FLOPs。

轻量级超分辨率。自从第一个使用卷积神经网络(ConvNet)进行超分辨率任务的作品SRCNN以来,为了更轻量级的推理,已经提出了许多减少复杂性的策略。早期的DRCN和DRRN尝试通过使用循环块来减少参数,但是遭受了密集的计算。为了减轻这个缺点,IDN和IMDN采用了高效的信息融合结构来减少参数和计算量。后来的ConvNet,如EFDN和RLFN进一步简化了信息蒸馏过程,并引入了重新参数化来在移动设备上实现实时推理。随着Transformer的快速发展,各种强大的token混合器,例如自注意力和大核卷积被引入到了轻量级超分辨率中。例如,SwinIR利用基于窗口的自注意力,MAN采用了大核卷积,这两种方法都取得了SOTA性能。尽管这些神经运算器能够捕获长距离的相关性,但它们耗费了大量计算。因此,本文将内容感知路线整合到token混合器设计中,该设计对于信息丰富的区域采用复杂的运算器,对于简单的区域采用简单的运算器。

方法

内容感知混合

CAMixer的概述如下图3所示。

CAMixer由三个主要组件组成: 预测模块、注意力分支和卷积分支。给定输入特征 , 首先通过逐点卷积投影到值 :

预测器。基于局部条件 , 全局条件 , 以及线性位置编码 , 预测器首先计算共享的中间特征图F, 然后生成偏移图、混合器mask和简单的空间/通道注意力:

其中, 是用于 warp具有更复杂结构的窗口的与内容相关的偏移矩阵。 是一个标量, 用于控制偏移量的范围。 是根据注意力窗口大小M减少并重新排列的中间特征。 是决定裁剪窗口是否由注意力还是卷积计算的mask。 是用于增强卷积分支的空间和通道注意力。

注意力分支。为了计算复杂区域的稀疏注意力, 使用偏移 来调制原始输入 , 通过双线性插值 来在所选窗口中包含更多有用的内容:

接下来, 根据窗口形状 重新排列 ,

。在训练阶段, 应用Gumbel Softmax来计算二元mask gumble softmax 用于困难和简单的token采样。在推理阶段, 通过对maskm进行降序排序 , 获得了稀疏注意力的前 个相关窗口的索引 , 以及其他 个用于卷积的 窗口的索引, 其中 。将注意力补丁的比例表示为

根据这些索引, 通过以下方式将 和V分割:

在获得了 之后query 和键 是通过线性层生成的。

基于上述推导,复杂窗口的自注意力可以表示为:

对于用于轻量操作的 , 使用重新排列的 来通过逐元素乘法实现简单的注意力

总的来说, 利用这些索引将 整合在一起, 以获得注意力分支的输出 卷积分支。利用深度可分离卷积和预先生成的通道注意力来捕获局部相关性, 可以表示为

最后,CAMixer的输出通过逐点卷积进行投影,如下所示:

CAMixer。总的来说, 通过控制自注意力比例 , 调整了内容感知混合。当 时, CAMixer是自注意力和卷积的组合, 类似于ACMix。当 时, CAMixer是一个纯卷积token混合器, 复杂度较低。对于 , CAMixer学习了内容感知混合, 对于复杂区域使用复杂模式, 对于普通区域使用简单模式。

复杂度分析。在下表3中理论比较了卷积、基于窗口的自注意力和CAMixer的复杂度。

具体来说, CAMixer的FLOP包括三个部分: 卷积、注意力和预测器。给定 的输入, 卷积分支利用深度可分离卷积, 计算成本为 。对于注意力分支, 四个投影操作的成本为 , 而注意力计算成本为 , 其中 是困难窗口的比例。对于预测器模块, 它添加了一系列计算: 共享头部的 , mask的Mhw, 偏移量的 , 空间注意力的 , 以及通道注意力的 , 其中 是减少计算的缩减比例。

网络架构

通过修改SwinIR-light来构建CAMixerSR。通常,CAMixerSR包括四个组件,其中三个来自SwinIR:浅层特征提取器、深层特征提取器、重构模块,以及额外的全局预测器模块。此外,用CAMixer替换了基于窗口的自注意力,并减少了block数。

训练损失

这里描述了CAMixerSR的训练目标, 包括超分辨率框架和预测器的优化。跟随先前的工作 ,我们采用主要的 损失来训练主干网络。假设输入批次包含 个图像对, 即 , 这个过程可以表示为:

其中, 是提出的CAMixerSR模型。为了监督 个CAMixers的预测器, 遵循了控制自注意力稀疏性的先前工作 , 采用了简单但有效的均方误差 (MSE) 损失来控制比率

其中, 表示参考的总体比率, 表示第 个CAMixer的困难token比率。为了实现动态比率的统一训练, 我们先用 对CAMixerSR进行预训练, 然后在 范围内进行微调。总的来说, 通过简单地组合上述目标来训练CAMixerSR。

再回顾下CAMixerSR的整体框架:

实验

实现细节

模型。遵循SwinIR和ELAN, 构建了总体主干结构, 其中包含 20 个CAMixer和FFN块。通道数量为 60 。自注意力的窗口大小为 16 , 卷积分支由两个 深度可分离卷积实现。具体来说, 手动设置 1.0 作为原始模型 (基线) , 作为CAMixer模型 (目标)。在补充材料中提供了其他设置的更多结果。

训练。在三个具有挑战性的超分辨率 (SR) 任务上训练了提出的框架: 轻量级SR、大图像SR和全方位图像 (ODI) SR。对于前两个任务, 使用DIV2K作为训练集。对于ODISR, 利用了清理后的ODI-SR数据集。公式 (12) 中的损失是使用批量大小 32 和块大小 64 计算的。采用AdamW, 初始学习率为 , 训练过程为 次迭代。在 时将学习率减半。

测试。首先使用 的CAMixerSR-Original作为基准进行测试, 这表示所有token都由自注意力和卷积处理。然后, 验证了提出的CAMixerSR, 使用 将部分token用于自注意力。对于轻量级SR, 使用了五个常用的验证数据集:Set5、Set14、BSD100、Urban100和Manga109。对于大图像 , 利用Flickr2K (F2K) 和DIV8K (Test2K、Test4K和Test8K) 生成了测试数据集, 与ClassSR相似。对于全景SR, 在ODI-SR测试集和SUN360数据集上评估我们的模型。对于评估, 使用PSNR和 SSIM,并额外使用失真加权版本WS-PSNR和WS-SSIM用于ODI-SR。

消融研究

自注意力的影响。 首先,在下表4中比较了SA分支的窗口大小M。

窗口大小为32的模型约为窗口16的2倍,而在Urban100上提升了0.17dB。窗口大小为16的模型比窗口8的模型提升了0.23dB,但只增加了16G MAdds。此外,当将γ设置为0.5时,32×32窗口的性能下降比其他两个模型更大,因为较大的窗口难以分类。因此,我们使用16×16窗口来更好地权衡性能和计算。此外,在下图5中比较了不同的自注意力比率γ。对于轻量级SR和2K SR,计算量呈线性增长,而当γ < 0.5时,PSNR增长更快,但当γ > 0.5时增长较慢。因此,手动选择γ = 0.5,其中PSNR几乎与γ = 1.0相同,但SA的计算量减少了一半。

预测器组件的影响。与仅输出决策分数的简单分类器相比,提出的预测器生成了更多有用的指标(偏移和空间/通道注意力),以实现更好的划分和表示。在下表5中检查了这些额外的组件。删除其中任何一个都会导致巨大的性能下降。具体来说,偏移量带来了约0.05dB的增益,而卷积注意力则共同获得了约0.1dB的改进。

混合器mask m的影响。为了研究混合器mask将困难和简单token划分的偏好,在下图4中可视化了学习到的mask。

提出的预测器可以学习适当的mask,将复杂token(例如建筑物、船只和蜜蜂)分配给注意力分支,而将简单token(例如天空和花瓣)分配给卷积分支。在下图6中,进一步比较了不同比率γ下不同块的分区mask。

根据γ减少了SA的token数K,实际比率接近目标值。这明显满足了我们控制推理复杂性的目标。大多数块学习使用SA来处理复杂内容。有趣的是,它们关注语义上不同的上下文,例如,块7保留了植被,块14保留了边缘,块20保留了建筑物。此外,在下图4中,Cl说明了卷积的输出与注意力是不同的。因此,对于块1和17,它们使用SA来处理简单的窗口,以协调特征。

偏移量 ∆p 的影响。 在下表7中,验证了调整偏移标量 r 从0到16时的性能变化,以探索偏移量的有效性。

可以观察到,当 r = 8 时,模型性能最佳。相比之下,当 r 设为4或16时,模型性能略微改善,甚至下降。为了全面了解情况,在下图7中描述了偏移向量。r = 8的偏移量更为合理,因为最有效的偏移位于边缘区域,并提供了细粒度的划分。

输入条件的影响。在下表6中分析了输入条件(局部、全局和窗口)的影响。

由于我们的方法是内容感知的,对所有模型保持局部内容。去除全局/窗口条件会导致Urban100上的0.08dB降低。禁用它们两者会进一步降低PSNR至26.46dB,比初始模型低0.17dB。结果表明,多条件的组合可以提高预测器的准确性。

大图像超分辨率

按照ClassSR和ARM的方法,验证了CAMixerSR在2K-8K大图像超分辨率任务中的效率。与以往忽略轻量级模型的工作不同,我们还添加了IMDN 和SwinIR-light作为参考。所有模型都在相同的FLOPs限制下运行。

定量结果。在下表8中,实现了36/48/60通道的CAMixerSR-Small/Medium/Base。

总的来说,CAMixerSR明显优于其他方法。与经过ClassSR或ARM加速的经典SRResNet和RCAN相比,CAMixerSR-Original提供了类似或更好的恢复质量,但是轻了3.2×~11×。此外,CAMixer模型进一步节省了约25%的计算量。总体而言,CAMixerSR(765K/747M)可以与RCAN(15.6M/32.6G)竞争,用于2K-8K图像恢复。与轻量级模型SwinIR-light相比,CAMixerSR在FLOPs更少或PSNR更高的情况下,提供了0.14dB的PSNR改进,或者FLOPs减少了51%。

为了公平比较加速框架,即ClassSR和提出的内容感知混合,将ClassSR应用于CAMixerSR,使用三个类别。ClassSR有助于减少与内容感知相似的计算量,但在F2K上落后0.12dB。这种PSNR差距可能是由于较小的裁剪尺寸限制了有限的感受野,这是我们将在进一步研究中探索的问题。

我们还说明了ClassSR和CAMixer的两种潜在组合方式。“⊎ClassSR”表示将ClassSR应用于CAMixerSR-B,即使用相同的主干结构,但将γ = 0.25/0.3/0.5调整为ClassSR的三个分支。“⊎CAMixer”使用γ = 0.5的CAMixer作为ClassSR的三个分支,应用于CAMixerSR-S/M/B。正如预期的那样,前一种方法保持了更好的恢复质量,而后者减少了更多的计算量。总的来说,内容感知混合器是大图像任务的更好选择,并且可以与其他策略一起使用,毫无困难。

定性结果。在下图8中,展示了CAMixerSR与其他方法的视觉结果对比。CAMixerSR恢复的晶格内容明显更清晰,优于其他方法。此外,采用内容感知策略的CAMixerSR的性能下降要比ClassSR小。

轻量级SR

为了评估CAMixer的通用性,我们将提出的CAMixerSR与许多最先进的轻量级模型进行了比较,包括IMDN、LatticeNet、FDIWN、SwinIR-light 、ELAN-light、NGswin和DiVANet。下表9显示了量化比较结果。

总的来说,CAMixerSR在所有五个基准数据集上都取得了优越的恢复质量,参数适中且延迟较低。特别是,与最新的SwinIR-NG使用自注意力处理所有token的情况相比,CAMixerSR可以在节省18.4G的计算量的同时实现更好的性能。这些结果强烈表明,CAMixer不仅适用于输入图像较大且存在大量简单区域的情况,还适用于经典的SR任务。

全景图像SR

为了了解CAMixer在实际应用中处理大分辨率输入的效果,在全景图像(ODI)SR任务上测试了我们的CAMixerSR,该任务具有2K输出和复杂的失真。具体来说,我们将失真图作为预测器的额外条件。在下表10中,展示了我们的CAMixerSR与其他方法的定性比较。

CAMixerSR在几乎所有验证指标上都获得了更好的恢复质量。具体来说,与30倍大的EDSR相比,CAMixerSR在SUN 360基准上获得了0.26dB的改进。此外,CAMixerSR在不使用额外训练集的情况下,最多提高了OSRT-light的0.05dB/0.0028(WS-PSNR/WS-SSIM)。

结论

本文提出了一种内容感知混合器(CAMixer),通过根据内容复杂度调整不同复杂度的神经操作符(自注意力和卷积),从而整合了模型加速和token混合设计策略。特别是,简单的token通过卷积捕获,而复杂的token则通过可变形的自注意力进行额外处理。为了提高路线的准确性,我们引入了一个有效的预测器,利用丰富的输入条件生成多种有用的引导信息。基于CAMixer,构建了CAMixerSR,在三个SR任务中取得了显著的性能-计算量平衡。

公众号后台回复“数据集”获取100+深度学习各方向资源整理

极市干货

技术专栏:多模态大模型超详细解读专栏搞懂Tranformer系列ICCV2023论文解读极市直播
极视角动态欢迎高校师生申报极视角2023年教育部产学合作协同育人项目新视野+智慧脑,「无人机+AI」成为道路智能巡检好帮手!
技术综述:四万字详解Neural ODE:用神经网络去刻画非离散的状态变化transformer的细节到底是怎么样的?Transformer 连环18问!

点击阅读原文进入CV社区

收获更多技术干货


【声明】内容源于网络
0
0
极市平台
为计算机视觉开发者提供全流程算法开发训练平台,以及大咖技术分享、社区交流、竞赛实践等丰富的内容与服务。
内容 8155
粉丝 0
极市平台 为计算机视觉开发者提供全流程算法开发训练平台,以及大咖技术分享、社区交流、竞赛实践等丰富的内容与服务。
总阅读919
粉丝0
内容8.2k