论文解读《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 ...
随机推荐
- VMware-workstation-full-安装教程
网盘提取 图1中的包 链接:https://pan.baidu.com/s/11BnY2_v9cDfP1SXPoqOUWQ 提取码:jhfa (1) 点击Vware-workstation-full ...
- Oracle学习(二)SQL高级--表数据相关
SQL高级语句 top / limit / rownum / percent (前XXX条数据) --top(SQL Server / MS Access) select top 条数 from 表; ...
- PYG2010-02-精装友情通讯录再分析
- Kubernetes客户端和管理界面大集合
今天给大家介绍目前市面上常用的kubernetes管理工具,总有一款适合您~~~ 简介 Kubectl K9s Kubernetes-Dashboard Rancher Kuboard Lens Oc ...
- 如何使用 Python 進行字串格式化
前言: Python有几种方法可以显示程序的输出:数据可以以人类可读的形式打印出来,或者写入文件以供将来使用. 在开发应用程式时我们往往会需要把变数进行字串格式化,也就是说把字串中的变数替换成变量值. ...
- Linux 的shell指令
------十六进制查看文件 ------ ls 命令 ---- cp ----- chmod
- java 线程池、多线程实战(生产者消费者模型,1 vs 10) 附案例源码
导读 前二天写了一篇<Java 多线程并发编程>点我直达,放国庆,在家闲着没事,继续写剩下的东西,开干! 线程池 为什么要使用线程池 例如web服务器.数据库服务器.文件服务器或邮件服务器 ...
- Java知识系统回顾整理01基础01第一个程序07Eclipse使用----找不到类如何解决?
一.现象 有时候会碰到如图所示的问题,分明有Hello这个类,并且也有主方法,可是运行就会出现找不到或者无法加载类Hello,或者Class Not Found 异常. 出现这个状况,有多种原因造成, ...
- 【5】进大厂必须掌握的面试题-Java面试-spring
spring面试问题 Q1.什么是spring? Spring本质上是一个轻量级的集成框架,可用于用Java开发企业应用程序. Q2.命名Spring框架的不同模块. 一些重要的Spring Fram ...
- 关于umi-request GET请求参数携带数组
在使用umi-request时候发现GET传递数组,后台在接收时只能接受到最后一个,对此记录一下. 问题: // 发送数据: request(url, { params: { select: [1,2 ...