Enhanced Deep Residual Networks for Single Image Super-Resolution

Enhanced Deep Residual Networks for Single Image Super-Resolution

用於單一圖像超分辨率的增強型深度殘差網絡

論文摘要

  近期關於超分辨率(super-resolution)的研究已經隨着深度卷積神經網絡(DCNN)的發展而進步了。殘差學習的方法(residual learning )尤其能展現出其性能表現的提升。在本篇論文中,我們研發了一種增強型深度超分辨率網絡(enhanced deep super-resolution network —— EDSR),其性能表現超越了那些當前最新型的 SR 方法。我們的模型之所以有顯著的性能提升是因爲我們在優化時去除了傳統殘差網絡中的不必要模塊。另一個原因就是,在使訓練過程保持穩定的情況下,我們擴展了模型的規模 。我們也提出了一種新型的多尺度深度超分辨率系統(multi-scale deep super-resolution system —— MDSR)和訓練方法,它可以在一個單一模型中,對升規模因子(upscaling factors)不同的超分辨率圖像進行重構。這種方法在基準數據集中展現了超過當前一流方法的優越性能,並且通過贏得 NTIRE2017 超分辨率挑戰賽證明了它的卓越性。

論文介紹

 圖像超分辨率(SR)問題,尤其是單一圖像超分辨率(SISR)問題,在近幾十年中已經受到了廣泛的研究關注。SISR 問題旨在從一個單一低分辨率圖像中重構出一個高分辨率圖像。通常情況下,低分辨率圖像和原始的高分辨率圖像可根據情境而產生變化。很多研究都假設低分辨率圖像是高分辨率圖像的降採樣結果。最近,深度神經網絡在 SR 問題中的峯值信噪比(PSNR)方面帶來了很大的性能提升。然而,這種網絡也在結構最優化原則(architecture optimality)中暴露了其侷限性。

 首先,神經網絡模型的重構性能對小型架構的變化敏感。同樣的模型通過不同的初始化和訓練技術會有不同的性能水平。因此,需要精心設計的模型架構和複雜的優化方法來訓練神經網絡。

 其次,大多數現有的SR算法將不同尺度因子的超分辨率作爲獨立問題,不考慮和利用SR中不同尺度之間的相互關係。因此,這些算法需要許多規模特定的網絡,需要獨立地訓練來處理各種尺度。特別地,VDSR可以在單個網絡中聯合處理多個尺度的超分辨率。使用多個規模訓練VDSR模型可大幅提升性能,優於特定尺度的訓練。 儘管如此,VDSR風格架構需要雙三次插值圖像作爲輸入,與具有比例特定上採樣方法的架構相比,導致更大的計算時間和內存。

 雖然SRResNet成功地解決了具有良好性能的時間和內存問題,但它只是採用了He等人的ResNet架構。 沒有太多的修改。 然而,原來的ResNet被提出來解決更高級別的計算機視覺問題,如圖像分類和檢測。 因此,將ResNet架構直接應用於超級分辨率等低級視覺問題可能不是最佳的。

 爲了解決這些問題,基於SRResNet架構,我們首先通過分析和刪除不必要的模塊進行優化,以簡化網絡架構。當模型複雜時,訓練網絡變得不重要。因此,我們利用適當的損失函數和仔細的模型修改來訓練網絡。 我們實驗表明,修改後的方案產生更好的結果。

 第二,我們調查了從其他尺度訓練的模型進行知識的轉移的模型訓練方法。爲了在訓練過程中利用與尺度無關的信息,我們從預訓練的低尺度模型中訓練大尺度模型。此外,我們提出了一種新的多尺度架構,其共享了不同尺度的大多數參數。所提出的多尺度模型與多個單尺度模型相比明顯使用較少的參數,但是表現更好的性能。

相關工作

 最近,深層神經網絡的強大能力使得SR的性能顯著改善。自Dong等首先提出了一種基於深度學習的SR方法,針對SR問題研究了各種CNN架構。 Kim等人首先介紹了殘差網絡,用於訓練更深層次的網絡架構,並取得了卓越的性能。特別地,他們表明,跳過連接和遞歸卷積減輕了在超分辨率網絡中攜帶一致信息的負擔。Mao等人解決了編碼器 - 解碼器網絡和對稱跳過連接的一般圖像恢復問題。他們認爲這些嵌套的跳過連接使得收斂更加快速和性能改進。

 在許多基於深度學習的超分辨率算法中,輸入圖像在輸入網絡之前通過雙三次插值進行上採樣。可以在網絡最末端訓練上採樣模塊來代替使用內插圖像作爲輸入的方式。 通過這樣做,可以減少大量的計算,而不會因爲特徵的大小而減少模型容量。 然而,這些方法有一個缺點:它們不能像VDSR那樣在單一框架中處理多尺度問題。在這項工作中,我們解決了多尺度訓練和計算效率的困境。我們不僅利用每個尺度的學習特徵的相互關係,還提出了一種新的多尺度模型,可以高效重建各種尺度的高分辨率圖像。此外,我們開發了適用於單一和多尺度模型的多尺度的訓練方法。

 幾項研究也側重於損失函數,以更好地訓練網絡模型。均方誤差(MSE)L2損耗是廣泛使用的一般圖像重建的損失函數,也是這些問題的主要性能指標(PSNR)。然而,趙等人報道說,與PSNRSSIM方面的其他損失函數相比,L2損失的訓練不能保證更好的性能。

提出的方法

殘差模塊


 我們對比了每個網絡模型(原始 ResNet、SRResNet、和我們提出的網絡)的基礎模塊。我們在我們的網絡中去除了批歸一化(batch normalization)。由於批歸一化層使特徵標準化,同時它們也去除了網絡中的範圍柔性(range flexibility),所以最好去除這些批歸一化層。這一簡單的修改可以大幅增加性能表現。再者,GPU 的內存使用率也會顯著減少(因爲批歸一化層會消耗與之前卷積層等量的內存)。 SRResNet 相比,我們沒有批歸一化層的基準模型,在訓練過程當中大概減少了 40% 的內存使用率。因此,我們就可以創建一個更大型的模型,它在計算資源有限的情況下比傳統 ResNet 有着更好的性能表現。

多尺度模型



      我們用我們提出的圖 2 中的殘差模塊構造了基準(單尺度 —— single-scale)模型。其結構類似於 SRResNet ,但是我們的模型在殘差模塊之外並沒有設置 ReLU 激活層。而且,我們的基準模型也沒有殘差縮放層(residual scaling layers),因爲我們僅僅爲每一個卷積層使用了64維的特徵映射。在我們最終的單尺度模型(single-scale model —— EDSR)中,我們通過設置 B = 32 ,F= 256,比例因數(scaling factor ) 0.1 對基準模型進行了擴展。模型結構如圖 3 所示。當在升採樣因子(upsampling factor)×3×4 的時候,我們用預訓練的 ×2 網絡初始化了模型參數。這一預訓練方法加速了訓練進程,也提升了最終的性能表現。



    多尺度情況下的超分辨率是具有相互關聯性的任務。我們利用 VDSR 的尺度間相關性創建了多尺度結構,從而進一步探索了這個想法。我們設計了帶有一個單一主分支的基準(多尺度 —— multi-scale)模塊 ,含有 B = 16 的殘差模塊,所以大部分參數都可以在不同尺度間進行共享,如圖 5 所示。在我們的多尺度結構中,我們引入了尺度特定(scale-specific)的處理模塊,以在多尺度下控制超分辨率。首先,預處理模塊被置於網絡的前端,以減少不同尺度的輸入圖像的變化幅度,每一個預處理模塊包括兩個 5×5 內核(kernels)的殘值區塊(residual blocks )。通過在預處理模塊中採用較大的內核,我們可以使尺度特定的部分保持淺層(shallow)狀態,在網絡的早期階段可以覆蓋較大的接受域(receptive field)在模型的末端,尺度特定的升採樣模塊被並行放置,以進行多尺度重構。其升採樣(upsampling)模塊與單尺度模型中的情況相類似。


參考

https://mp.weixin.qq.com/s/xpvGz1HVo9eLNDMv9v7vqg

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