本文提出了一個針對真實圖像的盲卷積去噪網絡,增強了深度去噪模型的魯棒性和實用性。
摘要
-
作者提出了一個 CBD-Net,由噪聲估計子網絡和去噪子網絡兩部分組成。
-
作者設計了一個更加真實的噪聲模型,同時考慮了信號依賴的噪聲和相機內部處理的噪聲。
-
基於真實噪聲模型合成的圖片和真實的噪聲圖片被聯合在一起對網絡進行訓練。
噪聲模型
-
除了高斯噪聲,真實的圖片噪聲更加復雜,並且是信號依賴的。
-
給定一個干凈圖片 x,一個更加真實的噪聲模型 \(n(x) ~ N(0, \sigma(y))\) 可以表示為:
-
其中,\(n(x) = n_s (x) + n_c\) 包含一個信號依賴的組成 \(n_s\) 和一個靜態的噪聲組成 \(n_c\)。\(n_c\) 是一個方差為 \(\sigma_c ^2\) 的高斯噪聲, \(n_s\) 則和圖像的像素值有關,比如 \(x(i) * \sigma_s^2\)。
-
另外,我們再把相機內部處理過程考慮進去的話,就會產生以下這個信號依賴和通道依賴的噪聲模型。
-
\(y\) 表示合成圖片, \(f\) 代表相機反應函數(CRF),\(M\) 代表將 sRGB 圖片轉化為 Bayer 圖片的函數,\(M^{-1}\)代表去馬賽克函數。
-
此外,為了擴展到對壓縮圖片的處理,我們把 JPEG 壓縮也考慮進合成圖片的生成過程。
- 針對原始圖片、無壓縮圖片和壓縮圖片,我們分別用以上三種模型來生成訓練圖片。
網絡結構
-
噪聲等級子網絡由五層的卷積組成,卷積核大小為 3*3,通道數為 32,激活函數采用 Relu,沒有采用池化和批歸一化,輸出的噪聲等級圖和原噪聲圖片大小相同。
-
去噪子網絡將噪聲等級圖和原噪聲圖片一起作為輸入,采用了 U-Net 的網絡結構,卷積核大小為 3*3,激活函數采用 Relu,學習噪聲圖片的殘差。
非對稱學習
作者用傳統的去噪方法 BM3D/FFDNet 做了一個實驗。當給定的噪聲等級和真實噪聲等級一樣時,去噪效果毋庸置疑是最好的。當給定的噪聲等級低於真實噪聲等級一樣時,去噪結果仍然有可見的噪聲;但當給定的噪聲等級高於真實噪聲等級一樣時,仍然可以取得非常滿意的結果。
- 為了利用這種非對稱特性進行盲去噪,我們在噪聲估計中提出了不對稱損失以避免在噪聲水平上出現低估誤差。
- 給定像素 \(i\) 處估計的噪聲等級 \(\hat \sigma(y_i)\)和真實值 \(\sigma(y_i)\)。當 \(\hat \sigma(y_i) < \sigma(y_i)\),我們應該強加更多懲罰。 因此,噪聲等級估計子網絡的不對稱損失定義如下:
-
通過設定 \(0 < \alpha < 0.5\),,我們可以強加更多懲罰給低估誤差。
-
另外,我們引入一個總體方差正則化項來限制 \(\hat \sigma(y_i)\) 的平滑性:
-
對於去噪子網絡的輸出 \(\hat x\),我們定義重構誤差為:
-
網絡的總損失即為以上三部分的求和:
訓練過程
-
基於真實噪聲模型合成的圖片和真實的噪聲圖片被聯合在一起對網絡進行訓練,來增強網絡處理真實圖像的泛化能力。
-
針對一個批次的合成圖片,\(L_{rec} , L_{asymm},L_{TV}\) 三個損失都被計算來訓練網絡。
-
針對一個批次的真實,由於噪聲等級不可知,因此只有,\(L_{rec} 和 L_{TV}\) 兩個損失被計算來訓練網絡。
驗證和結果
- 不同 \(\alpha\) 值的去噪結果對比如下圖所示,可以看到,較小的 \(\alpha = 0.3\) 會對去除未知噪聲並且保留圖片的結構有所幫助。
-
另外,作者又對只用合成圖片、只用真實圖片和聯合真實圖片和合成圖片三種情況進行了對比,進一步驗證了聯合訓練的有效性。
-
最后,一些實驗結果如下所示:
獲取更多精彩,請關注「seniusen」!