摘 要:針對現有適用于圖像的數字水印對信號處理和幾何失真比較敏感的問題,提出一種穩健的數字圖像水印算法。該算法先對整個圖像應用三級離散小波變換,再對低頻域運用奇異值分解,并通過修改奇異值,嵌入經過混沌置亂的水印圖像的奇異值,在小波變換域的中頻系數上嵌入水印信息。水印檢測時,分別在中頻區域和低頻提取水印并進行比較,采用效果較好的水印作為檢測水印。實驗結果表明,該方法對一般的信號處理操作及幾何攻擊等均具有較好的魯棒性。
關鍵詞:穩健性; 混沌; 離散小波變換; 奇異值分解; 數字水印
中圖分類號:TN912.34
文獻標志碼:A
文章編號:1001-3695(2010)02-0718-03
doi:10.3969/j.issn.1001-3695.2010.02.087
Robust digital image watermarking algorithm based on chaos and SVD-DWT
ZHANG Qiu-yu, LI Kai, YUAN Zhan-ting
(College of Computer Communication, Lanzhou University of Technology, Lanzhou 730050, China)
Abstract:Many digital watermarks now available for images are sensitive to signal processing and geometric distortions, this paper proposed a robust digital image watermarking algorithm. After decomposing the whole image with 3 level of discrete wavelet transform,then applyed the singular value decomposition(SVD) to the low frequency domain, and embedded the singular values of the watermark image that was decomposed with SVD after chaotic scrambling by modifying the singular values,and embedded the watermark data to the middle frequency coefficients of wavelet domain; extracted watermarks in the intermediate frequency and low frequency region and compare them,using the extracted watermark which was better. The examination algorithm of watermark used the double watermark comparison examination. The experimental results demonstrate that this proposed watermarking algorithm is robust against some common signal processing and geometric attacks.
Key words:robust; chaos; discrete wavelet transform; singular value decomposition; digital watermarking
目前對數字水印技術的研究已有十多年的時間,但與實際應用還有一定的距離,原因之一就是水印技術在對抗幾何攻擊[1,2]和常見的圖像信號處理方面還缺乏很好的解決方法[3]。我們知道現在常見的數字水印圖像攻擊一般是對水印圖像進行一定的信號處理,基于離散小波變換(DWT)的變換域數字圖像水印算法[4]的研究得到了普遍關注,而目前許多變換域水印算法在對抗常見的信號處理中能夠表現出一定的魯棒性,但對一些常見的幾何失真處理卻失效了[5]。另外一些抗幾何攻擊的水印方法雖然能夠抵抗不同程度的幾何攻擊,但卻不能經受一定程度的圖像信號處理[6, 7]。例如,目前一些研究人員提出了利用奇異值分解(singular value decomposition,SVD)的方法[8, 9]進行水印嵌入的算法,在對諸如旋轉、縮放等幾何攻擊方面取得了較好的效果,但是卻不能抵抗常見的圖像信號處理。文獻[8]對噪聲攻擊就非常敏感; 文獻[10]采用將水印嵌入在每個高頻子帶中,并利用多尺度圖像登記的方法來檢測校正水印圖像所經歷的幾何變換。此算法雖然能抗幾何攻擊,但對一些常規的圖像處理如壓縮卻不具有較強的魯棒性。如何兼顧兩者是一個亟待解決的問題。
針對上述問題,本文結合離散小波變換(DWT)和奇異值分解(SVD)的理論,提出了一種基于離散小波變換(DWT)和奇異值分解(SVD)的魯棒性數字圖像水印算法。首先對載體圖像進行三級小波分解,再對小波變換域的低頻區域進行奇異值分解,對經過混沌置亂的水印圖像進行奇異值分解,通過修改奇異值把水印信息嵌入到低頻區域,并且根據人眼視覺系統(HVS)在三級小波分解的中頻區域修改小波系數嵌入經過混沌置亂的水印信息。水印檢測時,分別在低頻區域和中頻區域中提取水印,對提取出的水印進行比較,選擇效果較好的水印作為檢測水印。算法選取有意義的二值黑白圖像作為水印信息,并利用混沌序列進行置亂加密,增強了水印信息的保密性。
1 原始水印圖像的混沌置亂
1.1 混沌系統
混沌函數具有伸大拉長和折回重疊的性質,它隸屬于確定性系統卻難以預測,隱含于復雜系統卻又不可分解,看似混亂無序,實則非常有規律。混沌序列是一個偽隨機序列,很容易由迭代方程或非線性方程或偏微分方程生成,具有對初始條件和參數敏感等特點,因此密鑰(混沌模型、參數及初始值)具有惟一性。一個一維離散時間非線性動力系統定義如下:
xk+1=f(xk)(1)
其中:xk∈V,k=0,1,2,3,…,稱為狀態;f:V→V是一個非線性映射;V是一個緊度量空間,將當前狀態xk映射到下一個狀態xk+1,如果從一個初始值x0開始,根據式(1)就可得到一個序列。
常用的一維混沌映射有Logistic[11]、Chebyshev、Kent映射等。目前廣泛研究的一維混沌系統是Logistic映射方程,即
xk+1=1-μx2k(2)
其中:μ∈[0,2],x∈(-1,1) ,當1.401 15<μ<2時系統處于混沌狀態。該系統具有計算簡單,混沌性好等特點,給定μ0和x0兩個初始參數,根據式(2)就可以得到一個混沌序列,并且不同的μ0和x0,所得到的序列是非周期、不收斂、不相關的。
1.2 水印圖像的混沌置亂
水印圖像的混沌置亂正是利用了上述理論。設圖像的大小為A=M×N,用Logistic混沌映射序列對圖像進行置亂。圖像置亂方法如下:
a)用Logistic混沌映射產生一個長度為{k1,k2,…,kM×N}的混沌序列。
b)對產生混沌序列元素進行大小排序,形成有序序列{k′1,k′2,…,k′M×N},并記下其置換位置index(i)。
c)按置換地址index(i)對圖像A進行置換,得到的置換圖像B就是置亂加密后的圖像。
水印圖像的加密如圖1所示。解密算法與加密算法相同,利用置換位置index(i),就可以根據相同的方法對置換后的圖B像進行逆置亂得到原始圖像A,實現圖像的解密。
2 圖像的奇異值分解及小波變換
2.1 圖像的奇異值分解
數值分析中的奇異值分解(SVD)是一種將矩陣對角化的數值算法,一幅數字圖像可以看成是由一個許多非負標量組成的矩陣。在矩陣的各個元素上,如果利用矩陣的奇異分解將圖像矩陣分解,就能夠把圖像的信息集中到奇異陣的少數奇異值上。用A∈RM×N來表示這樣一個圖像矩陣。其中R表示實數數域,不失一般性,這里假設M×N。這樣A就可以表示為
A=U∑VT(3)
其中:U∈RM×N和V∈RM×N都是正交陣, 上標T表示矩陣轉置,Σ∈RM×N是一個非對角線上的項均為0的矩陣,其對角線上的元素滿足
λ1≥λ2≥λ3≥…≥λr≥λr+1≥λm=0(4)
其中:r是A的秩,它等于非零奇異值的個數,所以有
Σ=λ1
λ2
…
λr
λr+1
λm
(5)
其中:λi是由該分解所惟一確定的,叫做A的奇異值[12],它是AAT特征值的平方根;U的列稱為矩陣A的左奇異向量,V的列稱為矩陣A的右奇異向量,分解式U∑V T稱做A的奇異值分解。
2.2 圖像的小波變換
小波變換用于圖像處理,是將原圖像分解為不同空間、不同頻率的子帶圖像。二維的離散小波變換將一幅圖分解后,產生低頻近似子帶圖像LL,水平細節子帶圖像HL,垂直細節子帶圖像LH和斜向細節子帶圖像HH共四個子帶圖像如圖2所示。其中LL集中了圖像的大部分能量,這個分解過程可重復的用于分解LL部分。圖像的三級小波分解如圖3所示。
根據圖像小波分解特性,低頻帶LL3表示由小波變換分解級數決定的最大尺度、最小分辨率下對原始圖像的最佳逼近,圖像的絕大部分能量集中在這個低頻帶。高頻帶系列則分別是圖像在不同尺度、不同分辨率下的細節信息。
3 水印的嵌入和檢測算法
3.1 水印的嵌入算法
(1)對載體圖像A采用Haar小波進行三級離散小波變換,產生LL3、HL3、LH3、HH3等共十個子帶。
(2)對圖像的中頻區域HL3、LH3進行升序排序,得到序列C,并記下排序的對應位置ind(i)。
(3)利用乘性法則,對C中絕對值大的系數嵌入經過前面所述的方法混沌置亂的水印信息W。
c′i=ci(1+α1wi)(6)
其中:α1的大小決定了水印信號修改圖像頻率的強度。
(4)根據第(2)步中的對應位置序列ind(i),將修改后的中頻序列c′i賦值到原始的中頻區域HL3、LH3相應的位置。
(5)在子帶LL3區域,運用式(3)進行SVD:
A=UΣV T。其中:λi(i=1,2,…, n)為Σ的奇異值元素。
(6)對經過前面所述的方法混沌置亂的水印信息W運用SVD,W=UWΣWVTW。其中:wi(i=1,2…,n)為ΣW的奇異值元素。
(7)修改子帶LL3的奇異值,將(6)得到的水印圖像的奇異值wi嵌入到子帶LL3的奇異值λi中。
λi=λi+α2λwi(7)
其中:i=1,…,n,α2為嵌入因子。
(8)用修改后的子帶LL3的奇異值集,獲得DWT子帶LL3嵌入水印信息后的系數
A=UΣV T
(9) 利用(4)和(8)得到修改后的小波系數作離散小波反變換,最終獲得嵌有水印的圖像。
3.2 水印的檢測算法
(1)對已嵌入了水印的水印圖像A運用DWT,產生LL3、HL3、LH3、HH3等共十個子帶。
(2)在LL3子帶區域,運用SVD,A=UΣV T。
(3)提取出置亂水印圖像的奇異值
λwi=(λi-λi)/α2(8)
(4)利用W1=UWΣWV TW構造提取出水印圖像,根據混沌置亂密鑰對W1進行混沌逆置亂,得到提取出的水印圖像W′1。
(5)根據對應位置序列ind(i)和嵌入水印的序列大小,確定在水印圖像中頻區域HL3、LH3中的嵌入位置,得到嵌入水印的序列c′i。
(6)利用式(9),得到置亂水印信息W2,并根據混沌置亂密鑰對W2進行混沌逆置亂,得到提取出的水印圖像W′2。
W2i=(c′i/ci-1)/α1(9)
(7)根據式(10)分別計算W′1、W′2與原始水印圖像W的NC值得到兩個值1、2 (NC為normalized correlation的縮寫,即歸一化相似度,反映了檢測水印與原始水印之間的相似程度)。
NC=∑i∑jW(i,j)W(i,j)∑i∑jW(i,j)2(10)
按下面的方式選擇提取的水印圖像
W′=W′1 if 1≥2
W′2 else(11)
最終得到提取出的水印圖像W′。
4 實驗結果
仿真實驗選用woman(256×256)的灰度圖像作為原始載體圖像,漢字工大水印(32×32)作為嵌入的水印圖像進行了一系列的實驗。
由水印的不可見性這一特性,從視覺效果的角度,即使與原始圖像放在一起比較,也感覺不到水印的存在,因此保證了嵌入過程中水印的不可察覺性的基本要求。客觀上采用水印嵌入前后原始載體圖像和水印圖像的峰值信噪比(PSNR)作為客觀評價標準評價圖像的質量,定義如下:
PSNR=10 log10(1/MSE)(12)
MSE=∑i∑j[F′(i,j)-F(i,j)]2N2(13)
其中:MSE為均方差,F′為原始圖像,F為水印化的圖像,PSNR越大,圖像的不可感知性越好,也就是圖像改變較小。在未受攻擊前水印的提取效果非常好,如圖4所示。其中圖4(a)和(c)的PSNR=41.968 9,(b)和(d)的NC=0.998 7。
對于水印信號被嵌入到宿主信號的變換域系數這一大類方法,幾何攻擊是最為簡單又非常有效的。目前諸多文獻中并沒有有效的方法解決這個問題。本文結合SVD,并對提取出的水印進行比較,選擇效果較好的水印作為檢測水印,較好地解決了這一問題。下面從SVD的特性方面加以說明,一般的幾何變形對圖像的奇異值產生的影響,在文獻[13]中提供了其理論分析如下:
a)轉置。M和它的轉置矩陣MT有相同的非零奇異值,即本水印對轉置變形是穩健的。
b)縮放。設N是M行放大后的圖像,它是將M的每一行重復P1次得到的,對M的每一個非零奇異值,P1的平方根是N的一個非零奇異值,設O是M列放大后的圖像,它是將M的每一列重復P2次得到的,對M的每一個非零奇異值,P2的平方根是O的一個非零奇異值。
c)鏡像。M和M的行鏡像Mra和M的列鏡像Mca都有相同的非零奇異值。
d)旋轉。M和Mr (Mr是圖像M旋轉任意角度后的圖像)有相同的非零奇異值。假設Mr∈RM×N是圖像M∈RM×N旋轉任意角度后的圖像,那么總存在一個正交陣Q∈RM×N,使得Mr=QM。因此有MTrMr=MTQTQM=MTM,故Mr與M有相同的非零奇異值。
本文給出該算法針對JPEG壓縮、加高斯噪聲、尺寸縮放、剪切、旋轉等標準水印攻擊的實驗結果,如表1所示。設定水印提取有效的判斷條件是NC>0.5,對于表1中所列的各種攻擊,該算法均可抵御,因此本文提出的水印算法具有較強的魯棒性。為了進一步驗證所提方法的可行性,本文將其與一些類似方案進行了相應比較,結果如表2所示。
表1 水印圖像抗攻擊實驗結果
攻擊類型JPEG壓縮因子80JPEG壓縮因子30JPEG壓縮因子5銳化 80
NC0.992 60.981 70.927 30.713 6
攻擊類型高斯噪聲 0.33×3中值濾波高斯模糊 5×5放大為 110%
NC0.873 50.864 40.896 00.694 8
攻擊類型縮小為 80%剪切 5%旋轉90°的整數倍旋轉5°
NC0.671 90.598 20.996 70.673 3
表2 類似圖像水印算法NC值對比
算法高斯噪聲0.3JPEG壓縮因子803×3中值濾波旋轉5°
本文0.873 50.992 60.864 40.673 3
DWT0.885 70.983 70.872 50.134 1
SVD0.627 90.861 40.742 20.813 6
5 結束語
本文提出了一種穩健的數字水印算法,在保證水印不可見的前提下,最大限度地提高了嵌入水印的信息量,增強了圖像的旋轉、縮放等抗幾何攻擊能力。在圖像三級DWT變換的中頻區域嵌入水印信息,提高了圖像對濾波、噪聲、壓縮干擾的抵抗力。利用混沌映射置亂水印圖像,增強了水印系統的安全性。水印檢測時,對提取出的水印進行比較,選擇效果較好的水印作為檢測水印。實驗結果表明該方法對一些常見的圖像處理及幾何攻擊等均具有較好的魯棒性,與直接使用SVD分解的水印算法或直接在DWT域嵌入水印的算法相比,這種方法具有更好的穩健性和可靠性。算法雖然一定程度上可以抵抗幾何攻擊,但是對尺度攻擊的抵抗能力還有待提高。
參考文獻:
[1]LICKS V, JORDAN R. Geometric attacks on image watermarking systems[J]. IEEE Multimedia, 2005,12(3): 68-78.
[2]樓偶俊, 王鉦旋. 基于特征點模板的Contourlet域抗幾何攻擊水印算法研究[J]. 計算機學報, 2009,32(2): 308-317.
[3]許文麗, 李磊, 王育民. 抗噪聲、幾何失真和JPEG壓縮攻擊的魯棒數字水印方案[J]. 電子與信息學報, 2008,30(4): 933-936.
[4]ANUSUDHA K, SANGEETHA A, AYESWARYA S. A robust digital watermarking of satellite image at third level DWT decomposition[C]//Proc ofInternational Conference on Computational Intelligence and Multimedia Applications. 2007: 78-82.
[5]傅德勝, 孫文靜. 一種基于人眼視覺特性和小波變換域的圖像數字水印技術[J]. 計算機科學, 2008,35(11): 203-206.
[6]袁大洋, 肖俊, 王穎. 數字圖像水印算法抗幾何攻擊魯棒性研究[J]. 電子與信息學報, 2008,30(5): 1251-1256.
[7]李旭東. 抗幾何攻擊的空間域圖像數字水印算法[J]. 自動化學報, 2008,34(7): 832-837.
[8]劉瑞楨, 譚鐵牛.基于奇異值分解的數字圖像水印方法[J]. 電子學報, 2001,29(2): 168-171.
[9]周波, 陳健. 基于奇異值分解的、抗幾何失真的數字水印算法[J]. 中國圖象圖形學報, 2004,9(4):507-512.
[10]KAEWKAMNERD N, RAO K R. Wavelet based watermarking detection using multiresolution image registration[C]//Proc of TENCON.2000:171-175.
[11]ZHANG Chang-jiang, WANG Jin-shan, WANG Xiao-dong. Digital image watermarking algorithm with double encryption by Arnold transform and logistic[J]. Networked Computing and Advanced Information Management,2008,1(9): 329-334.
[12]陳大新. 矩陣理論[M]. 修訂版.上海: 上海交通大學出版社, 2000.
[13]KARKARALA R, OGUMBONA P O. Signal analysis using a multiresolution form of the singular value decomposition[J]. IEEE Trans on Image Processing,2001,10(5): 724-735.