【論文解讀】NBNet:拋開復雜的網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計,曠世&快手提出子空間注意力模塊用于圖像降噪
導讀
本文對曠視科技2021年關(guān)于圖像去噪的新作"NBNet進行解讀,該工作拋開復雜的網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計和精確的圖像噪聲建模,創(chuàng)新性的提出子空間基向量生成和投影操作。

論文地址:https://arxiv.org/abs/2012.15028
開源代碼:https://github.com/megvii-research/NBNet
NBNet創(chuàng)新簡述
本文從圖像自適應投影這一新視角出發(fā),提出一種新的圖像去噪網(wǎng)絡(luò)------NBNet,通過在特征空間中學習一系列重建基底使網(wǎng)絡(luò)能分離信號和噪聲。選擇信號子空間相應的基底并將輸入信號投影到信號子空間中,以實現(xiàn)圖像去噪。核心是希望投影能保持輸入信號的局部結(jié)構(gòu),尤其是低亮度和弱紋理的區(qū)域。為此,作者提出子空間注意力SSA,一個non-local注意力模塊來顯式地學習基底生成和子空間投影,最終設(shè)計一個UNet結(jié)構(gòu)的網(wǎng)絡(luò)完成端到端的圖像去噪。大量實驗表明提出的NBNet在PSNR和SSIM指標上都取得了最好的性能。
NBNet提出動機
圖像去噪是圖像處理和計算機視覺領(lǐng)域的基本任務(wù),一個典型的加性噪聲模型可用下式表示:y=x+n,想要恢復出干凈的圖像x其實是一個病態(tài)問題。傳統(tǒng)方法是利用圖像先驗和噪聲模型估計圖像或是噪聲,例如NLM和BM3D利用圖像局部相似性和噪聲獨立性,小波去噪方法利用圖像在變換域上的稀疏性。近年來,基于深度學習的去噪方法隱式地利用圖像先驗或從大規(guī)模的成對數(shù)據(jù)集中學習噪聲分布。盡管基于深度學習的方法取得了很大成功,但在弱紋理或高頻細節(jié)這樣的困難場景下,恢復高質(zhì)量圖像仍然是一項挑戰(zhàn)。因為卷積網(wǎng)絡(luò)通常利用局部濾波器分離噪聲和信號,但在低信噪比下,如果沒有全局結(jié)構(gòu)信息局部響應就會很容易失敗。

為解決上述問題,通過投影來利用非局部圖像信息從而設(shè)計圖像去噪網(wǎng)絡(luò)。如上圖是圖像投影和基底示意圖,從輸入圖像生成一系列的圖像基底向量,然后從這些基底向量構(gòu)成的子空間重建出去噪圖像。因為自然圖像通常處于低秩的信號空間,因此通過準確地學習和生成這些基底向量,重建圖像能最大程度保留原始信息并抑制噪聲。
NBNet的具體結(jié)構(gòu)
NBNet整體是UNet形式的網(wǎng)絡(luò),其中關(guān)鍵的是子空間注意力模塊SSA,其學習子空間基底向量,如圖1是NBNet的整體結(jié)構(gòu)。NBNet的創(chuàng)新在于子空間投影,包括兩個主要的步驟:基底向量生成和投影。
1 、基底向量生成,從輸入圖像特征圖譜生成子空間基底向量?;咨珊瘮?shù)用 表示, 以編碼階段的中間特征圖譜為輸入, 則生成的基底矩陣為 ?;咨珊瘮?shù)用 可以一個殘差卷積 block 實現(xiàn),輸出通道數(shù)為 , 然后將輸出變形為 。下圖中(b) 為殘差卷積 block;(c) 為子空間注意力模塊 SSA,其中 basis vectors 即 為生成的基底向量。

2、投影,如上圖中(c)的 projection, 通過正交線性投影將圖像特征 投影到子空間 中。用 表示信號子空間的正交投影矩陣,則 可由 計算得到,如下式:
其中標準化項 是必要的,因為基底生成過程不能保證基向量間是相互正交的。最終 圖像特征 在信號子空間重建為 , 即 。投影運算其實僅包含線性矩陣運算,經(jīng)過 適當?shù)淖冃危队斑\算是完全可微,在現(xiàn)代神經(jīng)網(wǎng)絡(luò)框架中易于實現(xiàn)。

圖 1 NBNet網(wǎng)絡(luò)整體結(jié)構(gòu)
3、NBNet具體實現(xiàn)和損失函數(shù)。NBNet整體結(jié)構(gòu)是典型的UNet形式,如上圖1,包括4個編碼階段和4個相應的解碼階段。下采樣使用k4s2的卷積操作,上采樣使用反卷積。每個卷積層激活函數(shù)都使用LeakyReLU。
提出的SSA模塊放置在跳轉(zhuǎn)連接中。因為大尺寸低層特征圖譜包含更多原始圖像的細節(jié)信息,因此以編碼階段低層特征圖譜為,解碼階段高層特征圖譜為。即利用上采樣的高層特征指導來自跳轉(zhuǎn)連接的低層特征投影到信號子空間中。經(jīng)投影變換后的特征與原始高層特征concat,再進行解碼。與傳統(tǒng)UNet形式結(jié)構(gòu)相比,NBNet中的低層特征在與高層特征融合前先由SSA模塊進行投影變換。最后一個解碼器的輸出通過一個線性3×3卷積層輸出全局殘差(針對有噪聲的輸入而言),再加上輸入后得到最終的去噪結(jié)果。
以L1距離為網(wǎng)絡(luò)訓練的損失函數(shù):
實驗部分
在合成數(shù)據(jù)和真實數(shù)據(jù)集上進行了大量實驗以驗證NBNet的有效性和先進性。其中子空間K=16。
1、合成的高斯噪聲。測試集有Set5、LIVE1和BSD68。本文方法取得了最好PSNR值。

2、SIDD Benchmark
SIDD可以用作測試智能手機攝像頭的去噪性能基準,因此用SIDD驗證NBNet對真實圖像的去噪性能。下表和圖展示了性能指標和計算量,本文方法NBNet在PSNR和SSIM兩個指標上都比MIRNet有所提高,同時計算量和參數(shù)量大幅度降低。

下圖是在SIDD Benchmark上的去噪實例。本文方法在點、線等弱紋理區(qū)域去噪更好。

3、DND Benchmark
DND Benchmark并沒有提供任何訓練數(shù)據(jù),因此組合SIDD和Renoir數(shù)據(jù)集訓練網(wǎng)絡(luò)。提交在SIDD Benchmark驗證數(shù)據(jù)上最好的模型到DND Benchmark。下表展示了性能指標,本文方法NBNet在PSNR指標上比MIRNet有所提高,但計算量和參數(shù)量大幅度降低。

下圖是在DND Benchmark上的去噪實例。本文方法更好地保持了紋理和銳度。

4、消融實驗
(1)為了驗證SSA模塊有效性,又選擇DnCNN為基線模型。嵌入SSA模塊后比DnCNN提供了0.55dB。
(2)研究子空間K不同取值的影響,下表是在SIDD上的實驗結(jié)果。當K=32是網(wǎng)絡(luò)不能收斂,因為第一個編碼階段的通道數(shù)是32,導致SSA模型不能有效的進行子空間投影。K=1是會造成信息的顯著丟失。K=8和16時性能很接近,說明子空間維數(shù)K在合理的范圍內(nèi)是一個魯棒的超參數(shù)。

(3)研究投影過程中不同輸入的影響,下表是實驗結(jié)果。對比第 1 、 2 行,僅使用 生成基向量不能使網(wǎng)絡(luò)收玫。對比第 3、4行,僅使用 生成基向量得到的性能不好。當使用 和 生成基向量,并對 進行投影時得到的性能最好,即最后一行

結(jié)論
本文以子空間投影的視角重新思考了圖像去噪問題。拋開復雜的網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計和精確的圖像噪聲建模,創(chuàng)新性的提出子空間基向量生成和投影操作,從而將全局結(jié)構(gòu)信息引入到圖像去噪過程中,實現(xiàn)了更好的局部細節(jié)保持。這種子空間學習的方法有希望應用于其它底層視覺任務(wù)中。
本文亮點總結(jié)
如果覺得有用,就請分享到朋友圈吧!
往期精彩回顧 本站qq群851320808,加入微信群請掃碼:
