董振華,李喜艷
(鄭州成功財經學院,河南 鞏義 451200)
摘要:數字圖像信息隱藏算法要求高的魯棒性和透明性,,通過分析矩陣運算的特征,,提出改進的EMD-S算法。將秘密信息通過S盒的壓縮變換,,嵌入到分解圖像的最大奇異值當中,。通過實驗表明,本文算法能夠較好地抵抗JPEG壓縮,,具有較大的數據嵌入率和較好的魯棒性。
關鍵詞:信息隱藏,;矩陣運算,;奇異值分解;魯棒性
0引言
數字圖像信息隱藏是信息隱藏的一個重要分支,,數字圖像信息隱藏技術主要是通過分析圖像的本質特征,,嵌入秘密信息,使人類從視覺上感覺不到圖像的改變,,從而解決數字圖像的隱蔽通信[1 2],。參考文獻[3]提出的EMDlike隱藏算法在像素塊的平均值上嵌入秘密信息,算法的魯棒性得到了一定的提高,,但秘密信息直接嵌入在圖像空域的像素中,,嵌入失真較大,而且魯棒性仍不能滿足實際需求,。參考文獻[4],、[5]提出SVD和EMD結合的隱藏算法,通過在像素塊的奇異值上嵌入秘密信息,,提高了載密圖像的質量,,并且提高了算法的魯棒性,但它是以嵌入容量為代價的,。參考文獻[6]提出基于矩陣運算的二維EMD算法,,利用矩陣運算將秘密信息編碼后分別嵌入在載體像素矩陣的列向量和行向量中,,仿真實驗證明嵌入率較高,但是該方法也是以犧牲嵌入效率與PSNR值為代價的,。
EMD編碼算法是一種數字圖像信息隱藏算法,,當在圖像的n個像素載體中嵌入秘密信息時,最多只需修改1 bit,。EMD編碼方法的優(yōu)點在于能夠以比較小的修改量獲取較高的嵌入率,,并且減小了嵌入引起的失真,但是EMD編碼方法的魯棒性較差,,當圖像發(fā)生微小改動時,,有可能會造成秘密信息的不正確提取。圖像的奇異值具有很好的穩(wěn)定性,,本文充分利用EMD編碼的較高嵌入率和奇異值分解的穩(wěn)定性,,并且引入S盒的壓縮變換,進一步提高了數據的嵌入率,,提出了SVD和EMD-S結合的隱藏算法,。
1EMD-S編碼算法
1.1S盒變換
在對稱秘密體制中,DES算法是一種經典的對稱密碼算法,,除了S盒是非線性變換外,,其余都是線性變換。因此,,S盒是DES算法的關鍵,,任意改變S盒輸入中的幾位,其輸出至少有兩位發(fā)生變化,。
每個S盒有4行16列,,以某數據流的6 bit數據為例,假設Bj=b1b2b3b4b5b6,,設b1b6和b2b3b4b5對應的十進制分別為r和c,,則Sj盒中的r行c列對應的十進制整數就是Sj的輸出。例如B1=100111,,從圖1所示的S1盒中查得,,3行3列的十進制整數為2,則S1的輸出為0010,。也就是說,,實際需要嵌入的信息量為6 bit,經過S盒壓縮變換后信息量減少為4 bit,,從而可以更好地保證圖像信息隱藏的魯棒性和不可感知性,。
1.2EMD-S算法的實現
EMD編碼算法是一種數字圖像信息隱藏算法,當在圖像的n個像素載體中嵌入秘密信息時,,最多只需修改1 bit,。EMD編碼方法的優(yōu)點在于能夠以比較小的修改量獲取較高的嵌入率,,并且減小了嵌入引起的失真。本文進一步提高數字圖像的信息嵌入率,,提出EMDS編碼算法,,在秘密信息嵌入前經過S盒的壓縮變換,然后再嵌入數字圖像載體中,。EMD-S算法的嵌入步驟如下:
(1)假設秘密信息d=(d1,d2,…,d8),,其中di為6 bit的數據流。將di經過Si盒壓縮變換為4 bit的數據流,,因為EMD編碼嵌入的是2n+1進制的數,,所以在這里將4 bit的數據流高位補0,生成5 bit的數據流,。經過S盒壓縮變換和高位補0操作,,形成秘密信息d′=(d1′,d2′,…,d8′),由原來的48 bit變?yōu)?0 bit的秘密嵌入信息,。
(2)把數字載體圖像分為連續(xù)的大小為2×2的像素組g1,g2,…,gn,。
(3)計算權值函數f=f(g1,g2,…,gn)=×i(mod2n+1)(1)
(4)差值計算
若S的值為0,則像素值不進行修改,;若S的值不為圖2信息嵌入算法流程0,,且k<=n(k代表第k個秘密比特值,可取0,,1,,…,n),,像素組中gs=gs+1,否則像素組中g2n+1-k=g2n+1-k-1,。
通過以上4個步驟的操作,,將像素組修改為新的像素值g′1,g′2,…,g′n,由EMD-S編碼算法的嵌入原理可得嵌入后的像素組滿足公式(3):
因此通過公式(3)可以求出秘密信息d′,,秘密信息d′通過查詢相應S盒可以獲得擴展之后的秘密信息d,。通過S1盒可知,同一個十進制數值對應若干個行號和列號組,,為了增加信息的嵌入量,,選擇S1盒當中最大的一位十進制數。
2SVD和EMD-S結合的隱藏算法
在對矩陣進行數值分解的眾多分析方法中奇異值分解是其中一個典型的方法,,因為能夠很好地解決逆矩陣問題和矩陣的特征值問題,,而被廣泛應用于通信和圖像等領域。
2.1奇異值分解及特性分析
奇異值分解(SVD)是一種將矩陣進行對角化的數值算法,,從線性代數的角度,,一幅灰度圖像可以看成是一個非負矩陣,。若一幅圖像用A表示,定義為A∈RΜ×Ν,,其中,,R表示實數域,則矩陣A的奇異值分解定義為A=USVT式中,,U∈RΜ×Ν與V∈RN×N都是正交矩陣,,矩陣S是一個對角矩陣,對角線上的元素叫做A的奇異值且滿足:σ1≥σ2≥…≥σi≥…≥σM≥0,,分解式USVT稱作A的奇異值分解,。奇異值所表現的是圖像的內蘊特性,在對圖像做奇異值分解所得的奇異值序列σi中,,第一個奇異值比其他奇異值大得多,,圖像奇異值的穩(wěn)定性非常好,在圖像被施加小的擾動時,,其奇異值不會有大的變化,。塊奇異值分解會產生更多具有較大數值的奇異值,有利于水印嵌入,。奇異值的這些特性,,保證了水印嵌入的可行性、不可見性以及很好的魯棒性,。本文充分利用奇異值的較好的魯棒性特征,,結合了EMD-S算法,將兩個算法的優(yōu)點結合起來,。在EMD-S編碼算法的基礎上使用奇異值分解來提取特征點,,不僅保證了圖像可以嵌入較大容量的秘密信息,而且還保證了圖像良好的魯棒性,。
2.2信息嵌入過程
使用矩陣A表示載體圖像,,嵌入秘密信息d=(d1,d2,…,d8),其中di為6 bit的數據流,。為保證算法具有較大的嵌入容量,,將每一組數據流經過對應的S盒壓縮變換為4 bit的數據流。為了更好地應用EMD算法,,每組數據流的高位補0,,形成5 bit的數據流。與此同時對圖像矩陣A進行分塊,,對每一個子塊進行奇異值分解,,提取出奇異值向量。將秘密信息d′=(d1′,d2′,…,d8′)嵌入到每個子塊的最大奇異值中,。以兩個像素點為一個單位時算法的容量最大,,因此本文算法選取兩個圖像塊的最大奇異值作為嵌入單位,。信息嵌入算法流程圖如圖2所示。
具體的嵌入步驟如下:
(1)將載體圖像A進行分塊,,每塊為2×2,,塊與塊之間相互不重疊;(2)對每個子塊進行奇異值分解,,獲取每個子塊的最大奇異值,;(3)以相鄰兩個子塊的最大奇異值作為參數,計算函數f
(4)秘密信息d′轉化為五進制的比特流,,并計算機差值Si=(di-fi)mod5,,根據EMD-S編碼算法中的修改規(guī)則,一次修改每個奇異值數組,。
(5)將修改后的奇異值向量(σ′i1,σ′i2)進行奇異值逆變換得到新的2×2矩陣,,各個子塊組合成新的載有秘密信息的圖像矩陣A′。
2.3信息提取過程
在這里使用矩陣A′表示載有秘密信息的圖像,,具體的提取步驟如下:
(1) 將載體圖像A′進行分塊,,每塊為2×2,塊與塊之間相互不重疊,;(2)對每個子塊進行奇異值分解,,獲取每個子塊的最大奇異值σ′i1;(3)根據EMD-S算法,,以兩個奇異值為一個單位進行計算,,獲得權重函數f的取值。秘密信息的提取公式如:
(4)秘密信息d′=(d1′,d2′,…,d8′)分別經過對應S盒的變換,,選擇矩陣中最大的二進制數據分別得到6 bit的數據流d=(d1,d2,…,d8),。
3性能分析與比較
3.1性能分析
矩陣運算方便、直觀,,奇異值分解魯棒性較好,,本文提出改進的EMD-S編碼算法,不僅保證了數據的嵌入量的增加,,而且為了保證秘密信息的正確提取,采用奇異值分解的方法對圖像進行子塊分解,,提高圖像的魯棒性,。本文主要是在文獻[4]的基礎上做的改進,在秘密信息嵌入之前先經過S盒的壓縮變換,,增加了數據的嵌入率,,使用奇異值分解,將秘密信息嵌入到圖像子塊當中,,同時也保證了圖像的魯棒性,。通過上述理論的分析可得,,本文算法的嵌入率是文獻[4]嵌入率的1.2倍左右。本文參照文獻[4]使用峰值信噪比PSNR來衡量嵌入秘密信息的失真度,,采用位錯率來作為算法魯棒性的客觀評價標準,。但是,每個S盒有連續(xù)的64個整數,,增加了空間復雜度,。
3.2性能比較
對受到JPEG有損壓縮的圖像,比較本文算法與文獻[4]算法嵌入秘密信息后能反映其載密圖像失真度的PSNR值,,如表1所示,。
4結論
本文提出了SVD和EMD-S結合的隱藏編碼算法,充分利用了奇異值分解的穩(wěn)定性,,將秘密信息通過S盒的壓縮變換嵌入到每個子塊的最大奇異值當中,,矩陣編碼方便直接,信息隱藏量可觀,,既保證了載密圖像的質量,,也提高了算法的魯棒性。相關實驗數據表明,,本文算法能夠較好地抵抗JPEG壓縮,,在相同嵌入容量下具有更好的PSNR值。因為本文提出的算法使用了S盒,,每個S盒占據了64個連續(xù)的存儲單元,,所以算法的空間復雜度變大了,也就是說,,犧牲了空間換取了時間,,在以后的算法研究中應進一步降低空間復雜度。
參考文獻
?。?] 韓佳伶.基于隱藏容量的數字圖像信息隱藏算法研究[D].長春:吉林大學,2015.
?。?] 劉粉林,劉九芬,羅向陽.數字圖像隱寫分析[M].北京:機械工業(yè)出版社,2010.
[3] Yao Xiaoming, Du Wencai, Wu Weihua. A robust EMD likestenographic schem[C].Third International Symposium on Intelligent Information Technology and Security Informatics,2010:134 137.
?。?] 姚楚茂,湯光明,辜剛林.基于奇異值的魯棒性圖像隱寫算法[J].計算機工程與設計,2015,36(7):1727 1732.
?。?] 姚楚茂,湯光明,蔡鎮(zhèn).最大奇異值移位的魯棒性圖像信息隱藏[J].計算機應用研究,2015,32(7):2172 2174.
[6] 劉圓,潘峰.基于矩陣運算的二維EMD算法[J].計算機工程,2011,37(20):111 113.