摘要:為了使水印算法具有更強的魯棒性,提出一種基于離散小波變換(DWT)和奇異值分解(SVD)的數字水印算法,在水印嵌入之前首先對其進行調制。利用種子序列按照水印的大小生成一組隨機數,并將這組隨機數和原始水印圖像進行調制,然后將調制后的水印嵌入到原始載體圖像的離散小波域中。在水印提取時再利用調制過程的逆過程恢復出水印。實驗結果證明了該方法對于JPEG壓縮、噪聲、旋轉、剪切等具有很好的魯棒性。
關鍵詞:數字水印;離散余弦變換;奇異值分解
中圖分類號:TP391文獻標識碼:A文章編號:1009-3044(2009)25-7208-03
An Algorithm of Digital Watermarking Based on DWT and SVD
TANG Zhen-hao, YONG Shi-hua, MA Xiao-hu
(School of Computer Science and Technology, Soochow University, Suzhou 215006, China)
Abstract: An algorithm of digital watermarking based on DWT and SVD is proposed to improve the robustness of digital wartermarking. Before watermarking embedded into the host image, we first modulate it, that is to generate a group of random numbers according to the size of watermarking using the seed sequence and modulate them with the watermarking. Then the modulated watermarking is embedded into the DWT domain of host image. We get the extracted watermarking by the inverse course of the embedding. Experimental results have demonstrated that the proposed approach is robust against common signal processing such as JPEG compression, noise, rotation and cropping.
Key words: digital watermarking; DWT; SVD
隨著信息化產業的迅速發展,信息媒體的數字化為信息的存取提供了極大的便利性,數字產品的傳播和復制變得越來越容易,用戶可以方便地下載或拷貝數字作品(圖片、音樂、視頻),由此帶來的版權糾紛問題也越來越尖銳化,數字水印技術的出現,則在一定程度上緩解了這一矛盾[1]。
目前,圖像數字水印算法主要可以分為空域算法和變換域算法[2-3]。空域數字水印的魯棒性比較差,不能很好地抵抗一些常見的攻擊。而基于變換域的數字水印則具有較好的魯棒性和隱蔽性,因此受到學者們的青睞[4],其中比較常用的是基于離散余弦變換(DCT)和離散小波變換(DWT)的水印算法。
小波變換有著良好的能量壓縮特性和多分辨率分解特性。奇異值分解在經受一般攻擊后變換不大[5],本文充分利用DWT和SVD這些性質,在兼顧水印的不可感知性和魯棒性的同時,提高了水印的嵌入量,在水印系統中取得了一個很好的折衷。
1 相關技術
1.1 奇異值分解
奇異值分解是最有效分析矩陣的數值分析工具,是一種將矩陣對角化的數值分析方法。對于任意一個M×N圖像矩陣A∈Rn×n都可分解成3個矩陣之積:
A=USVT(1)
其中U∈RM×M ,V∈RM×N是2個酉矩陣,即UUT=E,VVT=E。S表示元素為非負的對角陣,其對角線上的元素滿足:λ1≥λ2≥…λr≥λr+1=…λm=0,其中r是A的秩,它等于非負奇異值的個數。λi(i=1,2, …m)就叫做矩陣A的奇異值,是AAT特征值的平方根。
從圖像處理的角度來看,奇異值分解有如下特性[6]:
1)圖像奇異值的穩定性非常好,當圖像被施加小的擾動時,奇異值不會有很大的變化。
2)奇異值對應于圖像的亮度特征,其向量表征了圖像的幾何特征,奇異值所表現的是圖像的內蘊特性而非視覺特性,反應的是圖像矩陣元素之間的關系。
圖像的奇異值對幾何失真具有不變性,因此在圖像的奇異值中嵌入水印對幾何攻擊具有很好的魯棒性。
1.2 小波變換
小波變換在圖像處理中的基本思想是把圖像進行多分辨率分解,生成不同空間和獨立頻帶的子圖像,然后對子圖像的系數進行處理。圖像是二維信號,需要在行和列上分別進行一維小波變換[7]。對圖像進行小波分解,產生LHj,HLj,HHj三個高頻帶系和一個LLj低頻帶,其中低頻帶表示由小波分解級數決定的最大尺度、最小分辨率下對原始圖像的最佳逼近,它的統計特征和原圖相似,圖像的大部分能量集中在此。高頻帶系數則分別是圖像在不同尺度、不同分辨率下的細節信息。分辨率越低,有用信息的比例就越高,即經過小波分解把一個圖像分成了若干級,對于同一級圖像,低頻子圖像LLj最重要,其次是HLj與LHj,高頻子圖像HHj相對最不重要[8]。根據人類的視覺特征,人眼對低頻部分的變化比較敏感,而對高頻部分的變化不是很敏感。如果將水印加在高頻部分,雖然不易被覺察到。但經過一定的圖像處理后,信息容易丟失,其魯棒性不夠強,所以應該在人類的視覺特性與水印的不可見性以及魯棒性之間進行一個權衡。
2 水印的嵌入和提取算法
2.1 水印嵌入算法
在水印嵌入之前,首先要對水印進行調制。利用種子序列,按照水印的大小生成一組隨機數,將生成的隨機數和原始水印圖像(W)進行加性地調制,即將隨機數加性地疊加到原始水印圖像中。同時將種子序列作為關鍵字M,N保存。具體步驟如下:
1)調制水印,同時保存種子序列作為關鍵字key;
2)讀取原始載體圖像(I),并對其進行三層離散小波變化,得到逼近子帶LL3;
3)對逼近子帶LL3再做一次奇異值分解;
4)將調制后的水印嵌入到奇異值分解后的對角矩陣中;
5)做一次逆奇異值分解和三層逆小波變化,得到嵌入水印后的載體圖像(IW)。
2.2 水印提取算法
水印提取過程基本是水印嵌入過程的逆過程,具體步驟如下:
1)讀取可能遭受到攻擊的含水印載體圖像IW;
2)對IW坐三層離散小波變換和一次奇異值分解;
3)提取出嵌入到載體圖像中的水印;
4)獲取種子序列,并按照水印的大小生成一組隨機數;
5)結合提取出的水印和生成的一組隨機數恢復出水印W'。
3 實驗結果分析
為了驗證本文提出的算法,我們在Matlab 7.1環境下進行了仿真實驗.試驗中選用512×512的灰度圖像作為載體圖像,選擇64×64的二值圖像(蘇州大學)作為水印圖像。如圖1-圖3所示。除了人眼的主觀感覺外,本文還采用峰值信噪比(Peak Signal Noise Ratio,PSNR)作為水印圖像的客觀評價標準,采用相關系數(Normalized Correlation,NC)作為提取水印與原始水印相似性的評價標準。峰值信噪比的公式如下:
(2)
其中:(3)
Wi,j為原始水印像素值,W'i,j為提取的水印像素值,M,N為水印圖像的寬度和高度。
(4)
試驗中我們得到嵌入水印后的載體圖像的峰值信噪比為32.6325,各種常見攻擊后提取出的水印效果如圖4所示,提取的水印相似度NC值如表1所示。
圖1 原始載體圖像 圖2原始水印 圖3含水印載體圖像
a b c d e f
圖4各種攻擊后提取出的水印
(a)剪切(1/4)后提取出的水印(b)JPEG(30%)后提取的水印(c)直方圖均衡化后提取的水印(d)旋轉(15°)后提取的水印
(e)高斯噪聲(1%)攻擊后的水印(f)檢驗噪聲(1%)攻擊后提取的水印
從圖4可以看出,雖然載體圖像遭受到各種攻擊,而且某些攻擊對載體圖像的改變非常大,但是均能夠提取出清晰可見的水印。表1是針對不同的載體在遭受到各種攻擊后所提取水印的相似度值,從表中可以看出所提水印的相似度非常高,均在0.9以上,說明了本算法的魯棒性和廣泛適用性。
圖5是三種不同載體圖像對抗JPEG壓縮的實驗。從圖中的曲線可以看出本算法對抗JPEG的壓縮的魯棒性非常強,即便JPEG的壓縮品質在10%,仍然能夠清晰地提取出水印來。
5 結束語
本文提出了一種基于離散小波變換和奇異值分解的水印算法,在算法在水印嵌入以前首先要對水印進行調制。利用種子序列生成一組隨機數,并將這組隨機數和原始水印圖像進行調制,然后再將調制后的水印嵌入到載體圖像的離散小波域中。該算法對水印進行的調制,增強了水印的安全性,實驗已經證明該方法能夠抵抗多種攻擊,對于在靜止圖像中加入水印信息以保護版權問題有很好的應用前景。
參考文獻:
[1] Fabien A. Petitcolas P, Anderson R J. Information Hiding A Survey[C].Proceedings of the IEEE,1999,87(7):1062-1078.
[2] 劉據,孫建德.基于圖像獨立特征分解的數字水印方法[J].電子與信息學報,2003(9):1174-1179.
[3] 方春,張翠芳,王宏霞.基于整數DCT變換的新水印算法[J].中國圖像圖形學報,2008(9):1694-1700.
[4] 劉琚,張新剛,孫建德.一種基于ICA的圖像水印算法[J].電路與系統學報,2003,6(3):55-59.
[5] 劉瑞禎,譚鐵牛.基于奇異值分解的數字圖像水印方法[J].電子學報,2001,29(2):168-171.
[6] Liu R,Tan T.An SVD-based watermarking scheme for protecting rightful ownership[J].IEEE Transaction on Multimedia,2002,4(1):121-128.
[7] 楊紅穎,王向陽,趙巖.基于紋理子塊的小波變換數字水印算法[J].微電子學與計算機,2004,21(7):106-109.
[8] 陳明舉,陳善學.一種基于小波變換與奇異值分解的圖像水印算法[J].信息與電子工程,2007,5(1):57-61.