ICCV 2023 | 利用双重聚合的Transformer进行图像超分辨率

news2024/11/13 9:32:01
导读
本文提出一种同时利用图像空间和通道特征的 Transformer 模型,DAT(Dual Aggregation Transformer),用于图像超分辨(Super-Resolution,SR)任务。DAT 以块间和块内的双重方式,在空间和通道维度上实现特征聚合,从而具有强大的图像表示能力。具体来说,DAT 在连续的 Transformer 块中交替应用空间和通道自注意力,以实现块间聚合。同时,本文还提出自适应交互模块(Adaptive Interaction Module,AIM)和空间门前馈网络(Spatial-Gate Feed-forward Network,SGFN)来实现块内特征聚合。AIM 从空间与通道为徒改进现有注意力机制,SGFN 在前馈网络中引入了非线性空间信息。实验证明,DAT 实现目前最先进的图像超分辨率性能。

论文连接: https://arxiv.org/abs/2308.03364
代码连接: https://github.com/zhengchen1999/DAT

01. 研究问题

图像超分辨率(Image Super-Resolution,简称图像 SR)是一种图像处理技术,旨在通过增加图像的细节和清晰度,将低分辨率(LR)图像转换为高分辨率(HR)图像。简单来说,就是将一张小尺寸的模糊图像,变成大尺寸的清晰图像。图像超分辨率技术在实际应用中具有广泛的用途,包括高清电视、监控摄像头、医学影像、卫星图像等。现如今,随着人工智能、机器学习的发展,使用深度学习技术的图像超分辨率成为主流。

02. 方法动机

目前,Transformer 在 SR 任务中表现出色。其核心是自注意力(Self-Attention,SA)机制,能够建立全局依赖关系。而全局关系的建立,对于高分辨率图像的重建尤为重要。然而,全局SA的计算复杂度与图像大小成平方比,这极大的限制了其在高分辨率图像上的应用(这在图像 SR 中很常见)。考虑到这个原因,一些研究人员提出更加高效的 SA,以有效利用 Transformer。总的来说可以分为空间通道两个方面:

  • 空间方面,局部空间窗口被提出来限制全局 SA 的应用范围,从而提出局部窗口注意力(Spatial-Window Self-Attention,SW-SA)。如图(a),空间维度H×W 被划分为多个窗口,注意力在每个窗口中被执行。
  • 通道方面,提出通道自注意力(Channel-Wise Self-Attention,CW-SA)。如图(b),注意力沿着通道维度 C 计算。也就是图中每一个独立的块都作为一个 token

图片1. 不同自注意力机制示意图

这些方法都在降低计算复杂度的同时,实现优异的性能。同时这两种方法对于图像特征( H×W×C )的建模,是针对不同(空间与通道)的维度的。那么,是否可以同时考虑两个维度,在现有方法的基础上,进一步提高Transformer的建模能力,实现更加出色的超分辨率性能呢?

受以上发现的启发,我们提出 DAT(Dual Aggregation Transformer),通过块间和块内双重方式,实现空间和通道特征有效融合。具体来说,我们在连续的 Transformer 块中交替应用 SW-SA 和 CW-SA 。通过这在交替的方式,DAT 能够同时捕获空间和通道信息,实现块间特征聚合。同时,为了实现块内特征聚合,我们还提出自适应交互模块(Adaptive Interaction Module,AIM)和空间门前馈网络(Spatial-Gate Feed-forward Network,SGFN)。AIM 对 SW-SA 和 CW-SA 建模单一维度进行改进,SGFN 则在前馈网络中引入非线性空间信息。

总体而言,我们的贡献可以总结为以下三点:

  • 设计了一种新的图像超分辨率模型:DAT。该模型以块间和块内双重方式聚合空间和通道特征,增强 Transformer 的建模能力。
  • 交替应用空间和通道自注意力,实现块间特征聚合。此外,还提出 AIM 和 SGFN 来实现块内特征聚合。
  • 进行了大量实验,证明提出的 DAT 实现最先进的图像超分辨率性能,同时保持较低的复杂性和模型大小。

03. 方法介绍

在本节中,我们首先介绍 DAT 的架构。 随后,我们详细阐述自适应交互模块(AIM)和空间门前馈网络(SGFN)两个组件。

3.1 模型架构

图片2. 模型架构

正如前文提到,在 DAT 中,我们以交替的方式同时使用 SW-SA 和 CW-SA 两种注意力模块。这种组合,能够对两个维度的特征进行建模,并利用它们的优势互补:

  • SW-SA 对空间上下文进行建模,增强每个特征图的空间表达。
  • CW-SA 可以更好地构建通道之间的依赖关系,扩大感受野,从而帮助 SW-SA 捕获空间特征。

因此,空间和通道信息在连续的 Transformer 块之间流动,以此实现块间特征聚合。

3.2 自适应交互模块(AIM)

图片3. 自适应交互模块(AIM)

我们提出的 AIM 对 SW-SA 和 CW-SA 实现进一步改进。首先,考虑到自注意力主要是捕获全局特征,我们增加了与自注意力模块平行的卷积分支,依次引入局部性到 Transformer 中。接着,考虑到虽然交替执行 SW-SA 和 CW-SA 可以在块间实现空间与通道的特征聚合,但是对于每个自注意力(SA)而言,不同维度的信息仍然无法有效利用。因此,我们提出了AIM(灰色阴影区),作用于两个分支之间,并根据分支的类型,从空间或通道维度自适应地重新加权特征,从而在单个注意力模块中实现空间和通道信息的聚合。

综合上述改进,我们在 SW-SA 和 CW-SA 的基础上,提出改进版的自适应空间自注意力(Adaptive Spatial Self-Attention,AS-SA)和 自适应通道自注意力(Adaptive Channel Self-Attention,AC-SA)。

相比原始自注意力机制,我们的方法具有:

  • 局部(卷积)和全局(注意力)更好的耦合:两个分支的输出可以自适应调整以相互适应、融合。
  • 更强的建模能力:对于 SW-SA,互补通道信息提高了其通道建模能力;对于 AC-SA,通过空间交互,额外的空间知识同样增强特征表征能力。

3.3 空间门前馈网络(SGFN)

图片4. 空间门前馈网络(SGFN)

传统的前馈网络(Feed-Forward Network,FFN)有线性层和非线性激活组成。只能够对特征通道进行建模, 但忽略了建模空间信息。 此外,FFN会通过线性层在内部对特征通道进行放大,这导致通道之间存在冗余,从而阻碍了特征表达能力。

为了克服上述问题,我们提出了 SGFN:将空间门控(Spatial-Gate,SG)引入到 FFN 中。SG 是一个简单的门空机制,由深度卷积和逐元素乘法组成。同时,我们将特征图沿着通道维度,均匀的分为两个部分,分别送入卷积和乘法旁路中,以此来降低通道冗余性。并且该操作也能有效降低计算复杂度。

整体来看,AIM 和 SGFN 是 Transformer 块的两个主要组成。通过这个两个模块,我们实现块内的特征聚合:

  • AIM 从通道维度增强 SW-SA,并从空间维度增强 CW-SA。
  • SGFN 将非线性空间信息引入仅建模通道关系的 FFN 中。

04. 实验结果

消融实验:我们对提出方法的各个进行详尽的消融实验,证明了方法的有效性。

图片5. 消融实验

定量对比:我们提出了2个不同大小的模型变体(DAT-S、DAT),与目前最先进的图像超分辨率方法,在5个基准数据集上进行对比。如下表所示,我们的方法取得了最先进的结果。

图片6. 定量对比,最优结果着红色,次优结果着红色

视觉对比:我们在下图中展示了视觉效果的对比结果。可以发现,我们的方法在细节的重建上具有明显的优势。

图片7. 视觉对比

模型大小:我们还提供了模型大小(Params)、复杂度(FLOPs)、性能上的综合对比。我们的方法在实现性能提升的同时,也保持了较低的复杂性和模型大小。

图片8. 模型大小

05. 结论

本文提出了 DAT(Dual Aggregation Transformer),是一种用于图像超分辨率 Transformer 模型。 DAT 以块间和块内双重方式,聚合空间和通道特征,实现强大的建模能力。 具体来说,连续的 Transformer 块交替应用空间窗口和通道自注意力,并实现了空间和通道维度在块间的特征聚合。 此外,本文还提出了自适应交互模块(Adaptive Interaction Module,AIM)和空间门前馈网络(Spatial-Gate Feed-forward Network,SGFN),以在两个维度上实现块内特征聚合,从而增强每个 Transformer 块。 AIM从两个维度增强自注意力机制的建模能力。 而 SGFN 用非线性空间信息补充前馈网络。 实验证明,DAT 实现目前最先进的图像超分辨率性能。

作者:陈铮


  关于TechBeat人工智能社区

TechBeat(www.techbeat.net)隶属于将门创投,是一个荟聚全球华人AI精英的成长社区。

我们希望为AI人才打造更专业的服务和体验,加速并陪伴其学习成长。

期待这里可以成为你学习AI前沿知识的高地,分享自己最新工作的沃土,在AI进阶之路上的升级打怪的根据地!

更多详细介绍>>TechBeat,一个荟聚全球华人AI精英的学习成长社区

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/960093.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

轻松管理不同类型的文件,高效将文件按类型进行移动归类

如果你经常需要处理不同类型的文件素材,例如图片、音频、视频等,那么你一定知道这是一项繁琐的任务。为了帮助你快速整理这些文件,我们推出了一款强大的文件管理工具,让你能够轻松地将不同类型的文件素材归类到不同文件夹里单独保…

功率信号源的用途和作用有哪些

功率信号源是一种重要的电子设备,用于生成具有特定功率水平、波形和频率的电压或电流信号。它在各种应用中发挥着关键作用。下面介绍功率信号源的主要用途和作用: 电路测试和调试:功率信号源被广泛应用于电路测试和调试过程中。它可以提供不同…

SAP PP之定义活动/作业类型(Activity Type)

文章目录 前言 一、作业是什么 二、使用步骤 1.单独创建 2.创建组 注意点 前言 创建活动类型具有以下先决条件: 控制范围已创建并分配给公司代码。已创建成本要素类别为43的次要成本要素。 一、作业是什么 SAP活动类型是在成本范围的成本中心中产生的活动的分类。…

【JUC基础】JUC入门基础(二)

目录 异步回调JMM 理解对 volatile 的理解1、保证可见性2、不保证原子性3、禁止指令重排 对 JMM 的理解 详解单例模式饿汉式懒汉式DCL懒汉式:双重检测锁模式的懒汉式单例静态内部类实现单例通过反射破坏单例,修改后的DCL饿汉式枚举实现单例防止反射破坏 …

不需要Photoshop!这10款替代软件也能轻松处理图片

Photoshop是一款功能强大的图像处理工具,很多人说到修图就会想到要用PS,但是Photoshop是要付费的,对于业余设计师或者对修图需求量不太高的普通用户来说,使用Photoshop的成本略高。本篇文章,我们向你推荐5款Photoshop替…

FreeRTOS的信号量和互斥量之间的区别和联系

文章目录 信号量信号量简介信号量特征 互斥量互斥量的上锁机制互斥量的优先级继承机制 二值信号量和互斥量的作用二值信号量的作用互斥量的作用 二值信号量和互斥锁关系相同点不同点 如何根据场景选择回答信号量和互斥锁之间的区别: 信号量 信号量简介 队列(queue)…

Unity AssetBundle(1):Assets打包和依赖(Dependencies)

对Unity5.x后的AssetBundle依赖机制有了一点理解,创建了一个项目验证 github:GeWenL / AssetBundlePro AbScene.unity 资源有哪些? Some common types of Asset assetbundle打包命令是 BuildPipeline.BuildAssetBundles ,格式有: 引用&…

vue3+ts组件通信

1、父组件向组件传参 父组件代码 子组件代码 2、子组件向父组件传参 组件间代码 父组件代码 3、如果eslint报错,需在.eslintrc.js中添加一行代码 4、通过父组件通过 ref 获取子组件的属性或者方法 父组件代码 子组件代码 5、孙子组件provide和inject 父组件…

重磅!腾讯云 CODING 入选软件供应链产品名录

点击链接了解详情 2023 年 8 月 25 日,由中国信息通信研究院、中国通信标准化协会联合主办的**“2023 首届 SecGo 云和软件安全大会”在京召开。会上正式发布了第二期《软件供应链厂商和产品名录》,旨在提升软件供应链透明度,宣传推广一批成熟…

Ceph构件及组件分析

Ceph存储架构 Ceph 存储集群由几个不同的daemon组成,每个daemon负责Ceph 的一个独特功能并。每个守护进程是彼此独立的。 下面将简要介绍每个Ceph组件的功能: RADOS(Reliable Autonomic Distributed Object Store, RADOS) RADOS…

Python面向对象编程(一)类的基础,关系,继承,封装,多态

类的一些理论概念及其应用场景等基础内容此处不赘述 目录 类的定义及基础 属性 方法 初始化方法 普通方法 类之间的关系 相互调用 依赖关系 关联关系 组合关系 三大特征----类的继承 重写父类方法 多继承 三大特征----封装 三大特征----多态 类的定义及基础 类…

10 mysql tiny/small/medium/big int 的数据存储

前言 这里主要是 由于之前的一个 datetime 存储的时间 导致的问题的衍生出来的探究 探究的主要内容为 int 类类型的存储, 浮点类类型的存储, char 类类型的存储, blob 类类型的存储, enum/json/set/bit 类类型的存储 本文主要 的相关内容是 int 类类型的相关数据的存储 …

EI、Scopus双检索| 2023年第四届自动化、机械与设计工程国际会议

会议简介 Brief Introduction 2023年第四届自动化、机械与设计工程国际会议(SAMDE 2023) 会议时间:2023年12月8 -10日 召开地点:中国南京 大会官网:www.samde.org 机械设计制造及其自动化学科在国民经济中处于极其重要…

从渗透测试小白到网络安全大佬的成长之路

前言 最近看到很多的安全小白在询问如何去学习安全,如何去入手渗透测试等问题。突然有感而发,想起来自己当时从小白一步一步走向黑客大佬的成长之路。 随着因特网的发展和网络经济的兴起, 越来越多的企业将服务或交易平台放到了互联网上, 而且这些网络应…

es6解构用法

一: 解构数组 二:解构对象 一: 解构数组 原理:模式(结构匹配), 索引值相同的完成赋值 总结:位置对应 二:解构对象 原理:模式(结构匹配), 属性名相同的完成赋值 {}{} 对象结构赋值的应用 常用的就以上两种 &#…

【用unity实现100个游戏之7】从零开始制作一个仿杀戮尖塔卡牌回合制游戏

文章目录 前言素材资源开始一、UI框架二、挂载脚本三、事件监听,用于绑定按钮事件四、声音管理器五、excel转txt文本六、游戏配置七、用户信息表八、战斗管理器九、 敌人管理器十、玩家血量、能量、防御值、卡牌数十一、敌人血量 行动显示逻辑十二、UI提示效果实现十…

缓存技术(缓存穿透,缓存雪崩,缓存击穿)

大家好 , 我是苏麟 , 今天聊一聊缓存 . 这里需要一些Redis基础 (可以看相关文章等) 本文章资料来自于 : 黑马程序员 如果想要了解更详细的资料去黑马官网查看 前言:什么是缓存? 缓存,就是数据交换的 缓冲区 (称作Cache [ kʃ ] ),俗称的缓存就是缓冲区内的数据,是存贮数据的…

20230901工作心得:IDEA列操作lambda表达式加强版用法

今天是中小学开学时间,亦是9月的开始,继续努力。 今日收获较大的有四个地方,先说这四点。 1、IDEA列操作 使用场景:需要批量将Excel表格里的数据插入到数据库中,此时需要写大量的insert SQL语句。 比如像这样的&am…

MySQL - 函数

1.1 什么是函数? 要想实现上面的这些效果,就得借助于MySQL当中的内置函数。 函数:是指一段可以直接被另一段程序调用的程序或代码。 MySQL当中内置了很多的函数,根据其操作的数据类型,分为以下四类: 字符…

vue之若依字典的导入使用(不直接使用若依框架,只使用若依字典)

vue之若依字典的导入使用 若依官网:http://ruoyi.vip 若依演示地址:http://vue.ruoyi.vip 若依代码下载:https://gitee.com/y_project/RuoYi-Vue 以上地址是若依的相关地址,可以下载前后端分离版的若依前后端代码。 如果你不想直…