论文解读《Deep Plug-and-Play Super-Resolution for Arbitrary Blur Kernel》
Deep Plug-and-Play Super-Resolution for Arbitrary Blur Kernels:
一旦退化模型被定义,下一步就是使用公式表示能量函数(energy function,也可以称为目标函数).通过MAP(Maximum A Posterriori) probability, 能量函数能够被给出:
$min_{x}\frac{1}{2\sigma^{2}}||\textbf{y} - (x\downarrow_{s})\otimes \textbf{k}||^{2} + \lambda \Phi(x)$
其中$\frac{1}{2\sigma^{2}}||\textbf{y} - (x\downarrow_{s})\otimes \textbf{k}||^{2}$ 是数据保真项或似然项,它由退化函数决定,$\Phi(x)$是一个正则化项或先验项,其中$\lambda$是正则化系数;
对于判别学习方法(discriminative learning method) ,前向传播模型恰恰对应了一个能量函数,退化模型被训练成对的高分辨率和低分辨率的图像对隐式的定义。这解释了为什么现在DNN-based SISR方法训练在双三次退化对于真实图像表现很差。
为了求出上面的式子,我们首先采用变量分割技术引入一个辅助变量$\textbf{z}$,得到下式这个相等的优化公式:
$\hat{x} = argmin_{x} \frac{1}{2\sigma^{2}}||\textbf{y} - \textbf{z} \otimes \textbf{k}||^{2} + \lambda \Phi(x)$
$subject to \textbf{z} = \textbf{x}\downarrow_{s}$
我们处理上式使用半二次分割(half quadratic splitting, HQS)算法,注意其他算法比如ADMM也能够被使用。
一般的,HQS最小化这个涉及一个增加的半二次惩罚项问题,来处理上式。目标函数写为:
$L_{\mu}(\textbf{x},\textbf{z}) = \frac{1}{2\sigma^{2}}||\textbf{y} - \textbf{z} \otimes \textbf{k}||^{2} + \lambda \Phi(x) + \frac{\mu}{2}||\textbf{z} - \textbf{x}\downarrow_{s}||^{2} $
其中 $\mu$ 是一个惩罚参数,一个非常大的$\mu$会强迫$\textbf{z}$近似相等于$\textbf{x}\downarrow_{s}$,通常,$\mu$在接下来的迭代求解过程中以非下降阶(non-descending order)的形式变化。
$z$和$x$ 可以看作是一个交替最小化问题,使用下面两个公式表示:
$\textbf{z}_{k+1} =$ argmin$_{\textbf{z}}||y - \textbf{z} \otimes \textbf{k}||^{2} + \mu\sigma^{2}||\textbf{z} - \textbf{x}_{k}\downarrow_{s}||^{2}$(7)
$\textbf{x}_{k+1}$ = argmin$_{\textbf{x}} \frac{\mu}{2}|| \textbf{z}_{k+1} - \textbf{x}\downarrow_{s} ||^{2} + \lambda \Phi(x)$
特别地,通过假设卷积是在圆形边界条件下进行的,Eqn(7)具有快速闭合形式的解法:
$\textbf{z}_{k+1} = \textit{F}^{-1} (\frac{\bar{\textit{F}(\textbf{k})}\textit{F}(\textbf{y}) + \mu\sigma^{2} \textit{F}(x_{k}\downarrow_{s})}{\bar{\textit{F}(\textbf{k})}\textit{F}(\textbf{k}) + \mu \sigma^{2}})$
Learning Deep CNN Denoiser Prior for Image Restoration:
Method:
--可以帮助噪声先验(denoiser prior),which作为基于模型的最优化方法的其中一个模块来解决这些逆问题(e.g., deblurring).
--噪声先验通过判别式学习方法(discriminative learning method)获得;
So, 结合上面两点,==》通过CNN训练一个噪声器,加入到基于模型的最优化方法来解决其他的逆问题;
在变量分离技术的帮助下,我们可以同时使用两种方法的各自优点;
变量分割技术(variable spitting techniques):
变量分离技术(variable splitting technique),如ADMM(alternating direction method of multipliers ),HQS(half quadratic splitting)方法,使得可以分别处理保真项(fidelity term)和正则项(regularization term),其中正则项仅对应于去噪的子问题。因此,可以在基于模型的优化方法中使用discriminative denoisers,本文的目标在于训练一系列快速高效的discriminative denoisers,并把它们用于基于模型优化的方法中,解决求逆问题。不使用MAP相关方法,而是使用CNN学习denoisers。
(也可以理解为基于模型的方法一般需要反复迭代去解这个公式,而基于判别学习的方法则通过损失函数去学习先验参数。这里可以将两者进行结合,正则项可以对应于一个去噪的子问题,这个子问题可以通过判别式学习的去噪器去获得,从而带来图像先验,使得基于模型的方法可以快速工作)
贡献:
-训练出一系列CNN denoisers。使用变量分离技术,强大的denoisers可以为基于模型的优化方法带来图像先验。
-学习到的CNN denoisers被作为一个模块部分插入基于模型的优化方法中,解决其他的求逆问题。
半二次方分裂 Half Quadratic Splitting (HQS)
$\hat{x}=\left. arg \text{ }min \right|_{x} \frac{1}{2}|| y-H x||^{2}+\lambda \Phi(x) \text{ }\text{ }\text{ }\text{ }\text{ }\text{ }(2)$
引入辅助变量$z, z = x$,HQS尝试最小化下面的成本函数:
$L_{\mu}(x,z)=\frac{1}{2}|| y-H x||^{2}+\lambda\Phi(z)+\frac{\mu}{2}||z-x||^{2}\text{ }\text{ }\text{ }\text{ }\text{ }\text{ }(5)$
$\mu$ 惩罚参数,在接下来的迭代求解过程中以非下降阶(non-descending order)的形式变化;
等式(5)可以被下面两个迭代的式子所解决:变量分割技术,
$x_{k+1}=\left. arg\text{ }min \right|_{x}|| y-H x||^{2}+\mu||x-z_k||^{2}\text{ }\text{ }\text{ }\text{ }\text{ }\text{ }(6a)$
$z_{k+1}=\left. arg\text{ } min \right|_{z}\frac{\mu}{2} ||z-x_{k+1}||+\lambda\Phi(z)\text{ }\text{ }\text{ }\text{ }\text{ }\text{ }\text{ }\text{ }\text{ }\text{ }\text{ }(6b)$
可以看到保真项与正则化项被分开到两个子问题中
等式(6a)保真项在二次正则化最小二乘问题,有很多针对不同的退化矩阵的快速解法,最简单的解法是
$x_{k+1}=(H^{T}H+\mu I)^{-1}(H^{T}y+\mu z_{k}) \text{ }\text{ }\text{ }\text{ }\text{ }\text{ }(7)$
正则化项涉及在6(a)中,可以重写为(8)
$z_{k+1}=\left. arg\text{ } min \right|_{z} \frac{1}{2(\sqrt{\lambda / \mu})^2} ||x_{k+1}-z||^2+\Phi(z)\text{ }\text{ }\text{ }\text{ }\text{ }\text{ }(8)$
通过贝叶斯概率公式,等式(8)可以看做是对应于一个去噪任务,噪声水平为$\sqrt{\lambda / \mu}$,所以可以通过去噪器实现求出$z_{k+1}$.
以噪声水平$\sqrt{\lambda / \mu}$高斯去噪器的去噪图像$x_{k+1}$.去噪器可以作为(2)的模块,为了强调这个,重写(8)
$z_{k+1}=Denoiser(x_{k+1},\sqrt{\lambda / \mu})\text{ }\text{ }\text{ }\text{ }\text{ }\text{ }(9)$
值得注意的是图像先验$\Phi$可以间接被去噪先验替代,这种解法有一些优点:
-- 他允许使用各种灰度和彩色降噪器去解决各种inverse 问题;
-- 求解Eqn2时,显式图像先验$\Phi(\cdot)$是未知的;
-- 利用多个互补(complementary)的去噪器,利用不同的图像先验,可以共同解决一个特定的问题;
论文解读《Deep Plug-and-Play Super-Resolution for Arbitrary Blur Kernel》的更多相关文章
- 《Population Based Training of Neural Networks》论文解读
很早之前看到这篇文章的时候,觉得这篇文章的思想很朴素,没有让人眼前一亮的东西就没有太在意.之后读到很多Multi-Agent或者并行训练的文章,都会提到这个算法,比如第一视角多人游戏(Quake ...
- ImageNet Classification with Deep Convolutional Neural Networks 论文解读
这个论文应该算是把深度学习应用到图片识别(ILSVRC,ImageNet large-scale Visual Recognition Challenge)上的具有重大意义的一篇文章.因为在之前,人们 ...
- 《Deep Feature Extraction and Classification of Hyperspectral Images Based on Convolutional Neural Networks》论文笔记
论文题目<Deep Feature Extraction and Classification of Hyperspectral Images Based on Convolutional Ne ...
- Quantization aware training 量化背后的技术——Quantization and Training of Neural Networks for Efficient Integer-Arithmetic-Only Inference
1,概述 模型量化属于模型压缩的范畴,模型压缩的目的旨在降低模型的内存大小,加速模型的推断速度(除了压缩之外,一些模型推断框架也可以通过内存,io,计算等优化来加速推断). 常见的模型压缩算法有:量化 ...
- Training Deep Neural Networks
http://handong1587.github.io/deep_learning/2015/10/09/training-dnn.html //转载于 Training Deep Neural ...
- Training (deep) Neural Networks Part: 1
Training (deep) Neural Networks Part: 1 Nowadays training deep learning models have become extremely ...
- [CVPR2015] Is object localization for free? – Weakly-supervised learning with convolutional neural networks论文笔记
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px "Helvetica Neue"; color: #323333 } p. ...
- Training spiking neural networks for reinforcement learning
郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! 原文链接:https://arxiv.org/pdf/2005.05941.pdf Contents: Abstract Introduc ...
- CVPR 2018paper: DeepDefense: Training Deep Neural Networks with Improved Robustness第一讲
前言:好久不见了,最近一直瞎忙活,博客好久都没有更新了,表示道歉.希望大家在新的一年中工作顺利,学业进步,共勉! 今天我们介绍深度神经网络的缺点:无论模型有多深,无论是卷积还是RNN,都有的问题:以图 ...
- 论文翻译:BinaryConnect: Training Deep Neural Networks with binary weights during propagations
目录 摘要 1.引言 2.BinaryConnect 2.1 +1 or -1 2.2确定性与随机性二值化 2.3 Propagations vs updates 2.4 Clipping 2.5 A ...
随机推荐
- springboot集成swagger文档
//此处省略springboot创建过程 1.引入swagger相关依赖(2个依赖必须版本相同) <dependency> <groupId>io.springfox</ ...
- 【CF1425A】 Arena of Greed题解
原题链接 简要翻译: Mr.Chanek与另一个人玩一个取硬币游戏,他先手.玩家在自己的回合内可以取走硬币堆中的一个.如果硬币堆里有偶数个硬币,玩家也可以选择取走硬币总数的一半.两名玩家都是绝对聪明的 ...
- Python-列表推导式、生成器、字典推导式
列表推导式 [] + for + if 算子.循环.条件, 对相同的数据进行处理, 算子也可以是函数 number = [i for i in range(1, 101) if i % 2 == 0] ...
- ActiveMQ详细入门教程系列(一)
一.什么是消息中间件 两个系统或两个客户端之间进行消息传送,利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成.通过提供消息传递和消息排队模型,它可以在分布式环境下 ...
- 6-kubernetes网络
1.service存在的意义 防止破的失联(服务发现) 定义一组pod的访问策略(提供负载均衡) 2.pod与service的关系 通过label-selector相关联 通过service实现pod ...
- python软件安装-Windows
开发语言: 高级语言:Java.C.PHP.Go.ruby.c++ #字节码 低级语言:C.汇编 #机器码 语 ...
- Apple uses Multipath TCP
http://blog.multipath-tcp.org/blog/html/2018/12/15/apple_and_multipath_tcp.html December 15, 2018 Ap ...
- 手工实现docker的vxlan
前几天了解了一下docker overlay的原理,然后一直想验证一下自己的理解是否正确,今天模仿docker手工搭建了一个overlay网络.先上拓扑图,其实和上次画的基本一样.我下面提到的另一台机 ...
- CSS字体属性与文本属性
CSS字体属性与文本属性 1. 字体属性 1.1 字体系列font-family p { font-family: "Microsoft Yahei";/*微软雅黑*/ } /*当 ...
- day30 Pyhton 复习模块
一.模块 什么是模块. 模块就是我们把装有特定功能的代码进行归类的结果. 从代码编写的单位来看我们的程序, 从小到大的顺序: 一条代码 < 语句句块 < 代码块(函数, 类) < 模 ...