許慧琴, 劉海忠
(蘭州交通大學 數理學院, 蘭州 730070)
圖像紋理濾波旨在保持原圖像顯著結構的同時去除紋理或噪聲, 應用廣泛, 如圖像的視覺抽象、 色調映射、 細節處理、 邊緣檢測等. 紋理通常頻繁出現且無規律, 具有一定的復雜性和多樣性, 因此有效地從圖像中提取重要的結構信息是該領域目前的研究熱點.
現有的紋理濾波方法主要包括局部濾波、 全局優化濾波、 尺度自適應濾波和基于深度學習的濾波. 局部濾波利用加權平均的思想, 主要有雙邊濾波[1]和各向異性擴散[2]; 基于全局的方法需要先構造一個由數據保真項和正則項組成的優化框架, 包括加權最小二乘濾波(weighted least squares filtering, WLSF)[3]和梯度最小化[4]. 這兩類方法是以像素強度的對比度作為結構度量, 對紋理圖片的處理效果不理想. 基于此, Xu等[5]提出了相對全變分(relative total variation, RTV)方法, 利用窗口固有的變分區分結構邊緣和紋理, RTV度量能有效捕捉圖像的結構和紋理特征; Liu等[6]將雙邊濾波嵌入到最小二乘框架中得到邊緣保持圖像平滑結果. 但上述方法僅能去除噪聲和低對比度細節, 不能有效分離突出結構和復雜紋理, 無法完全平滑具有復雜背景圖像中的紋理, 且濾波后的圖像會產生眩暈偽影.
針對上述紋理濾波方法的不足, 一些研究者提出了尺度自適應濾波方法, 尺度自適應是根據結構測量結果自適應地調整濾波核大小, 在結構邊緣處選擇較小的濾波窗口, 而在紋理區域選擇較大的濾波窗口. 通常情況下, 先根據自適應尺度生成引導圖像, 再通過聯合雙邊濾波得到最終結果[7-11]. 例如: Song等[9]利用方向各向異性測量統計區分結構和紋理, 從而確定像素周圍要平滑的適當范圍; Xu等[10]在紋理測量中考慮了邊緣結構的線性特征, 通過排除高強度對比度的相鄰像素, 自適應地形成邊緣感知窗口, 使每個窗口盡可能位于紋理區域內; Liu等[11]利用局部直方圖算子進行結構測量, 進而確定自適應尺度核的大小. 另一方面, Gavaskar等[12]提出了自適應雙邊濾波, 允許每個像素高斯范圍核的中心和寬度發生改變; Ghosh等[13]通過調整每個像素的空域核大小得到紋理濾波結果, 同時利用高斯范圍核的Fourier近似, 使算法的復雜度不隨空域核的增大而增大. 上述方法雖然能在去除紋理的同時保留結構邊緣, 但根據自適應尺度生成濾波結果的過程非常耗時, 同時聯合雙邊濾波的多次迭代會導致圖像邊緣模糊.
近年來, 深度學習算法在圖像紋理濾波領域取得了顯著進展. Xu等[14]構建了一個統一的梯度域神經網絡結構, 可以逼近多種類型的濾波器; Kim等[15]提出了一種新的結構-紋理分解框架, 利用神經網絡學習的先驗信息從紋理中提取出結構邊緣, 可避免產生眩暈偽影; Gao等[16]提出了一個基于生成對抗網絡的半監督紋理濾波算法. 盡管深度學習算法能在圖像保持邊緣平滑時取得良好性能, 但也受一些限制, 這些方法需要大量的模糊-清晰圖像對訓練模型, 而清晰圖像一般由現有平滑算法生成, 與真實的清晰圖像可能存在不一致的問題.
基于此, 本文提出一種基于結構張量的加權最小二乘(WLS)算法, 以實現結構保持紋理濾波. 先計算結構張量的各向異性測度, 再將其與局部梯度信息相結合生成WLS的平滑權重, 以區分輸入圖像的突出結構和紋理區域. 在全局優化框架中, 結構和紋理具有不同的懲罰項, 尤其在各向同性的紋理區域內達到較強的平滑能力. 該算法能選擇性地抑制紋理特征上的梯度, 同時在有限的迭代過程中保持多尺度結構特征.
經典的WLS算法采用全局優化框架, 對于輸入圖像I, 通過最小化如下WLS目標函數得到平滑后的圖像S:

(1)
其中:p表示像素的空間位置; ?xS和?yS分別表示S在x和y方向上的偏導數; 第一項為數據保真項, 使輸入圖像I與輸出圖像S之間的差異最小; 第二項是正則項, 通過最小化S的偏導數實現圖像平滑, 平滑程度依賴于平滑權重ax,p(I)和ay,p(I);λ是正則項參數, 控制兩項之間的平衡.ax,p(I)和ay,p(I)分別定義為

(2)
其中l表示輸入圖像I的對數亮度通道, 指數α決定了對I的梯度靈敏度,ε是一個確保權重分母不為零的常數.
本文在WLS濾波框架上, 利用局部梯度信息和結構張量測量的各向異性優化式(1)中的平滑權重, 用局部梯度和各向異性檢測結構邊緣. 當像素靠近結構邊緣或在小結構內部時, 平滑權重的值相對較小; 反之, 當像素位于紋理區域時, 平滑權重的值相對較大. 輸入圖像梯度變化較大處使其約束較小, 以保留圖像的結構信息; 梯度變化較小處使其約束較大, 以盡可能地平滑紋理和細節. 基于此, 得到新的紋理濾波框架, 并將其最小化:

(3)
其中wx,p(I)和wy,p(I)是優化后的平滑權重, 用公式表示為

(4)

結構張量是提取一個像素結構信息的張量, 由圖像梯度矩陣導出, 其不僅揭示了每個像素的強度分布, 還總結了局部領域內梯度的主要方向.像素點p的結構張量Tp定義為

(5)
其中:Ωp為以像素點p為中心的領域,Ωp=(2r+1)2; ?xI和?yI分別表示I在x和y方向上的偏導數;Tp是一個具有兩個特征值的半正定對稱矩陣, 特征值分別為λ1,p和λ2,p(λ1,p≥λ2,p≥0), 對應的特征向量為ζ1,p和ζ2,p, 每個特征值大小是其對應特征向量方向上梯度值的度量.
各向異性測度Ap可估計像素強度變化的局部不均勻性, 用公式表示為

(6)


(7)

將式(3)改寫成矩陣形式:

(8)


(9)
其中E為單位矩陣.
由于自然圖像的紋理復雜多變, 通常單次迭代求解無法完全去除紋理, 因此需多次迭代優化, 最小化歸結為在每次迭代中求解:
Sk=(E+λLk-1)-1I,
(10)

算法1基于結構張量的加權最小二乘紋理濾波.
輸入: 圖像I;
輸出: 圖像S;
初始化:k=0,S0=I;
for allk=1∶Kdo
1)wx,wy←式(4)中的平滑權重;
2)Sk←最終輸出結果;
end for.
本文算法在MATLAB上實現. 需要設置的參數為σ,r,K,λ, 其中σ決定了平滑權重wx和wy中高斯核函數Gσ的寬度, 可控制計算局部梯度時所包含的像素范圍, 本文設σ=3; 計算結構張量時,r決定了以像素點p為中心的領域Ωp的寬度, 本文設r=7.在參數設置過程中, 相對重要的兩個參數分別是正則項參數λ和迭代次數K,λ平衡式(3)中兩項之間的比重, 且λ越大圖像越平滑, 設λ的取值范圍為[0.15,0.35];K的取值依賴于紋理的粗糙程度, 多數情況下設K=3即可達到理想的平滑效果.對于同一張紋理圖像,λ和K不同組合下的濾波結果如圖1所示.由圖1可見, 隨著λ和K的增大, 紋理去除程度逐漸增強.

圖1 λ和K不同組合下的濾波結果
3.2.1 主觀評價
將本文結果與經典的紋理去除方法進行視覺上的對比, 包括加權最小二乘濾波(WLSF)[3]、 相對全變分(RTV)[5]、 引導濾波(rolling guidance filter, RGF)[17]、 雙邊紋理濾波(bilateral texture filtering, BTF)[18]、 相對高斯濾波(relativity-of-Gaussian filtering, ROGF)[19]和尺度感知紋理濾波(scale adaptive texture filtering, SATF)[9].
圖2為各類方法紋理濾波結果的視覺對比. 該圖像具有高對比度的紋理和小細節結構, 例如魚的眼睛和眉毛. 由圖2可見: 不同方法的濾波結果存在一定的差異, WLSF[3],RGF[17],BTF[18]和SATF[9]無法有效去除背景中具有強梯度的復雜紋理, 且RGF[17]和BTF[18]導致了嚴重的小尺度結構過度模糊; RTV[5]和ROGF[19]的性能相對較好, 能完全濾除復雜背景紋理; 相比于現有的方法, 本文方法在去除強對比度紋理和保留小細節結構方面性能更好.

圖2 不同方法紋理濾波結果的視覺對比
為進一步說明本文方法在保留突出結構和去除紋理方面的有效性, 對不同方法在一張頭部圖像的濾波效果進行對比, 結果如圖3所示.

圖3 不同方法對頭部圖像的濾波效果對比
由圖3可見: RGF[17],ROGF[19]和SATF[9]導致小結構模糊, 出現偽影眩暈現象或者小結構粘連在一起, 其中ROGF[19]出現過度平滑趨勢, 而RGF[17]和SATF[9]無法將紋理濾除干凈; WLSF[3]和BTF[18]能完整保留小細節尺度, 但背景中仍然存在紋理; 與現有的常用方法相比, 本文方法在過濾多尺度紋理方面優于其他方法, 可同時保持多尺度結構特征.
3.2.2 客觀評價
常用的圖像客觀評價指標包括峰值信噪比(peak signal to noise ratio, PSNR)、 結構相似性(structural similarity index, SSIM)和特征相似性指數(feature similarity index, FSIM). PSNR通過均方誤差定義, 數值越大表示圖像失真越小; SSIM從亮度、 對比度和結構方面綜合衡量圖像相似性; FSIM是SSIM的一種變體, 其考慮到對于界定物體的結構, 物體邊緣的像素點一定比其他背景區域的像素點更重要. 上述3個指標都是全參考圖像質量衡量標準, 因此本文選取4張真實圖像, 分別添加椒鹽噪聲和周期噪聲作為紋理圖像, 如圖4所示. 利用本文方法進行紋理濾波, 并計算4張紋理圖像濾波后與真實圖像之間PSNR,SSIM和FSIM的平均值. 4張圖像客觀評價指標的平均值對比結果列于表1. 由表1可見: 對于PSNR, 相對全變分方法獲得了最大值, 本文結果位于第三; 相比于現有的6種紋理濾波算法, 本文算法獲得了最大的SSIM和FSIM值, 與真實圖像的結構相似度最高.

表1 圖像客觀評價指標的平均值對比
目前, 關于圖像增強的方法已有許多[20-21]. 圖像細節增強[22]旨在生成更清晰的圖像細節并改善圖像的視覺效果, 強調圖像的局部特征或將原來不清晰的圖像變得更清晰. 本文算法能有效地將紋理層和基礎層分離, 圖5為本文算法在圖像細節增強中的應用效果, 圖像中的紋理由原始圖像減去平滑后的圖像得到, 將紋理放大3倍并疊加到平滑后的圖像上, 可得到細節增強的結果, 尤其對于圖像中的花瓣, 視覺外觀更清晰.

圖5 圖像細節增強結果
色調映射即在傳統的低動態范圍(LDR)上呈現高動態范圍(HDR)場景, 能最大限度地展現真實的自然場景, 盡量保持更多的細節信息. 利用本文平滑算法代替文獻[23]中的低曲率圖像簡化器(LCIS)多尺度分解進行圖像分解, 分為1個基礎層和3個細節層, 然后將每層乘以某個比例因子并重建一個對數亮度通道. HDR色調映射結果如圖6所示. 由圖6可見, 與輸入圖像相比, 色調映射后的圖像細節信息更清晰, 較暗和過度曝光的場景都能完整顯示.

圖6 HDR色調映射結果
綜上所述, 針對圖像紋理濾波如何在保持弱結構的同時平滑強梯度紋理的問題, 本文提出了一種基于結構張量的加權最小二乘紋理濾波方法. 圖像的結構邊緣通常具有強梯度和強各向異性的像素, 本文采用圖像的梯度和結構張量信息區分結構和紋理, 并以此確定全局優化框架中正則項的平滑權重. 實驗結果表明, 在各向同性的紋理區域, 本文算法具有良好的紋理平滑性能, 并能有效保持多尺度結構邊緣信息. 同時, 與現有的6種常用算法相比, 本文算法在結構相似性和特征相似性的度量上性能更好. 實驗結果表明, 本文算法易于實現, 適用于圖像細節增強、 色調映射等視覺圖形的應用場景.