戈美凈 王青云 溫國強
(天津中德職業(yè)技術(shù)學(xué)院航空航天與汽車學(xué)院,天津 300350)
基于奇異值分解的DWT DWT域數(shù)字水印算法
戈美凈 王青云 溫國強
(天津中德職業(yè)技術(shù)學(xué)院航空航天與汽車學(xué)院,天津 300350)
本文提出了一種基于奇異值分解的DWT域數(shù)字水印算法。首先用Aronld算法對水印圖像進(jìn)行置亂;然后對原始載體圖像進(jìn)行小波變換,同時對低頻系數(shù)進(jìn)行奇異值分解;最后將加密后水印寬、高放大到合適尺寸,并嵌入載體圖像DWT域的低頻子帶的奇異值中,完成了水印嵌入。仿真結(jié)果表明,本算法嵌入的水印不僅能保證較高的可見性,同時能夠很好地抵抗多種攻擊,有較好的魯棒性。
數(shù)字水印;DWT;奇異值分解
隨著計算機和網(wǎng)絡(luò)技術(shù)的發(fā)展,大量的多媒體信息都可以通過網(wǎng)絡(luò)被人們輕松地訪問、拷貝和傳播。因此,用來保護(hù)多媒體數(shù)據(jù)版權(quán)的數(shù)字水印技術(shù)成為近年來的研究熱點。
關(guān)于此技術(shù)國內(nèi)外已發(fā)表了大量相關(guān)文章,但原理基本相同,即在時/空域或變換域中選擇合適的系數(shù)進(jìn)行微小改動,從而達(dá)到將水印隱藏在載體圖像中的目的。根據(jù)工作域的不同,可以分為空域/時域水印和變換域水?。?]。一般來說,變換域算法相對空域算法來說,復(fù)雜度高,但可嵌入水印數(shù)據(jù)量大、透明性好、安全性也高,因此得到了廣泛研究與應(yīng)用。
在眾多變換域算法中,小波變換的空間-頻率定位特性和多分辨率特性可以保證所嵌入水印的魯棒性,空間-頻率特性與HVS某些視覺特性的相似性可以將高強度的水印嵌入到HVS不太敏感的區(qū)域。因此本文在小波域進(jìn)行水印的嵌入。但對圖像進(jìn)行小波分解后,由于低頻部分包含了圖像的大部分能量,如果將圖像嵌入低頻子帶,圖像魯棒性較好,可以抵抗大多常規(guī)攻擊。但同時正因為低頻分量直接影響著圖像的質(zhì)量,水印嵌入容量過大會直接影響圖像的視覺效果[2]。為了解決此問題,考慮將水印嵌入到原始載體圖像的奇異值中[3-4]。
根據(jù)線性代數(shù)中的矩陣相關(guān)理論:對矩陣進(jìn)行奇異值分解后,大的奇異值對應(yīng)矩陣中的主要信息,運用SVD進(jìn)行數(shù)據(jù)分析來提取其中的主要部分是合理的?;谝陨掀娈愔捣纸獾男再|(zhì),在數(shù)字圖像處理中應(yīng)用SVD可以保證:①圖像奇異值的穩(wěn)定性非常好,即當(dāng)圖像被施加小的擾動時,圖像的奇異值不會有大的變化;②奇異值所表現(xiàn)的是圖像的內(nèi)蘊特性而非視覺特性;這一點說明了改變奇異值不會產(chǎn)生大的視覺變化,這為不可見性提供了保障。經(jīng)過大量的實驗表明,最大奇異值在經(jīng)受一般攻擊后變化不大,因此該文的算法正是通過改變奇異值來實現(xiàn)水印嵌入[5]。
鑒于以上分析,本文結(jié)合Arnold變換對攻擊的分散,提出了一種基于SVD的小波域圖像數(shù)字水印算法。該算法首先將圖像進(jìn)行小波變換,然后對低頻系數(shù)進(jìn)行奇異值分解,再將經(jīng)Arnold變換后的水印嵌入得到的奇異值中,從而得到帶水印的圖像。實驗表明:該圖像有較好的魯棒性和抗攻擊性。
為了提高嵌入水印的魯棒性,要求在嵌入盡量多水印的前提下具有較強的抗攻擊性。需要從變換域、水印預(yù)處理和水印嵌入強度3個方面來分析。首先,由于本算法在小波域中進(jìn)行水印嵌入,考慮到小波的低頻子帶系數(shù)較大,聚集了圖像的大部分能量,嵌入水印后不可見性較差,但魯棒性較好;高頻子帶描述了圖像的細(xì)節(jié)部分,嵌入水印后不可見性較好,但魯棒性較差。平衡這兩方面,考慮在二級小波子帶LH2(即圖像的中低頻區(qū)域)的奇異值中嵌入水印,以達(dá)到較好的效果。接著,為了保證水印的魯棒性,考慮到Arnold變換不僅具有良好的分散攻擊性能,并且相對于其他圖像加密方法有計算量較小和較好的置亂度的優(yōu)點,因此在嵌入水印前,對水印作Arnold變換的預(yù)處理。最后來分析嵌入強度,本文采用二值圖像作為水印,在選擇的嵌入系數(shù)中,直接將水印嵌入到中低頻子帶全部奇異值中,實驗中分別選擇了f= 0.03,f=0.04和f=0.05進(jìn)行效果比較,得到用f=0.04作為控制因子仿真效果最好。
1.1 水印的生成(Ar n o l d圖像置亂)
為了水印的安全性,本文采用Arnold變換作為水印嵌入的預(yù)處理,對水印圖像作時域上的變換,目的是對水印信息進(jìn)行亂序,達(dá)到加密的效果。Arnold變換也稱貓臉變換,原意為catmapping,其定義:假設(shè)對于平面單位正方形內(nèi)的所有點,作如下變換:
式中,k為一個控制參數(shù),N是矩陣的大小,(x,y)表示像素點在變換前后的位置。設(shè)P表示二值水印信息組成的一個m*m的矩陣,對每一個點的坐標(biāo)作A(Nk)的變換之后,這個m*m的矩陣就變成一個N*N的矩陣。矩陣的每個元素的值為0或1。如果變換AN(k)有周期T,那么(x,y)經(jīng)過T次變換之后,就能回到原始位置。因此,如果點(i,j)進(jìn)行了n次A(Nk)變換,它還需要作T-n次變換,就可以將(i,j)重新恢復(fù)到原始位置。
在Arnold變換中,式中的k與次數(shù)n構(gòu)成數(shù)對(n,k),正好可以成為置亂的密鑰,本文算法中k取值為1[6-7]。
1.2 水印嵌入
設(shè)X代表大小為M×M的原始圖像,W代表大小為N×N水印圖像,一般的,基于小波多級分解的特點考慮,水印尺寸的選擇要小于原始圖像尺寸,并且滿足M≥2PN(p為正整數(shù))。在本文算法中,對小波進(jìn)行二級分解,水印大小M≥4N即可,算法中會對水印進(jìn)行放大操作處理,因此對水印圖像的尺寸要求不是很嚴(yán)格,適應(yīng)性較強。據(jù)以上分析,具體水印嵌入算法如下:
1.2.1 讀入原始載體圖像X和原始水印圖像W;
1.2.2 采用A r n o l d變換對水印圖像進(jìn)行置亂加密,得到加密后水印W ,其中置亂次數(shù)k作為密鑰保存;
1.2.3 對載體圖像進(jìn)行二級小波分解,得到不同分辨率下的細(xì)節(jié)子圖和一個逼近子圖X ,其中,j=1,2表示分解的級數(shù),k=1,2,3分別表示該分辨率級下的水平方向、垂直方向和對角線方向的3個細(xì)節(jié)子圖;
1.2.4 對二級分解后得到的X 進(jìn)行奇異值分解,X= USVT,得到對角矩陣S;
1.2.5 將加密后水印W擴大到和X 一樣大小,得到WW(i,j),其中i,j=1,2…M/4,之后將水印嵌入到對角矩陣S中,得到中間矩陣Temp=S+f*WW,f為嵌入強度,取值為0.04;
1.2.6 再對中間矩陣Te m p進(jìn)行奇異值分解Te mp= U1S1V1T,得到對角矩陣S1,通過反變換US1VT得到嵌入水印后的二級低頻子帶(X);
1.2.7 將上述操作后的(X)替換掉原來X ,并與原來和X 重新組合,通過二級小波反變換得到嵌入水印后的圖像XW。
1.3 水印提取
顯然,數(shù)字水印的提取是其嵌入的逆過程,本算法在提取時需要借助原始載體圖像的一些信息,水印的提取過程如下:
1.3.1 對含水印圖像XW進(jìn)行二級小波分解,得到不同分辨率下的細(xì)節(jié)子圖和一個逼近子圖XW;
1.3.3 結(jié)合嵌入過程中得到的中間矩陣Temp奇異值分解后的正交矩陣U1、V1,矩陣U1、V1和SW相乘得到
1.3.4 利用嵌入步驟(4)和(5)中的S和f,提取嵌入的已置亂的擴大后水印
1.3.5 將WW*縮小到與原始水印一樣大小,得到置亂水印W*;
1.3.6 對W*進(jìn)行Arnold變換(從第n+1次到第T次,共T-n次),即可得到最終提取出的印W。
為驗證算法有效性,實驗在MATLAB平臺上進(jìn)行仿真,采用384×384的灰度圖像Lena作為載體圖像,見圖1(a),水印為75×75的二值圖像,見圖1(b),考慮到對載體圖像進(jìn)行二級小波分解,滿足384>75*4。
圖1 原始載體圖像與水印圖像
對于提取出的水印W和原始水印W,可從視覺上直觀認(rèn)知兩者的相似度,但由于這是觀察者的主觀評價,受各種環(huán)境條件的影響,因此需要定量描述兩者的相似度。本文通過計算W與W的歸一化相關(guān)系數(shù)NC來度量兩者的相似度。定義如式1所示:
其中,m,n分別表示原始水印W和提取水印W圖像的寬、高。水印圖像受到多種惡意攻擊后,通過計算NC系數(shù)的值,可以比較客觀的評價數(shù)字水印算法抗攻擊的能力。含水印圖像未受到任何攻擊時,得到的帶水印的圖像與提取的水印如圖2,此時,NC系數(shù)為1.0000,說明該算法的透明性較好,可以完全提取水印。
圖2 嵌入水印前與嵌入水印后
對算法進(jìn)行剪切39.1%、圖像增亮、增加對比度、加入高斯噪聲(均值為0、方差為0.05)、加入乘積噪聲(均值為0、方差為0.05)、旋轉(zhuǎn)45°等攻擊,所提取的水印均得到了較好的效果,如圖3和表1。
圖3 圖像攻擊與提取出水印
表1 常規(guī)攻擊下提取的水印N C值
本文將小波分解與奇異值分解相結(jié)合,同時利用Arnold圖像置亂技術(shù)消除像素間的相關(guān)性,將水印嵌入到經(jīng)過小波分解的子帶的部分奇異值中,實現(xiàn)水印嵌入。實驗證明,該算法在抵抗各種攻擊方面具有非常理想的魯棒性,可以抵抗剪切、圖像增亮、高斯噪聲、旋轉(zhuǎn)等常規(guī)攻擊,同時算法具有良好的不可見性。
[1]Christine I.Podilchuk,Edward J.Delp.DigitalWatermark?ing:Algorithms and Applications[J].IEEE Signal Processing Mag?azine.2001:33-46.
[2]周鵬穎,沈磊.基于小波—奇異值分解的數(shù)字水印新算法[J].計算機應(yīng)用研究,2010,27(5):1896-1897,1910.
[3]王樹梅,趙衛(wèi)東,王志成.基于SVD的圖像數(shù)字水印技術(shù)研究[J].計算機工程與設(shè)計,2008,29(11):2834-2837.
[4]劉瑞禎,譚鐵牛.基于奇異值分解的數(shù)字圖像水印方法[J].電子學(xué)報,2001,29(2):168-171.
[5]徐慕蓉,樊鎖海.一種新的基于奇異值分解的圖像數(shù)字水印算法[J].計算機仿真,2011,28(5):291-294.
[6]丁瑋,閻偉齊,齊東旭.基于Arnold變換的數(shù)字圖像置亂技術(shù)[J].計算機輔助設(shè)計與圖形學(xué)學(xué)報,2001,13(4):338-341.
[7]馬在光,丘水生.基于廣義貓映射的一種圖像加密系統(tǒng)[J].通信學(xué)報,2003,24(2):51-57.
DWT Domain DigitalW atermarking A lgorithm Based on Singular Value Decom positiondecom position
Ge MeijingWang Qingyun Wen Guoqiang
(School of Aeronautics and Automobiles,Tianjin Sino-German Vocational Technical College Tianjin 300350)
This paper proposed a DWT domain digital watermarking algorithm based on singular value decomposition.Firstly,the wartermark image was scrambled with Arnold.Afterwards,the original image was transformed into the discrete wavelet domain,while the low-frequency coefficients were used for singular value decomposition.Finally,the width and height of the encrypted watermark was amplified to a suitable size,and embedded into the singular value of low frequency sub-bands in the vector image DWT domain,and the watermarking embedmentwas finished.Simulation results demonstrates that this algorithm can ensure a relatively high invisibility ofwatermarking,and it is robust to variousattacks.
digitalwatermarking;DWT;singular valuedecomposition
TP309
A
1003-5168(2015)03-0008-3
2015-2-20
戈美凈(1987.10-),女,碩士研究生,助教,研究方向:圖像處理、機器視覺。