吳俊锜 翟黎明 王麗娜 方燦銘 吳 畑
(空天信息安全與可信計算教育部重點實驗室,武漢大學國家網絡安全學院 武漢 430072)(jqwu@whu.edu.cn)
現代隱寫術是一種利用數字媒體進行秘密通信的技術,其目標是在圖像、視頻、音頻等數字媒體中隱藏秘密信息.基于數字圖像本身具有易傳播性,數字圖像成為了極易獲得的數字載體,其中空域圖像因為其無損性以及能夠轉換為其他圖像的特性,從而得到了廣泛關注,各種空域圖像隱寫算法層出不窮.內容自適應隱寫算法是當今空域圖像隱寫中的主流隱寫算法.傳統的圖像隱寫算法幾乎不考慮嵌入區域與圖像內容本身的聯系,這就導致了在秘密信息嵌入過程中可能會對圖像敏感區域進行嵌入,使得嵌入信息后的圖像被隱寫分析算法檢測到的可能性增大.內容自適應隱寫算法可以根據載體的紋理特征,在信息嵌入過程中盡可能避免對平坦區域的修改,從而提高圖像抗隱寫分析的安全性.內容自適應隱寫主要是通過失真代價最小化的框架來實現的,該框架中的隱寫方法分為2個步驟:失真代價計算和編碼嵌入[1].雙層校驗格碼(syndrome trellis codes, STC)[2]是一種常用的編碼嵌入方式,因為其嵌入效率能夠達到理論上界.失真代價的定義是自適應隱寫中的核心部分.通過設計失真函數來計算每個像素點的失真代價,以此來衡量每個像素點的嵌入安全性.
自適應空域隱寫算法中具有代表性的算法有HUGO[3],WOW[4],S-UNIWARD[5]和HILL[6].HUGO算法從隱寫分析的角度定義失真函數,并通過SPAM[7]特征空間計算失真代價.WOW算法和S-UNIWARD算法的思想類似,它們都認為在容易建模的圖像平坦區域不應當進行信息嵌入,而復雜的紋理區域和邊緣區域更適合進行隱秘信息的嵌入.因此,它們都利用了小波濾波器的方向性來定義失真代價.HILL算法研究了周圍像素點的失真代價對嵌入點失真代價的影響,并通過1個高通濾波器和2個低通濾波器來實現這種擴散性的影響,使隱秘信息的嵌入更加集中于復雜的紋理區域.除了使用最小化失真代價框架的空域隱寫算法,還有一些基于模型驅動的框架也具有相當的安全性.這些算法通過對圖像中像素點的分布進行建模,在嵌入信息的過程中使圖像的統計特性盡可能少地發生變化.基于模型驅動的代表性空域隱寫算法有MiPod[8],MG[9]和MGR[10].
上述這些自適應空域隱寫算法都是加性的,即它們在嵌入過程中都認為每一個像素點是獨立的,即一個像素點的修改不需要考慮周圍像素點是否修改以及周圍像素點的修改方式.然而,像素點之間具有相互影響,而這些影響通常也與隱寫算法的安全性具有一定的相關性.因此,相關學者提出了一些非加性的空域隱寫算法,例如CMD[11-12],NMF[13],Synch[14]和Dejoin[15].這些非加性算法與加性空域隱寫算法相比,通常具有更高的抗隱寫分析安全性.除此之外,一些空域隱寫算法還考慮了通過降低隱寫后圖像的殘差來提升算法的安全性,如文獻[16-17]所提出的SPP算法.
然而,現有的空域隱寫算法大多是采用啟發式的人工設計失真函數,通過計算每個像素點的失真代價來衡量每個像素點的安全性.普遍觀點認為圖像紋理區域通常是更加安全,更加適合嵌入,而圖像平坦區域安全性更低,通常具有更高的失真代價.然而,通過比較不同區域的失真代價,我們發現了一些異常像素點,即在紋理復雜區域中可能含有一些失真代價較高的像素點,而在平坦區域中可能含有一些失真代價較低的像素點,受到這些異常像素點的影響,可能導致在嵌入隱秘信息的過程中對這些平坦區域進行了嵌入.
為了解決載體圖像中異常點帶來的影響,本文提出了一種基于多尺度濾波器的空域圖像隱寫增強算法.我們通過實驗發現,小尺寸的濾波器對于平坦區域中的噪聲點較為敏感.因此,我們通過不同大小的濾波器來提取出不同大小的圖像紋理細節,并通過調整這些濾波器的權重,使得在增強紋理復雜區域的同時盡可能減少對平坦區域噪聲的增強.實驗結果表明:與傳統自適應空域隱寫算法相比,通過本文方法進行增強的多種空域隱寫算法,在多種嵌入率下都能獲得抗隱寫分析檢測的安全性提升.
本文的主要貢獻包括3個方面:
1) 針對隱寫載體中存在的2類異常點問題進行驗證,并通過實驗對比的方式證明2類異常點的存在;
2) 提出一種基于多尺度濾波器的空域圖像增強算法,在增強適合隱秘信息嵌入的紋理復雜區域的同時,減少對平坦區域噪聲的增強;
3) 將多尺度濾波器應用于空域隱寫算法的增強,并通過實驗驗證了該增強方法的有效性.應用了該方法的空域隱寫算法能夠有效降低被隱寫分析算法檢測的概率,提高了算法的安全性.
目前空域圖像中存在的異常點問題基本沒有得到很好的解決.文獻[18-19]提出了一種基于微尺度的圖像隱寫算法(microscale steganography, MS),通過銳化濾波器提取出圖像中的紋理細節,通過圖像增強的方式對這些細節進行放大來減輕異常點所帶來的影響.
MS算法的核心思想在于圖像的紋理區域中存在一些失真代價較高的異常點.較高的失真代價導致這些適合嵌入的像素點沒有進行嵌入,而是在具有較低安全性的平坦區域進行了嵌入.MS算法提出,該問題是由于失真函數在計算失真代價時不夠精確,即失真函數不能很好地捕捉到圖像中的所有紋理復雜區域.因此,MS算法提出了微尺度圖像隱寫,通過增強圖像紋理細節,保證紋理區域的失真代價較低,從而提升隱寫算法的安全性.
為了達到提升圖像中的紋理細節的目的,MS算法使用了圖像增強的方式.首先對需要進行信息嵌入的載體圖像X,使用3階拉普拉斯算子進行圖像增強,得到增強圖像Xs;然后利用現有的空域隱寫算法的失真函數,計算增強圖像Xs的失真代價,并根據HILL中所提出的擴散原則對計算得到的失真代價進行均值濾波;最后使用STC編碼對原始載體圖像X進行嵌入,得到最終的隱密圖像Y.
但是,MS算法只考慮了具有高失真代價的紋理區域像素點,并沒有考慮到具有低失真代價的平坦區域像素點.因此,MS算法直接使用小尺度的濾波器對圖像進行了銳化增強.然而,這么做會導致圖像中所有的像素點都得到了增強,導致在增強紋理區域的同時,也對平坦區域中的噪聲進行了增強.這甚至與HILL算法所提出的具有高失真代價的像素點會影響周圍噪聲點的觀點相矛盾.這種現象導致了平坦區域中的某些像素點具有了低失真代價值,使隱寫算法的安全性不能夠得到充分提高.
基于2種異常點的存在以及MS算法只考慮到其中的一種異常點,因此,在設計空域隱寫算法增強算法時,需要綜合考慮2種異常點帶來的影響,在增強紋理區域的高失真代價像素點的同時,減少平坦區域的低失真代價像素點的影響.
本節主要介紹空域圖像隱寫算法在計算失真代價時存在的2類異常點.我們通過實驗對比的方式來說明2類異常點的存在,并說明現有的一些空域隱寫算法基本不考慮這2類異常點.
為了更好地說明異常點的存在,我們以圖1作為例子.圖1(a)是一幅來自Bossbase1.01圖像庫的空域圖像;圖1(b)代表了在嵌入率取0.4 bpp時,使用S-UNIWARD算法對圖1(a)進行嵌入得到的嵌入變化,圖中的黑白點代表了進行嵌入的像素點.圖1(b)中橢圓框內的像素點代表著平坦區域中存在的低失真代價異常點,方框區域中存在較為稀疏的部分,即紋理復雜區域中的高失真代價異常點.從圖1中可以看到,在平坦區域中含有一些失真代價較低的點,而S-UNIWARD算法在有部分紋理區域仍然未進行嵌入時選擇了這些平坦區域.這種現象表明了存在2種異常點,即平坦區域中存在部分失真代價較低的點和紋理區域存在部分失真代價較高的點.在設計隱寫算法時,通常認為平坦區域是較易建模的區域,即在這些區域進行修改會導致隱寫圖像被隱寫分析算法檢測到的概率提高.因此,將信息嵌入集中在紋理區域是一個比較好的選擇,即在設計失真代價時應當保證平坦區域中像素點的失真代價較高,而紋理復雜區域中像素點的失真代價較低.

Fig. 1 The existence of two kinds of abnormal points
為了達到這個目的,一個直觀的想法就是提高平坦區域中異常像素點的失真代價,降低紋理復雜區域中異常像素點的失真代價.但是,現有的主流空域隱寫算法,如S-UNIWARD和WOW,在設計失真代價時基本不考慮這2類異常點.盡管現有的MS算法考慮了紋理復雜區域中具有高失真代價的異常點,但是卻忽略了平坦區域中存在的低失真代價異常點.MS算法使用單個濾波器對圖像紋理區域進行增強,卻忽略了平坦區域中噪聲也會被增強的問題.
為了解決異常像素點帶來的問題,一個直觀的想法就是分別對不同區域的圖像噪聲進行處理.紋理復雜區域的噪聲應當被增強,而平坦區域的噪聲應當被抑制.我們受到文獻[20]的啟發,提出了一種由多尺度高斯濾波器和高通濾波器組合得到的多尺度濾波器.通過調整每個濾波器的權重,在增強紋理區域的同時,盡可能減少對平坦區域的增強.
多尺度高斯濾波器由多個不同大小的高斯濾波器組成.本方法首先用3個不同大小的高斯濾波器對整個圖像進行卷積,得到3個濾波后的平滑圖像:
L1=G1?X,L2=G2?X,L3=G3?X,
(1)
其中,符號?代表了卷積操作,G1,G2,G3分別代表了3個不同大小的高斯濾波器,L1,L2,L3分別代表了對載體圖像X進行濾波后得到的平滑圖像.為了獲得不同尺度的銳化細節,將3個平滑圖像進行作差:
H1=X-L1,H2=L1-L2,H3=L2-L3,
(2)
其中,H1,H2和H3分別代表了不同尺寸的圖像細節.載體圖像X的全局細節由H1,H2和H3三個圖像細節的加權和組成:
H=(1-ω1sgn (H1))H1+ω2H2+ω3H3,
(3)
其中,ω1,ω2,ω3分別代表了不同銳化細節的權重.sgn()是符號函數,當H1>0時,函數返回值為1,當H1<0時,函數返回值為-1,否則為0.通過將不同尺度的圖像細節以加權和的形式進行結合,可以得到一個更具有代表性、更加完整的圖像紋理細節部分,同時盡可能減少了平坦區域的噪聲.
我們通過一個簡單的驗證性實驗來驗證多尺度高斯濾波器對于空域隱寫算法的增強效果.我們選擇Bossbase1.01圖像數據庫中的10 000張灰度圖像,使用SPAM特征[7]作為隱寫分析特征.使用主流的空域隱寫算法S-UNIWARD,WOW和HILL作為對照算法,嵌入率取0.1 bpp和0.4 bpp,并使用最大平均差異(maximum mean discrepancy,MMD)[21]作為衡量標準.MMD是一種用于衡量2類樣本分布之間相似性的指標,越小的MMD代表了2類樣本越接近,即載體樣本和隱寫樣本之間的相似性越高,算法越安全.為了將本文方法與這些方法進行區分,以MSG(multi-scale Gaussian)作為后綴的算法即使用了多尺度高斯濾波器進行增強的空域隱寫算法.

Table 1 Detection Results of MMD on Different Spatial Steganography
從表1可以看出,使用了多尺度高斯濾波器進行增強的空域隱寫算法的MMD值與未增強的算法相比普遍較低,而較低的MMD通常代表著較高的安全性.因此,多尺度高斯濾波器能在一定程度上對空域圖像隱寫算法的安全性進行提升.

Fig. 2 Comparison of different scale filters in sharpening part
基于3.1節實驗,我們發現多尺度高斯濾波器可以提高空域隱寫算法的安全性.除此之外,我們知道圖像中存在著不同大小的紋理區域,不同大小的濾波器可以增強不同大小的紋理細節.從圖2中可以看出,不同大小的濾波器所增強的區域是不同的.具體來說,小尺寸的濾波器通常對小尺度的紋理細節較為敏感,在增強小尺寸的紋理區域的同時,也會增強一些平坦區域的噪聲.大尺度的濾波器主要增強一些大尺寸的紋理區域,對平坦區域噪聲的增強效果較弱.因此,為了得到盡可能多的紋理細節,我們同時使用了多尺度高斯濾波器和高通濾波器對圖像進行增強.我們利用平坦區域噪聲對小尺度濾波器更加敏感的特點,降低了小尺度濾波器的權重,達到增強紋理區域的同時降低對平坦區域噪聲增強的目的.因此,我們設計了一種基于多尺度濾波器的空域隱寫增強方法,該方法由圖像增強和失真代價計算2部分組成,算法流程為:
1) 根據式(3),使用多尺度高斯濾波器對載體圖像X進行增強,得到增強部分Eg;
2) 使用高通濾波器對載體圖像X進行銳化,得到銳化部分Es;
3) 最終增強圖像Xs由2個增強部分Eg和Es的加權和得到:
Xs=αEg+(1-α)Es+X,
(4)
其中,α代表了權重,X代表載體圖像.
4) 使用現有空域隱寫算法的失真函數計算增強圖像Xs的失真代價P.
5) 根據文獻[6]所提出的擴散原則,使用均值濾波器對失真代價P進行平滑操作,得到平滑后的失真代價P′.
6) 根據失真代價P′,使用STC編碼方式將秘密信息嵌入載體圖像X中.
在本方法中,式(4)中的參數α作為權重來平衡2種濾波器的增強效果,影響著算法的安全性.為了達到增強紋理區域的同時減少平坦區域噪聲影響的目的,我們將在第4節通過實驗來選擇合適的α值.
本文實驗選擇了Bossbase1.01圖像庫中的10 000張灰度圖像作為樣本進行測試.我們將這些樣本隨機分成2等份:一份用于訓練;另一份用于測試.我們選擇了3種主流空域隱寫算法S-UNIWARD,WOW和HILL作為對比,同時也將同樣是使用圖像增強的MS算法作為對比對象.實驗中用來測試算法安全性的隱寫分析特征為SRM特征[22]和maxSRM特征[23],分類器使用集成分類器[24].隱寫算法的嵌入率是0.05~0.5 bpp,所有隱寫算法均使用STC編碼方式進行嵌入.算法安全性使用

(5)

(6)
為了確定多尺度高斯濾波器中3個濾波器的最佳尺寸,我們進行了一個驗證實驗.

Fig. 3 Effect of different parameter n on steganographic security
實驗中,我們從Bossbase圖像數據庫中隨機選取了3 000張圖像作為樣本,將S-UNIWARD隱寫算法作為參照算法,使用多尺度高斯濾波器進行實驗.3個濾波器的取值大小依據n,2n-1,4n-1的比例來選取,對應的標準差大小分別為1.0,2.0,4.0.嵌入率取0.4 bpp,參數n的取值范圍為2~9,使用SRM隱寫分析特征進行檢測.通過比較不同n值對算法安全性的影響,我們可以得出一個較為合適的n值.不同n值的算法安全性測試結果如圖3所示.
從圖3可以看出:當n=4時,算法的安全性最高,因此,在后續實驗中,3個高斯濾波器的大小分別為4×4,7×7,15×15.
為了確定式(4)中參數α的值,我們從Bossbase圖像數據庫中隨機選取了3 000張圖像作為樣本,使用S-UNIWARD,WOW和HILL三種隱寫算法作為參照算法進行實驗.使用的高通濾波器如圖4所示:

Fig. 4 High-pass filter used to acquire sharpening part Es
實驗過程中嵌入率取0.4 bpp,參數α的取值范圍為0.2~0.7.多尺度高斯濾波器的3個參數值ω1,ω2,ω3分別取值為0.5,0.5,0.25,隱寫分析特征使用SRM特征.通過比較不同α值對算法安全性的影響,我們可以得出一個較為適合的α值.不同參數α的算法安全性測試結果如圖5所示.從圖5中可以看出,當α=0.4時,3種空域隱寫算法都獲得了最高的安全性.

Fig. 5 Effect of different parameter α on steganographic security

Fig. 6 Performance comparison for the proposed algorithm, MS, S-UNIWARD, WOW and HILL against two steganalytic algorithms
為了區分本文算法與現有算法,本文所提出的算法以MSF(multi-scale filters)作為后綴,MS后綴代表了文獻[16]中提出的MS算法.本文將S-UNIWARD-MSF,WOW-MSF,HILL-MSF的實驗結果與S-UNIWARD,WOW,HILL及它們使用MS算法進行增強后的實驗結果進行比較.為了更好地驗證本文所提出算法的安全性,本文使用了2種主流的空域隱寫分析特征SRM和maxSRM.實驗結果如圖6所示.圖6(a)(c)(e)分別代表不同隱寫算法在SRM特征檢測下的安全性,圖6(b)(d)(f)分別代表了不同隱寫算法在maxSRM特征檢測下的安全性.從實驗結果可以看出,本文所提出的MSF算法在不同的嵌入率下都可以顯著提升空域隱寫算法的安全性,尤其是在高嵌入率下對空域隱寫算法的提升更大.這主要是因為在嵌入率較高的情況下,隱寫算法往往會選擇一些平坦區域的噪聲點進行嵌入,即我們所提到的平坦區域中具有低失真代價的異常點,導致算法的安全性降低.在使用了增強算法對載體圖像增強之后,隱寫算法更傾向于嵌入紋理復雜區域,受到平坦區域異常點影響較小,從而提高算法的安全性.
本文提出了一種用于增強空域圖像隱寫算法的增強算法MSF.在計算失真代價前,先使用多尺度濾波器對載體圖像進行預處理,使現有空域圖像隱寫算法能夠更精確地選擇紋理區域進行嵌入.在計算得到失真代價后,再運用均值濾波器對失真代價進行擴散以獲得平滑失真代價.實驗結果表明:本文所提出的算法能夠有效提高空域圖像隱寫算法的安全性.鑒于如今圖像處理技術的快速發展,采用能夠對圖像紋理區域進行更加精確有效增強的算法是我們后續的一個研究方向.