肖 娟,李小霞,2,呂念祖,周穎玥,2,王學淵,2
1(西南科技大學 信息工程學院,四川 綿陽 621010)2(特殊環境機器人技術四川省重點實驗室,四川 綿陽 621010)
圖像去噪屬于計算機視覺重要任務之一,也是低層視覺和圖像處理中的一個基本問題,可被應用于圖像預處理以及圖像分割等高層視覺任務,如腦部MR縱向圖像分割和多光譜圖像分割[1],其目的是從噪聲圖像中移除噪聲從而恢復出一幅去噪后的圖像[2].目前基于卷積神經網絡(Convolutional neural network,CNN)的去噪方法表現尤其突出[3-5],但此類噪聲大多屬于加性高斯白噪聲(Add White Gaussian Noise,AWGN),因此在真實噪聲圖像去噪上表現很差[6].其原因在于基于CNN的去噪方法的性能取決于仿真噪聲與真實噪聲之間的像素分布相似度[7].真實噪聲相對更為復雜[8],為了提高真實噪聲圖像盲去噪效果,本文對這兩種噪聲圖像的灰度直方圖分布之間的差異進行分析.
目前針對真實噪聲圖像去噪的研究很少.Cha等人[9]擴展了基于上下文像素級別的映射,使用全卷積增強基礎的監督模型,并引入正則化方法獲得更強和更魯棒的自適應性圖像去噪效果.Elad等人[10]基于訓練字典上的稀疏和冗余表示,利用K-SVD算法得到了一個有效描述圖像內容的字典,并其部署擴展到任意的圖像大小,獲得較好的高斯去噪效果.Dabov等人考慮了全局信息,提出一種基于非局部相似性的BM3D算法[11].BM3D可兼容處理真實噪聲和AWGN,但其算法復雜度較高.Feng等人[12]采用CUDA加速的非局部均值去噪方法去除圖像中的噪聲,顯著提升了去噪效率.Chen等人[13]基于損失的方法從訓練數據中學習到所有的參數,提出一種非盲去噪的可訓練的非線性反應擴散(Trainable Nonlinear Reaction Diffusion,TNRD)模型.zhang等人[14]提出的DnCNN方法采用殘差學習和批次歸一化(Batch Normalization,BN)可以有效地去除均勻高斯噪聲,且對一定噪聲水平范圍的噪聲都有抑制作用.FFDNet[15]是zhang等人的一篇承前啟后之作,其處理對象從均勻高斯噪聲變成復雜真實噪聲.由于真實噪聲具有不均勻、信號依賴且各通道相關的屬性,FFDNet適應不同程度噪聲的輸入,可對高水平噪聲表現良好,但對低水平噪聲敏感.為了更進一步提升真實盲去噪效果,Guo等人[16]構建出一個由噪聲估計子網絡和基于Unet的非盲去噪子網絡組成的CBDNet,并利用不對稱損失來更準確地估計噪聲水平.上述方法逐步在去噪性能上獲得進步,但仍存在以下3個問題:1) 同等處理所有通道特征,缺乏特征自適應調整;2) 普通卷積方式無法重建小物體信息,易造成數據結構和空間層級化信息丟失;3) 特征融合方式單一,直接信息融合(如像素相加和通道拼接)忽略了特征的差異性,無法有效提取關鍵信息.
本文對比分析真實噪聲圖像和高斯噪聲圖像的灰度直方圖分布,提出一個能有效學習復雜像素分布特征的端到端盲去噪網絡LDFNet.針對上述3個問題,分別設計出特征自適應學習模塊(L)、多尺度殘差密集模塊(D)以及特征多路徑融合模塊(F).模塊L通過通道注意力機制來調節通道重要性,可以自適應地學習到更具有判別性的像素特征;模塊D采用空洞卷積提取層次空間特征以完整保留數據結構信息,同時采用殘差密集(Residual Dense,RD)結構來兼顧全局和局部細節信息;不同于一般的直接信息融合方式,如像素相加和通道拼接,模塊F基于空間注意力機制進行自適應多路徑特征融合,可有效提取關鍵信息.大量實驗結果表明,該網絡能在真實圖像去噪任務中顯著提高去噪性能,具有更大的實際應用價值.
圖像去噪屬于典型的低層視覺任務,其中底層像素級特征起著至關重要的作用,目前大多數研究中AWGN水平σ通常在10~50范圍內[17].因此本文設定σ=10代表低水平噪聲和σ=50代表高水平噪聲,并對比了其灰度直方圖分布與真實噪聲圖像的分布,如圖1所示.

圖1 不同噪聲水平下的灰度直方圖分布對比Fig.1 Comparison of gray histogram distributionunder different noise levels
由圖1可知,圖1(a)中灰度直方圖分布最復雜,且上下兩幅圖像的分布之間具有明顯差異.常規CNN去噪方法在AWGN上表現突出,其原因在于能從噪聲水平較高的圖像中充分學習到像素級特征,而真實噪聲圖像的直方圖分布復雜且個體差異性較大,因此在真實噪聲圖像上表現欠佳.也就是說提高網絡基于像素級特征的學習能力是提高真實噪聲圖像去噪性能的關鍵,本文擬構建一個端到端盲去噪網絡.
為了提高網絡真實噪聲圖像去噪性能,本文提出具有復
雜像素分布特征學習能力的端對端盲去噪網絡LDFNet,結構如圖2所示.

圖2 LDFNet網絡結構Fig.2 LDFNet network structure
該網絡有3個模塊:特征自適應學習模塊(L)、多尺度殘差密集模塊(D)和特征多路徑融合模塊(F).L用于提取更具有判別性的像素特征,D用于提取有利于學習真實噪聲圖像復雜像素分布的結構信息和細節特征,F用于特征融合,減少信息壓縮,有效保留關鍵信息.圖2中xi是輸入的真實噪聲圖像,yi是輸出的去噪后的圖像,k代表卷積核大小,未指定的卷積核大小k均默認為“3×3”,“1”、“2”和“32”都代表特征圖的通道數c,r是擴張率.E的輸出先與輸入xi進行通道拼接后再進入D,可避免在傳遞過程中丟失底層像素特征.
圖2中的特征自適應學習模塊(L)由5個全卷積層、1個通道注意力結構和1個一維的特征圖組成,其中通道注意力結構如圖3所示.

圖3 通道注意力(CA)結構Fig.3 Structure of the channel attention(CA)
通道注意力結構中先將特征圖A進行全局平均池化(Global average pooling,GAP)得到1×1×c維張量v,再進行第1次全連接(Fully connected,FC)操作FC1得到1×1×2維張量,再進行第2次全連接操作FC2得到1×1×c維的通道權重張量u,最后將特征圖A的c個通道與學習到的通道權重的集合u=[u1,u2,…,uc]相乘得到加權后的特征圖A′.數學模型如公式(1)所示,其中×表示加權相乘:
A′=A×u=A×Sigmoid{FC2[ReLU[FC1(GAP(A))]]}
(1)
圖2中多尺度殘差密集模塊(D)中包含4種不同尺度擴張率的擴張卷積和4個殘差密集(RD)塊,其中擴張卷積的擴張率r分別為1、3、5和7.當r=1時,卷積核大小k=1×1,此外,其卷積核大小k=3×3.殘差密集(RD)塊結構如圖4所示.

圖4 殘差密集(RD)塊的結構Fig.4 Structure of the residual dense(RD)block
RD模塊與DenseNet[18]不同,包含了密集連接層、局部特征融合(Local feature fusion,LFF)和局部殘差學習(Local residual learning,LRL),可充分提取兼顧全局信息和局部細節信息的多尺度層次空間特征,特別適合圖像去噪的任務.密集連接層中每3個卷積層組合成一個塊,前面各塊的輸出使用跳線連接和當前塊的輸出相連并輸入到下一個塊,此外每個卷積層去除了BN和池化層,僅有一個ReLU,這更有利于保留特征.令RD模塊輸入的特征圖為F0,每個塊輸出的特征圖為Fi(i=1~6),融合Fi后的局部特征圖為FLFF:
FLFF=Conv[Concat(F0,F1,…,F5,F6)]
(2)
其中,Conv代表1×1的卷積操作,用來融合局部特征,Concat(F0,F1,…,F5,F6)表示將特征圖F0,F1,…,F5,F6進行通道連接,最終的輸出FLRL為融合后的局部特征圖FLFF利用局部殘差學習和底層輸入特征F0進行像素級求和:
FLRL=FLFF+F0
(3)


(4)

Bi=αiA′+βiA″+γiA?+δiA″″
(5)
αi、βi、γi、δi分別是向量α、β、γ、δ的第i(0≤i≤c)個變量,且必須滿足公式(6):
αi+βi+γi+δi=1
(6)
本實驗采用的數據集Smartphone Image Denoising Dataset(SIDD)[19]是一套用于智能手機相機降噪研究的數據集,其中訓練集是sRGB空間的160個包含標簽和真實噪聲圖像的圖像對,驗證集則從訓練集中隨機抽取40張圖片并裁剪成1280個256×256大小的塊,測試集采用被廣泛使用的標準真實數據集DND[20]和NC12[17,21].DND包含50張測試圖像,NC12包括12張真實噪聲圖像,且均并未公布其標簽圖像,因此本文通過對比其他方法的去噪效果和一個在線提交系統1來評價去噪性能.該在線提交系統可獲得去噪算法的性能指標—峰值信噪比(Peak signal to noise ratio,PSNR/dB)和結構相似性(Structural similarity index method,SSIM).
本實驗硬件平臺為NVIDIA GTX1080Ti,深度學習框架為TensorFlow1.8、Cuda9.1和CuDNN V6.輸入圖像塊大小為256×256,模型總共訓練2500個epochs,學習率被初始化為5e-4.在訓練過程中,使用L1損失函數和Adam優化器優化網絡參數,批次大小被設置為8,為了微調模型,在訓練1000個epoches后,學習率降為5e-5,在訓練2000個epoches后,學習率降為5e-6.
表1為LDFNet網絡中各模塊之間的消融實驗結果,包括特征自適應學習模塊(L)、多尺度殘差密集模塊(D)以及特征多路徑融合模塊(F).實驗0是3個模塊都不加,實驗1-3分別去掉L、D和F模塊,實驗4是均包含L、D和F模塊.對比實驗0和實驗1~實驗3可知組合L、D和F中任意兩個模塊均可在驗證集上獲得10.36dB的平均增益,再對比實驗1、2、3和4可知L、D、F分別獲得了0.12dB、1.23dB和0.78dB的增益,且由3個模塊組合成的實驗4的平均增益為11.07dB;綜上所述,LDFNet結構中的L、D和F這3個模塊均可促進去噪性能的提升,且組合起來更能達到最優去噪效果.

表1 L、D、F模塊之間的消融實驗Table 1 Ablation experiments among L、D and F modules
表2為不同算法在DND數據集上的去噪指標對比,采用了4個非盲圖像去噪算法(TNRD、BM3D、WNNM[22]和FFDNet)和1個盲圖像去噪方法(CDnCNN_B)作為參比,其中TNRD、BM3D和WNNM是優秀的經典非盲去噪算法,DnCNN和FFDNet是基于CNN的先進去噪算法[17].從表2可以看出本文方法的PSNR值達到36.10dB,分別比非盲去噪方法(TNRD、FFDNet、BM3D、WNNM)和盲去噪方法(CDnCNN-B)平均提高了1.79dB和3.67dB,SSIM值達到0.9019,分別比非盲和盲去噪方法提高了0.0536和0.1119.

表2 不同算法在DND數據集上的去噪指標對比Table 2 Comparison of denoising indexes of different algorithms on DND dataset
圖5是在DND數據集上某張圖像不同算法的去噪效果對比,其中,圖5(a)噪聲圖的PSNR值為19.17dB,圖5(c)~圖5(h)的PSNR值分別為25.85dB、26.51dB、30.43dB、31.36dB、30.85dB和32.99dB.由圖5可知,CDnCNN-B和TNRD算法無法充分移除真實噪聲,FFDNet和WNNM算法存在邊緣結構信息丟失的問題;本文方法較BM3D更好地保留了邊緣信息,且視覺效果清晰,同時在PSNR值上超出BM3D1.63dB.綜上,本文方法能更有效去除真實噪聲并保留紋理細節信息.

圖5 不同方法在DND數據集上的去噪結果Fig.5 Denoising results of different methods on DND datasets
圖6展示不同算法對NC12數據集中CarlosV palace圖像去噪效果.可知,圖6(b)和圖6(e)中仍存在部分噪聲,圖6(c)中明顯缺失圖像細節和邊緣紋理信息且視覺感知效果較差,圖6(d)中的直角部分由于丟失了邊緣結構信息,看起來較模糊,

圖6 不同方法在NC12數據集上的去噪結果Fig.6 Denoising results of different methods on NC12 datasets
本文算法LDFNet通過模塊L、D、F分別獲得更具有判別性的底層像素特征、兼顧全局信息和局部細節信息的多尺度層次空間特征以及可自適應加權的多尺度特征,從而可獲得更好的噪聲去除效果,且更好地保留了圖像邊緣信息和紋理細節信息,具有更清晰的視覺效果(如圖6(f)).
本文通過統計分析加性高斯白噪聲和真實噪聲的灰度直方圖分布之間的差異,發現真實噪聲圖像的像素分布特征非常復雜,且不同圖像之間差異化較大.常規CNN在真實圖像去噪上表現較差,原因在于其對復雜像素分布特征的學習能力不足.因此有效學習其分布特征是提高算法去噪性能的關鍵,本文構建了一個基于通道和空間注意力機制的真實噪聲圖像盲去噪網絡LDFNet.該網絡設計了特征自適應學習模塊(L)、多尺度殘差密集模塊(D)和特征多路徑融合模塊(F),模塊L通過調節通道重要性自適應地學習到更具有判別性的像素特征,模塊D通過多尺度空洞卷積和殘差密集結構充分提取了包含結構和細節信息的多尺度層次空間特征,模塊F通過空間注意力機制將多路徑特征進行融合,突出特征的空間和通道差異性,減少信息壓縮,提升關鍵信息提取的有效性,從而在公開的噪聲數據集中獲得了顯著的性能提升和良好的視覺效果.此外,真實噪聲圖像普遍存在,因此本文提出的去噪方法在圖像去噪領域具有廣泛的應用價值.