張釘銘,雷仲魁
(南京航空航天大學(xué) 電子信息工程學(xué)院,江蘇 南京 210016)
隨著計算機(jī)網(wǎng)絡(luò)和通信技術(shù)的飛速發(fā)展,數(shù)字媒體(包括數(shù)字圖像、數(shù)字視頻、數(shù)字音頻)已得到了廣泛的應(yīng)用,隨之而來的數(shù)字媒體的信息安全、知識產(chǎn)權(quán)保護(hù)和認(rèn)證等問題也變得日益突出。傳統(tǒng)的加密系統(tǒng)在數(shù)據(jù)傳輸過程中可以起到保護(hù)作用,但數(shù)據(jù)一旦被接收并解密,其保護(hù)作用也隨之消失,數(shù)字水印作為傳統(tǒng)加密方法的有效補(bǔ)充手段,是一種可以在開放的網(wǎng)絡(luò)環(huán)境下保護(hù)版權(quán)和認(rèn)證來源及完整性的技術(shù),近年來已引起了人們的高度重視[1]。
數(shù)字水印算法按照水印的嵌入位置可以分為空間域和變換域兩類。變換域方法是通過改變變換域系數(shù)嵌入水印,包括離散傅里葉變換,離散余弦變換,離散小波變換等??臻g域水印算法具有復(fù)雜度低、實時性好等特色,但是魯棒性較差,主要用于設(shè)計脆弱水印和半脆弱水?。蛔儞Q域水印算法的魯棒性較強(qiáng)且容量較大,主要用于設(shè)計魯棒水印。由于數(shù)字水印的嵌入和提取算法對水印信息的影響非常大,一旦嵌入和提取算法被破解,攻擊者很容易實現(xiàn)對水印信息破壞、篡改、移除或者利用偽造水印進(jìn)行盜版[2]。另外,有意義水印的相關(guān)性很高,不適合直接嵌入,且隱蔽性較差。因而在水印信息嵌入前的置亂,不但可以提高水印信息的安全性,同時可以去除水印信息的相關(guān)性,增強(qiáng)水印的魯棒性[3]?;谏鲜隹紤],提出了一種基于Logistic映射和Arnold變換的DCT域數(shù)字水印算法,通過Arnold變換對水印信息進(jìn)行置亂處理,同時利用Logistic映射選擇水印的嵌入位置,并利用了變換域方法的魯棒性。通過實驗證明,該算法不僅具有較好的隱蔽性,同時也具有較強(qiáng)的魯棒性。
混沌現(xiàn)象是在非線性動態(tài)系統(tǒng)中出現(xiàn)的確定性、類隨機(jī)的過程,這種過程非周期、不收斂但有界,并且對初始值有及其敏感的依賴性。利用這一性質(zhì),混沌映射可提供數(shù)量眾多、非相關(guān)、類隨機(jī)而又確定,易于產(chǎn)生和再生的信號。
Logistic映射是一類簡單卻被廣泛研究的混沌動力系統(tǒng)。用非線性差分方程描述:
其中 0≤u≤4 為分支系數(shù),x(n)∈(0,1)。 當(dāng) 3.569 945 6 <u≤4時,Logistic映射工作于混沌狀態(tài)[4]。理論上已經(jīng)證明了由兩個不同初值 x0和y0生成的兩個混沌序列 x0,x1,...,xn和y0,y1,...yn的互相關(guān)為零,這體現(xiàn)了Logistic混沌映射對初值的極度敏感性。
Arnold變換(Cat mapping)是在遍歷理論研究中提出的一種變換。對于數(shù)字圖像來說,可以將其看成是一個函數(shù)在離散網(wǎng)格點處的采樣值,這樣可以得到一個表示圖像的矩陣。矩陣中對應(yīng)點處得灰度值或RGB顏色分量值。令數(shù)字圖像的像素坐標(biāo) x,y∈{0,1,2,...,N-1},于是 Arnold 變換為[5]:
N代表數(shù)字圖像的寬度和高度。經(jīng)過Arnold變換后的圖像會變得混亂不堪,然而繼續(xù)使用Arnold變換,將會出現(xiàn)一幅與原圖相同的圖像,即Arnold變換具有周期性。這樣利用Arnold變換實現(xiàn)了信息的初步隱藏,從而增強(qiáng)了系統(tǒng)的安全性和保密性,同時該算法實現(xiàn)了隨機(jī)置亂的不可恢復(fù)性[6]。
這里的水印圖像使用64×64的二值圖像,如圖1所示。利用Arnold變換對圖像進(jìn)行置亂,使用置亂的次數(shù)N(14)除以100作為生成混沌序列的種子。置亂后的圖像如圖2所示,同時,進(jìn)一步實驗證明,對于64×64的二值圖像,經(jīng)過48次Arnold變換后恢復(fù)原圖像。該置亂圖像經(jīng)過34次變換后恢復(fù)原圖。
圖1 水印圖像Fig.1 Watermark image
圖2 置亂后的圖像Fig.2 Scrambling image
水印嵌入的基本思想是通過調(diào)整圖像塊消息中兩對4個DCT系數(shù)的相對大小來對水印信息進(jìn)行編碼。用(u1,v1),(u2,v2),(u3,v3)(u4,v4)來表示這兩對系數(shù)的索引,算法描述如下:首先利用一個閾值將生成的混沌序列變?yōu)槎敌蛄?,對于每一個DCT系數(shù)塊,如果生成的混沌序列值為1時,若嵌入二值圖像為 1,則(u1,v1)>(u2,v2);否則,(u1,v1)<(u2,v2);如果生成的混沌序列值為0時,若嵌入二值圖像為1,則(u3,v3)>(u4,v4);否則,(u3,v3)<(u4,v4)。
為與JPEG壓縮方案一致,選擇8×8的圖像塊。對于塊中4個系數(shù)的選擇,應(yīng)該選擇使得相應(yīng)的系數(shù)在圖像經(jīng)過處理后保持不變。同時由于人眼對低頻區(qū)比較敏感,對高頻區(qū)雖然不敏感,將水印信息嵌入到圖像的高頻分量中,能保證水印的不可見性,但各種圖像處理操作對圖像高頻部分的損壞比較大,魯棒性較差。綜合以上因素。把水印嵌入到圖像DCT域的中頻分量中,以期能平衡水印的不可見性和魯棒性。 綜合上述考慮,選擇(5,2),(4,3)和(2,3),(4,1)這兩對系數(shù)。
Step1.對水印圖像W進(jìn)行N次Arnold變換,得到嵌入水印圖像W′;
Step2.對載體圖像進(jìn)行8×8的分塊,對每一個分塊進(jìn)行二維DCT變換;
Step3.利用N/100做為初值,用Logistic映射生成一維的混沌序列 xi,i=1,2,3...M;
Step4.選取一個合適的值作為分界,使得所得到的混沌序列變?yōu)橐粋€二值序列。
Step5.對于第 i個8×8的 DCT系數(shù)塊,如果 xi=1,若對應(yīng)的二值圖像值為 1,則使得塊中的(5,2)>(4,3),否則(5,2)<(4,3); 如果 xi=0; 若對應(yīng)的二值圖像為 1, 則使得 (2,3)>(4,1),否則使得(2,3)<(4,1);
Step(6).對嵌入水印的每一個DCT塊做二維DCT反變換得到嵌入水印后的圖像。
Step1.對帶有水印的圖像進(jìn)行8×8分塊,對每一個分塊進(jìn)行二維DCT反變換
Step2.利用N作為初值,用Logistic映射生成一維的混沌序列 xi,i=1,2,3...M;
Step3.利用N/100做為初值,用Logistic映射生成一維的混沌序列 xi,i=1,2,3...M;
Step4.如果 xi=1,若(5,2)>(4,3),則相應(yīng)的水印值為1,否則為 0;如果 xi=0,若(2,3)>(4,1),則相應(yīng)的水印值為1,否則為 0;
Setp5.對提取出的圖像進(jìn)行48-N次arnold變換,最終得到水印圖像。
使用512×512的lena圖像作為載體進(jìn)行水印信息的嵌入。原始圖像、嵌入水印后的圖3所示。對嵌入水印后的圖像進(jìn)行剪裁、中值濾波、加高斯白噪聲、以及JPEG壓縮后等常規(guī)的水印攻擊后,提取出來得水印的水印結(jié)果如圖4所示,其中中值濾波采用3×3的中值濾波器,高斯噪聲均值為0,方差為0.01.由實驗可見,提取出來的二值水印圖像仍然清晰可見。
圖3 無水印攻擊情況下的實驗結(jié)果Fig.3 Experimental result while there is no watermark attack
水印算法的評價包括隱蔽性和魯棒性評價兩部分。通常采用峰值信噪PSNT比客觀地評價隱蔽性,一般認(rèn)為PSNT值越大,水印保真度越高。魯棒性評價一般由原始水印與提取水印間的差異(相似度)來衡量。采用歸一化相似度NC作為評價參數(shù),NC的值在0,1之間,值越大,原始水印與提取出來的水印相似性就越好。實驗結(jié)果如表1所示。
圖4 水印攻擊情況下的實驗結(jié)果Fig.4 Experimental result while there is watermark attack
表1 抗攻擊結(jié)果Tab.1 Result against attack
提出了一種基于Logistic映射和Arnold變換的圖像盲水印算法,實現(xiàn)了對二值水印圖像的嵌入。該算法利用混沌序列非周期、類隨機(jī)的特性,提高了水印嵌入算法的魯棒性。同時利用Arnold變換對水印信息進(jìn)行置亂,提高了算法的安全性。通過實驗仿真驗證了該算法的有隱蔽性,同時通過大量的水印攻擊實驗可以表明,該算法同時具有很好的魯棒性。且由于水印的盲提取,具有很好的應(yīng)用價值。
[1]李趙紅,侯建軍 基于Logistic混沌映射的DCT域脆弱數(shù)字水印算法[J].電子學(xué)報 2006,34(12):2134-2137.
LI Zhao-hong, HOU Jian-jun. DCT-Domain fragile watermarking algorithm based on logistic maps[J].Acta Electronica Sinica,2006,34(12):2137-2137.
[2]張有礦,楊峰.一種基于混沌映射與SVD的數(shù)字水印算法[J].信息技術(shù)與信息化,2010(6):46-48.
ZHANG You-kuang,YANG Feng.A digital watermarking algorithm based on chaos and SVD[J].Information Technology&Information 2010(6):46-48.
[3]劉方.變換域加密圖像數(shù)字水印算法研究[D].濟(jì)南:山東師范大學(xué),2009:1-65.
[4]許憲東,季振洲.DCT水印中拉伸系數(shù)與嵌入位置的選擇[J].計算機(jī)應(yīng)用于軟件,2006,23(9):124-127.
XU Xian-dong,JI Zhen-zhou. The choice of scaling parameterαand embedding position in DCT watermark[J].Computer Application and software,2006,23(9):124-127.
[5]倪蓉蓉,阮秋琦.利用Arnold對稱性變換的圖像信息隱藏算法[J].北方交通大學(xué)學(xué)報,2002,26(2):25-28.
NI Rong-rong,RUAN Qiu-qi.A digital imagehiding algorithm using Arnold transform [J].Journal of Northern Jiaotong University,2002,26(2):25-28.
[6]丁瑋,閆偉齊,齊東旭.基于Arnold變換的數(shù)字圖像置亂技術(shù) [J].計算機(jī)輔助設(shè)計與圖形學(xué)學(xué)報,2001,13(4):338-341.
DING Wei, YAN Wei-qi, QI Dong-xu.Digital image scrambling technology based on Arnold transformation[J].Journal ofComputer-Aided Design&ComputerGraphics,2001,13(4):338-341.