張君捧,呂紅麗,張明玉,耿淑娟
(1.山東建筑大學(xué)信息與電氣工程學(xué)院,山東 濟(jì)南 250101;2.山東建筑大學(xué)山東省智能建筑技術(shù)重點(diǎn)實(shí)驗(yàn)室,山東 濟(jì)南 250101)
隨著信息技術(shù)的迅速發(fā)展,數(shù)字產(chǎn)品的版權(quán)問(wèn)題面臨著嚴(yán)峻的挑戰(zhàn),數(shù)字水印技術(shù),成為版權(quán)保護(hù)的有效工具[1-2]??截惞魧儆诜鞘跈?quán)嵌入攻擊,對(duì)手從合法含有水印的圖像中提取出水印并將其復(fù)制到一件不含水印的目標(biāo)圖像中[3-4]。這種攻擊能夠?qū)崿F(xiàn),原因在于,嵌入圖像的消息確實(shí)是真實(shí)的,但其隱藏圖像卻不對(duì)。為抵抗這種攻擊,收方必須能夠?qū)φ麄€(gè)水印消息進(jìn)行驗(yàn)證,包括其同含水印圖像間的關(guān)聯(lián)性。
目前,研究抗拷貝攻擊水印的文獻(xiàn)較少,以往的抗拷貝攻擊主要思路是用數(shù)字簽名的方法[5-7],但由于所采取的哈希函數(shù)自身的唯一性,會(huì)導(dǎo)致待嵌入水印的文件哪怕發(fā)生一個(gè)微小的變化,簽名結(jié)果就會(huì)失效,這就要求含水印圖像不能經(jīng)受任何一點(diǎn)攻擊。而通常只要在視覺容許的范圍內(nèi),對(duì)于一定程度的JPEG壓縮和噪聲是可以存在的。這就需要水印對(duì)拷貝攻擊本身較敏感,同時(shí),還可以容許一定范圍的修改,而這往往又是簽名方法難以實(shí)現(xiàn)的。此外,文獻(xiàn)[8-9]提出用獨(dú)立分量分析(ICA)的方法產(chǎn)生圖像簽名,與水印一同嵌入到灰度圖像中,并采用ICA技術(shù)進(jìn)行檢測(cè),取得了較好的效果。但上述文獻(xiàn)僅僅適用于灰度圖像。
本文針對(duì)彩色圖像,提出一種基于圖像特征的水印嵌入方法,可以通過(guò)水印嵌入后圖像特征的變化來(lái)確定是否存在拷貝攻擊。實(shí)驗(yàn)表明,該方法能夠有效地抵抗拷貝攻擊。
把能夠惟一表征原始圖像的特征信息作為水印嵌入到原始圖像中,通過(guò)水印嵌入前后特征信息的變化可以有效檢測(cè)出拷貝攻擊。圖像特征信息的選擇應(yīng)該考慮兩個(gè)方面:1)唯一性:即不同的圖像其特征應(yīng)該是不同的。2)容錯(cuò)能力:即要考慮水印嵌入對(duì)圖像特的影響,保證水印嵌入前后的特征是不變的。
通常獲取圖像特征的方法,是直接從圖像中選擇一些重要的區(qū)域作為圖像特征,例如圖像的邊緣和紋理等,從邊緣信息或紋理中找出相對(duì)穩(wěn)定的特征點(diǎn)[10]。Barr John等人曾指出,圖像DCT的低頻系數(shù)經(jīng)過(guò)二值化處理后可以惟一表征該圖像[11]。本算法中采取了這一方法來(lái)提取圖像特征信息,能夠滿足圖像特征的唯一性,同時(shí),鑒于容錯(cuò)性的考慮,算法中首先對(duì)圖像進(jìn)行YUV分解,從色度信號(hào)提取特征分量,嵌入到亮度分量中,由于亮度信號(hào)Y和色度信號(hào)U、V是相互分離的,使得嵌入水印后提取的特征所受到的嵌入影響盡可能小。
圖像特征信息提取算法大致描述如下:
(1)將載體圖像尺寸縮放為原圖像大小的1/4,并從RGB色彩模式轉(zhuǎn)換為YUV色彩模式,提取U分量。在這里首先對(duì)載體進(jìn)行尺寸縮放,主要考慮后續(xù)生成的圖像特征矩陣不應(yīng)該太大,否則嵌入到載體圖像中必定會(huì)影響其不可見性。
(2)對(duì)U分量進(jìn)行分塊DCT變換,分塊大小為8×8。
(3)對(duì)每一分塊DCT變換的系數(shù)進(jìn)行Zig-zag重新排序,取前四位低頻分量,然后把各塊所得系數(shù)合并為矩陣A。
(4)對(duì)矩陣A進(jìn)行二值化處理得到矩陣B,矩陣B即為提取的圖像特征信息。二值化的處理方法很多,大體分為兩類:全局閾值算法(如otsu算法)和局部閾值算法(如niblack)。在這里選取了niblack方法,經(jīng)實(shí)驗(yàn)驗(yàn)證,該方法具有速度快、效果好的優(yōu)點(diǎn)。
為了增加安全性,需要對(duì)提取的二值特征矩陣B進(jìn)行加密處理。Logistic映射是一類非常簡(jiǎn)單卻被廣泛研究的混沌動(dòng)力系統(tǒng)[12],可用非線性差分方程來(lái)描述:
Logistic映射的混沌區(qū)域?yàn)?.569945672…<μ≤4,該映射對(duì)初值具有極度敏感性。當(dāng)μ=4時(shí),Logistic混沌序列的均值為0.5,相當(dāng)于隨機(jī)序列,可通過(guò)簡(jiǎn)單的四舍五入即可把實(shí)值混沌序列轉(zhuǎn)換為二進(jìn)制“0”和“1”序列S,然后與特征矩陣B按位進(jìn)行異或操作可實(shí)現(xiàn)對(duì)特征矩陣B的混沌加密,加密的結(jié)果C即作為水印嵌入到載體圖像中。由于混沌序列對(duì)初值具有強(qiáng)烈的敏感性,在不知道初值的情況下,盜版者即使提取了特征信息也無(wú)法生成嵌入的水印,即使能夠提取水印也無(wú)法獲取原圖像的特征信息。因此通過(guò)混沌加密會(huì)進(jìn)一步提高安全性。
載體圖像的特征分量由其U分量的低頻部分構(gòu)成,考慮到嵌入算法對(duì)圖像特征的影響應(yīng)盡可能的小,因此在水印嵌入時(shí),考慮嵌入在Y分量中。同時(shí),由于小波變換良好的空間—頻率局部特性和與人眼視覺相符的變換機(jī)制,水印嵌入算法選擇在小波域的中頻,以保證水印的不可見性及魯棒性,并且,對(duì)水印嵌入的強(qiáng)度可進(jìn)行自適應(yīng)調(diào)整。
假設(shè)X是原始宿主圖像,大小為N×N,W為待嵌入的水印,大小為M×M,假設(shè)N=2t×M,其中,t為整數(shù),通常t≥4,則水印嵌入算法可大致描述如下:
(1)把原始彩色圖像從RGB空間轉(zhuǎn)換到Y(jié)UV空間,提取Y分量,對(duì)Y按照8×8的大小進(jìn)行分塊,對(duì)每一塊進(jìn)行一級(jí)DWT變換,小波函數(shù)采取Haar小波,得到四個(gè)系數(shù)矩陣A、H、V、D分別表示小波變換后的低頻、水平、垂直和對(duì)角線的小波系數(shù)。本文在每一個(gè)8×8分塊的一級(jí)小波分解的水平系數(shù)H中嵌入水印。
(3)在H矩陣的副對(duì)角線上選擇一嵌入位置,假設(shè)選中的系數(shù)為x(i,j),按如下方式嵌入水印:
①當(dāng)嵌入的水印比特為0時(shí),比較x(i,j)與均值 E,若 x(i,j)≥E,則不作修改;若 x(i,j)<E,則調(diào)整 x(i,j),調(diào)整的方法是 x(i,j)=x(i,j)+P,再比較 x(i,j)與均值 E,若 x(i,j)≥E,結(jié)束,否則繼續(xù)調(diào)整過(guò)程,直到滿足 x(i,j)≥E。
②當(dāng)嵌入的水印比特為1時(shí),比較x(i,j)與均值 E,若 x(i,j)≤E,則不作修改,否則調(diào)整 x(i,j)使x(i,j)=x(i,j)- P,再比較 x(i,j)與均值 E,若 x(i,j)≤E,結(jié)束,否則繼續(xù)調(diào)整過(guò)程,直到滿足x(i,j)≤E。
(4)重復(fù)(2)、(3)直到所有的水印比特都被嵌入到8×8的分塊中。
(5)進(jìn)行小波逆變換得到嵌入水印后的Y分量,然后從YUV色彩模式變換回RGB模式,即完成了水印的嵌入過(guò)程。
水印的提取是水印嵌入的逆過(guò)程,該算法在提取水印時(shí)不需要原始圖像,因此可實(shí)現(xiàn)水印的盲提取。
(1)把嵌入水印的彩色圖像從RGB空間轉(zhuǎn)換到Y(jié)UV空間,從中提取Y分量,對(duì)Y按照8×8的大小進(jìn)行分塊,對(duì)每一塊進(jìn)行一級(jí)Haar小波分解。
(3)若水印嵌入位置的小波系數(shù)為x'(i,j),則比較 x'(i,j)與均值 E,若 x'(i,j)≥E,則水印比特為0,否則為 1。
(4)重復(fù)以上(2)、(3)直到所有8×8塊中的水印比特都提取出來(lái),構(gòu)成水印向量。
(5)如上提取出來(lái)的水印為混沌加密后的信息,采用相同的混沌序列對(duì)提取的水印按位進(jìn)行異或操作,可實(shí)現(xiàn)混沌解密,即獲得嵌入的原始圖像特征信息。
(6)采用歸一化相關(guān)系數(shù)(NC)檢測(cè)提取水印與原始水印間的相似性。
式中:NL為水印總長(zhǎng)度,⊕表示異或,w和w'分別為原始水印和提取的水印,0≤NC≤1,NC值越大,表明兩者之間的相似度越大,NC=1時(shí),表明兩者完全相同,NC值大于給定的閾值,即可確定水印的存在,本試驗(yàn)中,選取閾值為0.7。
根據(jù)上述算法,在MATLAB平臺(tái)上搭建一個(gè)數(shù)字水印系統(tǒng)進(jìn)行仿真。試驗(yàn)中的載體圖像是尺寸為1024×1024的彩色圖片,圖1為實(shí)驗(yàn)結(jié)果。
圖1 實(shí)驗(yàn)對(duì)比結(jié)果
圖1a、d分別是原始圖像和嵌入水印后的圖像,從人眼視覺上來(lái)看感覺不到二者的差異,而計(jì)算含水印圖像的峰值信噪比為PSNR=39.860dB,通常只要PSNR>30dB,人的視覺就很難感到圖像質(zhì)量的變化??梢娫撍惴ň哂休^好的不可見性。圖1c、e分別是嵌入的水印和提取的水印,經(jīng)計(jì)算,兩者的相似度NC=1,說(shuō)明二者完全相同。圖1b是提取的原圖像的特征信息,圖1f為解密后的特征信息,兩者相似度NC=1,可見,該算法可以很好的實(shí)現(xiàn)水印的嵌入與提取。
(1)常規(guī)圖像處理攻擊測(cè)試
為了檢驗(yàn)水印嵌入算法的抗干擾性能,參考常用的攻擊形式,對(duì)水印圖像進(jìn)行了各種攻擊,包括噪聲、濾波、剪切、旋轉(zhuǎn),JPEG壓縮,如圖2所示。同時(shí)采用歸一化相關(guān)系數(shù)NC來(lái)衡量水印的相似度。為方便討論,這里暫不考慮混沌加密,即把特征信息作為水印嵌入圖像。表1給出了在不同攻擊下提取的水印NC值。其中,NC1為提取的水印與原始水印之間的相似度,NC2為提取的水印與重新計(jì)算的含水印圖像的特征信息(w″)之間的相似度。
圖2 攻擊后的含水印圖像
表1 不同攻擊下提取的水印圖像的NC值
由表1可見,該算法對(duì)于疊加高斯噪聲,高斯濾波,剪切、JPEG壓縮均有較好的魯棒性,而且在這些攻擊下,所提取出來(lái)水印相似度NC1均高于文獻(xiàn)[9],表明該水印嵌入算法具有良好的抵抗常規(guī)攻擊的能力。要注意的是,不同攻擊下的NC2值都要小于NC1值,其主要原因是,盡管該算法已經(jīng)盡量避免了水印的嵌入對(duì)圖像特征的影響,但是,各種攻擊對(duì)含水印圖像提取特征信息還是會(huì)有一定的影響,盡管如此,表中NC2值也足以表明該算法良好的抵抗攻擊的能力。另外,算法在幾何旋轉(zhuǎn)方面的性能并不是很好,同時(shí),當(dāng)旋轉(zhuǎn)角度增加時(shí),提取的水印與原水印的相似度會(huì)進(jìn)一步降低,但在旋轉(zhuǎn)角度小于10°時(shí),其NC1和NC2值都是可取的,而文獻(xiàn)[9]中并沒有對(duì)旋轉(zhuǎn)情況下的相似度進(jìn)行分析。
(2)拷貝攻擊測(cè)試
拷貝攻擊是指將合法水印嵌入到非法的載體圖像中。在本實(shí)驗(yàn)中,假定攻擊者可以通過(guò)含水印的圖像與原始圖像進(jìn)行某種操作(如差值法)獲取到合法的水印。試驗(yàn)中,首先獲取Lena彩色圖像的特征信息作為合法水印,并且將該水印嵌入到了非法的圖像中,并選取以下八副圖像做為非法圖像實(shí)施拷貝攻擊,如圖3所示,然后分別從這8幅非法圖像中提取特征信息和水印。表2給出了從這些非法圖像中提取水印的NC值。
表2 從非法圖像中提取的水印圖像的NC值
圖3 非法圖像
從表2可見,把合法的水印嵌入到非法的圖像中,并通過(guò)合法的方法提取出水印,經(jīng)測(cè)試,提取的水印與原始水印之間相似度NC1值均為1,若由此確定水印圖像是安全的,則不能檢測(cè)出拷貝攻擊。表2中給出的NC2值,為提取的水印與含水印圖像特征信息之間的相似度,因?yàn)檩d體圖像已經(jīng)被更換,導(dǎo)致含水印圖像的特征信息發(fā)生了很大變化,通過(guò)實(shí)驗(yàn)計(jì)算兩者的相似度均在0.5左右,遠(yuǎn)小于閾值0.7,因此,雖然通過(guò)NC1值不能夠檢測(cè)出拷貝攻擊,但可以通過(guò)NC2值判定所提取的水印并非屬于該載體圖像,即檢測(cè)出發(fā)生了拷貝攻擊。
實(shí)驗(yàn)表明該方案具有抵抗常規(guī)攻擊的能力,通過(guò)對(duì)兩個(gè)相關(guān)系數(shù)的檢測(cè),也能較為有效地抵抗拷貝攻擊。相對(duì)于文獻(xiàn)[9]采用漢明距離來(lái)檢測(cè)拷貝攻擊的方法,本方法顯然更簡(jiǎn)單有效。
本文提出的基于圖像特征的水印方法,通過(guò)在MATLAB平臺(tái)上進(jìn)行仿真,實(shí)驗(yàn)結(jié)果表明,該算法對(duì)噪聲攻擊、JPEG壓縮、濾波和剪切等常規(guī)圖像處理攻擊具有較好的魯棒性,同時(shí)能夠有效地抵抗拷貝攻擊。該水印算法有如下優(yōu)點(diǎn):(1)適用于彩色圖像,特征信息由載體圖像色度信號(hào)的DCT低頻系數(shù)的二值化獲得,該特征信息能夠唯一的表征圖像。(2)特征信息進(jìn)行混沌加密,進(jìn)一步增加其安全性。(3)在圖像亮度分量Y的DWT中頻系數(shù)進(jìn)行水印嵌入,以此減小嵌入過(guò)程對(duì)特征信息的影響,并且嵌入?yún)?shù)可調(diào)。(4)提取水印不需要原始圖像,可實(shí)現(xiàn)盲提取。此外,如何增強(qiáng)水印抵抗幾何旋轉(zhuǎn)等攻擊的能力,將是以后進(jìn)一步探索的方向。
[1]孫圣和,陸哲明.數(shù)字水印處理技術(shù)[J].電子學(xué)報(bào),2000,28(8):85-90.
[2]林曉丹.用于版權(quán)和內(nèi)容認(rèn)證的音頻水印[J].計(jì)算機(jī)應(yīng)用,2010,30(8):2269 -2271.
[3]DING Y Y,ZHENG X S,ZHAO Y L.A video watermarking algorithm resistant to copy attack[C]//.ISECS,Guangzhou:IEEE,2010,70:289 -292.
[4]KUTTER M,VOLOSHYNOSKIY S,HERRIGEL A.The watermark copy attack[C]//.Proc of the SPIE,Security and Watermarking of Multimedia ContentsⅡ,San Jose:CA,2000,3971:371 -380.
[5]易翔,王蔚然.彩色圖像多簽名水印算法的研究[J].電 子 科技 大 學(xué) 學(xué) 報(bào),2005,34(5):665-668.
[6]周永磊,王京春.結(jié)合數(shù)字水印和簽名的二值圖像內(nèi)容驗(yàn)證[J].計(jì)算機(jī)工程與應(yīng)用,2004,40(15):56 -58.
[7]孫圣和,陸哲明,牛夏牧.數(shù)字水印技術(shù)及應(yīng)用[M].北京:科學(xué)出版社,2004:378 -379.
[8]LIU J,HU H B,SUN J D.A copy attack resilient blind watermarking algorithm based on independent feature components[J].Lecture Notes in Computer Science,2005,3497:777 -782.
[9]HU H B,HUANG Y,LIU J.An ice-based watermarking scheme resistant to copy attack[C]//IEEE Int Workshop VLSl Design &Video Tech,2005:154 -157.
[10]王興元,石其江.基于圖像特征和超混沌迭代的圖像認(rèn)證算法[J].計(jì)算機(jī)研究與發(fā)展,2005,42(11):1896 -1902.
[11]BARR J,BRADLEY B,HANNIGAN B T.Using digital watermarks with image signatures to mitigate the threat of the copy attack[C]//Proc of ICASSP’03.Hong Kong:IEEE Press,2003:69 -72.
[12]李宗成,趙慶利.一類時(shí)滯差分方程中的混沌[J].山東建筑大學(xué)學(xué)報(bào),2009,24(3):224 -228.