【图像任务】Transformer系列.1

news2024/12/26 10:38:50

介绍几篇改进Transformer模型实现亮度增强、图像重建的任务:LLFormer(AAAI2023),DLSN(TPAMI2023),CAT(NeurIPS2022)。

Ultra-High-Definition Low-Light Image Enhancement: A Benchmark and Transformer-Based Method, AAAI2023

Project:UHD-LOL and LLFormer (taowangzj.github.io)

解读:【AAAI2023】Ultra-High-Definition Low-Light Image Enhancement - 知乎 (zhihu.com)

论文:https://arxiv.org/abs/2212.11548

代码:https://github.com/TaoWangzj/LLFormer

介绍

设备捕捉超高清(UHD)图像和视频的能力对图像处理管道提出了新的要求。

本文考虑了低光亮图像增强(LLIE)的任务,构建了两种不同分辨率的数据集Ultra-High-Definition Low-Light Image Enhancement(UHD-LOL),并在不同方法进行基准测试。

提出一种基于Transformer的微光增强方法LLFormer。LLFormer的核心组件是基于轴的多头自注意和跨层注意融合块,显著降低了线性复杂度。

LLFormer 框架

LLFormer的核心设计包括一个基于轴的变压器块和一个跨层注意力融合块。在前者中,基于轴的多头自注意在通道维度上依次对高度和宽度轴进行自注意,以降低计算复杂度,而双门控前馈网络采用门控机制来更多地关注有用的特征。跨层注意力融合块在融合不同层中的特征时学习它们的注意力权重。

Axis-based Transformer Block & Dual Gated Feed-forward Network(GDFN)

Transformer 在图像修复中应用的难点在于计算复杂度高。论文使用基于轴的多头注意力。分两个步骤,第一步相似性计算的是HxH,叫做 height-axis attention。第二步相似性计算的是 WxW,叫做 width-axis attention。

随后在FFN中引入双门控机制,提出双门控前馈网络DGCN来捕获特征中的更重要的信息。FFN两个分支都使用 GELU 激活,再互相给另外一个分支添加门控增强非线性建模能力。

其中,DGFN公式如下:

 Cross-layer Attention Fusion Block

 网络一般有多层,但大多方法没有考虑层与层之间特征的关联,限制了表示能力。论文使用cross-layer attention获取不同层特征间的相关性并融合。从论文整体架构图中可看到,网络输入有三个Transformer block,能得到三个特征输出。论文通过cross-layer attention 运算,计算一个3x3的相似性矩阵,给输入的特征进行加权,从而达到强调重要特征、抑制不重要特征的作用。(不同层的激活是对特定类别的响应,并且可以使用子注意力机制自适应地学习特征相关性。)

实验

现有方法在所提出的UHD-LOL数据集的性能测试实验。 

 消融实验:

 

 

 

UHD-LOL数据集

The UHD-LOL4K subset consists of 8099 paired 4K images, and 5999 for training and 2100 for testing.

NameSizeTypeLinksDescription
UHD-4K94.9 G百度网盘Main folder
├ Train Set25.2 Gnormal/low-8099 paired normal/low-light 8K images.
├ Test Set69.7 Gnormal/low-2100 paired normal/low-light 8K images.

The UHD-LOL8K subset consists of 2966 paired 8K images, and 2029 for training and 937 for testing.

NameSizeTypeLinksDescription
UHD-8K97.8 G百度网盘Main folder
├ Train Set67.3 Gnormal/low-2029 paired normal/low-light 8K images.
├ Test Set30.5 Gnormal/low-937 paired normal/low-light 8K images.

 

Global Learnable Attention for Single Image Super-Resolution, TPAMI2023

解读:【TPAMI2023】Global Learnable Attention for Single Image Super-Resolution_AI前沿理论组@OUC的博客-CSDN博客

论文:https://arxiv.org/abs/2212.01057

代码:https://github.com/laoyangui/DLSN

介绍

自相似性对于单图像超分辨率(SISR)中非局部纹理的探索具有重要意义。研究人员通常认为非局部纹理的重要性与其相似性得分呈正相关。本文发现,在修复严重受损的查询纹理时,一些相似度较低、更接近目标的非局部纹理可以提供比高相似度纹理更准确、更丰富的细节。在这些情况下,低相似性并不意味着较差,而是通常由不同的尺度或方向引起的。利用这一发现,本文提出了一种全局可学习注意力(GLA),以在训练过程中自适应地修改非局部纹理的相似性得分,而不是仅使用固定的相似性评分函数(如点积)。所提出的GLA可以探索相似度较低但细节更准确的非局部纹理,以修复严重受损的纹理。此外,采用超比特位置敏感哈希(SB-LSH)作为GLA的预处理方法,减少其计算复杂度。基于GLA,论文提出了一个可深度学习的相似性网络(DLSN)。

当前方法大多使用 non-local attention 来计算图像块之间的相似性,而且认为与query更为相似的图像块能够提供更丰富的信息,但是作者认为并不总是这样。如下图所示, 当query严重损坏时,查询到高相似度的图像块就不能提供有效的重建信息,但是低相似度的图像块却能提供丰富的信息。

DLSN网络

为了解决上面的问题,作者提出了一个 Global Learnable Attention 模块。GLA可以动态的调整特征间的相似性,同时因为使用了Locality-Sensitive Hashing,降低了计算的复杂度。

DLSN由带有基于全局可学习注意力的特征融合模块(GLAFFM)的骨干组成。对于SISR任务,有两种信息对提高重建结果至关重要:局部邻接信息和可学习的非局部自相似信息。
GLAFFM用于融合分别由局部特征融合块(LFFB)和全局可学习注意力(GLA)捕获的这两种类型的关键信息。

GLAFFM是DLSN的基本模块。具体地说,每个GLAFFM也具有残差架构,并且由局部特征融合块(LFFB)、全局可学习注意力(GLA)和特征细化转化层组成。LFFB负责捕捉局部感应偏差,而GLA则在探索全局信息。 

LFFB利用卷积的局部性来捕获自然图像的局部信息。LFFB是SR重建的基石,它是通过堆叠n个简化的残差块而形成的。

GLA可以通过从输入特征图中总结相关特征来探索全局信息。

算法流程:

 

 实验

使用LSS的时候,能够动态的找到真正具有相似纹理以及信息比较强的区域。 

 

Cross Aggregation Transformer for Image Restoration, NeurIPS2022

解读:【NeurIPS2022】Cross Aggregation Transformer for Image Restoration - 知乎 (zhihu.com)

[NIPS 2022-图像复原]Cross Aggregation Transformer for Image Restoration - 知乎 (zhihu.com)

论文:https://arxiv.org/abs/2211.13654

代码:https://github.com/zhengchen1999/CAT

介绍

Transformer架构被引入到图像复原领域并取得了很好的结果,考虑到transformer全局注意力需要很高的计算复杂度,一些方法尝试使用局部方窗口来限制自注意力计算的范围(Uformer, SwinIR)。但是,这些方法缺少不同窗口之间的直接交互,从而限制了远程依赖的建立。为此,本文提出一种新的图像复原模型-交叉聚合transformer(cross aggregation transformer (CAT))。CAT的核心为Rectangle-window self-attention (Rwin-SA),它利用不同头部的水平和垂直矩形窗口注意力来并行扩展注意力区域并聚合不同窗口的特征。此外,本文还引入轴向移位操作(axial-shift operation)实现不同窗口交互。另外,提出局部补充模块(locality complementary module)来补充注意力机制,将CNN的平移不变性和局部性的归纳偏差合并到transformer中,从而实现全局-局部耦合。

CAT架构

CAT由三个模块组成:浅层特征提取、深层特征提取和重建部分。它用残差通道注意力网络(RCAN)作为主干,并用 cross aggregation Transformer block(CATB)替换了RCAN中提出的residual channel attention block(RCAB)。

Cross Aggregation Transformer Block(CATB)

交叉聚合Transformer块(CATB)采用了一种新的注意机制,具有三种新颖的设计:矩形窗口自注意Rectangle-Window Self-Attention、轴向移动操作 Axial-Shift Operation 和局部互补模块Locality Complementary Module。

Rectangle-Window Self-Attention

矩形窗口自注意力(Rwin SA)。Rwin SA使用矩形窗口(sh≠sw)而不是方形窗口(sℎ=sw ,其中sh和sw表示矩形的高度和宽度)。此外,作者将矩形窗口分为水平窗口( sℎ<sw ,表示为H-Rwin)和垂直窗口( sℎ>sw,标记为V-Rwin),并将它们并行应用于不同的注意力头。 

将M个head分为两部分,分别计算H-Rwin和V-Rwin; 最后,两个部分的输出沿通道维度拼接。

 

通过H-Rwin和V-Rwin,可以在不增加计算复杂性的情况下跨不同窗口聚集特征并扩展感受野。此外,矩形窗口可以捕获每个像素在水平和垂直方向上的不同特征,这对于正方形窗口来说很难用可比的计算资源来处理。

 

 Axial-Shift Operation

如图2(b)所示,轴向位移包括两种位移操作,水平位移称为H-shift,垂直位移称为V-shift,分别对应于H-Rwin和V-Rwin。轴向移动操作将窗口分区向下和向左移动 sℎ/2 和sw/2 像素,其中 sℎ 和 sw 是H-Rwin和V-Rwin的窗口高度和宽度。在实现中,循环地将特征图移到左下方向。然后在相应的移位特征图上执行H-Rwin和V-Rwin。

 Locality Complementary Module

为了用局部性补充Transformer并实现全局和局部耦合,作者在计算自注意力时添加了一个独立的卷积运算,称为局部性补充模块。 

 

 与顺序执行卷积或在X上使用卷积相比,此操作有两个优点:(1)使用卷积作为并行模块允许Transformer块自适应地选择采用注意力或卷积操作,这比顺序执行更灵活;(2) 自注意力可以被视为一个依赖于内容的动态权重,作用于V。卷积运算相当于一个可学习的静态权重。因此,在与注意力操作相同的特征域中对V进行卷积操作。

实验

图像超分: 

 

 压缩伪影去除:

 真实图像去噪:

 

 

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

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

相关文章

Linux | 进程控制

啊我摔倒了..有没有人扶我起来学习.... &#x1f471;个人主页&#xff1a; 《 C G o d 的个人主页》 \color{Darkorange}{《CGod的个人主页》} 《CGod的个人主页》交个朋友叭~ &#x1f492;个人社区&#xff1a; 《编程成神技术交流社区》 \color{Darkorange}{《编程成神技术…

Redis的内存策略

过期Key处理: 1)Redis之所以性能强大&#xff0c;最主要的原因就是基于内存来存储&#xff0c;然而单节点的Redis内存不宜设置的过大&#xff0c;否则会影响持久化或者是主从复制的性能&#xff0c;可以通过修改配置文件来设置redis的最大内存&#xff0c;通过maxmemory 1gb&am…

javaScript蓝桥杯-----粒粒皆辛苦

目录 一、介绍二、准备三、目标四、代码五、完成 一、介绍 俗话说“民以食为天”&#xff0c;粮食的收成直接影响着民生问题&#xff0c;通过对农作物产量的统计数据也能分析出诸多实际问题。 接下来就让我们使用 ECharts 图表&#xff0c;完成 X 市近五年来的农作物产量的统…

Python批量下载参考文献|基于Python的Sci-Hub下载脚本|Python批量下载sci-hub文献|如何使用sci-hub批量下载论文

本篇博文将介绍如何通过Python的代码实现快速下载指定DOI号对应的文献&#xff0c;并且使用Sci-Hub作为下载库。 一、库函数准备 在开始之前&#xff0c;我们需要先安装一些必要的库&#xff0c;包括&#xff1a; requests&#xff1a;发送HTTP请求并获取响应的库&#xff1…

南山城市更新--向南村(一期,二期)项目详情

向南村&#xff08;一期&#xff09;城市更新单元项目简介 项目于2010年被列入《深圳城市更新单元规划制定计划第一批计划》中&#xff0c;申报主体为向南实业股份有限公司&#xff0c;后与恒大合作开发。 项目位于南山区桂庙路南侧&#xff0c;毗邻前海、衔接后海&am…

经典算法:Fenwick Tree

经典算法&#xff1a;Fenwick Tree 1. 算法简介2. 原理介绍3. 算法实现4. 例题说明 1. 解题思路2. 代码实现 5. 参考链接 1. 算法简介 Fenwick Tree又称为Binary Indexed Tree&#xff0c;也算是一种常见的数据结构了。 他其实某种意义上来说算是Segment Tree的一种变体&…

克隆虚拟机

上一篇我们已经讲过了启动虚拟机并安装Linux系统&#xff0c;下面我们来讲一下如何通过已经创建好的虚拟机spark01克隆出spark02和spark03来&#xff0c;从而满足搭建大数据集群环境需要多台虚拟机的需求。 首先我们要理解两个概念&#xff1a; 1.完整克隆 完整克隆的虚拟机可…

【算法证明 三】计算顺序统计量的复杂度

计算顺序统计量&#xff0c;在 c 标准库中对应有一个函数&#xff1a;nth_element。其作用是求解一个数组中第 k 大的数字。常见的算法是基于 partition 的分治算法。不难证明这种算法的最坏复杂度是 Θ ( n 2 ) \Theta(n^2) Θ(n2)。但是其期望复杂度是 Θ ( n ) \Theta(n) …

从源码全面解析 dubbo 服务暴露的来龙去脉

&#x1f44f;作者简介&#xff1a;大家好&#xff0c;我是爱敲代码的小黄&#xff0c;独角兽企业的Java开发工程师&#xff0c;CSDN博客专家&#xff0c;阿里云专家博主&#x1f4d5;系列专栏&#xff1a;Java设计模式、Spring源码系列、Netty源码系列、Kafka源码系列、JUC源码…

SpringBoot配置 -- SpringBoot快速入门保姆级教程(二)

文章目录 前言二、SpringBoot配置1. 了解配置文件的3种格式2.yaml格式语法规则3.读取yaml数据的3种方式4.多环境开发配置5.多环境命令行启动参数设置6. 多环境开发兼容问题7.配置文件分类 总结 前言 为了巩固所学的知识&#xff0c;作者尝试着开始发布一些学习笔记类的博客&am…

vcruntime140.dll如何修复

VCRUNTIME140.dll是Windows操作系统上一个非常重要的动态链接库文件&#xff0c;它是由Microsoft Visual C Runtime提供的运行时库文件之一&#xff0c;被许多应用程序用来进行编译和运行。如果该文件丢失或损坏&#xff0c;很多应用程序就无法正常运行&#xff0c;这可能会带来…

三分钟了解SpringBoot配置优先级底层源码解析

&#x1f44f;作者简介&#xff1a;大家好&#xff0c;我是冰点&#xff0c;从业11年&#xff0c;目前在物流独角兽企业从事技术方面工作&#xff0c;&#x1f342;博主正在努力完成2023计划中&#xff1a;以梦为马&#xff0c;扬帆起航&#xff0c;2023追梦人&#x1f4dd;联系…

关于性能测试平台的一些想法,想跟大家聊一下

目录 一、任务管理 二、用例管理 三、环境管理 四、压测机管理 五、数据管理 六、监控管理 七、日志管理 八、报表管理 九、配置管理 十、系统管理 组织架构 这里我按照每个不同系统归属的项目组为横向&#xff0c;性能测试团队作为职能部门为纵向的矩阵式组织架构为…

JUC学习(二)

目录 Doug Lea — JUC并发包的作者锁框架Lock和Condition接口可重入锁公平锁与非公平锁读写锁锁降级和锁升级队列同步器AQS底层实现公平锁一定公平吗&#xff1f;Condition实现原理 ——————————————————————————————— 在前面&#xff0c;我们了解…

ICV报告:乘光伏新能源汽车之势,功率器件蓄势待发

前言&#xff1a; 电力电子器件&#xff08;Power Electronic Device&#xff09;&#xff0c;又称为功率半导体器件&#xff0c;用于电能变换和电能控制电路中的大功率(通常指电流为数十至数千安&#xff0c;电压为数百伏以上)电子器件。功率器件能够承受和控制较大电流、电压…

无限阳光、自动收集阳光CALL、阳光产生速度

简单实现无限阳光 本次实验内容&#xff1a;通过逆向分析植物阳光数量的动态地址找到阳光的基址与偏移&#xff0c;从而实现每次启动游戏都能够使用基址加偏移的方式定位阳光数据&#xff0c;最后我们将通过使用C语言编写通用辅助实现简单的无限阳光外挂&#xff0c;在教程开始…

Vue Router路由管理器

目录&#xff1a; 相关理解基本路由几个注意事项嵌套&#xff08;多级&#xff09;路由路由的query参数命名路由路由的params参数路由的props配置路由跳转的replace方法编程式路由导航缓存路由组件activated和deactivated路由守卫路由器的两种工作模式 相关理解 vue-route…

博学谷学习记录】超强总结,用心分享 | 架构师 敏捷开发 学习总结

文章目录 敏捷开发1. 概述2. 敏捷开发 敏捷开发 1. 概述 随着软件开发技术的不断发展&#xff0c;现在出现了很多种不同的开发模式&#xff0c;其实敏捷开发已经成为现在很多企业开发应用程序都想要选择的开发方案&#xff0c;那么什么是敏捷开发呢&#xff1f;1.1 四种开发模…

Linux 配置Java环境(一)

Linux 配置Java环境 一、配置Java环境1、查看系统是否有java环境2、卸载系统自带的jdk3、创建一个文件夹用于存放java的压缩包4、包下载好的jdk拖到java文件夹5、安装jdk6、配置环境变量7、让配置生效8、验证是否配置成功 一、配置Java环境 1、查看系统是否有java环境 输入指…

nginx中location和rewrite

常用的Nginx 正则表达式 ^ &#xff1a;匹配输入字符串的起始位置 $ &#xff1a;匹配输入字符串的结束位置 * &#xff1a;匹配前面的字符零次或多次。如“ol*”能匹配“o”及“ol”、“oll” &#xff1a;匹配前面的字符一次或多次。如“ol”能匹配“ol”及“oll”、“olll…