朱丙麗 程 波 高曉琴
1(重慶三峽學院計算機科學與工程學院 重慶 404100) 2(四川工商職業技術學院信息工程系 四川 都江堰 611830)
目前,大多數情況下的圖像在采集或傳輸過程中存在噪聲引入的情況,降低了圖像的質量。由于受到不同傳輸路徑或者傳感器等因素的影響,含噪圖像中的噪聲類型也不同,甚至同一幅圖像中存在多種噪聲類型[1-2]。常見的圖像噪聲類型包括高斯白噪聲、斑點噪聲和椒鹽噪聲等[3]。為了提高圖像視覺效果和后續圖像處理的準確率,圖像去噪技術成為廣大科研人員研究的熱點問題。
對于含噪圖像,通過檢測噪聲的類型,然后利用不同的針對算法進行噪聲消除。現有的噪聲消除方法有很多,大致分為基于空間域、基于變換域,以及基于學習三類。基于空間域去噪算法[4]可以得到較高的峰值信噪比,但在邊緣信息和紋理細節方面保留較少。基于變換域和基于學習去噪算法[5]可以很好地保留圖像的幾何信息,但是該類方法的計算較為復雜,計算時間較長。Chakraborty等[6]提出了一種基于準周期去噪的自動圖像去噪方法,通過傅里葉變換檢測圖像的高振幅噪聲頻譜成分,然后利用基于閾值和過濾器的技術來降低噪聲成分。Panigrahi等[7]提出了一種基于Curvelet變化的多尺度去噪技術,采用非局部方法和引導圖像濾波器來實現低頻噪聲和邊緣細節的處理。Wang等[8]采用下采樣Contourlet變換和小波變換進行圖像去噪,很好地消除高斯噪聲和斑點噪聲的影響。文獻[9]提出了一種低階稀疏表示的高光譜圖像去噪技術,利用了稀疏圖像表示的低階和自相似性特征對高斯噪聲和泊松噪聲進行去噪處理。文獻[10]提出了一種基于殘差相關正則化的圖像去噪算法,利用正則化策略對殘差圖像進行處理,然后采用稀疏編碼和字典更新的方式有效去除高斯噪聲的影響,獲得無噪聲圖像。
針對現有技術很少能夠同時處理多種噪聲類型的問題,本文提出一種基于獅群優化算法的自適應圖像去噪技術,該技術通過結合不同空間濾波器來消除數字圖像中的多種噪聲。由于單個空間濾波器只能處理特定的噪聲類型,因此考慮不同的濾波器組合有助于一次消除不同的噪聲。為了提高線性濾波器組合的效率,本文采用獅群優化算法(Lion Optimization Algorithm,LOA)檢查噪聲消除的效率,在確保圖像質量的同時,大大降低算法的時間消耗。
獅群優化算法是一種生物啟發算法,通過模仿獅子生存的行為特征進行參數優化。在獅群部落中,根據是否擁有領地可將雄獅分為領地獅和流浪獅兩種。領地獅通過創造獅群來維持群居生活,這些獅群一般由4~12只母獅、它們的幼崽和一些有限的老獅子構成。通常,流浪獅和領地獅會因為領地和交配權發生爭斗,獲勝者將留在獅群中,失敗者被驅逐。假定每個獅群擁有的個體數量是固定的,獅群優化算法通過檢測評估流浪獅的質量來確定該獅與獅群的適合度,選擇最佳的雄獅和母獅進入獅群,具有較弱適應值的獅子則被忽略,排除在后續評估隊列中。持續上述過程直到獲得最優的解決方案。
獅群優化算法需要設置獅子的初始種群數量與領地獅和流浪獅之間的百分比,并且設定每個獅群的邊界限制以及性別比例。LOA算法的主要關鍵點是:
(1) 為保持獅群利益最大化,流浪獅試圖在任何時刻擊敗領地獅,以進入獅群。
(2) 當流浪獅群個體與獅群部落進行協同進化和競爭后,只有最適合的獅子才能夠在獅群中生存,而其余不適合獅子則被忽略。
(3) 獅群的總數保持不變,流浪獅會以概率[0,1]找到合適的獅群。
針對目前大多數去噪方法集中在一種特定的噪聲(如高斯白噪聲等)或某種具體應用(如遙感、醫學等)上,本文的目標是利用一種方法解決不同應用圖像中的各類噪音問題。考慮高斯、斑點、椒鹽噪聲等干擾圖像紋理圖案的噪聲,本文方法利用不同的空間濾波器組合消除多種噪聲。
空間濾波器對相應像素的周圍像素執行操作,并使用計算值修改相應像素。空間域濾波器可以分為線性濾波器和非線性濾波器。本文主要采用均值、中值、維納、高斯、圓錐、圓形等幾種線性濾波器來處理圖像噪聲。下面分別給出幾種濾波器的具體內容。
2.1.1自適應均值濾波器
均值濾波器是一種線性濾波器,可以消除圖像尖銳噪聲,實現圖像平滑、模糊等功能。均值濾波器可以預先定義窗口大小,但是固定窗口大小的過濾器不適應所有圖像。因此,本文采用自適應均值濾波器,通過考慮輸入圖像來選擇窗口大小。對于相應的像素,通過以下方法求出周圍像素的平均值和標準偏差值:
(1)
(2)
式中:μ和σ分別是平均值和標準偏差值;N×N是適應圖像的窗口大小;cpi是對應的像素。假設,當一個像素的標準差與窗口中的其他像素相差太大時,該像素將根據窗口中像素的平均值進行修改。對圖像中的所有像素重復此過程。
2.1.2自適應中值濾波器
自適應中值濾波器通過比較相應像素和相鄰像素的值來檢測噪聲影響像素。中值濾波可以有效地消除椒鹽噪聲(脈沖噪聲)。假設當發現一個像素相對于鄰域像素的值不同時,該像素將被鄰域窗口中像素的中值替換。自適應中值濾波器的優點是可以根據設定的條件來改變濾波窗口的大小。
假設Pij是一個有噪聲圖像的像素,窗口中最小和最大的像素值分別由Psml和Pgrt表示。窗口尺寸和最大窗口尺寸分別由WS和WSgrt表示,窗口的中間值用Pmed表示。自適應中值濾波器可分為兩步:
(1) 當Psml
(2) 當Psml 自適應中值濾波器分析窗口的中心像素是否存在噪聲。當存在脈沖噪聲時,修改像素值;如果中心像素沒有噪聲,則保持現有像素值。當計算出的中值本身被檢測為有噪聲時,則增加窗口大小。 2.1.3自適應維納濾波器 自適應維納濾波器處理窗口的中心像素,其表達式定義為: (3) (4) 2.1.4自適應高斯濾波器 自適應高斯濾波器依賴于一個動態傳遞函數,該函數隨控制參數的變化而變化。高斯濾波器的設計如下: (5) 式中:(x,y)是像素之間的距離;σ是高斯分布的標準偏差。 2.1.5錐形和圓形過濾器 在錐形濾波器中,系數被組織成錐形。同樣,對于圓形濾波器,系數以圓形排列。需要指定這些過濾器的半徑才可進行處理,處理時主要考慮圖像中的三個局部最大點。 對于含噪圖像,利用濾波器消除噪聲的思路是正確的。但是,利用所有的濾波器去除圖像中的特定噪聲會帶來計算和時間復雜性。因此,本文采用LOA來確定用于對圖像進行去噪的最佳濾波器及不同濾波器間的順序。當在圖像上應用濾波器時,利用峰值信噪比(PSNR)值來計算該濾波器的適用性。當圖像連續三次未顯示任何改善時,則視為最佳解決方案。獅群優化算法如下: 算法1獅群優化算法 輸入:含噪圖像。 輸出:去噪圖像。 開始 產生初始的獅子和獅群 do 利用式(6)評估流浪獅的適應性; iffitness(current)>fitness(existing) 替代fitness(existing) end while(終止條件) end 利用圖像的PSNR值計算圖像的適配度,比較原始圖像和去噪圖像的質量,其公式為: (6) 式中:H和W分別表示圖像的高度和寬度;f(x,y)和g(x,y)分別表示原始圖像和去噪圖像在(x,y)位置處的灰度。 本文算法的所有初始參數均是在試驗誤差法的基礎上選取的。利用PSNR值計算圖像的適配度,進而對圖像的質量進行相應的評估和處理。初始的獅子數量設置為50,獅群為5,性別比率為0.7,流浪獅的比例是20%,終止條件設置為10次迭代。利用上述參數,將LOA應用于每個濾波器,通過檢查圖像的改進效果來優化濾波器組合方式。假定連續三次圖像的濾波未顯示任何改進,則說明當前濾波器組合對含噪圖像進行消除噪聲的解決方案可視為最終方案。因此,本文方法可以實現在沒有人為干預的情況下進行圖像去噪的目標。此外,去噪過程中涉及的所有濾波器本質上都是自適應的,不需要設置任何窗口大小。 本文所有實驗在一臺配置為Intel(R) Core(TM)i7-7820X CPU @3.60 GHz和8 GB RAM的機器上進行,所有測試均在MATLAB 2016a環境下實現。從不同來源的數據庫[11-14]中選擇出100幅圖像進行測試,用以驗證本文方法的性能,并且與其他先進的方法進行比較,如超像素聚類去噪[11]、混合圖像去噪[12]和基于Curvelet變換的去噪算法[13]。 圖1-圖3給出了本文方法處理含高斯白噪聲、斑點噪聲和椒鹽噪聲圖像時的樣本視覺結果。可以看出,本文方法可以很好地消除圖像中的高斯、斑點和椒鹽噪聲,與原始圖像對比發現,恢復的圖像在保留邊緣細節的同時,避免了圖像邊緣附近產生振鈴偽影的現象。 圖1 本文方法去除高斯噪聲(σ=30)的樣本視覺結果圖 圖3 本文方法去除斑點噪聲的樣本視覺結果圖 為了進一步評價本文算法去噪的性能,采用圖像處理中常用的三種指標進行估計:峰值信噪比(PSNR)、特征相似度(FSIM)和品質因數(FOM)。PSNR、FSIM和FOM越大,說明去噪圖像失真越小,去噪效果越好。 PSNR表示濾波圖像的最大像素值與噪聲的比值,定義為: (7) 式中:MSE表示均方誤差;fmax和fmin分別表示去噪圖像的最大和最小像素。 FSIM通過調節相位一致性和梯度幅度特征來計算圖像之間的相似性,該算法的計算公式表示為: (8) (9) (10) PCm(x,y)=max(PC(x),PC(y)) (11) 式中:Ω表示圖像的整個空域;SPC(x,y)、SG(x,y)和PC分別表示圖像x和y的特征相似性、梯度相似性和相位一致性信息;G表示圖像的梯度幅值;常量T1、T2是為了避免各式分母為零的情況。 FOM用來比較原始圖像和噪聲圖像之間的邊緣信息,評價去噪算法保留圖像邊緣特征的性能: (12) IN=max(II,IA) (13) 式中:II、IA分別表示原始和實際邊緣分布圖上的點數;α是比例系數,一般取1/9;d是實際邊緣點離原始邊緣線的法線距離。 表1-表3給出了兩種噪聲標準偏差情況下,不同去噪方法在PSNR、FSIM和FOM指標方面的比較結果,其中顯示了湖、遙感、建筑和MRI四個樣本圖像的指標結果以及100幅圖像的平均結果。在去噪過程中算法性能可能會根據每個迭代產生不同的變化,表中的指標結果是四次迭代的平均值。 表1 不同去噪方法在σ=30,70時的PSNR值 表2 不同去噪方法在σ=30,70時的FSIM值 表3 不同去噪方法在σ=30,70時的FOM值 從實驗結果來看,本文算法在PSNR、FSIM和FOM指標方面表現出的性能比其他去噪技術更好,明顯地體現出本文方法在去噪方面的優越性。通過改變噪聲方差來驗證算法的可靠性,測試結果表明在σ=70時本文算法在評價指標方面仍有很好的表現。對比不同方差時的圖像指標發現,當噪聲方差增加時,圖像的PSNR、FSIM和FOM值減小,本文方法的性能降低。 本文方法同樣強調消除圖像噪聲的工作效率,具有很好的去噪性能的主要原因是在優化算法的指導下應用多個濾波器,但是沒有在噪聲圖像上應用所有濾波器,因為這樣操作會帶來時間和計算的復雜性。圖4給出了測試本文方法的時間效率,可以看出,本文提出的利用優化算法選擇最佳濾波器組合的技術可以在保證更好去噪性能的同時,保持時間效率。 圖4 不同去噪算法的時間效率分析 針對目前存在的大多數去噪算法只能處理單一類型的噪聲,很少能夠同時處理多種類型的問題,本文提出一種基于獅群優化算法的自適應圖像去噪技術。針對圖像中常出現的高斯白噪聲、斑點噪聲和椒鹽噪聲,本文方法結合6種不同空間濾波器來實現圖像去噪的目的。為了提高線性濾波器組合的效率,降低算法的時間消耗,本文引入獅群優化算法,在不需要人工干預的情況下尋找最佳濾波器組合。實驗結果表明,本文算法在多個指標方面的性能表現及時間效率都比其他算法優越。
2.2 獅群優化算法
3 實 驗






4 結 語