王紅
[摘 要] 基于DCT域的彩色數(shù)字圖像水印算法,得到一個(gè)盲水印算法,本算法是半私有水印算法,對(duì)DCT變換系數(shù)矩陣中的中頻段,利用偽隨機(jī)序列間接的嵌入二值水印,再利用偽隨機(jī)序列的相關(guān)特性提取出來,實(shí)現(xiàn)了盲檢測(cè)的算法,它對(duì)水印進(jìn)行了置亂預(yù)處理,實(shí)驗(yàn)證明該算法在抗JPEG壓縮能力方面和在施加相同強(qiáng)度攻擊下的魯棒性方面比明文水印算法強(qiáng)些。
[關(guān) 鍵 詞] 離散余弦變換;盲水印算法;置亂
[中圖分類號(hào)] G718.3 [文獻(xiàn)標(biāo)志碼] A [文章編號(hào)] 2096-0603(2016)14-0076-02
數(shù)字水印是一種有效的數(shù)字產(chǎn)品版權(quán)保護(hù)和數(shù)據(jù)安全維護(hù)技術(shù),它將具有特定意義的標(biāo)記即水印,利用數(shù)字嵌入的方法隱藏在數(shù)字圖像、文檔、視頻等數(shù)字產(chǎn)品中,用以證明其版權(quán),并作為鑒定起訴非法侵權(quán)的證據(jù),從而成為知識(shí)產(chǎn)權(quán)保護(hù)和數(shù)字多媒體防偽的有效手段。
數(shù)字水印已經(jīng)成為知識(shí)產(chǎn)權(quán)保護(hù)和數(shù)字多媒體防偽的有效手段。這種技術(shù)一方面彌補(bǔ)了密碼技術(shù)的缺陷,因?yàn)樗梢詾榻饷芎蟮臄?shù)據(jù)提供進(jìn)一步的保護(hù);另一方面,也同時(shí)彌補(bǔ)了數(shù)字簽名技術(shù)的缺陷,因?yàn)樗梢栽谠紨?shù)據(jù)中一次性嵌入大量數(shù)據(jù),正由于數(shù)字水印技術(shù)在版權(quán)保護(hù)、數(shù)據(jù)鑒別、數(shù)據(jù)檢測(cè)、用戶跟蹤以及保密通訊等領(lǐng)域有著廣泛的應(yīng)用前景,因此,在當(dāng)今知識(shí)信息爆炸的年代,數(shù)字產(chǎn)品的版權(quán)保護(hù)以及數(shù)字信息的安全傳輸是擺在人們面前需要迫切解決的問題,而數(shù)字水印技術(shù)是解決這些問題一種極為有效和極具潛力的技術(shù),同時(shí)它又是一個(gè)多學(xué)科交叉的研究領(lǐng)域,這給研究工作提出了極大的挑戰(zhàn)以及寬廣的研究空間,尤其是彩色圖像數(shù)字水印算法在當(dāng)前多媒體信息安全研究領(lǐng)域也成為熱點(diǎn)技術(shù)。
數(shù)字水印的實(shí)現(xiàn)包括水印預(yù)處理、水印嵌入和水印提取三部分,根據(jù)數(shù)字水印嵌入方法的不同,數(shù)字水印嵌入算法主要分兩類:空域法和變換域法。其中基于DCT變換域的數(shù)字水印具有很強(qiáng)的魯棒性,可以抗各種信號(hào)變形,并且由于JPEG壓縮、MPEG壓縮等數(shù)據(jù)壓縮方法也是在DCT變換域上操作的,所以基于DCT變換域的數(shù)字水印具有較強(qiáng)的抗有損壓縮能力。
一、常用的水印預(yù)處理方法
為了增強(qiáng)水印信號(hào)的安全性,一般先對(duì)水印進(jìn)行預(yù)處理,處理的方式有旋轉(zhuǎn)變換和里亂變換等,經(jīng)過預(yù)處理后,使攻擊者難以恢復(fù)出數(shù)字水印,水印的保密性就會(huì)得到很大的提高。
置換P(P是一種置換規(guī)則)的作用就是將集合X的一個(gè)排列變換成另一個(gè)排列。由于圖象與排列之間有一一對(duì)應(yīng)關(guān)系,可將集合X的元素看作是圖象中各元素順序排列時(shí)的下標(biāo),任何一個(gè)置換P都可以看作是由I到P(I)的一個(gè)圖象變換,稱之為置亂變換。該置亂的效果等價(jià)于將圖象的象素重新進(jìn)行一次排列,從而得到一副新的圖象P(I)。從統(tǒng)計(jì)直方圖來看,I和P(I)完全相同,而從視覺效果上來看,二者既可以十分相似,也可以完全不相干。復(fù)雜的排列變換可以由簡(jiǎn)單的排列變換進(jìn)行復(fù)合運(yùn)算得到。當(dāng)P具有某種非線性特征時(shí),由此所構(gòu)成的系統(tǒng)有可能出現(xiàn)混沌現(xiàn)象,從而達(dá)到圖象加密的目的。
由置亂變換的定義可以知道,置亂變換有下面兩個(gè)特點(diǎn):(1)置亂變換一般都有周期,先是越來越亂,而后當(dāng)?shù)揭欢ù螖?shù)之后就會(huì)恢復(fù)到原圖。(2)置亂變換之后的圖像大小不發(fā)生改變。經(jīng)過置亂變換后,不僅可以保證信息隱藏的隱蔽性;而且可以保證水印信息較為均勻分布到原始圖像的各個(gè)位置,也使嵌入水印后的圖像對(duì)于某些操作,特別是對(duì)于剪切、加噪聲之類操作的魯棒性較好。
二、盲水印算法的實(shí)現(xiàn)
(一)盲水印的嵌入算法
1.顏色空間轉(zhuǎn)換(RGB空間轉(zhuǎn)換成YCbCr空間)。
2.原始彩色圖像fRGB(x,y),其長(zhǎng)為M,高為N,將轉(zhuǎn)換到Y(jié)CbCr彩色空間,得到fYCbCr(x′,y′)={fY(x′,y′),fCb(x′,y′),fCr(x′,y′)},其中,Y分量稱為亮度,Cb和Cr分量稱為色差。
3.圖像、水印置亂。圖像的fY(x′,y′)分量經(jīng)置亂后變?yōu)?/p>
fY*(x′,y′),水印信息序列W={wi,i=0,1,2…,N-1}置亂為W′={W′i,i=0,1,2…,N-1}。
4.分塊DCT變換(空間域變換到頻域)。將置亂后的亮度分量劃分成互不覆蓋、大小為8×8的子塊fkY′(x′,y′),然后對(duì)每一個(gè)子塊進(jìn)行二維離散余弦變換,得到子塊的DCT域系數(shù)UkY(u,v),u=1,2,…,8;v=1,2,…,8。
5.水印嵌入。對(duì)每一個(gè)子塊的DCT域系數(shù)DkY(u,v)共64個(gè)系數(shù),采用ZigZag掃描,得到一維系數(shù)序列u={u(k),k=1,2,…,64}。為了兼顧魯棒性和透明性,本文擬將數(shù)字水印信息嵌入到DCT域的中頻部分。
6.圖像反置亂。含水印的亮度信號(hào)采用幾何置亂法反置亂為信號(hào)。
7.顏色空間轉(zhuǎn)換(YCbCr空間轉(zhuǎn)換成RGB空間)。實(shí)驗(yàn)表明,采用盲水印算法嵌入水印后的圖像,較好的保持了原始圖像的品質(zhì)。如圖所示:
(二)水印的提取及檢測(cè)算法
盲水印算法在嵌入水印時(shí),利用密鑰和水印之間的對(duì)應(yīng)關(guān)系,將二值圖像作為水印嵌入到彩色圖像亮度分量的DCT域系數(shù)中,因此在提取過程中無需將原始圖像引入水印的提取、檢測(cè)中來,就實(shí)現(xiàn)了隱藏信息的盲檢測(cè)。
數(shù)字水印的提取過程如下:彩色空間變換,將嵌入水印后的彩色圖像從GRB彩色空間轉(zhuǎn)換到Y(jié)CbCr彩色空間。然后對(duì)亮度分量Y*進(jìn)行置亂處理,再對(duì)其8×8分塊,對(duì)每一子塊進(jìn)行二維離散余弦變換,得到子塊的DCT域系數(shù)DK*(u,v)。對(duì)DK*(u,v)進(jìn)行ZigZag掃描,得到22個(gè)中頻系數(shù)組成一維序列L(k),分別檢測(cè)L(k)與K(x)的相關(guān)性Lk,其中Lk=corr2(k(x),L(k)),若Lk>δ,則Wi′=1,占為設(shè)定的門限值(本文取0.5),將以上過程應(yīng)用到每一子塊,得到一維二進(jìn)制序列,把它進(jìn)行反置亂處理,得到二維的水印圖像。
■
可見提取過程將水印信號(hào)恢復(fù)出來并沒有用到原始彩色圖像,這是一種盲水印算法。
(三)水印的魯棒性
在不同數(shù)字水印系統(tǒng)之間進(jìn)行公正的算法比較、性能評(píng)估,對(duì)數(shù)字水印標(biāo)準(zhǔn)化以及水印走向?qū)嶋H應(yīng)用都具有重要意義。對(duì)水印系統(tǒng)進(jìn)行性能評(píng)估的關(guān)鍵是要建立評(píng)價(jià)基準(zhǔn)。對(duì)水印系統(tǒng)評(píng)價(jià)的準(zhǔn)則不僅要包括對(duì)魯棒性的評(píng)價(jià),還要包括關(guān)于水印處理引入失真的主觀或定量評(píng)價(jià)。換句話說,在水印的魯棒性和不可見性之間需要有一個(gè)權(quán)衡。
這是一種對(duì)嵌入水印圖像進(jìn)行攻擊的常見操作,JPEG也是一種壓縮圖像的標(biāo)準(zhǔn),所以對(duì)圖像水印來講,最基本的要求是能夠忍受一定程度的壓縮處理。明文算法、盲文算法嵌入水印后的彩色圖像進(jìn)行了質(zhì)量參數(shù)為20%、35%、55%、75%壓縮實(shí)驗(yàn)。從表1中可以清楚地看出算法Ⅰ、算法Ⅱ具有較強(qiáng)的抗JPEG壓縮能力,而算法II抗JPEG壓縮能力則更強(qiáng)一些。這樣我們就可以從它們不同的質(zhì)量參數(shù)中看出盲水印算法在一定程度的優(yōu)勢(shì)所在,因此我們應(yīng)該在實(shí)際中更好地應(yīng)用它。
疊加噪聲的情況對(duì)于一定功率的各種噪聲中,高斯噪聲對(duì)圖像干擾效果最為嚴(yán)重。本文首先對(duì)嵌入水印的圖像疊加不同程度的高斯噪聲,實(shí)驗(yàn)結(jié)果給出施加均值為0,方差為0.03的高斯噪聲后的含水印圖像。然后對(duì)嵌入水印的圖像施加噪聲密度為0.01~0.1椒鹽噪聲。實(shí)驗(yàn)結(jié)果給出施加噪聲密度為0.03時(shí)的椒鹽噪聲后的含水印圖像。具體實(shí)驗(yàn)結(jié)果如表2所示。
這是通過增強(qiáng)高頻分量來減少圖像中的模糊,又稱銳化。銳化處理在增強(qiáng)圖像邊緣的同時(shí)增加了圖像的噪聲。表3給出了對(duì)原始圖像的嵌入水印后的圖像進(jìn)行高通濾波以后的圖像和提取出來的水印,可見算法Ⅰ、Ⅱ都能夠得到正確的檢測(cè)結(jié)果。
此外,進(jìn)一步實(shí)驗(yàn)表明算法對(duì)于剪切、直方圖均衡化等常見的圖像處理都有較強(qiáng)的魯棒性。實(shí)驗(yàn)表明,在施加相同的攻擊強(qiáng)度下,算法Ⅱ比算法Ⅰ的魯棒性強(qiáng),之所以兩個(gè)算法在魯棒性上有差別,這主要是由它們算法Ⅰ實(shí)現(xiàn)的方法所決定的。算法I的水印魯棒性與其嵌入強(qiáng)度α有關(guān),α的取值越大,算法I的水印魯棒性就越強(qiáng),但是圖像的品質(zhì)就越低,人眼容易發(fā)現(xiàn)出來;算法Ⅱ的水印魯棒性與其嵌入強(qiáng)度沒有直接的聯(lián)系,它主要借助了偽隨機(jī)序列的相關(guān)性來實(shí)現(xiàn)水印提取,相關(guān)性越高水印的魯棒性就越好。
本文改進(jìn)了DCT域的數(shù)字水印算法,得到了盲水印算法。討論了置亂技術(shù)及其在水印中的應(yīng)用,并對(duì)盲水印算法進(jìn)行了置亂預(yù)處理。在盲水印算法中對(duì)8×8DCT變換系數(shù)矩陣中的中頻段,利用偽隨機(jī)序列間接的嵌入二值水印,再利用偽隨機(jī)序列的相關(guān)特性提取出來,實(shí)現(xiàn)了盲檢測(cè)的算法,并對(duì)JPEG壓縮、疊加高斯噪聲和椒鹽,噪聲、高通濾波等一些常見的圖像處理操作進(jìn)行了實(shí)驗(yàn),比較了兩個(gè)算法。
參考文獻(xiàn):
[1]王炳錫,陳琦,鄧峰森.數(shù)字水印技術(shù)[M].西安:西安電子科技大學(xué)出版社,2003.
[2]劉瑞禎,譚鐵牛.數(shù)字圖像水印研究綜述[J].通信學(xué)報(bào),2000(8).
[3]黃繼武,程衛(wèi)東.DCT域圖像水印:嵌入對(duì)策和算法[J].電子學(xué)報(bào),2000(4).
[4]何小海,圖像通信[M].西安:西安電子科技大學(xué)出版社,2005.
[5]鮑昀霞,何東健.基于DCT的彩色圖像水印算法[J].微電子學(xué)與計(jì)算機(jī),2007(1).
[6]陳純.計(jì)算機(jī)圖像處理技術(shù)與算法[M].北京:清華大學(xué)出版社,2003.