參考自:https://www.jianshu.com/p/3687ffed4aa8
論文原文:https://arxiv.org/pdf/1608.03981.pdf
圖像降噪
圖像降噪,是最簡單也是最基礎的圖像處理逆問題(inverse problem)。
降噪問題(這里只討論additive noise),用最簡單的數學語言一句話就可以描述清楚:
y是你觀察到的帶噪音的圖像,e是噪音,x是干凈無噪音的圖像。只已知y,外加e的概率分布,降噪問題需要你去尋找最接近真實值的x。
DnCNN
文章重點
- 使用端到端的神經網絡模型來進行AWGN的降噪,首次使用殘差學習來降噪。
- 調了residual learning(殘差學習)和batch normalization(批量標准化)在圖像復原中相輔相成的作用,可以在較深的網絡的條件下,依然能帶來快的收斂和好的性能。
- 文章提出DnCNN,在高斯去噪問題下,用單模型應對不同程度的高斯噪音;甚至可以用單模型應對高斯去噪、超分辨率、JPEG去鎖三個領域的問題。
DnCNN網絡模型
網絡結構:
第一部分:Conv(3 * 3 * c * 64) + ReLU(c代表圖片通道數)
第二部分:Conv(3 * 3 * 64 * 64) + BN(batch normalization) + ReLU
第三部分:Conv(3 * 3 * 64)
每一層都使用零填充,使得每一層的輸入輸出尺寸保持一致。以此防止產生人工邊界。
第二部分每一層在卷積與ReLU之間都加了批量標准化(batch normalization、BN)。
殘差學習
DnCNN結合了ResNet的殘差學習,但不同的是,DnCNN並非是每隔兩層就加一個shortcut,而是將網絡的輸出直接改成residual image(殘差圖片)。
假設純凈圖片為x,帶噪音圖片為y,假設y=x+v,則v是殘差圖片。
即DnCNN的優化目標不是真實圖片與網絡輸出之間的MSE(均方誤差),而是真實殘差圖片與網絡輸出之間的MSE(均方誤差)。
作者注意到在圖像復原領域(尤其是在噪音程度較小的情況下),噪音圖片與純凈圖片的殘差非常小,所以理論上殘差學習非常適合運用到圖像復原上。
這樣的網絡設計就是在隱層中將真實的圖片x從原噪音圖y中消去。在超分領域,低分辨率圖片就是高分辨率圖片的雙三次上采樣操作形成的,故超分領域的殘差圖片和去高斯噪聲領域的殘差圖片是等價的,同理還有JPEG解鎖領域的殘差圖片。
實驗
作者做了三種實驗:
- 對比有無residual learning與batch normalization對復原效果、收斂快慢的影響,最終證明這兩是相輔相成的,都利用上時網絡各方面性能達到最好。

- 根據特定程度的高斯噪聲訓練DnCNN-S、根據不定程度的高斯噪聲訓練DnCNN-B、根據不同程度的噪音(包括不同程度的高斯噪聲、不同程度的低分辨率、不同程度的JPEG編碼)訓練的DnCNN-3來與最前沿的其他算法做對比實驗。結論:DnCNN-S有最好的性能,但是DnCNN-B也有優於其他算法的性能,證明了DnCNN-B具有很好的盲去高斯噪聲的能力;DnCNN-3則證明了DnCNN-3具有不俗的復原圖像的泛化能力。

- 對比了DnCNN與其他前沿去噪算法的運行速度的實驗,結論:速度還是不錯的,CPU\GPU環境下均屬於中上水平。

結論
本文提出了在降噪領域中使用殘差學習的方法來進行圖像降噪,直接學習圖片的噪聲,可以更快更好的學習到降噪。並且,這種殘差的降噪是比較通用的,可以推廣到單圖超分、jpeg去塊也可以。