摘要:本文首先分析了前人的小波域數字水印算法,然后應用人眼視覺特性和離散余弦變換變換對算法進行了改進。重點論述了水印的嵌入和提取,并選取了一幅有實際意義的二值圖象作為水印,通過修改中、低頻系數來進行水印的嵌入。實驗證明嵌入水印后的圖象有更好的隱蔽性,并且對JPEG壓縮、圖象添加噪音、中值濾波、剪切等圖象處理操作具有很強的穩定性。
關鍵詞:數字水印;人眼視覺特性;離散余弦變換;離散小波變換;穩定性
中圖分類號:TP301文獻標識碼:A文章編號:1009-3044(2008)17-21511-03
1 引言
隨著數字技術和互聯網技術的不斷發展,各種數字作品在網絡上的應用越來越多,數字產品盜版和篡改問題也越來越嚴重。因此,數字作品版權保護也越來越得到人們的重視。數字水印作為數字作品版權保護的有效辦法,也受到越來越多的重視和應用。所謂數字水印就是將某種識別信息嵌入到數字作品中,使得這種識別信息可以作為數字作品持有者對其所有權的一種憑證。到目前為止已經出現了許許多多的水印算法,總體上可以分為時空域和頻域兩種。空間域方法是指通過直接改變像素的亮度或彩色光帶或在這兩者之上疊加一個調制信號的方式嵌入水印信號。變換域數字水印方法是指將水印嵌入到多媒體數據的變換域上。常見的變換域方法有DCT,DFT和DWT。
在圖象壓縮領域,人們通過研究小波系數跟HVS(人類視覺系統)的關系來提高壓縮效果。近些年許多基于小波域的水印算法都采用了這種技術。Lewis和Knowles在文獻[3]中采用對小波系數進行量化的方法實現圖象的壓縮,其中的量化數組根據人眼對噪音的敏感度自適應地得到,由此建立了小波系數的視覺模型。
Barin等在文獻[4]中對這種視覺模型進行了改進,并將其應用到數字水印的嵌入過程。對原始圖象進行4級小波分解,然后根據視覺模型對每一級小波的中、高頻部分系數進行了修改來嵌入水印。通過對含水印的圖象分析,結果顯示水印隱藏在圖象的紋理比較多、亮度比較暗的地方,還有圖象的邊緣地區。Barni 視覺掩蔽模型是從亮度、紋理和小波特性等多方面對每個像素點計算視覺掩蔽強度,考慮因素比較全面,但計算量大,計算效率低。
黃達人、劉九芬和黃繼武在文獻[5]提出了另一種小波域水印算法。對原始圖象進行了3級小波分解后,將3級小波分解后的原始圖象的所有小波子帶分割成大小相等互不重疊的子塊且大小與水印的大小相同。將小波塊分為兩類:(1)具有較弱紋理(2)具有較強紋理。不同的類嵌入的強度不同。但水印的圖象JPEG壓縮后,失真比較明顯。
本文算法將水印分成兩半,分別嵌入到3級子帶和2級子帶中。將2、3級子帶分塊且大小和水印的大小相同。對小波子塊做更細的分類,不同的類嵌入強度不同。水印在嵌入前進行DCT變換。這樣做是為了更好的保證水印的不可見性
2 水印的嵌入和提取
2.1 水印的嵌入
Step1:宿主圖象O 做3次小波變換得到不同分辨率的細節子圖Chi、CVi、CDi(i=1,2,3)和一個逼近子圖CA3;
Step2:Chi、CVi、CDi(i=2,3 )和CA3;劃分小波子塊且大小和水印相同;
Step3:計算每塊小波子塊的最合適的嵌入強度;
(1)考慮HVS特性對小波子塊的敏感性。
設任一小波子塊為Wk對Wk進行亮度劃分時,將Wk分成亮和暗兩類設整個圖像的小波系數均值為 mean ,Wk的小波系數均值為meanwk。meanwk≥ mean ,then Wk為亮子塊,else Wk為暗子塊。在對紋理劃分若滿足
max(Wk)-mean(Wk) ≤JND(Wk)
max(Wk)-mean(Wk) ≥JND(Wk) (1)
則我們就說Wk為均勻子塊,否則為非均勻子塊.其中JND(wk)=a*mean(Wk),mean(Wk)表示Wk的平均數值,a為常數.
最后,對非平滑塊進行劃分,方法見文獻[5]。至此,小波子塊按分為亮度分為暗和亮兩類,按紋理被劃分為綜上所述3類,可將所有的中.低頻小波子塊劃分為s1,s2,s3三類, 對不同類的小波子塊,設它對噪聲的掩蓋因子為ρsi
(2)考慮小波子帶對噪聲的敏感性。
對圖像進行小波變換后,人眼對不同方向不同層次的中高頻子圖像中的噪聲比較不敏感,特別是對45度方向高頻子圖像中的噪聲更不敏感(如CH子帶)。本文取文獻[4]的模型。設不同層l(l=2、3)小波子帶對噪聲的掩蓋因子記為Sl.o
Step4:對每塊小波子塊都按(6)式嵌入整個的水印信號Wd 。嵌入公式為:
Fkk(x,y)=Fk(x,y)+β.νWd(x,y)(4)
其中β為大小可變的比例因子, ν=ρsi*Sl.o自適應系數
Step5:對嵌入水印后的小波子塊進行IDWT得到嵌入水印后的圖象Y
2.2 水印的提取
水印提取實際上是水印嵌入的逆過程, 需要用到原始圖像, 通過對原始圖像和嵌入水印后的圖像同時進行小波變換, 計算出3、2層每個小波子帶、小波子塊的嵌入數值, 逆運算求出嵌入的水印信號。把在每個小波子帶、小波子塊得到嵌入的水印信號進行平均,得到嵌入的置亂后的確認水印Wd1和Wd2最后,對Wd進行調解.對提取出的水印信號Wd進行反置亂.得到恢復的水印信號,記為Wd*。
3 實驗結果和分析
對水印的可感知性進行評估可以通過主觀測試或者質量度量來衡量。主觀測試對最終的質量評價有一定的使用價值,但研究和開發情況并不實用。
在這種情況下,量化失真的度量也就更加有效,并且也使不同的方法間的比較也趨向于合理,因為結果不依賴于主觀評定。一般采用的度量標準是峰值信噪比(PSNR).
在常用的視頻序列和商用圖象的應用中,取K=8,在一些文獻中,直接將αmax2=255代入到公式中。
水印信息的評價采用NC作為評價標準。
實驗中使用Haar小波進行分解,選取\"Lena\",\"pep-pers\",\"barb\"3幅大小為512*512的經典原始圖象作為原始圖象。64*64的二值圖象作為水印。
為了平衡不可見性和穩定性,選取β=33作為調節因子,如圖1所示。圖1(a)為512*512的原始灰度圖象,圖1(b)為嵌入水印后的lena圖象(PSNR=46.73),圖1(c)為64*64的水印信息,圖2(d)為提取的水印信息(NC=0.998)。
由表1可以看出本算法與文獻[5]算法的比較結果。在選取不同的原始圖象時,本算法的PSNR值都要高出5db左右。
幾種攻擊測試和結果如下所示:
(1)JPEG壓縮。表2為兩種算法JPEG壓縮后的檢測結果比較,其中QF為壓縮因子,PSNR是根據原始圖象和JPEG壓縮后的圖象水印圖象求出的值。
當QF小于30時水印可以準確地提取。當QF=15時含水印圖象已經有了非常嚴重的失真,但是根據提取的水印圖象仍
能辨認夠出 “花朵”。
(2)添加高斯噪音攻擊。表3中Density為密度因子范圍為1~100,實驗結果證明本算法對高斯攻擊具有較強的穩定性。
(3)中值濾波。表4使用中值濾波進行了攻擊測試,提取水印圖象中的漢字能夠被明顯地辨認出來。
(4)剪切。提取水印圖象中的“花“漢字能夠被辨認出來。
4 結論
提出了一種基于人類視覺系統的小波域數字水印算法。從實驗結果可以看出。嵌入水印圖象具有更好的不可見性。這主要歸功于對小波塊的進一步分類和對水印進行DCT變換。攻擊檢測證明本算法對JPEG壓縮、添加高斯噪音、中值濾波、剪切等常見的水印攻擊上,具有較強的穩健性。
參考文獻:
[1] 黃繼武,譚鐵牛.圖象隱形水印綜述[J].自動化學報,2006,26(5):645-655.
[2] 魯江,基于小波變換數字水印算法的研究[J].蘭州理工大學碩士論文,2005,25(3):30-45.
[3] Lewis A S,Knowles G,Image Compression Using the 2-D WaveletTransform[J].IEEE Trans,On Image Processing,1992,(2);244-250.
[4] Barin M,Bartolini P,Piva A,Improved Wavelet-based Water-marking Through Pixel-wise Masking[J].IEEE Trans,on Image Processing,2001,10(5):783-791.
[5] 黃達人,劉九芬,黃繼武.小波變換域圖象水印嵌入對策和算法[J].軟件學報,2002,13(7):1290-1297.
[6] 郭宏.基于小波域的穩健性數字圖像水印優化算法[J].紡織高校基礎學報,2007(04).
[7] 郭玉輝,高世偉.結合人類視覺系統的數字圖像水印技術[J].計算機工程與設計.2008(01).
[8] 張洪,劉曉云.基于小波變換的自適應公鑰數字水印[J].電子科技大學學報,2007(01).
[9] 陳紅梅.信息隱藏與數字水印[J].遼寧教育行政學院學報,2007(02).
[10] 華宏虎,張權,唐朝京.數字水印研究及Matlab仿真實現[J].現代電子技術,2007(05).
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文