摘 要:提出了一種基于小波變換的圖像嵌入數(shù)字水印及檢測的方法。對數(shù)字圖像進行多級二維小波變換可以得到一個逼近圖像和幾個高頻細節(jié)圖像,對低頻(逼近部分)圖像嵌入數(shù)字水印,對加入水印的圖像進行小波逆變換得到重構(gòu)圖像。檢測時,先對重構(gòu)圖像進行小波變換,再對低頻圖像提取數(shù)字水印。
關(guān)鍵詞:數(shù)字水印;小波變換;小波逆變換;魯棒性
中圖分類號:TP392 文獻標(biāo)識碼:B
文章編號:1004-373X(2008)11-075-03
Realization of Embedding and Extracting Watermark Based on Wavelet Transform
WANG Wenxia,PENG Bo
(Henan University of Science and Technology,Luoyang,471003,China)
Abstract:In this paper,a method of realization of embedding and extracting watermark based on wavelet transform is given.An approach image and several high frequency image are gained by multi-level 2D wavelet transform to digital image.Watermark is added to the low band of the wavelet transform of image,and a watermark embedded image is reconstructed.Then,watermark is extracted from the low band of wavelet transform of watermark embedded image.
Keywords:digital watermark;wavelet transform;invert wavelet transform;robustness
1 引 言
隨著IT技術(shù)的高速發(fā)展,多媒體技術(shù)得到了越來越廣泛的應(yīng)用。多媒體信息的數(shù)字化,使制作、處理和存儲這些信息變得越來越方便,Internet的飛速發(fā)展使這些數(shù)字媒體信息廣泛地被復(fù)制與傳播。然而數(shù)字媒體的版權(quán)保護已經(jīng)成為一個迫切需要解決的問題。
加密技術(shù)、數(shù)字簽名和數(shù)字水印技術(shù)[1]都可以用來保護數(shù)字媒體的版權(quán)。傳統(tǒng)的加密技術(shù)使得只有掌握密鑰的授權(quán)用戶才能解密數(shù)據(jù)并使用數(shù)字媒體,但這種加密方法只能控制用戶是否能得到數(shù)據(jù),一旦被破解,就沒有有效的手段來保證數(shù)據(jù)不被修改、復(fù)制和傳播。數(shù)字簽名通過使用私有密鑰對數(shù)字媒體進行簽名,用公共的檢測算法就可以檢查產(chǎn)品的內(nèi)容是否符合相應(yīng)的簽名。數(shù)字簽名需要在原始數(shù)據(jù)中加入大量的簽名,盡然增加所需存儲的數(shù)據(jù),因而不太適用于數(shù)字圖像、視頻或音頻的版權(quán)保護。所謂“數(shù)字水印”是利用人類的聽覺和視覺系統(tǒng)的特點,往多媒體數(shù)據(jù)中添加的某些數(shù)字信息,比如將在數(shù)碼相片中添加攝制者的信息,在數(shù)字影碟中添加電影公司的信息等等。與普通水印的特性類似,數(shù)字水印在多媒體數(shù)據(jù)中(如數(shù)碼相片)也幾乎是不可見的,也很難被破壞掉。 通過專門的檢驗步驟又能提取出所加入的信息,對著者的知識產(chǎn)權(quán)進行保護。因此,數(shù)字水印技術(shù)作為版權(quán)保護的一種有效手段受到了越來越多的關(guān)注。
數(shù)字水印有魯棒性的要求,即它可以抵抗第三方的攻擊或正常的、標(biāo)準(zhǔn)的數(shù)據(jù)操作和變換,即使攻擊者知道傳遞的數(shù)據(jù)中包含隱藏的重要信息,也無法將其提取出來,或在不嚴重損壞宿主數(shù)據(jù)的情況下無法將水印破壞掉。一般來說,圖像數(shù)字水印都需要具備以下特性:
魯棒性
是指數(shù)字水印經(jīng)過宿主圖像的某種改動(如噪聲、濾波、JPEG 壓縮、D/A 轉(zhuǎn)換等),仍然能被檢測和提取出來。如果沒有魯棒性(Robustness)的要求,水印與信息偽裝技術(shù)上的處理本質(zhì)上是完全一致的。
不可感知性
即宿主圖像在嵌入水印以后沒有明顯的降質(zhì)現(xiàn)象,嵌入的水印在視覺上是不可感知的。這主要是運用了人們視覺的一些特性。
安全性
水印信息能夠抵抗非法攔截和破解,即使受到非法攻擊,也能進行檢測和識別。
2 數(shù)字水印的典型算法
數(shù)字水印技術(shù)橫跨多種學(xué)科,其算法比較多,主要的有以下幾種:
2.1 最低有效位算法(LSB)
最低有效位算法(LSB)是L.F.Turner和R.G.van Schyndel 等人提出的第一個數(shù)字水印算法,是一種典型的空間域信息隱藏算法。LSB算法使用特定的密鑰通過m序列發(fā)生器產(chǎn)生隨機信號,然后按一定的規(guī)則排列成2維水印信號,并逐一插入到原始圖像相應(yīng)像素值的最低幾位。由于水印信號隱藏在最低位,相當(dāng)于疊加了一個能量微弱的信號,因而在視覺和聽覺上很難察覺?,F(xiàn)在的數(shù)字水印軟件已經(jīng)很少采用LSB 算法。
2.2 Patchwork算法
Patchwork是麻省理工學(xué)院媒體實驗室Walter Bander等人提出的一種數(shù)字水印算法,主要用于打印票據(jù)的防偽。Patchwork數(shù)字水印隱藏在特定圖像區(qū)域的統(tǒng)計特性中,其魯棒性很強,可以有效地抵御剪切、灰度校正、有損壓縮等攻擊,其缺陷是數(shù)據(jù)量較低,對仿射變換敏感,對多拷貝平均攻擊的抵抗力較弱。
2.3 文本微調(diào)算法
文本微調(diào)算法用于在PS或PDF文檔中隱藏數(shù)字水印,主要是通過輕微改變字符間距、行間距和字符特征等方法來嵌入水印,這種水印能抵御攻擊。
2.4 DCT變換域數(shù)字水印算法
DCT變換域數(shù)字水印算法是目前研究比較多的一種算法,它具有魯棒性強、隱蔽性好的特點。其核心思想是在圖像的DCT變換域上選擇中低頻系數(shù)疊加水印信息。由于JPEG、MPEG等壓縮算法的核心是在DCT變換域上進行數(shù)據(jù)量化,所以通過適當(dāng)?shù)厝诤纤∵^程與量化過程,可以使水印抵御有損壓縮。DCT變換域系數(shù)的統(tǒng)計分布有比較好的數(shù)學(xué)模型,可以從理論上估計水印的信息量。
2.5 其他變換域數(shù)字水印算法
變換域數(shù)字水印并不局限于DCT變換域或傅里葉譜,只要能很好地隱藏水印信息,一切信號變換都是可行的。本文就是在利用小波變換,在時/頻域上進行數(shù)字水印的嵌入與提取。
3 小波變換
小波變換[2]是對信號進行多分辨率分解,圖1是對數(shù)字圖像進行兩級小波分解示意圖。原始圖像經(jīng)過一級小波變換,被分解為4個一級子圖:即1個低頻子圖LL1(原始圖像的逼近)和3個高頻子圖(細節(jié)部分):HL1(水平方向細節(jié)),LH1(垂直方向細節(jié))和HH1(對角線方向細節(jié))。若對一級近似子圖LL1再進行小波分解,又可得更低分辨率的4個二級子圖(LL2,LH2,HL2,HH2),反復(fù)對低頻子圖進行分解,就可以實現(xiàn)對數(shù)字圖像的多級小波分解。但是,對一個圖像不是能夠無限次分解,對于N*N的圖像,最多能分解log2N層,最深層的低頻子圖集中了被分解圖像的主要能量,含有圖像的主要特征。低頻子圖像具有較強的抗噪能力,而各層高頻子圖則分別保持了被分解圖像各方向的細節(jié),刻畫了被分解圖像的邊緣細節(jié)特征,因此稱為被分解圖像的細節(jié)子圖,高頻子圖這些邊緣細節(jié)易受噪聲影響,其穩(wěn)定性較差。
圖1 圖像小波二級分解示意
4 數(shù)字水印嵌入算法
圖2是基于小波變換(DWT)的數(shù)字水印嵌入流程圖,包括兩個部分,第一部分是預(yù)處理部分,包括數(shù)字水印的生成,水印的置亂,對原始(宿主)圖像進行DWT變換等;第二部分包括對DWT生成的圖像嵌入水印和逆小波變換,生成含水印的圖像。
圖2 數(shù)字水印嵌入流程圖
4.1 水印序列的生成
水印圖像可表示為:
W={w(i,j),0≤i
(1)
本文采用的是三種不同字體下生成的BMP圖像作為數(shù)字水印。
4.2 水印序列置亂
數(shù)字水印嵌入到宿主圖像中之前,要先將水印進行置亂處理。置亂本質(zhì)就是一種加密,只有掌握了密鑰的人才可以將提出來的水印序列恢復(fù)成有原始水印圖像,增強了水印的安全性。圖像的置亂有很多種的方法,如Arnold變換、幻方變換、Hilbert曲線、Gray碼法和基于混沌的置亂等方法[3,4]。本文采用的是Arnold變換。
4.3 水印的嵌入
掃描宿主圖像的L級小波變換的低頻子圖系數(shù)[5],求得系數(shù)的均值A(chǔ)VG,在AVG上加一個小的δ值,求得一個區(qū)間A:[AVG-δ,AVG+δ]。對水印圖像各像素位置x=1~P,y=1~Q,做如下操作:根據(jù)變換矩陣,生成該水印像素在載體圖像中的對應(yīng)嵌入位置(x1,y1),然后求出宿主子圖(x1,y1)處小波系數(shù)的小數(shù)部分值c(x1,y1),如果水印像素值w(x,y)=1,則修改相應(yīng)小波系數(shù)的小數(shù)部分到A范圍內(nèi),如果水印像素是w(x,y)=0,則修改相應(yīng)的小波系數(shù)使其變?yōu)檎麛?shù)。對修改過的逼近子圖和各細節(jié)子圖進行小波逆變換,得到嵌有水印的圖像。
5 數(shù)字水印提取與檢測算法
圖3是數(shù)字水印提取流程圖,包括兩個部分,第一部分是預(yù)處理部分,主要是對含水印圖像進行DWT變換等;第二部分是數(shù)字水印提取部分,包括對DWT生成的子圖提取嵌入水印和利用密鑰對提取的水印進行置亂恢復(fù),生成水印圖像。
對含有水印的圖像作L級小波分解,對分解后的低頻子圖求得水印位置,嵌入水印的小波系數(shù)只有整數(shù)和非整數(shù)兩種情況,含有水印圖像可能受到攻擊,使分解后的小波系數(shù)部分發(fā)生變化,提取水印時假設(shè)這種變化在[AVG-δ]/2或\\[1- AVG-δ\\]/2以內(nèi)。按水印像素總數(shù)進行位置掃描x=1~P,y=1~Q,對水印空間各點(x,y)進行如下操作根據(jù)變換矩陣,生成該圖像中的對應(yīng)位置(x1,y1),然后求出含水印的子圖(x1,y1)處小波系數(shù)的小數(shù)部分值c(x1,y1),根據(jù)c(x1,y1),恢復(fù)水印值。
圖3 數(shù)字水印提取流程圖
6 實驗結(jié)果
實驗中,采用了HAAR小波對宿主圖像(512*512的圖像)進行小波分析,然后嵌入數(shù)字水印(32*32的二值圖像)。
圖4中(a)為原始圖像,(b)是(a)加入(c)后的圖像,(d)從(b)中提取的水印,(f),(h)提取的水印,對應(yīng)的原始水印是(e)和(g)。
該算法實現(xiàn)了數(shù)字水印的嵌入與提取,實驗結(jié)果表明算法具有較好的魯棒性,但使用db6以后,提取的水印有較大的誤差,如圖5所示。
圖4 實驗結(jié)果
圖5 在不同小波下恢復(fù)的數(shù)字水印
參 考 文 獻
[1]Van Schyndel R,Tirkel A,Osborne C.A Digital Watermark[J].In:Proc of the IEEE on international conference on Image Processing.1994(2):86-90.
[2]王衛(wèi)衛(wèi),楊波,宋國鄉(xiāng).基于圖像小波變換低頻系數(shù)的數(shù)字水印算法[J].信號處理,2001,17(6):554-557.
[3]Tsekeridou S.Bernoulli Shifts Generated Chaotic Watermarks:Theoretic Investigation[J].IEEE International Conference on Acoustics,Speech,and Signal Processing,2001(3):1 361-1 364.
[4]Tsekeridou S.Statistical Analysis of a Watermarking System Based on Bernoulli Chaotic Sequences [J].Signal Processing,2001,81(6):1 273-1 293.
作者簡介 王雯霞 女,1979年出生,河南省偃師市人, 講師,碩士研究生。主要研究方向為多媒體通信及通信信號處理。
彭 勃 男,講師,碩士研究生。
注:本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文。