introduction

图像恢复目标函数一般形式:

      

前一项为保真项(fidelity),后一项为惩罚项,一般只与去噪有关。

基于模型的优化方法可以灵活地使用不同的退化矩阵H来处理不同的图像恢复问题,而判别学习方法通过训练图像对数据集来学习图像退化模型。

基于模型的优化方法可以灵活的处理不同的逆问题(inverse problem),但通常耗时较多,而且需要复杂的先验,而判别学习方法速度快,但应用范围受一定限制。

采用分裂变量的方法(ADMM、半二次分裂(HQS)等),可以将判别学习方法训练的CNN去噪器作为模块插入基于模型的优化方法中,以解决其他逆问题(例如去模糊)。

半二次分裂HQS

分裂变量:

      

代价函数:

      

µ是一个在迭代中非增的惩罚参数。

重复迭代,交替对x,z更新:

      

其中第一项x是保真项(fidelity term,第二项是惩罚项(regularization term,第一项根据不同的退化矩阵有许多方法可以解出来。一个直接的解为:

      

而第二项可以写成高斯去噪器(噪声级别√λ/µ)形式:

      

这样图像先验Φ部分可以替代为去噪先验,这样一来,当图像先验条件未知或不足时,可以采用各种去噪器作为替代补充,也可以利用不同图像先验来联合求解一个互补去噪算法。这个性质在其他优化方法(如ISTA、FISTA等)中同样奏效,只要这个算法中有去噪子问题。

CNN去噪器

CNN相对于传统的去噪器(全变差、高斯混合模型、K-SVD、非局部均值、BM3D等)具有速度、性能和泛化能力上的优势。

CNN去噪器结构

      

s-DConv” denotes s-dilated convolution, s= 1, 2, 3 and 4. A dilated filter with dilation factor scan be simply interpreted as a sparse filter of size (2s+1) ×(2s+1) where only 9 entries of fixed positions are non-zeros.

整个算法过程:

   

通过迭代,实现交替对x,z更新,其中对z更新使用CNN denoiser.

results

去噪结果

去模糊结果

超分辨结果

Learning Deep CNN Denoiser Prior for Image Restoration阅读笔记的更多相关文章

  1. 论文解读《Learning Deep CNN Denoiser Prior for Image Restoration》

    CVPR2017的一篇论文 Learning Deep CNN Denoiser Prior for Image Restoration: 一般的,image restoration(IR)任务旨在从 ...

  2. (IRCNN)Learning Deep CNN Denoiser Prior for Image Restoration-Kai Zhang

    学习深度CNN去噪先验用于图像恢复(Learning Deep CNN Denoiser Prior for Image Restoration)-Kai Zhang 代码:https://githu ...

  3. 论文阅读笔记(二十一)【CVPR2017】:Deep Spatial-Temporal Fusion Network for Video-Based Person Re-Identification

    Introduction (1)Motivation: 当前CNN无法提取图像序列的关系特征:RNN较为忽视视频序列前期的帧信息,也缺乏对于步态等具体信息的提取:Siamese损失和Triplet损失 ...

  4. What are some good books/papers for learning deep learning?

    What's the most effective way to get started with deep learning?       29 Answers     Yoshua Bengio, ...

  5. Spark MLlib Deep Learning Deep Belief Network (深度学习-深度信念网络)2.1

    Spark MLlib Deep Learning Deep Belief Network (深度学习-深度信念网络)2.1 http://blog.csdn.net/sunbow0 Spark ML ...

  6. 个性探测综述阅读笔记——Recent trends in deep learning based personality detection

    目录 abstract 1. introduction 1.1 个性衡量方法 1.2 应用前景 1.3 伦理道德 2. Related works 3. Baseline methods 3.1 文本 ...

  7. Spark MLlib Deep Learning Deep Belief Network (深度学习-深度信念网络)2.3

    Spark MLlib Deep Learning Deep Belief Network (深度学习-深度信念网络)2.3 http://blog.csdn.net/sunbow0 第二章Deep ...

  8. (转) Learning Deep Learning with Keras

    Learning Deep Learning with Keras Piotr Migdał - blog Projects Articles Publications Resume About Ph ...

  9. Deep Learning of Graph Matching 阅读笔记

    Deep Learning of Graph Matching 阅读笔记 CVPR2018的一篇文章,主要提出了一种利用深度神经网络实现端到端图匹配(Graph Matching)的方法. 该篇文章理 ...

随机推荐

  1. git 从远程git服务上拉代码 git服务器非默认端口

    从服务器上拉代码有如下报错: fatal: Not a git repository (or any of the parent directories): .git 初始代本地版本库: [root@ ...

  2. Freemarker-2.3.22 Demo - No01_获取模板并直接输出

    package No01_获取模板并直接输出; import java.io.File; import java.io.FileOutputStream; import java.io.OutputS ...

  3. 【NOI】9272 偶数个三

    题目 链接:bajdcc/ACM 描述 在所有的N位数中,有多少个数中有偶数个数字3?结果模12345.(1<=N<=10000) 样例输入 2 样例输出 73 方法一:穷举 评价:最简单 ...

  4. 解决老是提示找不到Mapper文件无法执行定义的方法问题!

    尼玛,被mybatis的*Mapper.xml文件害惨了!整整两天都在围绕这个问题转圈! 先看问题长啥样吧!下面是通过逆向工程生成的Mapper.xml文件,包路径什么的都没有错! 但是每次调用Map ...

  5. iOS开关按钮UISwitch控件

    开关按钮UISwitch 在ViewController.h里面 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 #import <UIKit/UIKit ...

  6. IOS UITableView的代理方法详解

    一.UITableViewDataSourc(数据源代理) 1.必须实现的回调方法 返回每个分区的行数 - (NSInteger)tableView:(UITableView *)tableView ...

  7. 解决运行github项目build时间长问题

    运行github上的项目的时候,有时会build很长时间 可以打开项目所在目录修改这个文件:项目名XXX/gradle/wrapper/gradle-wrapper.properties 这个文件中的 ...

  8. CentOS 6.5 x64下Hadoop安装

    Apache Hadoop安装部署模式 单机(本地)模式(Standalone Mode) 伪分布模式(Pseudo-Distributed Mode) 完全分布模式(Fully Distribute ...

  9. u-boot中网口处理--硬件部分

    1.  网口硬件方案: AT91SAM9G10 + DM9000CEP: DM9000CEP为MAC+PHY解决方案,与MCU链接通过8位或16位数据总线. 内部SRAM为16Kbyte. 2. DM ...

  10. Python高级编程之生成器(Generator)与coroutine(四):一个简单的多任务系统

    啊,终于要把这一个系列写完整了,好高兴啊 在前面的三篇文章中介绍了Python的Python的Generator和coroutine(协程)相关的编程技术,接下来这篇文章会用Python的corout ...