论文Attention-guided CNN for image denoising解读
文章目录
- 1. 论文简介
- 2. 模型结构分析
- 1) 网络架构
- 2) 损失函数
- 3) Sparse block(SB)模块分析
- 3) Feature enhancement block(FEB)模块分析
- 3) Attention block(AB)模块分析
- 3) Reconstruction block(RB)模块分析
- 3. 实验
1. 论文简介
该论文介绍了一个注意力引导的降噪卷积神经网络(ADNet)。该网络主要包括4个模块,分别是稀疏模块(sparse block,SB),特征提升模块(feature enhancement block, FEB),注意力模块( attention block,AB),重构模块(reconstruction
block,RB)。其中,SB模块通过将空洞卷积和普通卷积结合的方式删除噪声,平衡输出图片效果和运行效率。FEB模块通过集成全局和局部的特征信息优化模型。AB模块用来提取隐藏在复杂背景中的噪声,该模块对于处理复杂噪声图片(如真实噪声图片)是十分有效的。RB模块通过求得的噪声和原始图片重构出无噪声的图片。多重实验证明该模型在合成噪声图片、真实噪声图片和盲去噪任务下都能得到较好的定量和定性结果。
2. 模型结构分析
1) 网络架构
上图清晰地显示了模型中的四个模块。可以看到该模型一共有17层卷积,其中SB中12层,FEB中4层,AB中1层。设 IN 为输入的噪声图片,IR 为预测的残差图片(也可以称为噪声映射图片),则该模型关系如下:
OSB = fSB(IN)
其中OSB是SB模块的输出,fSB是SB模块的函数,IN是输入的噪声图片。
OFEB = fFEB(IN, OSB)
其中OFEB是FEB模块的输出,fFEB是FEB模块的函数。这里就可以看出来FEB模块处理时,不仅使用了上一个模块输出的结果,还使用了原始含噪图像的信息。上一个模块输出的结果是局部信息,而原始图片信息其实就是全局信息。这就和概述中FEB的作用对应上了。
IR = fAB(OFEB)
fAB是AB模块的函数。
ILC = IN - IR = IN - fAB(fFEB(IN, fSB(IN))) = IN - fADNet(IN)
*ILC是预测的去噪图片。
2) 损失函数
ADNet模型应用了退化方程 y = x + v ,经过上面的介绍我们知道,ADNet其实是一个预测残差图片的模型。那么这里就使用 v = y - x 来计算真实残差。也就是 INi - ICi ,即输入的第 i 个含噪的原始图片减去第 i 个不含噪的对应图片,得到真实的残差图片。再使用 fADNet(INi) 计算得出预测的第i个图片的残差图片。预测值减去真实值,计算L2损失函数。
3) Sparse block(SB)模块分析
OSB = R(B(D(CBR(CBR(R(B(D(CBR(CBR(CBR(R(B(D(CBR(CBR(R(B(D(CBR(IN )))))))))))))))))))).
OSB代表SB模块的输出,R代表ReLU激活函数,B代表BN,D代表空洞卷积,DBR代表Conv+BN+ReLU。
作用:利用稀疏性,解决利用过深的网络训练模型,计算量过大的问题。
分析:
作者引用论文指出稀疏性有助于图片分析。因此提出建立一个稀疏模块SB。这里的稀疏性就体现在该模块的卷积并不单一,而是将空洞卷积和普通卷积结合,按照一定顺序排列。
该模块一共有12层卷积,其中只有2种卷积类型,分别是: dilated Conv+BN+ReLU 和
Conv+BN+ReLU。其中空洞卷积在第2、5、9、12层,其他层是普通卷积。普通卷积层数大于空洞卷积层数,是因为这样排列能提高性能还能降低模型的复杂性。
这里作者做了实验判断了空洞卷积层处在不同位置或应用不同数量时取得的噪声率峰值。
上面表格中变量 | 解释 |
---|---|
PSNR | 表示噪声率的峰值信号(peak signal to noise ratio),值越大,效果越好。 |
SB with extended layers | 表示文中的SB模块,空洞卷积在2、5、9、12层。 |
EHE with extended layers | 空洞卷积在2、5、8、11层,刚好每2个空洞卷积间隔3层普通卷积层。 |
SHE with extended layers | 空洞卷积在2、3、4、5层,是连续的空洞卷积。 |
ADC with extended layers | 所有12层都是空洞卷积层。 |
CB | 所有12层都是常规卷积层 |
可以看到SB的卷积层分布方式是效果最好的。这里我感觉作者也是一个一个试出来的,因为他也没说出个所以然为什么这种分布是最好的。
此外作者也比较了SB with extended layers和ADC with extended layers两种情况下不同大小噪声图片的运行时间,结果如下表所示,SB模块各种情况下运行时间都更短。
由于空洞卷积有更大的感受野,因此这些空洞卷积层被认为是high energy points。而其他的普通卷积层被认为是low energy points。high energy points和low energy points结合就可以认为是表现了稀疏性。
12个卷积层的卷积核大小都是 3 × 3,第1个卷积层的输入通道数是c,也就是说,输入图片是彩色图片时c=3,否则c=1。2 - 12层的输入和输出都是64。
3) Feature enhancement block(FEB)模块分析
OFEB = T (Cat(C(CBR(CBR(CBR(OSB)))), IN ))
OFEB代表FEB模块的输出,T代表Tanh激活函数,Cat代表拼接操作,C代表Conv,IN是输入图片。
作用:提升模型表达效果。
构成:
FEB模块有4层卷积,分别是3层 Conv+BN+ReLU和1层Conv。13-15层是Conv+BN+ReLU卷积层,过滤器大小是 64 × 3 × 3 × 64。16层是普通卷积,过滤器大小是 64 × 3 × 3 × c(c值和SB中的c值一样)。
FEB中的Cat不是下面那个"Cat",而是拼接操作。该操作是将16层的输出结果和最开始输入模型的含噪图片拼接起来,从而提升该模型的效果。
Tanh为激活函数。
3) Attention block(AB)模块分析
作用:利用注意力机制,解决图片背景过于复杂隐藏图片本身特征的问题。
当图片有复杂的背景时,背景会掩盖图像的特征,给训练造成困难。文中作者提出AB模块来解决该问题。
AB模块中卷积为2c × 1 × 1 × c。
AB通过以下两步实现注意力机制:
1 使用 1 × 1的卷积将提取的特征压缩成一个向量,向量的值作为调整前面步骤的权重,从而提升降噪效率。
2 利用获取的权重乘以第16层(也就是FEB模块的Conv层)输出的结果,从而提取更主要的噪声信息。
3) Reconstruction block(RB)模块分析
利用残差重构去噪图像。
ILC = IN - IR = IN - fAB(fFEB(IN, fSB(IN))) = IN - fADNet(IN)
3. 实验
实验使用了多种数据集,下面贴出对应定性、部分定量结果。
论文Attention-guided CNN for image denoising解读相关推荐
- 暗光增强论文Attention Guided Low-light Image Enhancement with a Large Scale Low-light Simulation Dataset翻译
Abstract 低光图像增强是一个挑战,因为它不仅需要考虑亮度恢复,还需要考虑复杂的问题,如颜色失真和噪声通常隐藏在黑暗中.简单地调整低光图像的亮度将不可避免地放大这些噪声.针对这一难题,本文提出了 ...
- 论文阅读——AG-Net:Attention Guided Network for Retinal Image Segmentation
AG-Net:Attention Guided Network for Retinal Image Segmentation AG-Net:注意力引导网络用于视网膜图像分割 from MICCAI2 ...
- 读论文 Attention Scaling for Crowd Counting
论文地址: https://openaccess.thecvf.com/content_CVPR_2020/papers/Jiang_Attention_Scaling_for_Crowd_Count ...
- ATT-CNN(attention based CNN)
ATT-CNN文本分类,论文解读(Attention-based Convolutional Neural Networks for Sentence Classification) Attentio ...
- 二维码提升对比度文献调研(4)--Attention Guided Low-light Image Enhancement
简介 (1)论文2: Attention Guided Low-light Image Enhancement with a Large Scale Low-light Simulation Data ...
- 《Designing and Training of A Dual CNN for Image Denoising》阅读笔记
一.论文 <Designing and Training of A Dual CNN for Image Denoising> 摘要:摘要-用于图像去噪的深度卷积神经网络(CNN)最近吸引 ...
- 论文阅读笔记-Gated relational stacked denoising autoencoder with localized author embedding for
论文题目:Gated relational stacked denoising autoencoder with localized author embedding for global cita ...
- 论文笔记7:Image Blind Denoising With Generative Adversarial Network Based Noise Modeling
Image Blind Denoising With Generative Adversarial Network Based Noise Modeling 引言 相关工作 基于GAN-CNN的盲去噪 ...
- 论文理解:“Designing and training of a dual CNN for image denoising“
译:用于图像去噪的双CNN的设计与训练 -- Knowledge-Based Systems -- 2021 目录 一.引言 二.方法 2.1.网络结构 2.2.损失函数 三.实验结果 一.引言 模型 ...
最新文章
- 移动热潮催火统一通信
- [开源]FreeSCADA的通道数据与控件属性关联以及自动刷新机制研究
- 认识高清视频编码(MPEG、H.264、WMV-HD、RMVB)
- java中程序跳转_java程序中先后台交互的两种实现方式以及页面之间的跳转
- Ubuntu 安装 Apache Airflow
- Simhash算法原理和网页查重应用
- 专访吴军:未来10年,AI的发展方向是应用,不会出现重大的理论突破
- 百度百科爬虫爬人物信息
- Sign in with Apple (通过Apple 登录)
- 解决win10和ubuntu双系统下win10时间偏差的问题
- USTC English Club20171010
- STM32 —— OLED 屏幕入门
- 育润多维发力慈善领域,勇抗企业公益大旗
- 将RTSP流保存为本地TS文件
- Centos7学习——echo命令
- 滚雪球学 Python 第三轮,Python Web 之 Django 的世界
- matlab语音识别系统(源代码),matlab语音识别系统(源代码)最新版DOC.doc
- NOIP2016(bao)游(zha)记
- 变频器的工作原理和功能应用
- CIFAR10代码解释
热门文章
- java write阻塞_java socket/output stream writes:他们阻塞?
- 计算机系统-记录Bochs调试器几个常用命令
- x86汇编语言(2) 认识8086处理器
- 模拟java_【最强Java面试题系列】消息队列面试场景 “模拟”
- Flutter社区和资源传送门
- 漫谈iOS Crash收集框架
- zoj 2112 树状数组 套主席树 动态求区间 第k个数
- PC-用Windows XP自带的组策略加固操作系统
- 【BZOJ】【3671】【NOI2014】随机数生成器
- JVM学习笔记(一)JDKJREJVM