具有對稱跳躍連接的深卷積編解碼網絡的圖像去噪 讀書筆記(上)

轉載請註明出處,謝謝。

論文:Image Denoising Using Very Deep Fully Convolutional Encoder-Decoder Networks with Symmetric Skip Connections

                                             作者: Xiao-Jiao Mao, Chunhua Shen, Yu-Bin Yang

一、簡介——文章主要貢獻

1.文中提出了一種very deep圖像去噪網絡結構,該網絡由對稱的卷積層和反捲積層組成,卷積層作爲特徵提取器,在消除噪聲的同時編碼圖像內容的主要成分,反捲積層解碼圖像抽象內容以恢復圖像內容的細節。提出的框架是第首次在圖像去噪中同時使用卷積和反捲積。

2.爲了更好地訓練深層網絡,文中提出在對應的卷積層和非卷積層之間增加跳躍連接(skip connections),這些捷徑(即skip connections)將網絡分成幾個塊,這些跳躍連接有助於向後傳播梯度到底層,並將圖像細節傳遞到頂層。這兩個特點使得從噪聲圖像到乾淨圖像的端到端映射訓練更容易、更有效,從而在網絡深入的同時實現了性能的提高。

3.文中對常用的基準圖像進行了實驗,結果表明了論文提出的網絡在圖像去噪方面具有優勢。

二、相關工作

sda:Stacked denoising auto-encoder是最著名的用於圖像去噪的深層神經網絡模型之一,無監督預訓練,一次只對一層進行重構誤差最小化,一旦對所有層都進行了預訓練,網絡就進入微調階段。

利用神經網絡進行去噪的優點是,它們直接從數據中學習去噪參數,即端到端學習,對自然圖像不作任何假設。

論文方法:Our network is a skip connection based encoding-decoding framework, in which both convolution and deconvolution are used for image denoising。

三、Very deep RED-Net for image denoising

RED-Net ——  Residual Encoder Decoder Networks.

3.1 網絡結構

該網絡包含對稱的卷積(編碼器)和反捲積(解碼器)層,每隔幾層(實驗中,2層)有跳躍連接從卷積特徵映射到它們鏡像的反捲積特徵映射。跳躍連接將網絡分成幾個塊,每塊大小爲4塊,即2層卷積層和2層反捲積層。來自卷積層的響應直接傳播到相應的鏡像反捲積層,無論前向還是後向傳播(反捲積層直接傳播到卷積層)。結構中沒有使用池化層,因爲通常池化層會丟失掉對去噪和其他圖像恢復任務至關重要的圖像細節。

在每個卷積和反捲積後增加校正層(Rectification layers),在vgg模型的啓發下,將卷積和反捲積的核大小設爲3×3。

反捲積層的輸出是輸入噪聲圖像的乾淨版本。

值得一提的是因爲卷積層和反捲積層是對稱的,所以輸出的圖片大小可以是任意的。

論文提出了兩種網絡,分別爲20層和30層。下表描述了這兩種網絡的具體配置。

“conv3”和“deconv3”代表3×3的卷積和反捲積核。128、256和512是每次卷積和反捲積後的特徵映射數。c是輸入和輸出圖像的通道數。在本工作中,我們對灰度圖像進行測試,即c=1。

3.1.1 反捲積解碼器(Deconvolution decoder)

在卷積層中,濾波器窗口內的多個輸入激活函數被融合以輸出單個激活,而反捲積層則是單個輸入激活函數和多個輸出激活函數。

全卷積網絡與論文中提出的網絡(只有卷積和反捲積的網絡)的區別是:

1.在全卷積網絡中,噪聲是一步一步去除的,即在經過每一層後,噪聲都會有所減少。但是圖像細節也會大量減少。

2.在論文提出的網絡中,卷積保留了圖像的原始內容,然後用反捲積對圖像細節進行補償。

爲此,論文使用5層全卷積網絡和10層全卷機網絡與自己提出的網絡(只有卷積和反捲積,沒有跳躍連接)進行對比。對於全卷積網絡,文中對輸入進行padding和up-sample以使得輸入和輸出的大小相同。對於論文中的網絡,前5層是卷積層,後5層是反捲積層。其餘的訓練參數,兩個網絡的設置是一樣的,即用SGD訓練,學習速率爲10^−6,噪聲水平σ=70,卷積核3*3,步長爲3。

實驗結果:

對驗證集的峯值信噪比(PSNR),結果表明,使用反捲積比完全卷積的方法工作得更好。

3.1.2 跳躍連接(Skip connections)

skip connections have element-wise correspondence。

論文在每隔兩個對應的卷積層和反捲積層之間添加跳躍連接,跳躍連接主要改善兩個問題:

1.當網絡很深的時候,反捲積無法完成圖像細節的恢復。

2.反向傳播梯度消失問題。

(也會加快收斂速度)

⊕表示特徵映射的按元素相加之後。(瞎翻譯,原句:⊕ denotes element-wise sum of feature maps)

跳躍連接將卷積特徵映射的信息傳遞給相應的反捲積層中。

論文提出不直接學習從輸入x到輸出y的映射,而是希望網絡去適應問題的剩餘,表示爲f(X)=y−x。(原句:we would like the network to fit the residual of the problem, which is denoted as F(X) = Y - X.)

3.2 討論(略)

3.3 訓練

學習從噪聲圖像到乾淨圖像的端到端映射,需要估計由卷積和反捲積核表示的權重θ。

使用caffe框架來實現和訓練網絡。

使用Xavier策略初始化濾波器的權重。

使用學習速率爲10^-4(所有層的學習率一樣)的ADAM訓練(比傳統的隨機梯度下降(SGD)更快)。

使用灰度圖像進行試驗,訓練集:300 images from the Berkeley Segmentation Dataset (BSD)。對於每張圖片,將不重疊的50*50的塊採樣爲ground truth。使用較小的塊會導致較差的性能,這可能是因爲它不足以很好地表示較少像素的噪聲分佈。對於每個塊,對其添加高斯噪聲作爲噪聲圖像(每個塊多次使用,添加不同的噪聲,生成不一樣的噪聲圖像),最終訓練集大小爲0.5M。對於不同的噪聲水平,形成不同的訓練數據來訓練相應的模型。

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章