韋春榮,劉俊景
(1.廣西師范大學(xué) 電子工程學(xué)院,廣西 桂林 541004;2.桂林電子科技大學(xué) 教學(xué)實(shí)踐部,廣西 桂林 541004)
作為數(shù)字認(rèn)證和版權(quán)保護(hù)的重要手段,數(shù)字水印技術(shù)近年來已成為信息安全和多媒體信號(hào)處理領(lǐng)域研究的熱點(diǎn)。數(shù)字水印技術(shù)的性能指標(biāo)主要有安全性、穩(wěn)健性和不可見性等。數(shù)字水印算法主要可分為空域和變換域算法兩大類。變換域算法因其對(duì)幾何攻擊處理和常見的圖像處理具有較強(qiáng)的穩(wěn)健性能而具有更好的應(yīng)用前景。文獻(xiàn)[1]提出一種基于二維元包自動(dòng)機(jī)的圖像置亂和水印技術(shù),該算法在空域數(shù)據(jù)進(jìn)行水印信息嵌入,算法簡(jiǎn)單,速度比較快,但嵌入的水印很容易被普通的圖像處理所破壞,算法穩(wěn)健性比較差;文獻(xiàn)[2]提出一種基于分塊的DCT域數(shù)字圖像水印算法,將偽隨機(jī)序列嵌入一組被選的DCT系數(shù)中,雖然水印的穩(wěn)健性較好,但不可見性欠佳。筆者在前人研究的基礎(chǔ)上,提出了一種基于摩爾型元胞自動(dòng)機(jī)置亂加密的DCT域數(shù)字圖像水印算法,實(shí)驗(yàn)結(jié)果表明該算法在不可見性和穩(wěn)健性方面取得良好的平衡。
元胞自動(dòng)機(jī)[3](Cellular Automata,CA)是一個(gè)時(shí)間、空間和狀態(tài)變量取值均離散的動(dòng)力系統(tǒng)。它是由大量簡(jiǎn)單、具有局域相互作用的元胞構(gòu)成。每個(gè)元胞處于狀態(tài)空間中的某種狀態(tài),各個(gè)元胞在t+1時(shí)刻的狀態(tài)值根據(jù)一個(gè)預(yù)定義的局部規(guī)劃,按照其t時(shí)刻的鄰域函數(shù)規(guī)則進(jìn)行同步更新。近年來,CA成為模擬復(fù)雜物理系統(tǒng)和同步并行過程等學(xué)科領(lǐng)域的研究熱點(diǎn)[4-5]。二維摩爾型CA為圖1中所示的3×3鄰域網(wǎng)格模型。文獻(xiàn)[1]研究表明部分規(guī)則號(hào)的摩爾型CA的動(dòng)力學(xué)行為具有混沌性質(zhì),能較好地被應(yīng)用到圖像加密和水印技術(shù)中。為加強(qiáng)水印信息的安全性,消除各像素的空間相關(guān)性,在水印嵌入之前,首先取具有混沌性質(zhì)的規(guī)則號(hào)C=244,局部規(guī)則為外全加規(guī)則,對(duì)應(yīng)的映射函數(shù)為 f(1,2)=1,f(0,3)=1,f(1,3)=1,其他狀態(tài)值為0的摩爾型CA對(duì)原始水印圖像進(jìn)行置亂。待置亂的原始水印圖像為圖2所示的 200×200×8 bit二值圖像。
置亂具體步驟描述如下:
1)隨機(jī)產(chǎn)生一個(gè) 200×200的 0,1分布矩陣 A0(即為初始隨機(jī)種子矩陣)。
2)將A0的狀態(tài)值為1的點(diǎn)對(duì)應(yīng)到要置亂圖像W的像素點(diǎn)上去,并且按行順序取出放到新建的圖像像素矩陣W′中去。
3)用規(guī)則號(hào)C=244的映射函數(shù)f對(duì)A0進(jìn)行連續(xù)迭代 k 次得出一序列{A1,A2,A3,…,Ak}。
4)取與A1狀態(tài)值為1,且A0相同位置狀態(tài)值不為1的點(diǎn)對(duì)應(yīng)圖像W上的像素灰度值并按順序取出放到W′后面。
5)繼續(xù)迭代到第k步,取出Ak狀態(tài)值為1而在Ak-1,Ak-2,…,A1,A0的相同位置狀態(tài)值全不為1的點(diǎn)所對(duì)應(yīng)的圖像W上的像素灰度值,依次放到W′中。最后,將圖像W中剩下的點(diǎn)也依次放到W′中。這樣所得到的W′就是進(jìn)行置亂加密后的圖像。圖3為迭代次數(shù)k=3時(shí)所得到的置亂結(jié)果圖,可見,置亂處理后降低了水印圖像像素的相關(guān)性。解密用此算法的逆過程,需要用的密鑰是初始隨機(jī)種子矩陣A0、迭代次數(shù)k和規(guī)則號(hào)C,豐富的密鑰提高了水印信號(hào)的安全性。
離散余弦變換(Discrete Cosine Transform,DCT)是一種基于實(shí)數(shù)的正交變換,常用于圖像編碼和壓縮,是圖像編碼的國(guó)際標(biāo)準(zhǔn)(JPEG)的主要環(huán)節(jié)。對(duì)于一個(gè)N×N矩陣f,二維離散余弦正變換定義如下
其中,u和 v的取值為 0~N-1。
二維離散余弦反變換定義為
式中,i和 j的取值為 0~N-1,且
圖像在DCT變換后,主要能量集中在少數(shù)低頻系數(shù)中(即DCT矩陣的左上角),紋理和邊緣信息集中在中頻系數(shù)中。如果在低頻中嵌入水印,即使圖像發(fā)生一些失真,但只要主要部分保留(視覺質(zhì)量不降低)不丟失,那么嵌入信息也不會(huì)丟失,從而保證水印算法的穩(wěn)健性能。但是人眼對(duì)低頻系數(shù)最為敏感,低頻系數(shù)的輕微改變會(huì)引起察覺,因此考慮到水印的不可見性,不應(yīng)對(duì)低頻系數(shù)作較大改變。另一方面,人眼對(duì)高頻系數(shù)不敏感,將水印信息嵌入高頻中可以提高水印嵌入的不可見性,但是高頻系數(shù)接近零值,在濾波和有損壓縮時(shí)容易造成數(shù)據(jù)丟失,穩(wěn)健性不好。基于對(duì)各頻段特點(diǎn)的分析,筆者根據(jù)嵌入水印信息量的大小合理選擇在圖像DCT域的部分低頻系數(shù)和中頻系數(shù)中嵌入水印信息。為了與國(guó)際JPEG壓縮標(biāo)準(zhǔn)一致,先將載體圖像分成8×8的互不重疊小塊,并分別對(duì)每一塊進(jìn)行DCT變換,再按圖4序號(hào)所示順序依次讀取低頻、中頻系數(shù)構(gòu)成與水印圖像同樣大小的系數(shù)矩陣,并在該系數(shù)矩陣的奇異值分解 (SVD)域中嵌入水印信息。此處應(yīng)用SVD的主要原因有:1)圖像奇異值的穩(wěn)定性好,當(dāng)圖像受到輕微擾動(dòng)時(shí),它的奇異值不會(huì)發(fā)生劇烈的改變;2)奇異值所表現(xiàn)的是圖像的內(nèi)蘊(yùn)特性而非視覺特性[6-7]。因此在圖像的奇異值中嵌入水印對(duì)幾何攻擊將具有很好的穩(wěn)健性。
設(shè)原始載體圖像為I,水印圖像為W。本文的水印嵌入算法結(jié)構(gòu)框圖如圖5所示。
水印的提取算法是水印嵌入算法的逆過程,水印的提取過程中需要水印嵌入過程中的矩陣U1,V1,S和水印信息解密密鑰的參與,限于篇幅,此處不再贅述。
在Matlab R2009b環(huán)境下筆者對(duì)所提水印算法進(jìn)行了大量的仿真實(shí)驗(yàn)。實(shí)驗(yàn)中選用的原始載體圖像為512×512×8 bit標(biāo)準(zhǔn)灰度Lena圖像 (見圖6),數(shù)字水印采用200×200×8 bit的二值圖像(見圖7),嵌入強(qiáng)度因子取a=0.2。圖8、圖9表示在無任何攻擊時(shí)本文算法所得的含水印的Lena圖像及提取的水印??梢姡跓o任何攻擊的情況下,本文算法能有效地完成水印信息的嵌入和提取。
為了對(duì)該算法進(jìn)行客觀的評(píng)價(jià),本文對(duì)含水印Lena圖像進(jìn)行常見攻擊后再?gòu)氖芄魣D像中提取水印信息,除通過視覺判定外,還采用峰值信噪比(Peak Signal Noise Ratio,PSNR)作為嵌入水印對(duì)原始載體圖像引起失真程度的度量指標(biāo),采用歸一化相關(guān)系數(shù)(Normalized Correlation,NC)作為提取水印與原始水印相似度的評(píng)價(jià)指標(biāo)。PSNR值越大,表明對(duì)原始載體圖像的破壞越小,即嵌入水印的不可見性越好;NC值越大,表明兩者的相似度越大,即水印提取效果越好。峰值信噪比定義為
歸一化相關(guān)系數(shù)定義式為
式中:W(i,j)為原始水印像素值;W′(i,j)為提取的水印像素值;M和N分別為水印的寬度和高度。
含水印圖像經(jīng)歷常見攻擊如JPEG壓縮、濾波、噪聲和幾何攻擊后的PSNR值與提取水印NC值如表1~3所示。
表1 含水印圖像經(jīng)歷JPEG壓縮后PSNR值和NC值
表2 含水印圖像經(jīng)歷噪聲、濾波后PSNR值和NC值
表3 含水印圖像經(jīng)歷旋轉(zhuǎn)、剪切后PSNR值和NC值
表1~3實(shí)驗(yàn)數(shù)據(jù)及圖10的水印提取結(jié)果表明:1)本文算法具有良好的不可見性;2)該算法具有很強(qiáng)的抗低通濾波、噪聲干擾的能力,同時(shí)對(duì)JPEG壓縮、旋轉(zhuǎn)和剪切等攻擊表現(xiàn)出較強(qiáng)的穩(wěn)健性;3)本文算法所提取的水印在對(duì)角線上沒有失真現(xiàn)象。
提出了一種基于摩爾型CA置亂的DCT域數(shù)字圖像水印算法,利用摩爾型CA的混沌特性對(duì)原始水印進(jìn)行置亂加密,不僅降低了水印圖像像素的相關(guān)性,提高水印的安全性,而且消除了基于SVD數(shù)字水印算法提取水印在對(duì)角線上的失真問題。另外,算法能綜合圖像DCT變換低頻系數(shù)和中頻系數(shù)的特點(diǎn),自行根據(jù)嵌入水印信息量的大小合理確定在圖像DCT域的部分低頻系數(shù)和中頻系數(shù),并按預(yù)定順序選取相應(yīng)頻率系數(shù)構(gòu)造奇異矩陣,最后在該系數(shù)矩陣的SVD域中嵌入水印。仿真實(shí)驗(yàn)及攻擊測(cè)試結(jié)果表明,該算法在水印的不可見性和穩(wěn)健性之間取得了較好的平衡,在版權(quán)保護(hù)領(lǐng)域具有一定的應(yīng)用價(jià)值。
[1]李輝亮,葉瑞松.基于二維元胞自動(dòng)機(jī)的圖像置亂和水印技術(shù)[J].中國(guó)圖象圖形學(xué)報(bào),2008,13(11):2076-2080.
[2]BARNI M,BARTOLINI F,CAPPELLINI V,et al.A DCT-domain system for robust image watermarking[J].Signal Processing,1998,66(3):357-372.
[3]周成虎,孫戰(zhàn)利,謝一春.地理元胞自動(dòng)機(jī)研究[M].北京:科學(xué)出版社,2001.
[4]蘇磊,周金旺,譚惠麗,等.考慮駕駛員特性的混合交通流演化網(wǎng)絡(luò)特性研究[J].廣西師范大學(xué)學(xué)報(bào)∶自然科學(xué)版,2009,27(1):5-8.
[5]龍貴忠,孔令江,劉慕仁,等.NaSch模型的細(xì)化研究[J].廣西師范大學(xué)學(xué)報(bào)∶自然科學(xué)版,2008,26(3):5-8.
[6]劉瑞禎,譚鐵牛.基于奇異值分解的數(shù)字圖像水印方法[J].電子學(xué)報(bào),2001,29(2):168-171.
[7]INGEMAR J, KILIAN J, LEIGHTON T, et al.Secure spread spectrum watermarking for multimedia[J].IEEE Trans.Image Processing,1997,6(12):1673-1687.