摘要:提出一種結合Arnold置亂技術的小波域灰度圖像數字水印算法,將置亂后的數字水印嵌入到載體圖像小波分解的低頻和部分中高頻系數上。實驗證明,該算法不僅具有較好的透明性,而且對圖像加噪、壓縮、剪切等具有較高的魯棒性。
關鍵詞:數字水印;離散小波變換;置亂
中圖分類號:TP309文獻標識碼 A文章編號:1009-3044(2008)34-1703-03
A Digital Watermarking Algorithm Based on DWT
DONG Xue-shu1,2
(1.School of Information Science and Engineering,Yangzhou University, Yangzhou 225101, China; 2.Department of Information, Jianghai Polytechnic College, Yangzhou 225101, China)
Abstract: a grayscale-image atermarking algorithm based on Discrete Wavelet Transform(DWT) and Arnold transform was proposed .We applied multi-resolution of wavelet transform to embed watermark to the low frenquency wavelet coefficients and part of other frequency wavelet of the original image.Experimental results demonstrate that the embedded watermarking is invisible and has good robustness against the attacks such as noise addition, filtering and JPEG compression.
Key words: digital watermarking; discrete wavelet transform; scrambling
1 引言
隨著網絡時代信息高速公路的迅速發展,信息隱藏、版權認證等技術是目前信息高速公路正常穩定發展不可缺少的“保鏢”。近年來數字水印技術作為一種新興的防盜版技術、開始廣泛應用于各種多媒體產品的版權保護,成為當前的一個十分活躍的研究領域。數字水印是嵌入在數字作品中的一個版權信息,利用數字產品存在的冗余度、將版權信息隱藏在其中,以達到保護版權的目的[1]。數字水印應滿足的基本要求:透明性、魯棒性、安全性[2]。透明性和魯棒性是數字水印系統中最重要的特性,但它們又是一對矛盾的特性。
目前,數字水印算法大致分為兩類:空域和頻域兩大類。空域算法對原始圖像不做任何處理,直接將水印信息嵌入到圖像的像素值中;頻域算法是先將原始圖像做相應的變換(包括DFT,DCT,DWT等),然后再嵌入水印信息。基于小波變換域(DWT)的數字水印技術是一種時間—尺度信號的多分辨率方法。它不僅可以較好的匹配HVS的特性,而且與JPEG2000兼容,因此,DWT域數字水印技術是目前的主要研究方向。
2 離散小波變換
小波變換是一種信號的時間—尺度(時間—頻率)分析方法,它具有多分辨率的特點,而且在時頻兩域都具有表征信號局部特征的能力,是一種窗口大小固定但其形狀可變,時間窗和頻率窗都可改變的時頻局部化分析方法[3]。小波變換的基本思想就是對信號進行多分辨率分解。根據S.Mallat 的塔式分解算法,圖像經過一級分解后可以分解成四個子帶:低頻(LL)、水平方向(HL)、垂直方向(LH)、對角線方向(HH),每個子帶的大小為原圖的四分之一,對低頻(LL)進行繼續分解,如圖1所示。
研究表明,假設對lena(256*256)圖像進行三級小波分解,低頻子圖集中了圖像的大部分能量,整個圖像能力的97%集中在第三層,其中僅LL3低頻子帶圖就占了93%,而高分辯子帶圖像上的數值都比較小,接近于零。
3 人類視覺系統(HVS)特性
為了使嵌入的水印不被感知而且穩健,就必須根據人眼視覺系統的特點,最大化的增加水印嵌入的強度。Lewis等指出HVS有如下特點:
1) 人眼對高頻帶以及對角(±45℃)方向的噪聲不敏感(頻率掩蓋);
2) 人眼對很亮或很暗區域的噪聲不敏感(亮度掩蓋);
3) 人眼對紋理豐富的區域的噪聲不敏感(紋理掩蓋)。
4 水印算法
4.1 Arnold置亂
Arnold置亂是Arnold在遍歷理論研究中提出的一種變換。對于一幅N×N的圖像F,離散化的Arnold變換定義如下:■
經過多次迭代,則Arnold可以表示為:
Pn=(An*p) mod N
隨著迭代次數的增加,圖像逐漸趨于混亂,不過到一定次數時,又將回到原圖,即存在一個變換周期。Arnold置亂的周期如表1所示。
該文水印圖像選用揚州大學(64×64)的灰度圖像,水印圖像及進行Arnold置亂后的圖像如圖2所示。
4.2 水印嵌入算法
假設宿主圖像F是灰度圖像,大小為M×M,水印圖像W是二值圖像,大小為N×N。宿主圖像F和水印圖像W兩者的大小之間滿足如下關系M=2k×N, N和M均為2n,n,k均是自然數,k>=1。嵌入灰度水印的算法過程如下:
1) 設水印圖像W像素為w(m,n),對水印圖像進行k1次Arnold變換(k1作為密鑰),W'表示變換后的水印圖像,w'(m,n)表示變換后的水印像素;
2) 將置亂后的水印圖像W'采用Haar小波基進行一級小波分解,得到一級分辨率下類似的三個細節子圖W1k,(k=1,2,3)和一個逼近子圖W10;
3) 對宿主圖像F進行三級小波分解,得到不同分辨率級下的多個細節子圖Xjk(j,k=1,2,3)和一個逼近子圖X30,然后將第三級分解的各子圖分別按系數進行排序分組,F'表示小波變換后的圖像;
■
要求(XX3j)i與原始水印一級小波分解子圖Wij,j=(0,1,2,3)所含數據量要相同。
4) 將W'一級小波分解后的各子圖分別重復嵌入原始圖像第三級小波分解后的對應子圖中:
■
經過反復試驗,嵌入系數a1i的取值范圍為0.06-0.1,嵌入系數a2i的取值范圍為0.06-0.08。
5) 將XW30,XW3k(k=1,2,3)與Xjk,(j=1,2;k=1,2,3) 重新組合并進行三級小波重構得到最終的嵌入水印圖像FW。
4.3 水印提取算法
水印提取算法與嵌入算法是對稱的,按相反的順序進行,步驟如下:
1) 將宿主圖像F和已嵌入水印圖像FW分別采用haar小波進行三級小波分解,分別得到不同分辨率級下的多個細節子圖Xjk,XWjk和一個逼近子圖 X30。X',XW'分別表示小波變換后的圖像
X'=DWT2(X)={Xjk,X30|j,k=1,2,3}
XW'=DWT2(XW)={XWjk,XW30|j,k=1,2,3}
2) 讀取X'的Xjk,j=3,k=0,1,2,3,XW'的XWjk,j=3,k=0,1,2,3,對Xjk 進行嵌入時同樣標準的分組,并依據分組位置對XW3k進行分組:
(V10)i=((XV30)i-(XX30)i)/a1i
(V1k)i=((XV3k)i-(XX3k)i)/a2i(k=1,2,3;i=1,2,3,4)
3) 將得到的(V10)i,(V1k)i分別求均值:
■
將得到的W10,W1k,k=1,2,3進行組合并進行一級小波重構得到W'' 。
4) 根據密鑰和水印圖像的尺寸k和T,對W''進行T-k次置亂,得到最終的提取水印。
5 實驗結果與性能分析
實驗采用功能強大的Matlab軟件進行仿真實驗,本文宿主圖像選用256*256的Lena圖像,水印圖像選用64*64的灰度圖像。在本文中采用峰值信噪比PSNR和相似性系數NC來衡量水印的魯棒性。
1) 沒有任何攻擊的實驗:
如果不對含水印圖像進行任何攻擊,通過人眼觀察原水印圖像和提取出的水印圖像,觀察不出它們之間的區別,可見本文的算法中,水印具有較好的視覺特征,即水印具有較強的透明性,通過Matlab計算,NC值可達1。如圖3所示。
2) 進行高斯和椒鹽噪聲攻擊的實驗:
對含水印圖像加入均值為0,方差為0.005的高斯噪聲和0.02椒鹽噪聲,實驗結果表明:高斯噪聲的PSNR=27.14,NC=0.8718;椒鹽噪聲的PSNR=25.14, NC=0.8922。如圖4所示。
3) 進行剪切攻擊實驗
對含水印圖像,進行相關剪切實驗,其中對水印圖像剪切25%后的實驗結果如圖5所示。
4) 進行JPEG壓縮攻擊實驗
對含水印圖像,進行以圖像質量百分數從50%到90%的壓縮,然后進行水印信息的檢測,如表2所示。實驗表明,算法對JPEG圖像壓縮有較好的魯棒性。
由以上實驗可見:采用本文的算法實現的小波域數字水印在具有很好的透明性的同時又能表現出較強的魯棒性。
6 結論
本文提出的算法對水印的嵌入和提取比較簡單,該算法對常見的攻擊如噪聲、JPEG壓縮和剪切具有較強的魯棒性,但不足的是此算法不能實現水印的盲檢測,以后還將進一步研究。
參考文獻:
[1] 鈕心忻.信息隱藏與數字水印[M].北京:北京郵電大學出版社,2004.
[2] Barni M,Baetolini F,Piva A.Improved wavelet based watermarking through pixel-wise masking[J].IEEE Transactions on Image Processing,2001,10(5):783-791.
[3] 張曉峰,段會龍. 基于小波變換的圖像水印嵌入方法[J]. 計算機工程與應用,2004(11):64-65.
[4] 黃達人.小波變換域圖像水印嵌入對策和算法[J].軟件學報,2002,13(7):1290-1297.
[5] 李勇,曲保章,陳性元.數據置亂算法的分析[J].計算機工程與科學,2001,23(3):70-72.