莫 佳,蔡體健
(華東交通大學 信息工程學院,南昌 330013)
隨著信息技術不斷進步,安全問題日益突出.目前有兩種方式保障信息安全[1]54:一是采用信息加密方法,二是采用信息隱寫方法.由于加密方法[2]是將明文變換為看不懂的密文,這無疑給攻擊者“提示”了密文數據的重要性,而信息隱寫[3]主要是通過在空域或頻域中對載體的某些元素施加操作來秘密傳遞消息的,其中這些操作的不同組合代表不同的含義.信息隱寫已成為隱蔽通信的首選方式,廣泛應用于軍事、版權保護、金融等領域,成為信息安全的研究熱點.
目前,自適應隱寫是圖像隱寫的主流方向,其特點是利用人類視覺系統冗余特性將秘密信息嵌入到圖像內容相對復雜的區域,在內容簡單或變化平滑的區域嵌入較少信息或不嵌入任何信息.典型的自適應算法有BPCS(Bit-Plane Complexity Segmentation)、PVD(Pixel-Value Differencing)算法[4].由于人眼對變化劇烈、復雜程度高的位平面小塊不敏感,因而BPCS將載體圖像的多個位平面分成小塊,然后計算每個小塊的復雜度,最后將復雜度大于某個閾值的塊用于隱藏秘密信息.PVD用相鄰像素的差值來衡量圖像內容復雜度,并將秘密信息嵌入到差值之中.文獻[5]利用三個相鄰像素的特征值和模函數運算來隱藏數據.Pevny等[6]2對載體圖像SPAM(Subtractive Pixel Adjacency Matrix)[7]特征的變化進行加權求和來刻畫隱寫對載體的影響,實現了信息隱寫與失真函數設計相分離.失真函數主要是解決自適應隱寫空間構建問題,即秘密信息應當最好放置于載體的何處.Holub等[8]1通過小波系數分配權重方法、Sedighi等[9]通過求高斯建模后圖像KL散度(KL Divergence)方法、Li等[10]通過計算高通濾波和低通濾波系數方法分別設計了失真函數.文獻[11]在DCT域最小化載體圖像與隱寫圖像之間的分布差異完成隱寫空間的建構,并進一步在隱寫空間里采用STC編碼(Syndrome Trellis Coding)進行秘密信息的嵌入.黃穎等[12]采用四叉樹對圖像進行分割,分割結果中面積較小的圖像塊屬于復雜區域,較大的屬于平滑區域,在高復雜區域優先進行嵌入.王繼林等[13]構造像素對結構,可以稠密地分割載體圖像,設置可嵌像素對篩選條件,避免嵌入過程引起圖像質量大幅下降.
從上述文獻可以看出,在純黑或純白灰度無變化的圖像中嵌入秘密消息很容易被檢測器偵測到,因而隱寫空間需要有灰度差的像素構成,這與物體內存在溫度差就會發生熱傳導非常類似.本研究受熱傳導現象啟發,將秘密信息隱寫過程看成熱量傳遞過程,分析信息隱寫過程中的“傳導系數”與圖像局部特性之間的內在聯系,基于Weickert[14]局部結構張量,構造隱寫空間,進一步設計加性失真函數.通過上述過程最終在高保真度條件下,將消息安全地隱寫到載體圖像中.實驗結果表明,本研究方法(TensorStego算法)具有較好的抗檢測能力和高保真度.
構造合適的隱寫空間對隱寫系統的抗檢測性非常重要.隱寫空間構造需要遵循這些原則:①有效識別圖像不同復雜度的紋理、平滑區域等圖像結構;②保護圖像邊緣;③適應圖像內容;④獨立隱寫編碼.由于熱傳導方程是一個各向同性擴散方程,不能保護圖像邊緣等紋理復雜區域,不利于隱寫空間的構造,因此需要在熱傳導方程的基礎上進行改造.本節利用基于Perona-Malik模型定義的Weickert結構張量,建立隱寫空間.
設灰度載體圖像為u(x,y),定義其局部結構張量[15]119為


結構張量表達了載體圖像的局部結構信息,能夠度量像素點鄰域內結構特征的各向異性,其特征向量v1,v2為

其中:v1表示平行于uσ的方向,即載體圖像紋理走向的法向;v2表示垂直于uσ的方向,即載體圖像紋理走向的切向.而v1和v2的特征值分別為

結構張量Jp的特征值描述了載體圖像u(x,y)在大小為O(ρ)鄰域內沿特征方向的灰度變化情況,反映了圖像的紋理等結構信息.本研究從不同尺度下觀察載體圖像,定義像素隱寫適應度,從而得到隱寫空間.尺度相關的像素隱寫適合度(Embedding Suitability with Scales)定義為

其中ρ表示觀察尺度.圖1顯示了觀察尺度分別為1,3,5和7時所觀察到的隱寫適合度,亮度越大的區域越適合隱寫,構成隱寫空間.

圖1 不同尺度的隱寫適合度
構造好隱寫空間后,需要將秘密消息隱藏其中.由于該過程類似載體圖像受噪聲干擾,因而會引起圖像失真.為了達到載體圖像的高保真度和高隱寫抗檢測性,需要將失真程度降到最低.定義在像素(i,j)處嵌入秘密消息引起的失真為

則圖像總體隱寫失真為

其中X和Y分別表示原始載體圖像和隱寫以后的圖像.這里假定每個像素的失真是獨立的,因而是加性失真.本研究采用三進制方法[1]55進行隱寫,對像素值的改變量限制在集合{-1,0,+1}中,因而|xi,j-yi,j|=1.
采用Matlab2010a進行仿真實驗,圖像庫為BOSSbase 1.01[16].該庫包含10 000張的用7種不同相機拍攝的灰度圖像.這些圖像內容豐富,包含風景、生活、建筑以及動物等各種場景,涵蓋了各種不同的紋理復雜度.除此而外,實驗也選用了經典的Lena,Peppers,Baboon,Barbara,Airplane以及Elaine等灰度圖像作為載體.
本節從峰值信噪比和像素失真率兩個方面對算法保真度進行測試.
保真度衡量含密圖像與載體圖像之間的相似性,一般采用峰值信噪比(Peak Signal to Noise Ratio)wPSNR進行度量:
(7)
其中MSE[17]4表示載體圖像與含密圖像之間的均方誤差.
wPSNR數值越大,說明兩幅圖像越相似,保真度越高.表1為本研究TensorStego算法與文獻[12]中APPME算法在相同實驗條件下的wPSNR對比.

表1 隱寫率1.92bit/pixel條件下算法的wPSNR值比較
從表1可知,本研究方法平均wPSNR值為52.321dB,相比文獻[12]的結果[12]提高了8.94%,有較好的保真度.從隱寫造成的載體圖像失真角度來看,失真越小,保真度也越高.本研究定義失真率(DistortionperPixel)φdpp為
(8)
其中:card表示集合的元素個數,圖像分辨率為M×N.
因此,下面選取隱寫率分別為0.2,0.3,0.4,0.5時的像素失真率進行比較,依照文獻[8]的算法[8]1得到的像素失真率分別為0.005 136,0.009 722,0.0158 23,0.023 706,平均失真率為0.013 59;而利用本研究方法得到的像素失真率分別為0.000 041,0.001 576,0.007 613,0.018 604,平均失真率為0.006 96,降低了64.09%.
限于篇幅,算法隱寫效果只給出了BOSSBase數據庫中編號為195的灰度圖像作為載體的隱寫效果.圖2(a)為所選擇的載體圖像,圖2(b)為采用本研究中TensorStego算法在隱寫率為0.4 bpp時的隱寫圖像,圖2(c)表示文獻[8]的WOW方法[8]4隱寫位置,圖2(d)表示本研究所提的TensorStego方法隱寫位置,圖2(c)和圖2 (d)中白點表示+1修改,黑點表示-1修改.由圖2可知,隱寫具有較高的保真度,人眼不能發現載體圖像與含密圖像的差異,實際隱寫位置位于圖像的紋理區域.與WOW方法相比較而言,能更準確地發現圖像紋理,隱寫具有更強的自適應性.

圖2 所選載體圖像和TensorStego算法在限定條件下的圖像的隱寫效果
實驗從BOSSbase庫中選擇1 000張圖像提取基于高階馬爾可夫鏈的686維SPAM特征,其中一半用作訓練而另一半用作預測.分類器采用集成分類器(Emsemble Classifier).用最小總體檢測錯誤率的無偏估計EOOB評價算法抗檢測性,PE定義為
其中:表示PFA虛警率,PMD表示漏檢率.PE越大,說明隱寫方案逃避檢測器的可能性越大,表明其抗檢測性越強.

圖3 算法TensorStego、WOW、HVGO、MG的隱寫抗檢測性比較
由圖3可知,在隱寫率低于0.05 bpp時,TensorStego算法的抗檢測性略低于WOW和HUGO的結果[6]15,與MG[18]的結果相當.隱寫率增大到0.1 bpp時,TensorStego算法抗SPAM隱寫分析能力與WOW算法的結果基本持平,當隱寫率大于0.12 bpp時,TensorStego算法抗檢測性優于其余三種算法的結果,抗檢測性平均提高43.58%.
本研究從信息隱寫過程與熱量傳遞過程的相似性當中受到啟發,引入Weickert局部結構張量,建立新的方法構造隱寫空間,設計失真函數,在高保真度條件下,將秘密消息安全地隱寫到載體圖像中.實驗結果表明:隱寫圖像和載體圖像之間的差別已經非常小,這主要是因為本研究構造的隱寫空間準確刻畫了載體圖像的紋理變化,方案不僅具有高保真度而且有較強的抗檢測性,使檢測器誤判率為39.8%,這與內容自適應的隱寫策略存在著緊密聯系.本研究進一步表明,隱寫空間的構造對隱寫系統的各項性能有著直接影響,方案首次將張量引入隱寫系統,取得了較好效果,而深入挖掘張量在隱寫及隱寫分析領域的潛力將是下一步的研究重點.