馬 婷,黃劍華,趙 勇,周衛(wèi)紅
(1.云南民族大學(xué)數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院,云南昆明650031;2.廣西工學(xué)院信息與計(jì)算科學(xué)系,廣西柳州545006)
數(shù)字水印技術(shù)是將版權(quán)信息嵌入到原始數(shù)字媒體產(chǎn)品中,起到版權(quán)保護(hù)的作用.?dāng)?shù)字水印算法主要分為空間域算法和變換域算法兩大類(lèi),其中變換域算法比空間域算法具有更好的魯棒性,常見(jiàn)的變換域算法有DFT、DCT和DWT,DCT是JPEG壓縮標(biāo)準(zhǔn)的核心算法,DWT為JPEG2000壓縮標(biāo)準(zhǔn)的核心算法,然而這些算法都難以抵抗幾何攻擊.2002年,Do和Vetterli[1-2]提出的Contourlet變換不僅具有小波變換的多分辨率和時(shí)頻局部性還具有多方向性和各向異性,能很好地捕捉圖像的幾何特征,而小波變換只能捕捉水平、垂直和對(duì)角線方向的信息,但由于Contourlet變換的拉普拉斯塔式分解和方向?yàn)V波器組存在下采樣過(guò)程,使得Contourlet變換不具有平移不變性,而且采樣可引起低頻頻譜泄露,變換后使得低頻部分與高頻部分存在頻譜混淆的現(xiàn)象,也易丟失子帶的方向信息.2005年,Do和Cunha[3-4]提出的非采樣Contourlet變換不但具有Cont-ourlet變換的特性,彌補(bǔ)了Contourlet變換的不足,而且更能準(zhǔn)確地提取和表示圖像的幾何特性,計(jì)算也更加準(zhǔn)確,同時(shí)非采樣Contourlet變換又是高冗余度的Contourlet變換,所以基于非采樣Contourlet變換的水印算法嵌入的信息量更大.
文獻(xiàn)[5]對(duì)圖像進(jìn)行了Contourlet變換后,對(duì)低頻子帶進(jìn)行分塊奇異值分解,通過(guò)圖像的重要特征構(gòu)造水印信息,該算法選擇在變換后的低頻嵌入水印,低頻子帶能夠滿足人們視覺(jué)質(zhì)量的要求,所以在低頻子帶上嵌入水印本身可滿足水印的不可見(jiàn)性,若對(duì)圖像進(jìn)行信號(hào)處理后對(duì)低頻子帶的影響也較小,但該算法采用零水印算法,算法計(jì)算量較大,且對(duì)大的圖像可行性不大.文獻(xiàn)[6]同樣首先對(duì)圖像進(jìn)行Contourlet變換,選擇在中頻嵌入水印,該算法選擇中頻系數(shù)嵌入水印,雖然中頻部分含圖像的紋理等細(xì)節(jié)信息,但在中頻嵌入水印不能起到很好的不可見(jiàn)性,圖像信息丟失,所以中頻不宜嵌入水印,而且該算法對(duì)嵌入強(qiáng)度有一定的限制.
本文提出了一種非采樣Contourlet變換與SVD結(jié)合的數(shù)字水印算法,先對(duì)圖像進(jìn)行非采樣Contourlet變換,然后對(duì)變換后的低頻子帶進(jìn)行奇異值分解.因?yàn)榇蟛糠值哪芰考械降皖l子帶上,若對(duì)圖像進(jìn)行信號(hào)處理,對(duì)低頻子帶的影響較小,而且低頻子帶能夠滿足人們視覺(jué)質(zhì)量的要求,所以在低頻子帶上嵌入水印可滿足水印的不可見(jiàn)性.為了更安全起見(jiàn),將水印進(jìn)行置亂預(yù)處理后嵌入到奇異值中,利用奇異值的穩(wěn)定性,確保了算法的魯棒性,通過(guò)實(shí)驗(yàn)證明該算法不但對(duì)常見(jiàn)的攻擊有很好的魯棒性,同時(shí)提高了抗幾何攻擊能力.
非采樣Contourlet變換具有Contourlet變換沒(méi)有的平移不變性.同Contourlet變換相似,非采樣Contourlet變換先用非采樣塔式濾波器組(Nonsubsampled Pyramid Filter Bank)來(lái)進(jìn)行多尺度分解,將圖像分解為低頻和高頻,再用非采樣方向?yàn)V波器組(Nonsubsampled Directional Filter Bank)對(duì)高頻子帶進(jìn)行多方向分解,把同方向上的奇異值匯集為一個(gè)系數(shù),但非采樣塔式濾波器組與Contourlet變換中的拉普拉斯金字塔,非采樣方向?yàn)V波器組與Contourlet變換中的方向?yàn)V波器組均不同,它們都不存在下采樣的過(guò)程,滿足平移不變性.圖1為非采樣Contourlet變換和Contourlet變換分解框架示意圖.
在非采樣Contourlet變換中,可以將圖像分解為與原圖像相同大小的子帶圖像,而在Contourlet變換中則不同,子帶圖像大小與分解的層數(shù)和方向數(shù)有關(guān),且非采樣Contourlet變換避免了頻譜泄露和丟失方向子帶的位置信息.
SVD是線性代數(shù)的重要工具之一,表征的是圖像內(nèi)部的性質(zhì),矩陣奇異值的定義為:
設(shè) Am×n是 m × n 的矩陣,則存在酉矩陣 Um×n和 Vm×n,使得:
其中,D=diag(d1,d2,…,dr),且 d1≥d2≥…≥dr≥0,di(i=1,2,…,r)稱(chēng)為矩陣 A 的奇異值,r為 D 的秩.
奇異值分解(SVD)在數(shù)字信號(hào)處理等領(lǐng)域有廣泛的應(yīng)用前景,在數(shù)字水印算法中主要應(yīng)用是:
1)奇異值具有一定的穩(wěn)定性,即在奇異值上嵌入水印后若對(duì)其進(jìn)行微小的操作處理則不會(huì)有很大的改變[3].
2)奇異值具有幾何不變性[7],則幾何變形有:旋轉(zhuǎn)、轉(zhuǎn)置、鏡像等.
①旋轉(zhuǎn):圖像A與任意角度旋轉(zhuǎn)后的圖像Ar有相同的非零奇異值,即水印具有旋轉(zhuǎn)不變性.
②轉(zhuǎn)置:圖像A與它的轉(zhuǎn)置AT有相同的非零奇異值,即水印對(duì)轉(zhuǎn)置變形是穩(wěn)定的.
③鏡像:圖像A與它的行鏡像Arn和列鏡像Acn有相同的非零奇異值,即水印對(duì)鏡像變形是穩(wěn)定的.
本文將非采樣Contourlet變換和SVD相結(jié)合,根據(jù)非采樣Contourlet變換的特性和SVD在水印算法中應(yīng)用到的特性,設(shè)計(jì)了對(duì)非采樣Contourlet變換后的低頻子帶進(jìn)行奇異值分解,在奇異值上嵌入水印信息,由于奇異值具有一定的穩(wěn)定性,對(duì)水印來(lái)說(shuō),這保證了水印的魯棒性,又因?yàn)槠娈愔稻哂行D(zhuǎn)不變性、非采樣Contourlet變換不僅具有多分辨率和時(shí)頻性,而且具有多方向性、各向異性和平移不變性,因此本算法能較好地在保證不可見(jiàn)性和魯棒性前提下,提高水印的抗幾何攻擊性,同時(shí)也避免頻譜泄露、子帶的方向信息丟失等問(wèn)題.
在本文算法中,采用Arnold變換置亂預(yù)處理變換確保水印信息的安全,進(jìn)一步提高水印的不可見(jiàn)性和算法的魯棒性.Arnold變換置亂的目的是把遭到損壞的原先集中在一起的圖像像素分散開(kāi)來(lái),通過(guò)減小對(duì)人視覺(jué)的影響來(lái)提高數(shù)字水印的魯棒性.Arnold變換具有周期性,即若繼續(xù)對(duì)置亂后的圖像進(jìn)行迭代,將在后面的某一步將原始圖像恢復(fù).
1)讀取水印圖像,對(duì)水印圖像進(jìn)行k次Arnold變換,k為密鑰;
2)讀取原始圖像,對(duì)圖像進(jìn)行3層非采樣Contourlet變換,得到低頻子帶和一組高頻子帶;
3)對(duì)低頻子帶矩陣A進(jìn)行奇異值分解:A=USVT;
4)將置亂的水印信息W迭加到S上得到S':S'=S+aW;
5)將嵌入水印的奇異值矩陣S'進(jìn)行分解:S'=U1S1VT1,將S'恢復(fù)到子帶中替代原來(lái)的S,與對(duì)應(yīng)的酉矩陣重構(gòu)低頻子帶;
6)對(duì)低頻子帶與各帶通子帶進(jìn)行非采樣Contourlet變換反變換,得到嵌入水印后圖像.
1)對(duì)含水印的圖像進(jìn)行與上相同的3層非采樣Contourlet變換,提取低頻子帶;
4)提取奇異值與嵌入水印前的奇異值相減得到水印信號(hào):W'=(D'-S)/α;
5)對(duì)水印信號(hào)進(jìn)行T-k次Arnold變換,提取水印.
本文實(shí)驗(yàn)采用512×512像素的Lena灰度圖像作為原始圖像,64×64像素的“雨花校區(qū)”組成的二值圖像作為原水印圖像,在Matlab 7.0上進(jìn)行仿真實(shí)驗(yàn),使用相關(guān)系數(shù)NC來(lái)檢測(cè)原始水印圖像和恢復(fù)的水印圖像之間的相似程度,見(jiàn)公式(2),并將本文算法與基于DWT-SVD和Contourlet-SVD的同種嵌入規(guī)則的水印算法進(jìn)行比較分析.
本文對(duì)水印圖像進(jìn)行置亂預(yù)處理后嵌入到圖像中,使水印信息更安全,有更好的不可見(jiàn)性,如圖2(d)經(jīng)過(guò)5次Arnold置亂后的水印圖像.從圖2(b)可看出嵌入水印后的圖像失真很小,從視覺(jué)上看沒(méi)有任何變化,圖像在微小變化后質(zhì)量沒(méi)有受到影響,而且恢復(fù)的水印圖像與原始圖像從視覺(jué)上無(wú)任何差別,提取的水印圖像質(zhì)量也很好,如圖2(e),其中NC=1.本算法由于采用非采樣Contourlet變換,對(duì)嵌入強(qiáng)度幾乎沒(méi)有限制,在嵌入強(qiáng)度增加的情況下,仍能保證水印的不可見(jiàn)性,因此該算法很好地滿足了水印的不可見(jiàn)性和魯棒性.
為了更好地說(shuō)明本算法的魯棒性,本文對(duì)圖像進(jìn)行各種攻擊試驗(yàn),如圖3所示,嵌入水印后的圖像受到椒鹽噪聲、高斯噪聲、剪切、JPEG壓縮及旋轉(zhuǎn)和高斯濾波攻擊后的圖像.
表1給出了本文算法抵抗各種常規(guī)攻擊測(cè)試后的部分?jǐn)?shù)據(jù)結(jié)果,從數(shù)據(jù)結(jié)果可以看出本文算法對(duì)常規(guī)的攻擊具有很好的魯棒性,而且更能有效地抵抗幾何攻擊,如旋轉(zhuǎn)、剪切幾何攻擊等.
表1 本文算法魯棒性測(cè)試
表2給出了本文算法與在相同嵌入規(guī)則下基于DWT-SVD水印算法和基于Contourlet-SVD水印算法的攻擊測(cè)試比較表.
表2 本文算法與DWT-SVD和Contourlet-SVD算法攻擊測(cè)試比較表
從表1、2中的實(shí)驗(yàn)數(shù)據(jù)可看出對(duì)于常見(jiàn)的攻擊,本文算法提取出的水印與原始水印圖像相似程度最高.DWT-SVD算法受到JPEG壓縮80%、中值濾波、高斯濾波攻擊后提取出的水印質(zhì)量較好;Contourlet-SVD算法受到椒鹽噪聲、高斯噪聲和JPEG壓縮攻擊后提取出的水印質(zhì)量較好,對(duì)抗常見(jiàn)攻擊的魯棒性比基于DWT-SVD算法的有所提高;DWT-SVD算法、Contourlet-SVD算法受到旋轉(zhuǎn)幾何攻擊后提取出的水印質(zhì)量明顯下降,而非采樣Contourlet-SVD算法仍能提取出很好的水印,且對(duì)抗JPEG壓縮、中值濾波和高斯濾波攻擊的魯棒性也有所提高,由此可見(jiàn),本文提出的算法進(jìn)一步提高了對(duì)抗常見(jiàn)攻擊的魯棒性和抗旋轉(zhuǎn)幾何攻擊的能力.
本文算法的實(shí)驗(yàn)結(jié)果與文獻(xiàn)[5-6]相比,提高了對(duì)抗JPEG壓縮、中值濾波、高斯濾波和旋轉(zhuǎn)攻擊的能力,具有更好的魯棒性.
本文提出了一種基于非采樣Contourlet變換和SVD結(jié)合的數(shù)字水印算法,對(duì)圖像進(jìn)行非采樣Contourlet變換后,提取低頻子帶,對(duì)低頻子帶進(jìn)行奇異值分解,利用SVD的穩(wěn)定性在奇異值上嵌入水印,該算法的主要特點(diǎn)有:
1)由于非采樣Contourlet變換具有多分辨率、時(shí)頻局部性及多方向性、各向異性和平移不變性,能夠更準(zhǔn)確地提取和捕捉圖像幾何特性,避免Contourlet變換的頻譜泄露、子帶的方向信息丟失等問(wèn)題,又因?yàn)榉遣蓸覥ontourlet變換是高冗余度的Contourlet變換,所以基于非采樣Contourlet變換的水印算法嵌入的信息量更大、嵌入點(diǎn)的選擇范圍大且具有更好的魯棒性.
2)水印嵌入到非采樣Contourlet變換的低頻,嵌入強(qiáng)度可比其他算法的嵌入強(qiáng)度高,且仍不影響算法的不可見(jiàn)性.
通過(guò)實(shí)驗(yàn)結(jié)果表明,本文算法在滿足不可見(jiàn)性的同時(shí),對(duì)常見(jiàn)的攻擊有很好的魯棒性,且提高了對(duì)抗JPEG壓縮、中值濾波、高斯濾波和旋轉(zhuǎn)攻擊的能力.
[1] DO M N,VETTERLI M.Contourlet:a directional multiresolution image representation[C]//Conference Record of the Thirty-Sixth Asilomar Conference on Signals,Systems and Computers.Pacific Grove:IEEE,497 -501.
[2] DO M N,VETTERLI M.The contourlet transform:an efficient directional multiresolution image representation[J].IEEE Trans on Image Processing,2005,14(12):2 091 -2 106.
[3] ZHOU Jianping,CUNHA A L,DO M N.Nonsubsampled contourlet transform:construction and application in enhancement[C]//ICIP 2005.Genoa :IEEE International Conference on Image Processing,469 -472.
[4] CUNHA A L,ZHOU Jianping,DO M N.The nonsubsampled contourlet transform:theory,design,and applications[J].IEEE Trans Image Processing,2006,15(10):3 089 -3 101.
[5]曾凡娟,周安民.基于Contourlet變換和奇異值分解的圖像零水印算法[J].計(jì)算機(jī)應(yīng)用,2008,28(8):2 033-2 035.
[6]顧國(guó)生,何元烈.一種Contourlet域圖像魯棒水印算法[J].計(jì)算機(jī)工程與應(yīng)用,2010,46(14):179-211.
[7]葉建兵.一類(lèi)SVD水印算法的問(wèn)題分析及Contourlet域的水印嵌入與檢測(cè)算法[D].南京:南京理工大學(xué),2007.
[8]王建平,呂述望.應(yīng)用Contourlet的具有抗幾何攻擊能力的水印算法[J].傳感技術(shù)學(xué)報(bào),2009,22(6):883-886.
[9]朱香衛(wèi),肖亮,吳慧中.Contourlet與小波域魯棒性水印算法性能比較[J].計(jì)算機(jī)工程與應(yīng)用,2009,45(9):120-145.
[10]劉乃成,周楓.一種基于DWT和DCT的彩色圖像半脆弱水印算法[J].云南民族大學(xué)學(xué)報(bào):自然科學(xué)版,2009,18(4):368-371.
[11] XU C,PR J L.Snake,shapes,and gradient vector flow[J].IEEE Transaction on Image Proccssing,1998,7(3):359 -369.
[12]劉晶,劉剛,李?lèi)?ài)民,等.基于非采樣Contourlet特征的水印算法[J].計(jì)算機(jī)工程,2009,35(17):142-145.