Pyramid attention networks for image restoration
paper:https://arxiv.org/abs/2004.13824
code: https://github.com/SHI-Labs/Pyramid-Attention-Networks
1. 基本思想
作者指出,当前基于深度学习的方法只是在单个尺度上利用了self-similarity(do not take full advantage of self-similarities by relying on self-attention neural modules that only process information at the same scale)。在该论文里,作者提出了 pyramid attention module 用于图像修复,可以利用多尺度特征金字塔捕获 long-range 的特征关联。
在传统图像去噪方法中,NLmean、BM3D都是采用自相似性进行图像去噪的佼佼者,图像的自相似性非常重要。同时,作者指出,基于深度学习的方法大多使用non-local方法来获取 long-range 的信息,这样的模块早期被用于识别和分类任务,但是在 low-level 的视觉任务中也被证明非常有效。
但是,直接将 self-attention 应用于图像修复有一定的局限性:
- multi-scale non-local prior has not been explorered.
- pixel-wise matching used in the self-attention module is usually noisy for image restoration.
基于上述分析,作者提出了non-local pyramid attention 模块来捕获long-range信息。

如图所示,该方法可以挖掘 multi-scale self-examplars 来提高重建性能,主要有三个优点:
- 将现有non-local方法的扩展到多尺度空间(现有non-local方法的搜索空间仅限于金字塔的最底端)
- 不同大小特征之间的 long-range 依赖被较好的建模
- 可以降低特征中的噪声,进而提升性能。
2. 方法

如图2a所示,non-local attention 在全图进行响应特征平均,可以这样描述:
\]
其中\(\phi\) 计算相似性,\(\theta\)表示特征变换。上述公式仅在统一尺度空间进行处理,难以利用跨尺度的特征。
图2b为 scale agnostic attention,是 2a 的一种扩展。给定一个尺度\(s\),如何评价\(x^j\)和\(x^j_{\delta(s)}\)之间的相似性,以及如何把\(x^j_{\delta(s)}\)聚合到\(y^i\)是两个关键问题。为了解决这两个问题,作者将\(x^j_{\delta(s)}\)下采样为像素特征\(z^j\),由于需要在整个特征图上搜索,作者对原始输入\(x\)进行下采样得到特征图\(z\),然后相似性可以这样计算:
\]
同时,作者将该计算方式扩展到金字塔形式,金字塔注意力具有跨尺度特征自相似建模能力。
在具体实现时,相似性函数\(\phi\)使用了embeded gaussian。在特征变换函数\(\theta\)方面,使用简单的线性变换。同时,为了改进匹配的鲁棒性,添加了额外的近邻相似约束,类似于经典的非局部均值滤波,添加了一个强约束信息:近邻且相似。这样有助于学习相关特征,同时抑制不相关特征。

图3 为 Pyramid attention 模块的一个示意图,在损失函数方面,作者选择了L1损失。
3. 实验与结论
作者使用了一个5层的金字塔,网络包含80个残差块,提出的PA模块插入在第40个残差块之后,第41个残差块之前。该方法在图像降噪、去马赛克、去压缩伪影、超分辨率方面都进行了实验,效果都比较好。具体细节和ablation study 可以参考论文,不再细说。
该论文使用了一个 simple backbone,然后只加了一个 pyramid attention 模块,就取得了非常好的效果。作者认为,该模块可以在以后的图像修复网络中,作为基础模块来使用。
Pyramid attention networks for image restoration的更多相关文章
- 论文笔记之:Graph Attention Networks
Graph Attention Networks 2018-02-06 16:52:49 Abstract: 本文提出一种新颖的 graph attention networks (GATs), 可 ...
- RCAN——Image Super-Resolution Using Very Deep Residual Channel Attention Networks
1. 摘要 在图像超分辨领域,卷积神经网络的深度非常重要,但过深的网络却难以训练.低分辨率的输入以及特征包含丰富的低频信息,但却在通道间被平等对待,因此阻碍了网络的表示能力. 为了解决上述问题,作者提 ...
- 论文解读(GATv2)《How Attentive are Graph Attention Networks?》
论文信息 论文标题:How Attentive are Graph Attention Networks?论文作者:Shaked Brody, Uri Alon, Eran Yahav论文来源:202 ...
- 谣言检测——《MFAN: Multi-modal Feature-enhanced Attention Networks for Rumor Detection》
论文信息 论文标题:MFAN: Multi-modal Feature-enhanced Attention Networks for Rumor Detection论文作者:Jiaqi Zheng, ...
- 谣言检测(ClaHi-GAT)《Rumor Detection on Twitter with Claim-Guided Hierarchical Graph Attention Networks》
论文信息 论文标题:Rumor Detection on Twitter with Claim-Guided Hierarchical Graph Attention Networks论文作者:Erx ...
- GRAPH ATTENTION NETWORKS
基本就是第一层concatenate,第二层不concatenate. 相关论文: Semi-Supervised Classification with Graph Convolutional Ne ...
- Recent papers on Action Recognition | 行为识别最新论文
CVPR2019 1.An Attention Enhanced Graph Convolutional LSTM Network for Skeleton-Based Action Recognit ...
- [阅读笔记]EfficientDet
EfficientDet 文章阅读 Google的网络结构不错,总是会考虑计算性能的问题,从mobilenet v1到mobile net v2.这篇文章主要对近来的FPN结构进行了改进,实现了一种效 ...
- (转)注意力机制(Attention Mechanism)在自然语言处理中的应用
注意力机制(Attention Mechanism)在自然语言处理中的应用 本文转自:http://www.cnblogs.com/robert-dlut/p/5952032.html 近年来,深度 ...
随机推荐
- Redis高级特性
redis的事务(transaction) 转载:https://blog.csdn.net/fmwind/article/details/78065236 redis中的事务是一组命令的集合.事务同 ...
- [源码解析]Oozie来龙去脉之提交任务
[源码解析]Oozie来龙去脉之提交任务 0x00 摘要 Oozie是由Cloudera公司贡献给Apache的基于工作流引擎的开源框架,是Hadoop平台的开源的工作流调度引擎,用来管理Hadoop ...
- TypeScript学习——数组、元组、接口(2)
数组 数组类型注解 const numberArr: (number | string)[] = [1, '2', 3]; //既可以是number 也可以是string const stringAr ...
- Java中栈和堆讲解
之前对JVM中堆内存和栈内存都是一直半解,今天有空就好好整理一下,用作学习笔记. 包括Java程序在内,任何程序在运行时都是要开辟内存空间的.JVM运行时在内存中开辟一片内存区域,启动时在自己的内存区 ...
- Spring Boot 整合 Shiro-登录认证和权限管理
这篇文章我们来学习如何使用 Spring Boot 集成 Apache Shiro .安全应该是互联网公司的一道生命线,几乎任何的公司都会涉及到这方面的需求.在 Java 领域一般有 Spring S ...
- Unable to load configuration. - action - file:/C:/Program%20Files/Apache%20Software%20Foundation/Tomcat%209.0/webapps/Teacher04/WEB-INF/classes/struts.xml:9:54
发布一个struts2项目的时候tomcat显示下面这个错误,我的本能感觉就是我的struts.xml或者web.xml写错了,可是我字母找都没发现,于是百度一番,可是我对那些人的回答表示怀疑,感觉应 ...
- 烦人的B数
B树:二叉树,每个结点只存储一个关键字,等于则命中,小于走左结点,大于走右结点: B-树:多路搜索树,每个结点存储M/2到M个关键字,非叶子结点存储指向关键字范围的子结点: 所有关键字在整颗树中出现, ...
- 怎么给tbody加滚动条?通过css样式给表格tbody加垂直滚动条
tbody加滚动条实现思路: 1,把tbody设置成display:block,然后就对其高度设置一个固定值,overflow设置成auto. 2,把thead的tr设置成display:block. ...
- CF3D Least Cost Bracket Sequence 题解
题目 This is yet another problem on regular bracket sequences. A bracket sequence is called regular, i ...
- UVA - 11300 Spreading the Wealth(数学题)
UVA - 11300 Spreading the Wealth [题目描述] 圆桌旁边坐着n个人,每个人有一定数量的金币,金币的总数能被n整除.每个人可以给他左右相邻的人一些金币,最终使得每个人的金 ...