码迷,mamicode.com
首页 > 其他好文 > 详细

Overview:end-to-end深度学习网络在超分辨领域的应用(待续)

时间:2018-10-02 00:21:10      阅读:431      评论:0      收藏:0      [点我收藏+]

标签:sep   base   取出   利用   输入   htm   CNN网络   线性   ssim   

目录

1. SRCNN

Home page
http://mmlab.ie.cuhk.edu.hk/projects/SRCNN.html

2014 ECCV ,2015 TPAMI .

Contribution

  1. end-to-end深度学习应用在超分辨领域的开山之作,2018年被引超1000次。(非 end-to-end 见 Story.3 )
  2. 指出了传统方法( sparse-coding-based SR methods )和深度学习方法的关系,具有指导意义。
  3. SRCNN网络非常简单,PSNR、SSIM 等却有小幅提升(< 1dB)。具体而言:
    • The method (SRCNN) directly learns an end-to-end mapping between the low/high-resolution images.
    • 由于是端到端网络,因此 training 是对整体框架的全面优化(具体见 Inspiration.2 )。
  4. 应用(测试)时是完全 feed-forward ,因此网络速度快。

Inspiration

  1. This problem (SR) is inherently ill-posed since a multiplicity of solutions exist for any given low-resolution pixel.
    Such a problem is typically mitigated by constraining the solution space by strong prior information.
    注:训练 CNN 就是在学习先验知识。

  2. 传统方法着重于学习和优化 dictionaries ,但对其他部分鲜有优化。
    但对于CNN,其卷积层负责 patch extraction and aggregation ,隐藏层充当 dictionaries ,因此都会被统一优化。
    换句话说,我们只需要极少的 pre/post-processing 。

  3. 过去,我们用 a set of pre-trained bases such as PCA, DCT, Haar 来表示 patches 。
    现在,我们用不同的卷积核,就实现了多样化的表示。

  4. 由于 overlapping ,因此卷积使用的像素信息比简单的字典映射更多。

Network

技术分享图片

O. Pre-processing

将低分辨率的图片,通过 Bicubic interpolation 得到 \(\mathbf Y\) 。注意我们仍然称之为 low-resolution image 。

I. Patch extraction and representation

\(\mathbf Y\) 提取出 overlapping patches ,每一个 patch 都代表一个 high-dimensional vector 。
这些向量共同组成一个 set of feature maps 。
每一个 vector 的维数,既是总特征数,也是 feature map 的总数。

\[ F_1(\mathbf Y) = max(0, W_1 * \mathbf Y + B_1) \]

II. Non-linear mapping

通过一个非线性变换,由原 high-dimensional vector 变换到另一个 high-dimensional vector 。
该 high-dimensional vector 又组成了一个 set of feature maps ,在概念上代表着 high-resolution patch 。

\[ F_2(\mathbf Y) = max(0, W_2 * F_1(\mathbf Y) + B_2) \]

III. Reconstruction

生成接近 ground truth: \(\mathbf X\) 的 output 。

过去常用取平均的方法。实际上,平均也是一个特殊的卷积。
因此我们不妨直接用一个卷积。
此时,输出patch不再是简单的平均,还可以是频域上的平均等(取决于 high-dimensional vector 的性质)。

\[ F_3(\mathbf Y) = W_2 * F_2(\mathbf Y) + B_3 \]

注意不要再非线性处理。

Story

  1. 深度CNN日益受欢迎的3大诱因:
    • 更强大的GPU;
    • 更多的数据(如ImageNet);
    • ReLU的提出,加快收敛的同时保持良好质量。
  2. CNN此前被用于 natural image denoising and removing noisy patterns (dirt/rain) ,用于 SR 是头一回。
    这就是讲好故事的重要性,无非是映射 pairs 不同。
  3. auto-encoder 也曾被用于超分辨网络,但仍没有摆脱 separated framework 的弊端。

Further learning

  1. Traditional sparse-coding-based SR methods

  2. 从低分辨率图像到 \(\mathbf Y\) 采用的是 Bicubic interpolation ,实际上也是卷积。但为什么不当作卷积层呢?
    文中解释,因为输出比输入还大,为了有效利用 well-optimized implementations sucha as cuda-convnet ,就暂且不当作一个“层”。

Overview:end-to-end深度学习网络在超分辨领域的应用(待续)

标签:sep   base   取出   利用   输入   htm   CNN网络   线性   ssim   

原文地址:https://www.cnblogs.com/RyanXing/p/9736106.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!