王紅



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