索 巖,崔智勇
(1. 河南師范大學新聯(lián)學院,河南 新鄉(xiāng) 453000;2. 河南師范大學計算機與信息工程學院,河南 新鄉(xiāng) 453000)
如今網(wǎng)絡不斷發(fā)展,日常生活與互聯(lián)網(wǎng)緊密相連?;ヂ?lián)網(wǎng)具有精準、便利優(yōu)勢的同時也面臨數(shù)據(jù)信息被竊取的危險,數(shù)據(jù)安全越來越重要。由于數(shù)據(jù)隱藏在多媒體文件中很難被竊取,且隱秘數(shù)據(jù)雖然被隱藏但是仍然可完整地恢復[1],因此可逆數(shù)據(jù)隱藏技術(shù)廣泛應用于軍事、法律和醫(yī)學等領域[2]。數(shù)字圖像是可逆數(shù)據(jù)隱藏技術(shù)主要的考察對象,記錄真實場景的高動態(tài)圖像格式是多媒體技術(shù)發(fā)展的必然要求,高動態(tài)圖像結(jié)構(gòu)比傳統(tǒng)圖像結(jié)構(gòu)復雜,顏色信息與亮度信息可以同時記錄[3]。
由于高動態(tài)圖像在傳輸過程中的安全性和傳輸效率無法保障,因此在進行高動態(tài)圖像可逆數(shù)據(jù)隱藏之前,需要對高動態(tài)圖像進行加密和壓縮。傳統(tǒng)高動態(tài)圖像壓縮和隱藏兩個過程往往不能同步進行,既增加高動態(tài)圖像加密壓縮過程的復雜度,也降低運算效率[4]。為提高高動態(tài)圖像加密壓縮性能,保證高動態(tài)圖像質(zhì)量,能夠?qū)嚎s和加密兩個過程同步進行的方法研究成為目前高動態(tài)圖像可逆數(shù)據(jù)隱藏研究的核心內(nèi)容[5]。通過加密和壓縮兩個過程同步進行在提高高動態(tài)圖像傳輸所使用帶寬的利用率的同時,還改善高動態(tài)圖像傳輸中的安全性能[6]?;诖?,提出基于中國剩余定理的高動態(tài)圖像可逆數(shù)據(jù)隱藏研究,通過NTICE方法對高動態(tài)圖像進行同步加密、壓縮,在加密壓縮后的圖像中通過對數(shù)據(jù)提取與圖像恢復的過程分析實現(xiàn)隱秘數(shù)據(jù)嵌入過程逆向操作,完成高動態(tài)動向可逆數(shù)據(jù)隱藏。
因為基于中國剩余定理的高動態(tài)圖像壓縮和加密同步進行的方法(NTICE方法)不僅提高高動態(tài)圖像傳輸所使用帶寬的利用率[7],還可改善高動態(tài)圖像傳輸中的安全性能。因此本文主要采用NTICE方法對高動態(tài)圖像進行加密與壓縮。
中國剩余定理可以對同余方程組進行計算,以下為計算過程:
假設通用同余方程組為
(1)
假設有f1,f2,…fd(d≥1)為d個正整數(shù),且任意兩個之間沒有更多的公約數(shù),設置
q=f1f2…fd=f1q1=f2q2=fdqd
(2)
m=b1h`1q1+b2h2q2+…+bzhzqz(modq)
(3)
qim=1(modq)
(4)
且i=1,2,…,d。
NTICE方法是中國剩余定理應用的一部分,同余方程組余數(shù)可看成是高動態(tài)圖像像素,同余方程組模數(shù)可以看成是沒有公約數(shù)的密匙,可獲取同余方程組通用解[8]。所以高動態(tài)圖像像素值集經(jīng)過同余方程組求解的過程后變成正整數(shù)的通解,實現(xiàn)壓縮過程。當通解應用在式(1)中就可獲取原始高動態(tài)圖像像素值,實現(xiàn)高動態(tài)圖像還原過程。當模數(shù)值不正確,將無法對像素值進行還原,即實現(xiàn)高動態(tài)圖像加密。
基于上述高動態(tài)圖像加密與壓縮同步進行的原理,實現(xiàn)高動態(tài)圖像加密與壓縮的同步進行[9]。圖1為基于NTICE方法的高動態(tài)圖像加密壓縮同步方法示意圖。
圖1 基于NTICE方法的高動態(tài)圖像加密壓縮同步方法示意圖
1)假設L為e×f大小的初始高動態(tài)圖像,對該初始高動態(tài)圖像進行讀取,并將高動態(tài)圖像分成1×d個單元格,并設置d取值為高動態(tài)圖像列數(shù)的倍數(shù),公式表示為:f≡0(modd)。
(5)
(6)
4)對該同余方程組進行求解,并對各一次同余式qim=1(modfi)求特解,設該特解為hi。可通過中國剩余定理對與qi和fi相關聯(lián)、但與像素值不相關聯(lián)的一次同余式進行計算,得到高4比特位特解值等于低4比特位特解值[10]。特解不隨高動態(tài)圖像像素變化而變化,因此在所有計算中只要獲取一次特解h1,可對該特解反復使用,無需第二次計算,縮短計算時間,使計算更簡單。
通過使高動態(tài)圖像像素值高4比特位數(shù)值不變,設置高動態(tài)圖像像素值低4比特位數(shù)值為0同樣能夠?qū)崿F(xiàn)高動態(tài)圖像顯示[11]。無損壓模式是一種對壓縮后高動態(tài)圖像質(zhì)量損害最小的方法,既將高動態(tài)圖像高4比特位加密數(shù)值和低4比特位加密數(shù)值進行同步輸送;而有損壓縮模式是一種對壓縮后高動態(tài)圖像質(zhì)量損害稍小的方法,既只對高動態(tài)圖像高4比特位加密數(shù)值進行輸送。通過NTICE方法對高動態(tài)圖像實施同步加密與壓縮后,得到的高動態(tài)圖像用L表示。
利用NTICE方法實現(xiàn)高動態(tài)圖像同步加密與壓縮后,將得到的高動態(tài)圖像L分為兩個區(qū)域,分別是ROI(感興趣)區(qū)域和RONI(非感興趣)區(qū)域,利用數(shù)據(jù)嵌入,數(shù)據(jù)提取與圖像恢復兩個過程實現(xiàn)可逆數(shù)據(jù)隱藏。
2.3.1 隱秘數(shù)據(jù)嵌入
1)將不同加密和壓縮后的高動態(tài)圖像L分成兩個區(qū)域,分別為ROI和RONI區(qū)域,并對ROI區(qū)域坐標信息進行標記;
2)將RONI區(qū)域分割成m×n個單元格,且這些單元格并不重疊,X=m×n,則X為單元格數(shù)量;
3)求解X個單元格中的像素方差,確定塊嵌入強度為s,如果塊嵌入過程中發(fā)生溢出現(xiàn)象,則s當前取值為1,并對s值的變動進行標記;
4)對s值變動進行標記后對該變動值集合進行編碼獲取Bs,采用Huffman編碼方法獲取H_Bs,并利用無損壓模式獲取無損壓縮后映射信息LC_H_Bs,塊嵌入強度變動值集合編碼長度Length(LC_H_Bs)表示;
5)在ROI區(qū)域內(nèi)最低有效位集合可用SLSB表示,使用無損壓模式對該有效位集合長度Length(LC_SLSB)進行獲??;
6)設置M為隱秘數(shù)據(jù),由嵌入在ROI區(qū)域中的數(shù)據(jù)M2和嵌入在RONI區(qū)域中的數(shù)據(jù)M1兩部分組成。嵌入在RONI中的數(shù)據(jù)M2長度是通過ROI區(qū)域像素個數(shù)減去Length(LC_H_Bs)獲取的;
7)使用最低有效位方法,即LSB方法在ROI區(qū)域中對無損壓模式獲取的RONI區(qū)域中塊嵌入強度變動值集合編碼長度Length(LC_H_Bs)及數(shù)據(jù)M2進行嵌入;
8)將數(shù)據(jù)M1及ROI區(qū)域內(nèi)最低有效集合無損壓縮后的映射信息LC_SLSB,都嵌入到RONI區(qū)域內(nèi);
9)獲取數(shù)據(jù)隱藏后的圖像LW。
從方法的安全性角度考慮,隱秘數(shù)據(jù)長度M、ROI區(qū)域坐標、單元格尺寸m×n、無損壓模式獲取RONI區(qū)域塊嵌入強度變動值集合編碼長度Length(LC_H_Bs),以及ROI區(qū)域有效集合長度Length(LC_SLSB)都可以看成是密鑰。
2.3.2 數(shù)據(jù)提取與圖像恢復
總的來說數(shù)據(jù)提取與圖像恢復是上文數(shù)據(jù)嵌入的一種逆向操作過程,以下是對數(shù)據(jù)獲取以及圖像恢復過程分析:
1)得到秘鑰,如隱秘數(shù)據(jù)長度M、ROI區(qū)域坐標、單元格尺寸m×n、無損壓模式獲取RONI區(qū)域塊嵌入強度變動值集合編碼長度Length(LC_H_Bs),以及ROI區(qū)域有效集合長度Length(LC_SLSB)等;
2)通過最低有效位方法對包含隱秘數(shù)據(jù)的圖像LW內(nèi)ROI區(qū)域進行分析,獲取RONI區(qū)域塊嵌入強度變動值集合無損壓縮后映射信息LC_H_Bs和數(shù)據(jù)M2;
3)對RONI區(qū)域塊嵌入強度變動值集合無損壓縮后映射信息LC_H_Bs進行解壓處理,使用Huffman編碼方法對解壓后的塊嵌入強度變動值集合進行解碼,并獲取Bs數(shù)據(jù);
4)對RONI區(qū)域進行分割,分割成m×n個單元格,Y=m×n,則Y是劃分的單元格數(shù)量;
5)通過同步加密與壓縮后高動態(tài)圖像像素塊恢復與隱秘信息提取過程對高動態(tài)圖像像素進行恢復并提取隱秘數(shù)據(jù)[12],使同步加密與壓縮后高動態(tài)圖像RONI區(qū)域單元格數(shù)量X得到恢復,并獲取LC_SLSB與數(shù)據(jù)M1;
6)對LC_SLSB實施解壓,獲取SLSB;
7)恢復ROI區(qū)域需通過最低有效位方法實現(xiàn);
8)將ROI區(qū)域和RONI區(qū)域合并到一起,實現(xiàn)高動態(tài)圖像恢復。
嵌入數(shù)據(jù)值與ROI區(qū)域最低有效位數(shù)量值為同一數(shù)值,設置P×V表示ROI區(qū)域面積,當進行無損壓模式Huffman編碼時獲取的有效集合長度Length(LC_SLSB)比ROI區(qū)域尺寸長度Length(P×V)要小很多,而ROI區(qū)域坐標信息、Huffman字母表信息、單元格尺寸m×n信息決定密鑰大小。假設隱秘數(shù)據(jù)長度M取值為33bit、無損壓模式獲取RONI區(qū)域塊嵌入強度變動值集合編碼長度Length(LC_H_Bs)取值為21bit,ROI區(qū)域有效集合長度Length(LC_SLSB)取值21bit,對通信負載沒有大影響。
為驗證本文方法的有效性,對4幅高動態(tài)圖像進行測試,實驗平臺為Matlab2012b,嵌入數(shù)據(jù)可以是0或1。表1為測試圖像在一定嵌入量下各通道相關系數(shù)表。
表1 高動態(tài)圖像在一定嵌入量下各通道相關系數(shù)
表1表明對原始高動態(tài)圖像與含隱秘數(shù)據(jù)的高動態(tài)圖像(水印圖像)彩色通道間的相關程度進行測試,當嵌入量較大時顏色通道間的相關系數(shù)無限接近1,由此得到,嵌入量越大,水印圖像與原始高動態(tài)圖像的相關性越明顯。本文方法、整體變換方法、自然圖像載體方法高動態(tài)圖像數(shù)據(jù)隱藏性能對比結(jié)果如表2所示。
表2 不同方法下高動態(tài)圖像數(shù)據(jù)隱藏性能對比
由表2可知,本文方法為了保證嵌入量和圖像質(zhì)量,在確保失真較低的情況下,數(shù)據(jù)嵌入量仍然保持在2.25-2.80bpp之間,達到隱藏數(shù)據(jù)與載體高動態(tài)圖像完全可逆恢復的目的。
以隱藏數(shù)據(jù)可逆性為基礎,對水印圖像質(zhì)量進行測試,將本文方法、整體變換方法、自然圖像載體方法三者相對比,本次使用均方根誤差法對三種方法下的水印圖像質(zhì)量進行比較,圖2為不同嵌入量下水印圖像的均方根誤差曲線。
圖2 不同嵌入量下的均方根誤差曲線圖
均方根誤差越小水印圖像失真率也就越小。圖2表明,在嵌入量相同的前提下,本文方法獲取的水印圖像質(zhì)量最好。
為了說明本文方法的有效性,對1號、2號、3號、4號高動態(tài)圖像的數(shù)據(jù)嵌入量進行對比。首先獲取4個實驗圖像單元格劃分尺寸:3×3,6×6, 8×8,9×9,圖3為1號圖像不同單元格劃分尺寸下的嵌入量,圖4為四幅高動態(tài)圖像在不同嵌入量下的峰值信噪比。
圖3 1號圖像不同單元格劃分尺寸下的嵌入量
圖4 四幅載體圖像在不同嵌入量下的峰值信噪比
由圖3可知,在峰值信噪比相同的條件下,當單元格劃分尺寸由3×3提升至8×8時,嵌入量隨著單元格劃分尺寸的增大而呈遞增趨勢,嵌入量及圖像質(zhì)量最佳.但是當單元格劃分尺寸提升至9×9時,嵌入量顯著降低。因此本文方法同步加密壓縮后的高動態(tài)圖像RONI區(qū)域單元格劃分尺寸取8*8時數(shù)據(jù)隱藏效果最佳。
由圖4可知,高動態(tài)圖像像素越高,圖像嵌入量越小,且四幅載體高動態(tài)圖像的峰值信噪比都不小于43dB,因此本文方法對四幅高動態(tài)圖像進行數(shù)據(jù)隱藏不會損壞圖像質(zhì)量。表3是三種方法嵌入量和峰值信噪比性能對比結(jié)果。
由表3可知,本文方法獲取的四幅高動態(tài)圖像的圖像嵌入量平均值達到1.2bpp以上,三種方法中圖像嵌入量最高;且峰值信噪比一直維持在43dB-44dB之間,波動平穩(wěn),因此本文方法數(shù)據(jù)隱藏效果最佳。
為解決高動態(tài)圖像傳輸過程中安全性低,傳輸效率差的問題,本文提出一種基于中國剩余定理的高動態(tài)圖像可逆數(shù)據(jù)隱藏方法,該方法首先通過NTICE方法對高動態(tài)圖像實施同步加密與壓縮,然后通過數(shù)據(jù)嵌入,將隱秘數(shù)據(jù)信息嵌入到加密與壓縮后的高動態(tài)圖像中,最后通過數(shù)據(jù)提取和圖像恢復,實現(xiàn)隱秘數(shù)據(jù)嵌入過程的逆向操作,達到隱藏數(shù)據(jù)與高動態(tài)圖像完全可逆恢復的目的。
1)本文方法可以提高圖像傳輸?shù)陌踩浴?/p>
2)通過改善無損性、增大嵌入量等提高圖像質(zhì)量。
3)在43dB-44dB之間的峰值信噪比保持平穩(wěn),本文方法的數(shù)據(jù)隱藏效果好。
表3 不同方法嵌入量和峰值信噪比性能對比