1. 程式人生 > >【文章閱讀】【超解像】--Image Restoration Using Convolutional Auto-encoders with Symmetric Skip Connections

【文章閱讀】【超解像】--Image Restoration Using Convolutional Auto-encoders with Symmetric Skip Connections

【文章閱讀】【超解像】–Image Restoration Using Convolutional Auto-encoders with Symmetric Skip Connections

RED-Net:Residual Encoder-Decoder Networks

論文連結:https://arxiv.org/abs/1606.08921

參考code: https://github.com/SSinyu/RED_CNN

1. 主要貢獻

  • 提出了卷積反捲積對稱網路結構;
  • 卷積和反捲積利用跳層結構相連;
  • 提出的卷積反捲積架構可用於多工,如image denoising,image super-resolution,JPEG deblocking, non-blind image deblurring image inpainting.

2. 論文分析

​ 網路整體結構:

在這裡插入圖片描述

​ 區域性模組結構:

在這裡插入圖片描述

  • 卷積反捲積網路結構

    卷積:特徵提取,隨卷積進行,影象特徵被提取,同時噪聲的效果被降低,經過多層卷積後,影象的特徵被提取出來,也降低了噪聲的影響。

    反捲積:針對特徵的上取樣,完成由影象特徵到影象的轉換,由於利用的是過濾後的噪聲後的影象特徵,因此達到了降噪、影象修復的目的。

    文中通過實驗說明利用反捲積結構而不用padding 和upsampling的原因,如下圖,反捲積對影象細節有補償作用。
    在這裡插入圖片描述

  • 跳層結構(skip connections)

    作用:

    ​ 1)保留更多的影象細節,協助反捲積層完成影象的恢復工作;

    ​ 2)反向傳播過程中的梯度反向,減少梯度消失,加快模型訓練,文章有一些公式推導說明跳層連線對梯度變化的好處,詳見論文;

    利用影象修復實驗說明跳層作用:
    在這裡插入圖片描述
    多層結構中跳層能減少梯度消失,如下圖:
    在這裡插入圖片描述
    ​ 該跳層結構受何大神提出的Resnet激發,比較了該文提出的跳層結構和Resnet的跳層比較,本文提出效果較優:
    在這裡插入圖片描述

  • 提升測試效率

    為提升模型的執行速度,本文中提出在卷積層使用降取樣,在反捲積層利用升取樣恢復影象大小。利用實驗比較了在不同卷積層降取樣對最終效能的影響。

    實驗條件:影象大小160*240 , i7-2600CPU

    降取樣位置 執行時間(s)
    no down-sample 3.17
    down-sample at conv1 0.84
    down-sample at conv5 1.43
    down-sample at conv5 2.0
    down-sample at conv5,9 1.17

    結果比較:
    在這裡插入圖片描述
    結論:在conv1處降取樣,處理速度提升4倍,效能降低了0.1,根據具體應用進行trade-off

  • 實驗引數

    損失函式:MSE
    L ( Θ ) = 1 N i = 0 N F ( X i ; Θ ) Y i F 2 L(\Theta)=\frac{1}{N}\sum_{i=0}^N\|F(X^i;\Theta)-Y^i\|^2_F
    (a) filter number:

    濾波器大小為3x3,patch大小為50x50,跳層層數為2,不同的濾波個數,32,64,128,結果如下:
    在這裡插入圖片描述
    (b) filter size

    濾波器個數為64,patch大小為50x50,跳層層數為2,不同的濾波器大小為,3x3,5x5,7x7,9x9,結果如下:
    在這裡插入圖片描述
    © training patch size

    濾波器個數為64,濾波器大小為3x3 ,跳層層數為2,不同的patch size,25x25, 50x50,75x75,100x100結果如下:
    在這裡插入圖片描述
    (d) step size pf skip connections

    濾波器個數為64,濾波器大小為3x3 ,跳層層數為2,4,7,不同的patch size為50x50結果如下:
    在這裡插入圖片描述
    結論:濾波器個數越多,大小越大,訓練影象越大,跳層越少效能越好;

3. 結果分析

文章中進行了影象去噪、超解像、JPEG deblocking、Non-blind deblurring、影象修復實驗,列舉一下超解像相關結果:
在這裡插入圖片描述

與VDSR和DRCN進行了比較:
在這裡插入圖片描述
說明:

​ RED10:5層卷積,5層反捲積,無跳層

​ RED20:10卷積層,10反捲積層,跳層層距為2

​ RED30:15卷積層,15反捲積層,跳層層距為2

4.參考

https://blog.csdn.net/happyday_d/article/details/83715440

https://blog.csdn.net/wangkun1340378/article/details/78394673

https://blog.csdn.net/mzpmzk/article/details/54314864

論文個人理解,如有問題,煩請指正,謝謝!