李倩,魏偉波,楊光宇,宋金濤,孫璐,潘振寬
(青島大學計算機科學技術(shù)學院,山東 青島 266071)
在天文學影像[1]、生物醫(yī)學影像[2]、夜視影像[3]等弱光成像系統(tǒng)應用中,光感受器只能接收到少量光子,所獲取的圖像存在散粒噪聲,即泊松噪聲。該類噪聲與光強相關(guān)[4],導致泊松噪聲的去除難度比傳統(tǒng)高斯噪聲的去除難度更大,成為圖像恢復研究中的一類重要問題。
經(jīng)典的泊松噪聲去除方法有Anscombe 變換[5]、Fisz 變換[6]等方差穩(wěn)定變換(VST)方法。該類方法將泊松噪聲轉(zhuǎn)換為具有穩(wěn)定方差的近似高斯噪聲,再使用去除加性高斯噪聲的去噪器去除噪聲,最后通過逆變換得到去噪圖像。M?KITALO 等[7]提出VST 與三維塊匹配算法(BM3D)相結(jié)合的去噪算法(VST+BM3D),通過對高斯去噪器去噪后的圖像引用精確無偏逆,以降低應用非線性逆變換過程中產(chǎn)生的偏差和計算復雜度,從而提高去噪性能。AZZARI 等[8]提出基 于VST 的迭代 泊松去噪與BM3D 相結(jié)合的算法(I+VST+BM3D),將泊松觀測圖像與前一次迭代生成的去噪圖像組成尺度泊松數(shù)據(jù),并使用精確的無偏逆得到去噪圖像的估計值,在圖像恢復質(zhì)量、效率方面有很大提高,是目前去除泊松噪聲最先進的方法之一。然而,通過方差穩(wěn)定變換得到的近似圖像是不準確的,尤其在信噪比較低時,逆變換的偏差較明顯。泊松噪聲去除的另一類經(jīng)典方法為依據(jù)泊松噪聲統(tǒng)計量的直接方法[9-10],如SALMON 等[10]提出依賴于高斯混合模型(GMM)的非線性主成分分析(NLPCA)和非線性稀疏主成分分析(NLSPCA)方法,可較好處理較低峰值的泊松噪聲去除問題,但整體圖像恢復質(zhì)量較差,計算效率較低。由貝葉斯公式導出的變分模型(Le)[11]包含基于泊松噪聲統(tǒng)計量的數(shù)據(jù)項和圖像特征保持的規(guī)則項,經(jīng)典的總變差(TV)規(guī)則項在去除泊松噪聲的同時可以保持圖像邊緣,但存在階梯效應和對比度下降問題。Lü 等[12]和張崢嶸等[13]分別用廣義總變差(TGV)規(guī)則項、歐拉彈性規(guī)則項替換Le 模型中的TV 規(guī)則項,有效克服了階梯效應問題,但須引入更多手工調(diào)節(jié)的懲罰參數(shù)。CHOWDHURY 等[14]引入分數(shù)階總變差(FOTV)規(guī)則項以保持復雜圖像的分段平滑性,但計算復雜度高,且在低信噪比時效果不顯著。
基于深度學習策略的卷積神經(jīng)網(wǎng)絡的泊松噪聲去除方法[15-18]使高斯噪聲去除的效率和質(zhì)量得到極大提高。REMEZ 等[19]將全卷積殘差神經(jīng)網(wǎng)絡應用于泊松噪聲去除,但網(wǎng)絡結(jié)構(gòu)復雜且可解釋性差,而基于深度學習的神經(jīng)網(wǎng)絡[20-23]是有效的解決方案。WANG 等[23]在乘性噪聲去除變分模型的分裂Bregman 迭代算法中嵌入高效的高斯深度卷積神經(jīng)網(wǎng)絡(DCNN)去噪器。FENG 等[24]提出在變分模型的半二次分裂(HQS)迭代算法基礎上嵌入高斯去噪器的泊松去噪反應擴散模型(TRDPD)[15],該方法大幅提高了圖像恢復的計算效率,但這種即插即用(PnP)技術(shù)仍需手動精細調(diào)參,且在低信噪比時去噪效果不顯著,其主要原因是估計圖像包含的噪聲并不嚴格服從高斯分布,而是包含大量偽影信息。
本文在泊松噪聲去除變分模型的迭代算法基礎上,設計基于泊松噪聲訓練數(shù)據(jù)的端到端深度學習神經(jīng)網(wǎng)絡,以避免懲罰參數(shù)的手工調(diào)節(jié),并提高該類噪聲的去除效果。采用交替方向乘子法(ADMM)[25]設計變分模型的迭代求解算法,將原優(yōu)化問題分解為多個子優(yōu)化問題,并將與高斯去噪相關(guān)的子問題嵌入DPDNN 高斯去噪子網(wǎng)絡[26],連同其他可迭代求解的子系統(tǒng)構(gòu)成聯(lián)合訓練的端到端神經(jīng)網(wǎng)絡系統(tǒng)。
泊松噪聲圖像f的概率密度函數(shù)如下:
其中:μ為均值。據(jù)貝葉斯定理,噪聲圖像f恢復出理想圖像u的最大后驗分布如下:
其中:P(u|f)為后驗概率;P(f|u)為似然函數(shù);P(u)為先驗概率。由于P(f)是已知泊松噪聲圖像f的概率密度函數(shù),因此為常量。根據(jù)最大后驗估計理論,u可通過最大化式(2)得到,并可通過其負對數(shù)的最小化實現(xiàn)。
其中:Φ(u)依據(jù)圖像的Gibbs 先驗分布設計。
通過以上公式可得到經(jīng)典的泊松噪聲去除變分模型:
其中:能量泛函中的第1 項為數(shù)據(jù)項,又稱數(shù)據(jù)保真度項;第2 項為規(guī)則項,用于刻畫恢復圖像特征保持特性;λ為懲罰參數(shù),用于調(diào)節(jié)圖像特征保持的程度。
式(4)可采用標準的變分方法及梯度下降方法求解,但其數(shù)據(jù)項由于包含對數(shù)運算容易導致數(shù)值計算困難,引入輔助變量w=logau,得到:
將式(4)轉(zhuǎn)化為受式(5)約束的兩變量極值問題:
式(6)的求解可借助ADMM 算法。為此,引入拉格朗日乘子σ和懲罰參數(shù)μ,構(gòu)造以下增廣拉格朗日泛函:
在交替優(yōu)化過程中,拉格朗日乘子采用如下修正迭代:
為了分離數(shù)據(jù)項和規(guī)則項,還引入另一個輔助變量z=u,并引入懲罰參數(shù)θ建立如式(6)所示的半二次分裂形式:
依據(jù)ADMM 算法,在交替優(yōu)化的每一步中交替優(yōu)化單個變量,相應的子優(yōu)化問題依次如下:
采用變分法,子優(yōu)化問題式(11)的解w滿足歐拉-拉格朗日方程:
對式(15)采用梯度下降法,并對時間變量采用顯式歐拉法離散,wk的迭代計算公式如下:
同樣采用變分方法,關(guān)于u的極值問題式(14)的解滿足歐拉-拉格朗日方程:
最終,σk+1由式(9)計算更新。
子優(yōu)化問題式(18)是經(jīng)典的高斯去噪模型,采用高斯去噪網(wǎng)絡DPDNN 的先驗高斯去噪子網(wǎng)絡DCNN[26]。DPDNN 先驗高斯去噪子網(wǎng)絡采用緊湊的改進U-Net 網(wǎng)絡結(jié)構(gòu),在加性噪聲圖像恢復方面性能優(yōu)越,將該子網(wǎng)絡應用于泊松噪聲去除網(wǎng)絡設計,亦可看作其拓展應用的新嘗試。DCNN 網(wǎng)絡結(jié)構(gòu)如圖1 所示(彩色效果見《計算機工程》官網(wǎng)HTML版,下同),由特征提取和圖像重建兩部分組成。特征提取部分由4 個特征編碼塊組成,每個特征編碼塊由3 個卷積層3×3×64、ReLU 激活函數(shù)和1 個下采樣組成,生成64 通道的特征圖并將特征圖的減小為輸入的1/2。圖像重建部分由上采樣和4 個特征解碼塊組成。先通過反卷積進行上采樣,再將編碼階段生成的相同空間分辨率的特征圖進行融合生成1 個新的上采樣特征圖,降低了編碼階段下采樣過程中的信息損失。每個解碼塊包括1 個1×1×64 的卷積層和ReLU 激活函數(shù),用于將特征圖的數(shù)量從128 降至64,同時還包括4 個3×3×64 的卷積層和ReLU 激活函數(shù)。在網(wǎng)絡的最后從輸入端到輸出端進行跳躍連接的殘差學習,提高了網(wǎng)絡性能。
圖1 DCNN 網(wǎng)絡結(jié)構(gòu)Fig.1 Structure of the DCNN network
圖2 為DCNN 去噪網(wǎng)絡結(jié)構(gòu)。通過網(wǎng)絡執(zhí)行算法的K次迭代,網(wǎng)絡的輸入是泊松噪聲圖像f,f初始化為u0,然后將u0輸入模塊,通過式(20)得到更新后的uk。高斯去噪子網(wǎng)絡采用DCNN網(wǎng)絡。
圖2 DCNN 去噪網(wǎng)絡結(jié)構(gòu)Fig.2 Structure of the DCNN denoising network
通過端到端訓練分別學習相關(guān)參數(shù),所使用的損失函數(shù)為均方誤差,其形式如下:
以峰值信噪比(PSNR)和結(jié)構(gòu)相似性(SSIM)作為定量指標,以視覺效果作為定性指標,從這兩個方面對所提泊松去噪變分模型進行綜合評價,PSNR、SSIM 分別定義如下:
其中:f是噪聲圖像;u是原始圖像;μf、μu為圖像f、u的均值;σf、σu為方差;σfu為協(xié)方差。
模型訓練與測試均在NVIDIA GeForce TEX 2080 Ti 版本的GPU 上進行。為了訓練網(wǎng)絡,采用BSD400 數(shù)據(jù)集[26]的400 張180×180 像素的圖像作為灰度圖 像訓練 集,采 用BSD500 數(shù)據(jù)集[27]中除去BSD400 數(shù)據(jù)集和BSD68 數(shù)據(jù)集[19]所剩下的32 張圖像作為驗證集。訓練時數(shù)據(jù)尺寸裁剪為32×32 像素。在圖片中分別添加噪聲水平為1、2、4、8、20 5 種不同峰值的泊松噪聲,批次大小設為20,并對不同的噪聲水平進行訓練。使用Adam 優(yōu)化器對所提模型進行訓練,優(yōu)化器的超參數(shù)β1、β2分別設置為0.9 和0.99,其余參數(shù)設置為默認值。初始學習率為0.000 5,共訓練50 個epochs。
迭代次數(shù)K的選擇對于去噪結(jié)果的影響至關(guān)重要,因此測試不同迭代次數(shù)K的去噪效果。在峰值為2 的情況下選擇K為2、3、4、5、6、7、8 的7 個網(wǎng)絡模型分別進行訓練,在Set12 數(shù)據(jù)集[19]上展示PSNR 和SSIM 的對比結(jié)果,如圖3 所示。
圖3 迭代次數(shù)K 對泊松去噪的影響Fig.3 Influence of the number of iterations K on Poisson denoising
由圖3 可以看出:當?shù)螖?shù)K取6 時,相對于K取2、3、4、5 的PSNR/SSIM 可獲得0.249 dB/0.031 0、0.144 dB/0.014 4、0.065 dB/0.005 6、0.023 dB/0.001 9 的增益;相對于K取7、8 時去噪效果提升不明顯。通過綜合考慮運行效率與去噪效果,將迭代次數(shù)設置為6 可獲得良好的去噪效果。對于參數(shù)μ、θ的選擇,采用固定一個值而調(diào)節(jié)另一個值的方法進行實驗,當μ、θ分別取0.05 和0.95 時可以 獲得較 好的去噪效果。
3.3.1 灰度圖像泊松去噪
為了驗證所提泊松去噪變分模型(簡稱為Proposed)性能,將其與經(jīng)典的基于NLPCA[10]、VST+BM3D[7]、I+VST+BM3D[8]以及深度學習TRDPD[24]的泊松去噪模型在Set12 數(shù)據(jù)集和BSD68 數(shù)據(jù)集上進行比較。
在實驗中,通過在Set12 數(shù)據(jù)集上添加峰值分別為1、2、4、8、20 的泊松噪聲來生成噪聲圖像。圖4~圖8 展示了部分圖像的去噪效果。圖4 展示的是峰值為1 時5 種模型去除泊松噪聲后的效果,可以看出:經(jīng)過NLPCA 去噪后會產(chǎn)生明顯的條狀偽影且圖像細節(jié)過于模糊,只能恢復出圖像輪廓;基于BM3D 的VST+BM3D 和I+VST+BM3D 模型在去噪后出現(xiàn)了散斑,這是由于BM3D 去除噪聲的原理是通過選擇相似塊在變換域進行濾波得到塊評估值,當噪聲很大時會受到相似塊的影響形成散斑;經(jīng)過TRDPD 處理后的圖片細節(jié)保留較好,但會產(chǎn)生塊狀偽影;所提模型具有較好的主觀視覺效果,在PSNR 和SSIM 指數(shù)上也得到了最好的結(jié)果,但在細節(jié)保持上略差于VST+BM3D、I+VST+BM3D 和TRDPD,弱化了部分關(guān)鍵結(jié)構(gòu),例如,在圖4(f)中房間細節(jié)處理過于平滑,而其他3 種模型可以看到更多房間的細節(jié)。由圖5~圖8 可以看出:無論峰值大小,經(jīng)過NLPCA 的處理都會產(chǎn)生不同程度的條狀偽影;當峰值等于2 時,VST+BM3D 和I+VST+BM3D 兩種模型會產(chǎn)生明顯的散斑,當峰值大于2 時這兩種模型在視覺效果方面都有較大的改善,TRDPD 的塊狀偽影也不再出現(xiàn);所提模型在視覺上展現(xiàn)的效果最好且PSNR 和SSIM 總是最高的,不僅在高信噪比時噪聲可以被去除,在低信噪比時也能很好地去除泊松噪聲,并且不會出現(xiàn)偽影和散斑等現(xiàn)象。因此,所提模型在去除泊松噪聲方面有顯著的效果。
圖4 峰值為1 時不同模型的去噪效果Fig.4 Denoising effect of different models when the peak is 1
圖5 峰值為2 時不同模型的去噪效果Fig.5 Denoising effect of different models when the peak is 2
圖6 峰值為4 時不同模型的去噪效果Fig.6 Denoising effect of different models when the peak is 4
圖7 峰值為8 時不同模型的去噪效果Fig.7 Denoising effect of different models when the peak is 8
圖8 峰值為20 時不同模型的去噪效果Fig.8 Denoising effect of different models when the peak is 20
在Set12 數(shù)據(jù)集和BSD68 數(shù)據(jù)集上采用不同去噪模型的去噪結(jié)果分別如表1 和表2 所示,其中最優(yōu)結(jié)果以黑體表示,下同。由表1 可以看出:當峰值為20 時NLPCA 的PSNR 低于峰值為8 時的PSNR,說明NLPCA 的去噪性能不穩(wěn)定;當峰值為1 時TRDPD的PSNR 和SSIM 均低于I+VST+BM3D,說明當噪聲峰值比較低時I+VST+BM3D 的去噪性能要優(yōu)于TRDPD;所提模型在5 個噪聲峰值上均得到最高的PSNR 和SSIM。經(jīng)驗證,所提模型具有較強的泊松去噪能力。
表1 不同模型在Set12 數(shù)據(jù)集上的PSNR 和SSIM 結(jié)果 Table 1 PSNR and SSIM results of different models on the Set12 dataset
表2 不同模型在BSD68 數(shù)據(jù)集上的PSNR 和SSIM 結(jié)果 Table 2 PSNR and SSIM results of different models on the BSD68 dataset
3.3.2 彩色與臨床正電子發(fā)射斷層掃描與計算機斷層掃描(PET/CT)圖像泊松去噪
為了更真實反映所提模型與其他模型在主觀視覺上的效果,在CBSD68 數(shù)據(jù)集[28]上將其 與NLSPCA[10]、I+VST+BM3D 和TRDPD 進行主觀視覺效果實驗。圖9 顯示了在泊松噪聲峰值為1 時的彩色圖像主觀視覺效果比較。由圖9 可以看出:彩色圖像經(jīng)過NLSPCA、I+VST+BM3D 處理后會產(chǎn)生不同程度的模糊情況;經(jīng)過TRDPD 處理后也會產(chǎn)生偽影;所提模型具有較好的去噪效果,特別是顏色偽影較少。
圖9 峰值為1 時不同模型對彩色圖像的去噪效果Fig.9 Denoising effect of different models on color images when the peak is 1
表3 為3 種模型與所提模型在CBSD68 數(shù)據(jù)集上的PSNR 和SSIM 比較,由NLSPC、I+VST+BM3D和TRDPD 處理的彩色噪聲圖像在數(shù)據(jù)指標上明顯低于所提模型,可以看出所提模型在去除彩色圖像的泊松噪聲方面也具有較好的效果。
表3 不同模型在CBSD68數(shù)據(jù)集上的PSNR和SSIM 結(jié)果Table 3 PSNR and SSIM results of different models on the CBSD68 dataset
為了證明所提模型的有效性,利用兩幅實際臨床腦部PET/CT 圖像進行實驗。圖10 展示的是腦部PET/CT 圖像和經(jīng)4 種模型去噪后的圖像。由圖10可以看出:臨床PET/CT 圖像經(jīng)過NLSPCA 和I+VST+BM3D 處理后雖然去除了噪聲,但圖片卻很模糊;經(jīng)過TRDPD 處理后會產(chǎn)生一定程度的偽影;經(jīng)過所提模型處理后的圖片既去除了噪聲,又避免了偽影的產(chǎn)生,且較好地保持了腦部結(jié)構(gòu)。
圖10 腦部PET/CT 圖像Fig.10 Brain PET/CT image
3.3.3 運行時間比較
不同模型處理單幅圖像的運行時間如表4 所示。由表4 可以看出,通過使用深度神經(jīng)網(wǎng)絡模型進行去噪的運行時間明顯短于傳統(tǒng)模型去噪的運行時間,表明深度學習方法適合在GPU 上運行,可以極大地提高運行效率。當處理256×256 像素的灰度圖像時,所提模型的運行時間比TRDPD 慢0.08 s,但比NLPCA、VST+BM3D、I+VST+BM3D 分別快9.31 s、0.71 s、0.23 s;當處理512×512 像素的灰度圖像時,所提模型要比TRDPD 慢0.07 s,比NLPCA、VST+BM3D、I+VST+BM3D 分別快62.51 s、3.41 s、1.50 s,說明所提模型具有較高的運行效率。
表4 不同模型處理單幅圖像的運行時間Table 4 Running time of single image processed by different models 單位:s
本文首先設計泊松噪聲去噪變分模型的ADMM 算法,將原優(yōu)化問題分解為高斯去噪和圖像重建兩個交替優(yōu)化子問題;然后根據(jù)迭代算法與深度神經(jīng)網(wǎng)絡結(jié)構(gòu)的對應關(guān)系將迭代過程展開成端到端的網(wǎng)絡求解。高斯去噪采用先驗驅(qū)動的深度卷積神經(jīng)網(wǎng)絡實現(xiàn),圖像重建通過解析求解實現(xiàn)?;跇藴蕯?shù)據(jù)集的訓練和測試結(jié)果表明,在灰度圖像、彩色圖像及臨床PET/CT 圖像的泊松噪聲去除方面,所提模型在客觀評價指標和主觀視覺效果上比傳統(tǒng)模型和現(xiàn)有深度學習模型更具優(yōu)勢。本文工作主要是對基于深度神經(jīng)網(wǎng)絡的泊松噪聲去除變分模型的初步探索,如何將其應用于去除其他噪聲以及基于加速的ADMM 算法設計更加高效的變分神經(jīng)網(wǎng)絡還有待進一步研究。