??? 摘 要: 以自適應量化和多次關系嵌入為基礎,提出了小波" title="小波">小波域的雙重水印嵌入算法。該算法采用約瑟夫置亂和帳篷加密預處理水?。焕萌祟愐曈X系統(tǒng)(HVS)的特性確定量化間隔;采用投票表決的方法增強嵌入水印的魯棒性" title="魯棒性">魯棒性;考慮了舍入誤差對算法的影響,對待檢測載體進行了補償。仿真結果表明,該算法不僅具有很好的不可見性,而且對JPEG壓縮、色深變換、擠壓等水印攻擊具有較強的魯棒性。
??? 關鍵詞: 數(shù)字水印? 小波變換" title="小波變換">小波變換? 人眼視覺系統(tǒng)? 投票表決
?
??? 數(shù)字水印是20世紀90年代發(fā)展起來的對數(shù)字產(chǎn)品進行版權保護的新技術[1]。評價數(shù)字水印算法" title="水印算法">水印算法的指標主要有水印的魯棒性、不可見性、水印容量和是否盲提取等。任何的信息隱藏方法都必需在這些相互制約的因素之間權衡[2]。本文介紹的水印算法是對上述的各個指標的折中。以彩色圖像" title="彩色圖像">彩色圖像作為載體圖像,采用兩個二值圖像作為水印。本文算法的主要特點是:
??? (1) 預處理水印采用約瑟夫置亂和帳篷加密;
??? (2) 嵌入雙重水??;
??? (3) 提出小波域人類視覺系統(tǒng)(HVS)量化間隔模型;
??? (4) 水印提取采用投票表決;
??? (5) 補償舍入誤差。
1 水印算法系統(tǒng)實現(xiàn)的結構圖
??? 本文設計的水印算法是在載體圖像的Y分量三級小波分解的低頻部分自適地的嵌入水印一和在載體圖像Cb分量三級小波分解的高頻部分三次重復嵌入水印二的雙重水印算法,系統(tǒng)實現(xiàn)的原理圖如圖1和圖2所示。
???????????????????????
2 水印預處理
??? 對水印進行置亂和加密處理,可以增強抗水印攻擊的能力和水印破譯的難度[3]。經(jīng)典的方法是Arnold置亂和的Logistic加密。本文采用比較新鮮的約瑟夫置亂和帳篷加密。實際上,帳篷加密是Logistic加密的特例。
2.1 約瑟夫置亂
??? 經(jīng)典的約瑟夫問題可參見參考文獻[3]。約瑟夫置亂是針對一維序列置亂的方法,有迭帶周期。例如:長度為64的序列,間隔是4,初始值為1,周期就是1482。本文采用大小為64×64的兩個二值圖像作為水印。先進行行內置亂,再進行列內置亂。取相同的初始值和間隔,采用迭帶次數(shù)10和15作為水印一和水印二的置亂密鑰。在水印逆置亂時,首先求出約瑟夫置亂的周期,再減去置亂密鑰,就得到迭帶次數(shù),從而恢復水印。由于水印邊框處行內或列內取值相同,因此置亂結果存在幾條橫線和豎線。經(jīng)過加密后,橫線豎線將消失。
2.2 帳篷加密
??? 三角帳篷映射的定義和特點請參見參考文獻[4]。利用三角帳篷映射,產(chǎn)生一個長度為64×64的一維混沌序列。初值取0.625作為加密密鑰。生成的序列取值是(0,1)的實數(shù)。閾值門限法量化序列為:
???
式中,k=0.5。再重新排列成64×64的矩陣。與水印一置亂后的圖像進行異或運算,完成加密。同理,初值取0.875,完成對水印二的加密。水印的解密與上述步驟相同,只要把水印圖像換成待解密的圖像就可以了。本文水印算法的應用效果如圖3所示。
????????????????????????
3 載體圖像的變換與舍入誤差
3.1 顏色變換
??? 用于圖像存儲和傳輸?shù)念伾P蚏GB ,其實并不符合人眼的視覺感受。把水印信息直接加到 RGB 空間上,需要依據(jù)亮度方程調節(jié)RGB三個分量的幅度才不至于產(chǎn)生顏色失真。也有的方法是在人眼并不敏感的藍色分量上嵌入水印。如果把載體圖像從RGB空間轉換到別的彩色空間,例如YCbCr、YUV、YIQ等,就可以避免這種顏色失真。
??? 研究表明:不同攻擊對彩色圖像的亮度(Y)和色差(Cb、Cr) 的破壞力是不同的。其中,JPEG壓縮、疊加噪聲等處理對色差分量(Cb、Cr)的影響較大,對亮度分量(Y) 的破壞相對較小;而銳化等處理則正好相反[5]。
??? 本文采用YCbCr顏色模型,分別在亮度分量和色差分量中嵌入水印,將使數(shù)字水印信息較強地分布于RGB三個通道,提高算法的魯棒性。RGB 彩色空間與YCbCr 彩色空間(256級)的模型相互轉換公式可參見參考文獻[5]。
3.2 小波變換
??? 比較流行的數(shù)字水印嵌入的空間有空域和變換域(包括小波域、離散余弦變換域、壓縮域等)。作為JPEG2000標準的小波變換,由于充分滿足漸進傳輸、低比特率傳輸、分辨率和質量的可調整性以及抗錯性和特定區(qū)域(ROI)編碼等新的需求,使得基于小波變換的水印方案具有優(yōu)異的性能,也更有吸引力[6]。
??? 本文設計的水印嵌入方法是依據(jù)下述原則提出的。參考文獻[6]引用了黃達人的觀點:水印嵌入到小波低頻子帶與高頻子帶需要不同的嵌入策略。參考文獻[7]指出JPEG2000對圖像壓縮時采用三級小波分解,因此嵌入水印時,也應考慮到對載體圖像進行的三級小波分解。參考文獻[8]提出對小波變換的低頻子帶只嵌入一次水印,而高頻子帶要反復嵌入水印的策略。參考文獻[9]指出三級小波變換后,應從HH2與HH3(二級小波分解的對角高頻子帶和三級小波分解的對角高頻子帶)的關系入手,嵌入水印。參考文獻[2]用到了多數(shù)判決和雙重水印嵌入的思想。
3.3 舍入誤差
??? 本文采用的顏色變換是數(shù)據(jù)類型為整數(shù)型到整數(shù)型的變換,而小波變換則是數(shù)據(jù)類型為實數(shù)型到實數(shù)型的變換。載體圖像如果在小波域嵌入水印,則在小波逆變換后,得到的結果圖像就是實數(shù)型的數(shù)據(jù)。再經(jīng)過顏色變換,雖然結果依然是整數(shù)型的數(shù)據(jù),但是這個過程已經(jīng)引入了很大的舍入誤差。為了解決舍入誤差對水印的影響,本文對失真的部分進行補償。
未補償和有補償對水印提取結果的影響如圖4所示。在沒有誤差補償?shù)那闆r下,水印一和水印二的NC值分別為0.9588 和0.9716,而考慮了誤差補償后NC值分別為1.000 0和1.0000。說明該措施是有效的。
???????????????????????
4 小波域的自適應量化門限
??? 對比度函數(shù)模型的定義可參見參考文獻[5]。它的取值范圍是(-1,1)。對比度函數(shù)值|H(g)|越大,表示當像素值g有所變動時對人眼視覺的影響越有限;而對比度函數(shù)值|H(g)|越小,表示當像素值g 有所變動時對人眼視覺的影響越明顯。
Weber定律指出人眼對于中等亮度的變化感知門限在2%以內,對于更亮或者更暗的變化感知度非線性下降,最大可以達到5%左右。
??? 小波域的自適應量化門限的計算步驟如下:
??? (1) 通過對比度模型計算出載體圖像亮度分量在空域的對比度函數(shù)值。再結合Weber定律,算出其在空域的自適應量化間隔:
???
式中,J表示空域量化的間隔,Z表示載體在對應位置的幅值,H表示取模(就是把對比度函數(shù)歸一化,在(0,1)之間取值)。上面式子的含義是:空域量化的間隔由兩部分組成,其一是變化不超過0.02的最小量化間隔,其二是依據(jù)像素與其周圍的對比度特性自適應調整的量化間隔。并且保證量化的間隔最大值不會超過人眼視覺門限的上限。
??? (2) 對J進行三級小波變換,取小波域低頻子帶的系數(shù)再取整后作為量化間隔。
5 基于量化的水印嵌入與提取
??? 量化嵌入的原理如圖5所示[1]。將坐標軸等間隔劃分成A區(qū)間集與B區(qū)間集,區(qū)間大小為Δ。規(guī)定A區(qū)間集代表0,B區(qū)間集代表1。根據(jù)水印值是0或1,調整待嵌入水印的系數(shù)值。使其等于離自己最近的對應區(qū)間內的中間值。當檢測水印時,只需判斷該系數(shù)落在的區(qū)間是A集還是B集,就可以得到對應的水印信息是0或1。
????????????????????????
??? 量化嵌入水印一的具體步驟:
??? (1) 計算小波域自適應量化模板hvs。
??? (2) 亮度分量三級haar小波分解,取低頻子帶Cy。
??? (3) 遍歷Cy的每一元素,取hvs的對應元素作為量化間隔,量化嵌入水印。
??? (4) 小波逆變換。
??? (5) 與嵌入水印二的Cb分量和原始的Cr分量一起顏色反變換。
??? 量化提取是量化嵌入的逆過程,這里不再重復。
6 基于關系的水印嵌入與提取
??? 基于關系嵌入的水印,在提取時不需要原始圖像參與,是盲提取的嵌入方法。關系嵌入的規(guī)則是:w表示水印信息,對于兩個數(shù)a和b(a代表三級小波分解的系數(shù),b代表二級小波分解的系數(shù)),如果ab且w=0,則a和b互換;其他情況下a和b不互換。因為小波變換不同級間系數(shù)幅值以近似2倍的關系遞增,所以在關系嵌入前后考慮在較低級系數(shù)上進行2倍調整,這樣可以減小載體失真。
??? 關系嵌入水印二的具體步驟:
??? (1) 色差分量Cb三級haar小波分解,提取二級高頻子帶(LH2,HL2,HH2)和三級高頻子帶(LH3,HL3,HH3)。
??? (2) LH3取絕對值得到LH3new。
??? (3) 對LH2的奇數(shù)行和列系數(shù)取絕對值再乘以2得到LH2new。
??? (4) 遍歷LH2new和LH3new,用上述關系嵌入規(guī)則嵌入水印二。
??? (5) LH2new除以2去絕對值,正負號與原始系數(shù)一致,替換LH2的奇數(shù)行和列。
??? (6) LH3new去絕對值,正負號與原始系數(shù)一致,替換LH3。
??? (7) 重復(2)~(6)的步驟,依次把水印二嵌入到HL和HH分量中去。
??? (8) 小波逆變換,顏色逆變換。
??? (9) 再進行顏色變換,計算舍入誤差。
??? 水印二的提取是關系嵌入的逆過程。三次提取完成,再投票表決。水印二取值由多數(shù)決定。
7 實驗結果
??? 評價水印算法的方法有主觀評價和客觀評價兩種。對于有意義水印算法的評價,主觀評價與客觀評價有時有很大差別??陀^評價標準有兩個,一是峰值信噪比(PSNR)[4],用來計算水印嵌入前后載體圖像改變的程度,以(db)表示。另一個是歸一化相關系數(shù)(NC)[10],用于計算提取水印與初始水印的相關性。它們的公式如下:
??? 各種水印攻擊結果如表1所示。
由表1可見,對于一般的水印攻擊,該算法體現(xiàn)了較強的魯棒性,因為不同的水印攻擊對載體亮度分量和色差分量的影響不同,使得嵌入雙重水印的算法可以抵抗更多種的水印攻擊。例如水印一在JPEG壓縮上有較強的魯棒性,但在縮放和色深變換中卻檢測不到,而水印二正好相反,它在JPEG壓縮中已經(jīng)檢測不到了,但在縮放和色深變換中效果不錯。總之,發(fā)揮各自所長,提高了水印算法整體的性能。??? 本文提出了一種基于小波域的數(shù)字水印算法??紤]到Y分量與Cb分量的不同特性和小波低頻分量和高頻分量的區(qū)別,提出了適合于盲提取的基于量化和關系的嵌入策略。量化間隔考慮了反映視覺特性的對比度函數(shù)與Weber定律,增強了水印的魯棒性。關系嵌入也把不同級間的系數(shù)關系利用起來,二倍關系的幅值調整減小了圖像失真,三次嵌入投票表決也增強了水印的性能。此外,還考慮了舍入誤差的補償。這也使得水印算法成為半盲提取的水印算法。
參考文獻
[1] 杜青.基于DCT和量化的彩色圖像數(shù)字水印算法[J].?蘇州大學學報:工科版,2006,26(1).
[2] 于帥珍,沈建國.基于小波域的自適應彩色圖像雙重水印算法[J]. 微計算機信息(測控自動化),2006,22(1).
[3] 向德生,文宏,熊岳山.小波域魯棒自適應圖像水印嵌入方案[J]. 計算機工程與應用,2004,(36):81.
[4] 李淑明,覃團發(fā),劉賢鋒.DCT域自適應混沌加密的二值圖像數(shù)字水印算法[J]. 通訊和計算機,2005,2(6).
[5] 王向陽,楊紅穎,趙巖,等. 基于人眼視覺特性的自適應空域彩色圖像數(shù)字水印算法[J]. 遼寧師范大學學報:自
然科學版,2004,27(2).
[6] 強英,王穎.基于小波域的數(shù)字圖象水印算法綜述[J].?計算機工程與應用,2004,(11):46.
[7] 于景俠,王秉中.一種自適應圖像小波域數(shù)字水印嵌入方案[J]. 計算機工程與應用,2003,(35):83.
[8] 趙健,齊華,田澤,等.改進的小波域混沌數(shù)字水印算法實現(xiàn)[J]. 光子學報,2004,33(10).
[9] 熊志勇,蔣天發(fā). 多功能彩色圖像數(shù)字水印方案[J].?武漢大學學報:工學版,2004,37(6).
[10]王向陽,楊紅穎.DCT域自適應彩色圖像二維數(shù)字水印算法研究[J].計算機輔助設計與圖形學學報,2004,16
?(2).
[11] 郭磊,郭寶龍.小波域數(shù)字圖像水印算法的研究[J]. 計算機工程與應用,2002,(13):45.