基于模型的优化方法(model-based optimization method): 小波变换、卡尔曼滤波、中值滤波、均值滤波;

优点:对于处理不同的逆问题都非常灵活;缺点:为了更好的效果而采用各种复杂的先验,非常地费时

基于判别式学习方式(discriminative learning method): 训练成对的图像

优点:快速测试; 针对特定的任务,所以有一定的限制;


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)的去噪器,利用不同的图像先验,可以共同解决一个特定的问题;

变量分割技术、判别学习(discriminative learning method)的更多相关文章

  1. 【深度学习Deep Learning】资料大全

    最近在学深度学习相关的东西,在网上搜集到了一些不错的资料,现在汇总一下: Free Online Books  by Yoshua Bengio, Ian Goodfellow and Aaron C ...

  2. 机器学习(Machine Learning)&深度学习(Deep Learning)资料【转】

    转自:机器学习(Machine Learning)&深度学习(Deep Learning)资料 <Brief History of Machine Learning> 介绍:这是一 ...

  3. 机器学习(Machine Learning)&深度学习(Deep Learning)资料(Chapter 2)

    ##机器学习(Machine Learning)&深度学习(Deep Learning)资料(Chapter 2)---#####注:机器学习资料[篇目一](https://github.co ...

  4. 机器学习(Machine Learning)&amp;深度学习(Deep Learning)资料

    机器学习(Machine Learning)&深度学习(Deep Learning)资料 機器學習.深度學習方面不錯的資料,轉載. 原作:https://github.com/ty4z2008 ...

  5. Remote Sensing Images Semantic Segmentation with General Remote Sensing Vision Model via a Self-Supervised Contrastive Learning Method

    论文阅读: Remote Sensing Images Semantic Segmentation with General Remote Sensing Vision Model via a Sel ...

  6. 流形学习 (Manifold Learning)

    流形学习 (manifold learning) zz from prfans............................... dodo:流形学习 (manifold learning) ...

  7. 小样本学习Few-shot learning

    One-shot learning Zero-shot learning Multi-shot learning Sparse Fine-grained Fine-tune 背景:CVPR 2018收 ...

  8. 集成学习(Ensembling Learning)

    集成学习(Ensembling Learning) 标签(空格分隔): 机器学习 Adabost 对于一些弱分类器来说,如何通过组合方法构成一个强分类器.一般的思路是:改变训练数据的概率分布(权值分布 ...

  9. 转【面向代码】学习 Deep Learning(二)Deep Belief Nets(DBNs)

    [面向代码]学习 Deep Learning(二)Deep Belief Nets(DBNs) http://blog.csdn.net/dark_scope/article/details/9447 ...

随机推荐

  1. ospf思维导图

  2. PHP正则表达式核心技术完全详解 第2节

    作者:极客小俊 一个专注于web技术的80后 我不用拼过聪明人,我只需要拼过那些懒人 我就一定会超越大部分人! CSDN@极客小俊,原创文章, B站技术分享 B站视频 : Bilibili.com 个 ...

  3. AngularJS 路由和模板实例及路由地址简化方法

    最近一同事在学习AngularJS,在路由与模板的学习过程中遇到了一些问题,于是今天给她写了个例子,顺便分享出来给那些正在学习AngularJS的小伙伴们. 话说这AngularJs 开发项目非常的爽 ...

  4. 使用redis来调用iptables,封禁恶意IP

    话不多说,通常大多数站点都会有被薅羊毛的情况,防护无非也就是业务层做处理,短时内不再响应恶意请求啦.虽然不响应了,可还是会消耗资源的,比如我要从数据库(当然也可能是内存数据库)去查询下,你是不是恶意的 ...

  5. Java 内功修炼 之 数据结构与算法(一)

    一.基本认识 1.数据结构与算法的关系? (1)数据结构(data structure): 数据结构指的是 数据与数据 之间的结构关系.比如:数组.队列.哈希.树 等结构. (2)算法: 算法指的是 ...

  6. 放弃"指针常量"这种不严谨的中文描述!深度理解数组名、指针常量

    ques1: 数组名完全等价于指针常量吗? int array[10] = { 10,11,12,13,14,15 }; printf("sizeof(array)= %d \n" ...

  7. JS实现动态显示时间(最简单方法)

    使用JS实现动态显示时间 最简单实现方法 直接在网页适当的位置中插入如下js代码,(id="datetime") 不可省略. <div id="datetime&q ...

  8. Java 集合 | 红黑树 | 前置知识

    一.前言 0tnv1e.png 为啥要学红黑树吖? 因为笔者最近在赶项目的时候,不忘抽出时间来复习 Java 基础知识,现在准备看集合的源码啦啦.听闻,HashMap 在 jdk 1.8 的时候,底层 ...

  9. SDK测试操作文档

    准备所需材料 先把下列所需压缩包和文件传到虚拟机中. crypto-config压缩包存放order和peer节点所需要的证书文件(需要的是申请联盟链中的order和peer的证书文件) m2压缩包是 ...

  10. Web前后端:如何分离,如何解耦?

    摘要:在本文中我们一起来探讨一下为什么要在软件开发中进行前后端的分离,如何做到前后端分离,如何解耦. 简单地说,就是要把复杂的问题简单化,把一个从0到N的问题转化为N个0到1的问题.另一个相近的说法就 ...