降噪、超分辨率RED-Net之Image Restoration Using Very Deep Convolutional Encoder-Decoder Networks with Symmetr

本文主要是介绍降噪、超分辨率RED-Net之Image Restoration Using Very Deep Convolutional Encoder-Decoder Networks with Symmetr,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

使用具有对称跳过连接的非常深卷积编码器 - 解码器网络的图像恢复

Abstract

在本文中,我们提出了一种非常深的完全卷积编码 - 解码框架,用于图像恢复,如去噪和超分辨率。该网络由多层卷积和反卷积运算符组成,学习从损坏图像到原始图像的端到端映射。卷积层充当特征提取器,捕获图像内容的抽象,同时消除噪声/损坏。然后使用解卷积层来恢复图像细节。我们建议采用跳跃层连接对称地连接卷积层和反卷积层,训练收敛速度更快,并获得更高质量的局部最优值。首先,跳过连接允许信号直接反向传播到底层,因此解决了梯度消失的问题,使得训练深度网络更容易并且因此实现恢复性能增益。其次,这些跳过连接将图像细节从卷积层传递到去卷积层,这有利于恢复原始图像。值得注意的是,通过大容量,我们可以使用单一模型处理不同级别的噪音。实验结果表明,我们的网络比最新的最先进的方法获得了更好的性能。

1 Introduction

图像恢复的任务是从其损坏的观察中恢复干净的图像,这已知是一种不适定的逆问题。 通过适应不同类型的腐败分布,相同的数学模型适用于图像去噪和超分辨率等问题。最近,深度神经网络(DNN)已经在图像处理和计算机视觉任务中表现出优越的性能,从高级识别, 语义分割到低级去噪,超分辨率,去模糊,修复和恢复来自压缩图像的原始图像。 尽管DNN取得了进展,但一些研究问题仍有待解决。 例如,更深层次的网络通常可以实现更好的性能吗? 我们可以设计一个能够处理不同级别腐败的深度模型吗?

观察DNN最近在图像处理任务上的优越性能,我们提出了一种基于卷积神经网络(CNN)的图像恢复框架。我们观察到,为了获得良好的恢复性能,训练非常深的模型是有益的。同时,我们表明,由于大容量网络的优势,在处理多个不同级别的损坏时,单个网络可以实现非常有前途的性能。具体而言,所提出的框架学习从损坏的图像到干净的图像的端到端完全卷积映射。该网络由多层卷积和反卷积运算符组成。由于更深层次的网络往往更难以训练,我们建议将卷积层和反卷积层对称地连接到跳层连接,训练过程收敛得更快,更有可能获得高质量的局部最优。我们的主要贡献总结如下。
?本文提出了一种非常深的网络体系结构,它由一系列对称卷积和反卷积层组成,用于图像恢复。卷积层充当特征提取器,其对图像内容的主要组件进行编码,同时消除损坏。然后,解卷积层解码图像抽象以恢复图像内容细节。
?我们建议在相应的卷积层和反卷积层之间添加跳过连接。这些跳过连接有助于将渐变反向传播到底层并将图像细节传递到顶层,从而使端到端映射的训练更容易,更有效,从而在网络更深入时实现性能提升。依靠我们非常深的网络的大容量和适合能力,我们还建议使用单个模型处理不同级别的噪声/损坏。
?实验结果证明了我们的网络优于其他最新的最先进的图像去噪和超分辨率方法的优势,创造了这些主题的新记录

Related work

关工作文献中的图像修复已经做了大量工作。在调查中查看详细评论[21]。诸如Total variation [24,23],BM3D算法[5]和基于字典学习的方法[31,10,2]等传统方法在图像去噪和超分辨率等图像恢复主题上表现出非常好的性能。由于图像恢复通常是一个不适定的问题,正规化[34,9]的使用已被证明是必不可少的。图像恢复的一个活跃的,可能更有希望的类别是基于DNN的方法。堆积去噪自动编码器[ 29]是最着名的DNN模型之一,可用于图像恢复。谢等人。 [32]组合稀疏编码和DNN预训练与去噪自动编码器,用于低级视觉任务,如图像去噪和修复。其他基于神经网络的方法,如多层感知器[1]和CNN [15]用于图像去噪,以及DNN用于图像或视频超分辨率[4,30,7,14]和压缩伪影减少[6]这些年来一直在积极研究。 Burger等人。 [1]提出了一种基于补丁的算法,用简单的多层感知器学习。他们还得出结论,对于大型网络,大型训练数据,神经网络可以实现最先进的图像去噪性能。 Jain和Seung [15]提出了一个完全卷积的CNN用于去噪。他们发现CNN提供与小波和马尔可夫随机场(MRF)方法相当甚至更优越的性能。崔等人。 [4]在多尺度上对输入图像采用非局部自相似(NLSS)搜索,然后以逐层方式使用协同局部自编码器进行超分辨率。董等人。 [7]提出直接学习低/高分辨率图像之间的端到端映射。王等人。 [30]认为,传统稀疏编码所代表的领域专业知识可以结合起来,以实现进一步改进的结果。 DNN方法的一个优点是这些方法纯粹是数据驱动的,并且没有关于噪声分布的假设。

2 Very deep RED-Net for Image Restoration

所提出的框架主要包含一系列卷积层和对称反卷积层,如图1所示。我们称之为“RED-Net” - 非常深的残余编码器 - 解码器网络

2.1 Architecture

该框架完全是卷积和反卷积的。在每次卷积和反卷积之后添加校正层。卷积层充当特征提取器,它保留图像中对象的主要组件,同时消除损坏。然后组合去卷积层以恢复图像内容的细节。反卷积层的输出是输入图像的“干净”版本。此外,跳过连接也从卷积层添加到其对应的镜像反卷积层。
卷积特征映射以元素方式传递给解卷积特征映射并与解卷积特征映射求和,并在校正后传递到下一层。
对于低级别的图像恢复问题,我们更喜欢在网络中不使用池化或解除池化,因为通常池化会丢弃对这些任务至关重要的有用图像细节。在VGG模型[27]的推动下,卷积和反卷积的内核大小设置为3*3,这表现出了出色的图像识别性能。值得一提的是,输入图像的大小可以是任意的,因为我们的网络本质上是像素预测。网络的输入和输出是相同大小的图像w* H * c,其中w,h和c是通道的宽度,高度和数量。在本文中,我们使用c = 1虽然它可以直接应用于c> 1的图像。我们发现使用64个特征映射进行卷积和反卷积层可以获得满意的结果,尽管更多的特征映射会带来稍微好一点的性能。从上述架构得出,在这项工作中,我们主要用两个网络进行实验,分别是20层和30层。

2.1.1 Deconvolution decoder

最近提出了将卷积和反卷积层结合起来的体系结构[22,12]用于语义分割。与卷积层相反,其中滤波器窗口内的多个输入激活被融合以输出单个激活,解卷积层将单个输入激活与多个输出相关联。反卷积通常用作可学习的上采样层。一个可以简单地用卷积替换反卷积,这导致一种与最近提出的非常深的完全卷积神经网络非常相似的架构[19,7]。但是,完全卷积模型和我们的模型之间存在差异。
首先,在完全卷积的情况下,逐步消除噪声,即在每层之后降低噪声水平。在此过程中,图像内容的细节可能会丢失。然而,在我们的网络中,卷积保留了主要图像内容。然后使用去卷积来补偿细节。我们将5层和10层完全卷积网络与我们的网络进行比较(结合卷积和反卷积,但没有跳过连接)。对于完全卷积网络,我们使用填充和上采样输入使输入和输出大小相同。对于我们的网络,前5层是卷积的,后5层是反卷积的。训练的所有其他参数都是相同的。在峰值信噪比(PSNR)方面,使用去卷积比完全卷积对应物稍好一些。另一方面,要在具有有限计算能力的设备上应用深度学习模型,例如移动电话,必须加速测试阶段。在这种情况下,我们建议在卷积层中使用下采样来减小特征映射的大小。为了获得与输入相同大小的输出,去卷积用于对对称去卷积层中的特征图进行上采样。我们通过实验发现,几乎可以忽略不计的性能下降,可以很好地提高测试效率。

 2.1.2 Skip connections

一个直观的问题是,解卷积是否只能从图像抽象中恢复图像细节?我们发现在只有几层卷积的浅层网络中,反卷积能够恢复细节。但是,当网络更深或使用最大池等操作时,解卷积不能很好地工作,可能是因为卷积中已经丢失了太多的图像细节。第二个问题是,当我们的网络更深入时,它是否会实现性能提升?我们观察到更深层次的网络经常遭受梯度消失并变得难以训练 - 文献中已经很好地解决了这个问题。为了解决上述两个问题,受到公路网[28]和深度剩余网络[11]的启发,我们补充说跳过两个相应的卷积和反卷积层之间的连接,如图1所示。构建块如图2所示。使用此类连接有两个原因。首先,当网络变得更深时,如上所述,图像细节可能会丢失,使得反卷积在恢复它们时变得更弱。但是,跳过连接传递的特征映射带有很多图像细节,这有助于解卷积以恢复更好的清晰图像。其次,跳过连接也可以实现向底层反向传播渐变的好处,这使得训练更深入的网络变得更加容易。在[28]和[11]中观察到。请注意,我们的跳过层连接与[28]和[11]中提出的连接非常不同,其中唯一关注的是优化方面。在我们的例子中,我们想要将卷积特征映射的信息传递给相应的反卷积层。而不是直接学习从输入X到输出Y的映射,我们希望网络适合问题的残差[11],其表示为F(X)=Y

这篇关于降噪、超分辨率RED-Net之Image Restoration Using Very Deep Convolutional Encoder-Decoder Networks with Symmetr的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/550163

相关文章

poj 1258 Agri-Net(最小生成树模板代码)

感觉用这题来当模板更适合。 题意就是给你邻接矩阵求最小生成树啦。~ prim代码:效率很高。172k...0ms。 #include<stdio.h>#include<algorithm>using namespace std;const int MaxN = 101;const int INF = 0x3f3f3f3f;int g[MaxN][MaxN];int n

如何在Visual Studio中调试.NET源码

今天偶然在看别人代码时,发现在他的代码里使用了Any判断List<T>是否为空。 我一般的做法是先判断是否为null,再判断Count。 看了一下Count的源码如下: 1 [__DynamicallyInvokable]2 public int Count3 {4 [__DynamicallyInvokable]5 get

2、PF-Net点云补全

2、PF-Net 点云补全 PF-Net论文链接:PF-Net PF-Net (Point Fractal Network for 3D Point Cloud Completion)是一种专门为三维点云补全设计的深度学习模型。点云补全实际上和图片补全是一个逻辑,都是采用GAN模型的思想来进行补全,在图片补全中,将部分像素点删除并且标记,然后卷积特征提取预测、判别器判别,来训练模型,生成的像

lvgl8.3.6 控件垂直布局 label控件在image控件的下方显示

在使用 LVGL 8.3.6 创建一个垂直布局,其中 label 控件位于 image 控件下方,你可以使用 lv_obj_set_flex_flow 来设置布局为垂直,并确保 label 控件在 image 控件后添加。这里是如何步骤性地实现它的一个基本示例: 创建父容器:首先创建一个容器对象,该对象将作为布局的基础。设置容器为垂直布局:使用 lv_obj_set_flex_flow 设置容器

word转PDF后mathtype公式乱码以及图片分辨率降低等一系列问题|完美解决

word转PDF后mathtype公式乱码以及图片分辨率降低等一系列问题|完美解决 问题描述 最近在投一篇期刊论文,直接提交word文档,当时没有查看提交预览,一审审稿意见全是:公式乱码、公式乱码、乱码啊!!!是我大意了,第二次提交,我就决定将word文档转成PDF后再提交,避免再次出现公式乱码的问题。接着问题又来了,我利用‘文件/导出’或‘文件/另存为’的方式将word转成PDF后,发现公式

.NET 自定义过滤器 - ActionFilterAttribute

这个代码片段定义了一个自定义的 ASP.NET Core 过滤器(GuardModelStateAttribute),用于在控制器动作执行之前验证模型状态(ModelState)。如果模型状态无效,则构造一个 ProblemDetails 对象来描述错误,并返回一个 BadRequest 响应。 代码片段: /// <summary>/// 验证 ModelState 是否有效/// </

.Net Mvc-导出PDF-思路方案

效果图: 导语:     在我们做项目的过程中,经常会遇到一些服务性的需求,感到特别困扰,明明实用的价值不高,但是还是得实现;     因此小客在这里整理一下自己导出PDF的一些思路,供大家参考。     网上有很多导出PDF运用到的插件,大家也可以看看其他插件的使用,学习学习; 提要:     这里我使用的是-iTextSharp,供大家参考参考,借鉴方案,完善思路,补充自己,一起学习

.net MVC 导出Word--思路详解

序言:          一般在项目的开发过程中,总会接收到一个个需求,其中将数据转换成Work来下载,是一个很常见的需求;          那么,我们改如何处理这种需求,并输出实现呢?          在做的过程中,去思考 1、第一步:首先确认,Work的存在位置,并创建字符输出路:             //在的项目中创建一个存储work的文件夹             string

asp.net 中GridView的使用方法

可以看看,学习学习 https://blog.csdn.net/zou15093087438/article/details/79637042

Red Hat环境Git的下载和配置

安装git:         yum install git 设置git信息:              git config --global user.name "github"          git config --global user.email "github@gmail.com" 生成ssh key:         ssh-keygen -t rsa -C "gi