余傳本,劉增力
(昆明理工大學 信息工程與自動化學院,云南 昆明 650500)
在采集、獲取、傳輸圖像的過程中,由于電阻引起的熱噪聲、傳輸設備的不完善等各種因素的干擾,圖像會不可避免地被噪聲污染,這不僅影響用戶對圖像的視覺體驗,也會影響對圖像的后續處理。因此在對圖像執行后續處理之前,必須先對圖像進行去噪。常用的降噪方法有中值濾波、維納濾波等[1-3],但是在使用這些方法降噪時會丟失圖像的細節部分。小波去噪方法克服了上述缺點,在一定程度上能夠反映圖像的細節[4]。
長期以來,人們對小波去噪進行了大量研究,包括基于小波模極大值降噪、基于小波系數相關性降噪以及基于小波閾值函數降噪。從最小均方誤差的角度來看,小波閾值去噪方法原則上可以在獲得更好視覺效果的前提下達到最佳的去噪效果而被廣泛應用[5-7]。常用的閾值確定方法[8-10]有VisuShrink、SureShrink、BayesShrink以 及Feature Adaptive。VisuShrink去噪后的圖像邊緣比較清晰,細節等局部特征保留比較好,但不可避免地會對邊緣小波系數產生過扼殺,產生偽吉布斯效應等視覺失真現象。SureShrink和BayesShrink去噪后的圖像處理得比較平滑,但是邊緣比較模糊,效果相 對較差。
本文在貝葉斯收縮降噪方法的基礎上,提出一種改進的優化算法,即改進遺傳算法自適應貝葉斯閾值優化算法。改進的方法基于多維變量進行閾值優化,以最低均方差(Mean Square Error,MSE)為優化目標,設計適應度函數進行計算。
假設信號為(fi,j,i=1,2,…,N,j=1,2,…,N),N是2的冪,它被加性隨機噪聲εi,j污染,記為:

式中:εi,j是均值為零的獨立同分布的正態分布,并且獨立于fi,j。
令g=gi,j, f=fi,j, ε=εi,j,又令Y=Wg, X=Wf, V=Wε其中W表示二進正交小波算子。于是可得:

貝葉斯小波閾值是在廣義高斯分布(Generalized Gaussian Distribution,GGD)模型中取得,該模型的建立基于統計觀察,描述如下:

式中:-∞<x<∞, σx>0, β>0。α(σx, β)、C(σx, β)分別為:


對于σ2的估計,可由目前通用的中值估計法 得到:


對于σx的估計,由于信號小波系數與噪聲小波系數相互獨立,所以由式(2)可得:

σ2Y
是Y的方差,又因為Y服從高斯分布,所以可得:
子帶大小為n×n,所以由式(8)和式(9)可得σx的估計為:


于是可得最終的貝葉斯閾值函數為:

當前的閾值只是全局的,無法靈活地對應不同的圖像位置進行變化,針對這個問題,設計多變量自適應改進遺傳算法閾值優化算法,對原Bayes算法的固定閾值進行不同情況的自適應變化,變量即為遺傳算法種群[11-12]。因此,優化的自適應變量分別為:小波分解HVD的H、V、D高頻分量計算閾值相乘的自適應系數xtH, xtV, xtD和小波分解HVD的H、V、D高頻系數相乘的自適應系數xH, xV, xD。
根據以上優化思路以及自適應系數r可知優化的變量有7個。遺傳算法種群population=(xtH, xtV, xtD, xH, xV, xD, r)為7維數組,定義域為[0,1]。
在優化問題中,混沌理論和混沌序列的產生越來越普遍,由于混沌易于實現且避免了陷入局部最優的特殊能力,因此作為一種新技術引起了廣泛的關注。
本文使用混沌映射來生成混沌序列,而不是通過隨機過程進行遺傳算法,從而提高了算法效率。首先生成初始種群,其次計算個體的適應度函數,最后在遺傳操作中執行選擇、突變及交叉操作。所不同的是,它采取的是將混沌序列與遺傳算法相結合的方法,在遺傳算法的遺傳運算、變異算子及交叉算子中,本文將使用邏輯函數生成的混沌序列來進行抓取。
2.1.1 調整交叉操作的頻率
在遺傳算法的使用中,突變概率Pc通常是隨機選擇的,任何初始值x0,本文都可以使用x0作為準則,如果小于x0,則可以超過,否則它將不會被超過,如下所示:

式中:Pc是一個預選值,通常為0.9。
2.1.2 確定交點位置的混沌序列
設置L個長染色體,在區間(0,1)中隨機選擇一個數字xn作為初始值,并使用邏輯模型迭代生成混沌序列xn+1。利用公式C=(int)xn+1*L把序列xn+1映射染色體基因座空間,在該位置進行交叉操作,以便形成新的后代。只有少數點基因被替換,而不是片段連接,并且變化很小,避免了在生成后代時使用遺傳算法。最佳緩沖問題出現在中等種群中,可以由混沌序列確定所有交叉點的位置。
(1)檢查變異操作的頻率。在遺傳算法的使用中,突變概率Pm通常是隨機選擇的。方法與上面相同,其中Pm是預選值,通常為0.02。
(2)混沌順序決定了突變點的位置,方法與混沌分頻器相同。
基于上述混沌理論,本文提出的改進遺傳算法的自適應貝葉斯閾值優化方法的步驟如下。
步驟1:隨機產生一組具有7維變量(需要優化的7個參數)的初始個體以形成初始種群,并評估每個個體的適應度值。
步驟2:確保算法搜索關鍵參數的最優值,并評估是否滿足算法的收斂準則(以最小的MSE為優化目標)。如果滿足,則運行搜索結果;否則執行以下步驟。
步驟3:根據調整值的大小以一定方式進行復制操作。
步驟4:根據混沌交叉概率進行交叉操作。
步驟5:根據混沌變異概率進行變異運算。
步驟6:返回至步驟2。
整體的改進遺傳算法自適應貝葉斯閾值優化方法流程及代碼實現如圖1所示。

圖1 改進遺傳算法自適應貝葉斯閾值優化方法
常用的圖像質量評估參數為信噪比(Signal-Noise Ratio,SNR)和均方差(Mean Square Error,MSE),定義如下:

式中:M、N是圖像的垂直和水平方向上的像素數,S(i, j)和S '(i, j)是原始圖像以及去噪后圖像在點(i, j)處的像素值。
本文選擇了兩張圖片進行仿真實驗,用于驗證新閾值的性能。將圖像Lena和Barbara分別加入gaussian噪聲以及salt&pepper噪聲。小波變換選用“sym wavelet”,分解層數為2層。
經過200次迭代,適應度(即MSE計算數值)數值基本趨于穩定,Lena和Barbara圖像的適應度收斂曲線如圖2和圖3所示。最佳種群(7維數組)隨迭代數的變化如圖4所示,HVD小波系數變化過程中閾值的變化如圖5所示。

圖2 加入gaussian噪聲后圖像的適應度收斂曲線

圖3 加入salt&pepper噪聲后圖像的適應度收斂曲線

圖4 加入gaussian噪聲后最佳種群(7維數組)隨迭代數的變化

圖5 加入salt&pepper噪聲后圖像HVD小波系數變化過程中閾值變化

由結果圖2和圖3可知,經過200次迭代后,兩幅圖像的適應度(MSE)值趨于平穩收斂,且相對于閾值優化前,優化后的適應度函數(MSE)均有較大幅度的下降。根據圖4可知,圖像去噪迭代過程中,種群中的7個變量均產生了較優的種群并記錄更新在新一代種群當中。根據圖5可知,HVD小波系數的閾值在迭代過程中變化以實現最小的MSE目標。綜上,整個改進遺傳算法能較好地實現閾值優化目標。
Lena和Barbara加入gaussian以及salt&pepper噪聲的去噪圖像如圖6和圖7所示。

圖6 加入gaussian噪聲的圖像去噪過程與結果圖

圖7 加入salt&pepper噪聲的圖像去噪過程與結果圖
由仿真圖可知,兩幅圖在分別加入gaussian噪聲與salt&pepper噪聲之后,均可以達到較好的去噪效果,并且有較好的邊緣細節保留效果。
在對以上典型圖片進行算法驗證后,利用基于caltech數據集對本文的改進算法進行進一步的仿真驗證。caltech數據集是由美國加利福尼亞理工學院收集整理的數據集,主要包括兩類:一類是caltech101數據集,包括101個類別,每個類別有40到150張圖片,共9 144張圖片;另一類是caltech256數據集,有256種類別,共計30 607 張圖片,
基于caltech數據集的仿真結果如圖8所示。
不同去噪算法對caltech數據集圖像加入gaussian及salt&pepper噪聲后的平均去噪性能曲線如圖9、圖10所示。
由圖9和圖10可知,隨著噪聲方差和噪聲百分比的增大,所有算法的去噪SNR均下降,MSE均增加,而改進遺傳算法自適應貝葉斯閾值優化算法比VisuShrink、SureShrink算法在SNR與MSE方面有較大提升。

圖9 加入gaussian噪聲的去噪性能變化曲線

圖10 加入salt&pepper噪聲的去噪性能變化曲線
針對優化前的BayesShrink閾值算法,利用caltech數據集圖像進行閾值優化前后的圖像平均邊緣細節保持性能結果分析,結果如圖11所示。
針對優化前的BayesShrink閾值算法,利用caltech數據集圖像進行閾值優化前后的去噪性能結果分析,結果如表1所示。
對于優化前后的BayesShrink閾值算法,分低噪聲情況與高噪聲情況進行不同的噪聲方差(百分比)情況下的去噪計算。由結果可知,caltech數據集圖像加入gaussian噪聲平均降噪性能提升百分比為12.8%,caltech數據集圖像加入salt&pepper噪聲平均降噪性能提升百分比為12.4%,圖像去噪質量均有較大幅度提升。由圖11可知,對于圖像邊緣細節的保持性能,優化后的BayesShrink閾值算法比優化前平均提升16.6%左右。

圖11 圖像邊緣細節保持性能對比圖

表1 本文閾值去噪算法針對caltech數據集圖像的去噪性能結果
本文提出了一種基于改進遺傳算法的自適應貝葉斯閾值優化方法,仿真結果表明該算法具有良好的性能。由測試結果可知,該算法能夠提高圖像信噪比,有效減少均方誤差,對比各種算法,SNR、MSE均有較大改進,并能較好地保留圖像的邊緣細節。對比優化前的貝葉斯閾值算法,本文算法圖像去噪性能提升12%左右,因此更加有效、實用。盡管本文提出的改進遺傳算法自適應閾值優化方法可以有效地去除圖像噪聲,但算法的計算量仍然較大,算法運行時間較長,有必要在以后的工作中進一步提高算法的效率。