于春梅
結(jié)合失真函數(shù)的稀疏域圖像隱寫(xiě)算法
于春梅
稀疏域圖像隱寫(xiě)利用稀疏表示在載體圖像中嵌入秘密信息。提出設(shè)計(jì)稀疏域圖像隱寫(xiě)的失真函數(shù),通過(guò)選擇使失真函數(shù)最小的修改方式進(jìn)行秘密嵌入,從而減小秘密信息嵌入對(duì)載體的影響。實(shí)驗(yàn)結(jié)果表明,該算法可以在保持圖像視覺(jué)效果的同時(shí),更有效地抵抗現(xiàn)有的隱寫(xiě)分析算法。
圖像隱寫(xiě);稀疏表示;失真函數(shù);隱寫(xiě)分析
隱寫(xiě)術(shù)(Steganogaphy)是信息隱藏的重要分支,該技術(shù)將秘密消息嵌入到看上去普通的信息(如:圖像、音頻等數(shù)字媒體)中,以便以不引起外界注意的方式進(jìn)行傳遞或存儲(chǔ)。而隱寫(xiě)分析技術(shù)(Steganalysis)則致力于檢測(cè)秘密信息的存在?,F(xiàn)有的隱寫(xiě)分析算法通常是通過(guò)計(jì)算圖像的統(tǒng)計(jì)特征來(lái)判斷給定的信號(hào)是否嵌入了秘密信息,卻往往忽略了載體信號(hào)語(yǔ)義內(nèi)容上的變換。這就啟發(fā)我們將秘密信息嵌入在載體信號(hào)的語(yǔ)義內(nèi)容上以此來(lái)抵抗現(xiàn)有隱寫(xiě)分析算法的攻擊。所謂的語(yǔ)義即是能夠表示圖像的結(jié)構(gòu)元素,如線條、邊緣以及平滑區(qū)域等。
圖像稀疏表示的基本思路,就是用能夠表示圖像語(yǔ)義結(jié)構(gòu)的基本元素的線性組合來(lái)表示圖像。稀疏域圖像隱寫(xiě)通過(guò)稀疏表示將圖像從空間域轉(zhuǎn)換到稀疏域,然后在稀疏域進(jìn)行信息嵌入,從而將秘密信息嵌入到圖像語(yǔ)義內(nèi)容中。Cancelli等人在文獻(xiàn)[1]-[3]中提出將秘密信息嵌入到圖像的分解系數(shù)中,并通過(guò)設(shè)計(jì)穩(wěn)定的稀疏分解方法,保證秘密信息的正確提取。然而該算法對(duì)像素的修改量和修改幅度較大,降低了圖像的視覺(jué)質(zhì)量和抗檢測(cè)性能。
為了提高稀疏域圖像隱寫(xiě)的安全性,本文提出設(shè)計(jì)稀疏域失真函數(shù),嵌入時(shí)選擇使失真函數(shù)盡可能小的修改方式。該方法不但提高了圖像的視覺(jué)質(zhì)量,而且改善了算法的抗檢測(cè)性能。
作為一種新型的圖像模型,圖像稀疏表示問(wèn)題可以表示為公式(1):
將稀疏表示理論用于圖像隱寫(xiě)的兩大關(guān)鍵問(wèn)題為:構(gòu)建有效的圖像稀疏表示字典D,以及獲取圖像在字典D下有效且唯一的分解系數(shù)。下面針對(duì)這兩個(gè)問(wèn)題提供了解決方法。
1.1 冗余字典的設(shè)計(jì)方法
冗余字典的建立方法有基于數(shù)學(xué)模型的方法和基于學(xué)習(xí)的方法。無(wú)論采用何種方法,建立的字典中的原子值一般都為實(shí)數(shù),重構(gòu)得到的含密圖像取整后會(huì)引入量化誤差,這會(huì)導(dǎo)致秘密信息無(wú)法正確提取。因此,用于稀疏域圖像隱寫(xiě)采用二值整數(shù)型字典,即原子值只取0或1。這可以通過(guò)對(duì)實(shí)數(shù)域字典使用Otsu方法[4]二值化得到。
為了簡(jiǎn)化字典的構(gòu)建難度和降低計(jì)算復(fù)雜度,圖像稀疏表示對(duì)圖像分塊進(jìn)行處理。我們?cè)陔[寫(xiě)算法中采用了 4×4分塊,既能表示圖像特征,又減少了計(jì)算量。
1.2 穩(wěn)定的圖像稀疏分解算法
秘密信息的嵌入使得載體圖像與含密圖像不相同,那么對(duì)含密圖像做系數(shù)分解會(huì)選擇不同于載體圖像的分解原子,從而導(dǎo)致提取端的錯(cuò)誤提取。另外,即使保證嵌入端和提取端以相同的順序選擇相同的原子,嵌入端某個(gè)系數(shù)的改變也可能導(dǎo)致提取端獲得錯(cuò)誤的分解系數(shù)。
為了保證圖像稀疏分解的穩(wěn)定性,Cancelli在文章[3]中提出了整數(shù)域的非負(fù)限定的匹配追蹤(matching pursuit)方法。該算法跟實(shí)數(shù)域的MP算法相似,選擇某個(gè)原子后,只更新對(duì)應(yīng)該原子的系數(shù)。以第k次迭代為例,找到的相關(guān)原子在冗余字典中對(duì)應(yīng)的索引通過(guò)公式(2)得到公式(3)
當(dāng)嵌入端和提取段使用相同的分解路徑,且秘密信息只嵌入非零系數(shù)中,整數(shù)域的非負(fù)限定的匹配追蹤方法能夠保證嵌入秘密信息后提取端的分解是唯一的,算法是穩(wěn)定的。
本節(jié)首先分析了稀疏域圖像隱寫(xiě)的不足,然后提出了結(jié)合失真函數(shù)的稀疏域隱寫(xiě)算法。
2.1 稀疏域圖像隱寫(xiě)的不足
稀疏域隱寫(xiě)通過(guò)使用圖像的非零分解系數(shù)嵌入秘密信息。嵌入算法可采用空間域中可行的任何算法。最低有效位(Least Significant Bit)匹配算法,也稱(chēng)±1算法,是空間域隱寫(xiě)術(shù)中簡(jiǎn)單有效地嵌入算法,通過(guò)比較載體圖像像素值的最低位與秘密信息比特位,決定是否對(duì)像素值做修改:相同的話對(duì)像素值不作修改,不同則根據(jù)密鑰產(chǎn)生的偽隨機(jī)變量決定做+1或-1的修改。具體嵌入步驟見(jiàn)公式(5):
其中Ps和Pc分別表示含密圖像和載體圖像的像素灰度值,b是要嵌入的秘密信息,K為在{-1,1}內(nèi)均勻分布的隨機(jī)變量。
然而,直接采用LSB匹配算法使用分解系數(shù)進(jìn)行嵌入,圖像的抗檢測(cè)性能并不理想。這是因?yàn)椋?/p>
1)用于圖像稀疏表示的原子比空間域單個(gè)像素點(diǎn)表示更大的支撐空間,在稀疏域內(nèi)改變一個(gè)原子對(duì)應(yīng)的系數(shù)值等于改變其空間范圍內(nèi)的所有像素點(diǎn)的值。因此載體圖像像素的修改個(gè)數(shù)較多。
2)就空間域單個(gè)像素點(diǎn)而言,像素值通常受多個(gè)分解系數(shù)的影響,對(duì)分解系數(shù)的修改會(huì)在像素值上累加,從而導(dǎo)致像素值修改幅度過(guò)大。
通常情況下,圖像像素修改個(gè)數(shù)越多,修改幅度越大,隱秘圖像與載體圖像的統(tǒng)計(jì)差異越明顯,分析者越容易察覺(jué)隱秘信息的存在。
2.2 結(jié)合失真函數(shù)的稀疏域隱寫(xiě)算法
為了減少修改個(gè)數(shù),降低修改幅度,我們?cè)O(shè)計(jì)了失真函數(shù)如公式(6):
其中Ij為載體圖像塊,Ij為重構(gòu)得到的含密圖像塊,大小為 4×4。該失真函數(shù)的設(shè)計(jì),兼顧了圖像像素修改個(gè)數(shù)和修改幅度兩個(gè)方面。當(dāng)分解系數(shù)需要修改時(shí),比較{-1,+1}兩種修改方式下的失真函數(shù)值,選擇較小失真函數(shù)值對(duì)應(yīng)的修改方式。
(1) 算法的嵌入過(guò)程
Step 1:將載體圖像分成4×4大小的不重疊圖像塊,需要嵌入的秘密信息轉(zhuǎn)化為比特流S。
Step 2:對(duì)每一個(gè)4×4大小的圖像塊用二值的過(guò)完備字典以及非負(fù)限定的匹配追蹤算法做稀疏分解,得到載體圖像的分解路徑和分解系數(shù)矩陣。
Step 3:根據(jù)嵌入量,計(jì)算閾值Kt。嵌入時(shí)只使用圖像塊分解次序不低于 Kt的非零系數(shù)。換句話說(shuō),嵌入時(shí)優(yōu)先使用圖像塊中分解次序靠后的非零分解系數(shù)。
定義集合cj(k),它由圖像塊Ij中分解次序不低于k的非零系數(shù)組成如公式(7):
根據(jù)公式(6)計(jì)算兩種修改方式下的失真函數(shù),選擇較小失真函數(shù)值對(duì)應(yīng)的修改方式修改分解系數(shù)。
Step 5:用過(guò)完備字典以及修改后的分解系數(shù)重構(gòu)含密圖像。
(2) 算法的提取過(guò)程
基于圖像稀疏表示的隱寫(xiě)術(shù)應(yīng)用在灰度圖像中時(shí),提取端需要有載體圖像的稀疏分解路徑才能正確提取隱秘信息,是非盲提取。
Step 1:對(duì)含密圖像做大小為4×4不重疊的塊分割操作。
Step 2:對(duì)每個(gè)含密圖像塊,使用和載體圖像塊相同的分解路徑做稀疏分解,獲得分解系數(shù)矩陣。
Step 3:使用閾值Kt選出含密圖像塊中使用到的系數(shù),系數(shù)的最低有效位即嵌入的秘密信息比特位。
為驗(yàn)證結(jié)合失真函數(shù)的稀疏域隱寫(xiě)算法的有效性,本節(jié)進(jìn)行了實(shí)驗(yàn)仿真,分別考察了圖像視覺(jué)質(zhì)量及算法的抗檢測(cè)性能。實(shí)驗(yàn)的基本設(shè)置為:
(1) 圖像數(shù)據(jù)庫(kù)
實(shí)驗(yàn)選用的圖像數(shù)據(jù)庫(kù)為在隱寫(xiě)與隱寫(xiě)分析仿真測(cè)試中廣泛使用的UCID(Uncompressed Color Image Database)[5]。該數(shù)據(jù)庫(kù)由1338幅大小為512×384的未壓縮TIFF格式彩色圖像組成,這些圖像包含各種類(lèi)型,如自然風(fēng)景、人物以及室內(nèi)室外的人造物品。實(shí)驗(yàn)時(shí),將彩色圖像轉(zhuǎn)化為8位灰度圖像。同時(shí)為了減少計(jì)算復(fù)雜度,對(duì)圖像進(jìn)行截取獲得1338幅384×384大小的圖像。
(2) 冗余字典
鑒于K-SVD算法[6]在字典學(xué)習(xí)性能上的優(yōu)越性,本文采用該算法構(gòu)建學(xué)習(xí)型字典。從圖像中隨機(jī)截取6000幅大小為4×4的圖像塊組成訓(xùn)練樣本,初始字典隨機(jī)生成,經(jīng)過(guò)多次迭代更新后得到實(shí)數(shù)值的學(xué)習(xí)型冗余字典。使用Otsu方法將原子二值化。為保證分解后得到的嵌入容量,手動(dòng)加入一組16維的單位坐標(biāo)向量去掉字典中重復(fù)的原子,最后得到的二值冗余字典的大小為 16×305,如圖1所示:
圖1.二值冗余K-SVD學(xué)習(xí)型字典
(3) 嵌入容量
嵌入容量可通過(guò)單位像素承載的比特?cái)?shù)(bit per pixel)來(lái)衡量。稀疏域隱寫(xiě)算法采用圖像分解后的非零系數(shù)進(jìn)行嵌入,故而嵌入容量會(huì)隨著圖像內(nèi)容和使用字典的不同而改變。對(duì)UCID灰度圖像,采用學(xué)習(xí)得到的大小為16×305的二值冗余K-SVD學(xué)習(xí)型字典,平均嵌入容量為0.7041bpp。
3.1 圖像視覺(jué)質(zhì)量
PSNR(peak signal-to-noise ratio)稱(chēng)為峰值信噪比,是廣泛使用的評(píng)價(jià)圖像視覺(jué)質(zhì)量的指標(biāo),其定義為公式(10)(11):
表1列出了各嵌入量下使用不同隱寫(xiě)方法得到的平均PSNR值。嵌入量為0.3bpp、0.4bpp、0.5bpp,如表1所示:
表1 UCID圖像庫(kù),平均PSNR值
從表1中可以看到,結(jié)合失真函數(shù)的稀疏域隱寫(xiě)算法(MPSteg+Dist)的平均PSNR值最高,其次是空間域LSB匹配算法(LSB ±1),文獻(xiàn)[3]中稀疏域隱寫(xiě)算法(MPSteg)相對(duì)較低。
之所以出現(xiàn)這種情況是因?yàn)?,MPsteg+Dist方法在修改分解系數(shù)時(shí),盡量選擇使失真函數(shù)最小的修改方式,在某些像素上甚至可能出現(xiàn)分解系數(shù)修改操作正好相互抵消而值不變的情況。而稀疏域MPSteg算法在采用LSB匹配算法修改分解系數(shù)時(shí),隨機(jī)選擇分解系數(shù)的修改方式,因此失真較大,PSNR值偏低。
3.2 抗檢測(cè)性能
實(shí)驗(yàn)采用 3種隱寫(xiě)分析方法進(jìn)行檢測(cè):文獻(xiàn)[7]中的Zhang檢測(cè)器、文獻(xiàn)[8]中的 WAM 檢測(cè)器和文獻(xiàn)[9]中的SPAM 檢測(cè)器。為了簡(jiǎn)單起見(jiàn),采用 FLD(Fisher Linear discriminate)分類(lèi)器進(jìn)行分類(lèi)。
實(shí)驗(yàn)隨機(jī)選取 20%的圖像用作訓(xùn)練,另外 80%的圖像作為測(cè)試。為了避免某些特定測(cè)試集和訓(xùn)練集對(duì)于實(shí)驗(yàn)結(jié)果的影響,共進(jìn)行20 次實(shí)驗(yàn)。垂直平均每次實(shí)驗(yàn)結(jié)果得到均值ROC(receiver operating characteristic)曲線[10]。對(duì)隱寫(xiě)分析而言,ROC曲線越靠近對(duì)角線,說(shuō)明相應(yīng)的隱寫(xiě)算法越難被攻擊,安全性越好。
當(dāng)嵌入量為0.5bpp時(shí),Zhang和WAM檢測(cè)方法下的ROC曲線??梢钥吹娇箼z測(cè)性能:本文算法(MPSteg+Dist)>文獻(xiàn)[3]算法(MPsteg)>空間域 LSB匹配算法,即本文算法的抗檢測(cè)性能要優(yōu)于另外幾種方法,如圖2、圖3所示:
圖2. Zhang檢測(cè)器對(duì)不同隱寫(xiě)方法的檢測(cè)圖
圖3. WAM檢測(cè)器對(duì)不同隱寫(xiě)方法的檢測(cè)
在0.3bpp、0.5bpp下的ROC曲線??梢钥吹?,空間域LSB匹配算法的抗檢測(cè)極差,稀疏域MPSteg算法的抗檢測(cè)性也并不理想,而本文算法卻仍可以擁有較好的抗檢測(cè)性能。如圖4所示:
圖4. SPAM檢測(cè)器對(duì)不同隱寫(xiě)方法的檢測(cè)
可以看到,空間域LSB匹配算法的抗檢測(cè)極差,稀疏域MPSteg算法的抗檢測(cè)性也并不理想,而本文算法卻仍可以擁有較好的抗檢測(cè)性能。
本文分析了現(xiàn)有稀疏域隱寫(xiě)分析算法的不足,提出了結(jié)合失真函數(shù)的稀疏域隱寫(xiě)算法。當(dāng)使用圖像塊的非零分解系數(shù)進(jìn)行信息嵌入時(shí),選擇使失真函數(shù)盡可能小的修改方式,從而減小圖像失真。隱寫(xiě)分析實(shí)驗(yàn)表明,嵌入等量的秘密信息,本文提出的方法可以獲得更好的抗檢測(cè)能力,算法的安全性更高。
[1] G. Cancelli, M. Barni, G. Menegaz. MPSteg: Hiding a message in the matching pursuit domain [C]. Proc. SPIE, 2006, 6072: 60720P_1-60720P_9.
[2] G. Cancelli, M. Barni. MPSteg-color: A new steganographic technique for color images [C]. Information Hiding: 9th Int. Workshop (IH 2007), Saint Malo, France, 2007, 4567: 1–15.
[3] G. Cancelli, M. Barni. MPSteg-Color: data hiding through redundant basis decomposition [J].IEEE Trans. Information Forensics and Security,2009, 4(3): 346-358.
[4] N. Otsu. A threshold selection method from gray-level histograms [J]. IEEE Transactions on System, Man, and Cybernetics, 1979, 9(1): 62-66.
[5] G. Schaefer, M. Stich. UCID-An uncompressed colour image database [C]. Proc. SPIE, Storage and Retrieval Methods and Applications for Multimedia, San Jose, USA, 2004:472–480.http://www-staff.lboro.ac.uk/~cogs/datasets /UCID/ucid.html.
[6] M. Aharon, M. Elad, A. M. Bruckstein. The K-SVD: An algorithm for designing of overcomplete dictionaries for sparse representation [J]. IEEE Trans. Signal Process., 2006,54(11):4311–4322.
[7] J. Zhang, I. Cox, G. Dorr. Steganalysis for LSB matching in images with high-frequency noise [C]. Proc. IEEE 9th Workshop on Multimedia Signal Processing (MMSP 2007), 2007:385–388.
[8] M. Goljan, J. Fridrich, T. Holotyak. New blind steganalysis and its implications [C]. Proc.SPIE, 2006, 6072: 1–13.
[10] T. Fawcett. ROC graphs: Notes and practical considerations for researchers [J]. Machine Learning, 2004, 31
Steganography Based on Sparse Representation with Distortion Function
Yu Chunmei
(Department of Electronic Engineering, Fudan University, Shanghai 200433,China)
Steganography in sparse domain uses sparse representation to embed secret information in a cover image. It proposes to design the distortion function for steganography in sparse domain and embed secret message by minimizing the disortion function, so that the embedding impact is minimized. It's shown that the algorithm can effectively resist existing steganalysis algorithms while maintaining image visual perception.
Image Steganography ; Sparse Representation; Distortion Function; Steganalysis
TP311
A
1007-757X(2014)06-0001-04
2014.04.30)
國(guó)家自然科學(xué)基金項(xiàng)目(61170207)
于春梅(1988-),女,復(fù)旦大學(xué)電子工程系,碩士研究生,研究方向:圖像信息處理,上海,200433