一種基于DWT-DCT變換強(qiáng)魯棒性的數(shù)字水印算法
1 引言
網(wǎng)絡(luò)技術(shù)的迅速發(fā)展使多媒體數(shù)據(jù)的傳輸更加容易,信息隱藏和版權(quán)保護(hù)成為迫切需要解決的問題,數(shù)字水印技術(shù)是保護(hù)數(shù)據(jù)的有效途徑。不可見性和魯棒性是數(shù)字水印系統(tǒng)兩個(gè)最重要的特性。水印被嵌入在圖像的一些重要系數(shù)中,其抗攻擊的魯棒性較好,但重要系數(shù)改變太多,則圖像會(huì)產(chǎn)生嚴(yán)重失真。所以魯棒性和不可見性是彼此矛盾的。水印技術(shù)可分為空域水印技術(shù)和變換域水印技術(shù)??沼蛩∷惴敯粜圆睢?a class="contentlabel" href="http://cafeforensic.com/news/listbylabel/label/變換">變換域算法可使所嵌入水印信號(hào)的能量分散到空間的所有像素上,有利于保證水印的不可見性,同時(shí)魯棒性強(qiáng)。離散余弦變換DCT(Discrete Cosine Transformation)算法易于在數(shù)字信號(hào)處理器中快速實(shí)現(xiàn),離散余弦變換域圖像水印與常用的圖像壓縮標(biāo)準(zhǔn)JPEG兼容,對(duì)壓縮、濾波和其他一些攻擊具有較強(qiáng)的穩(wěn)健性。離散小波變換DWT(DiscreteWavelet Transformation)是將信號(hào)分解為不同尺度分量的線性運(yùn)算,其實(shí)現(xiàn)是通過信號(hào)與尺度變化的濾波器卷積完成的。離散小波變換是一種多分辨率分析方法,在時(shí)域和頻域都可表征信號(hào)局部特征。小波分解將原始圖像分解為一系列的低頻分量和高頻分量,根據(jù)人類感覺系統(tǒng)的掩蔽效應(yīng),可將數(shù)字水印信息嵌入到原始載體不易被感知的區(qū)域,使數(shù)字水印具有較強(qiáng)的不可見性。
由于小波變換具有良好的局部時(shí)頻分析特性和多分辨率分析特性,而離散余弦變換具有良好的聚能效應(yīng)。綜合兩種變換的優(yōu)點(diǎn),這里提出一種基于DWT和DCT聯(lián)合變換的數(shù)字水印技術(shù)。
2 水印的嵌入算法
水印嵌入算法的主要思想:為了提高水印的安全性,在水印嵌入前先進(jìn)行混沌加密,然后將宿主圖像經(jīng)過DWT得到4個(gè)子帶:LL、LH、HL、HH,選擇HL作為嵌入子帶。為了使嵌入的水印可以均勻分布在HL子帶,對(duì)HL子帶分塊進(jìn)行DCT變換。將水印嵌入DCT變換后的中頻系數(shù)。這里采用經(jīng)典的比較中頻系數(shù)法進(jìn)行水印嵌入,嵌入過程如圖1所示。
該算法步驟如下:
(1)對(duì)原始水印圖像進(jìn)行混沌置亂加密。置亂水印圖像能增強(qiáng)水印算法的安全性。充分利用混沌序列對(duì)初值的敏感性高、安全性強(qiáng)、密鑰空間大的特點(diǎn),對(duì)水印圖像進(jìn)行置亂?;煦缧蛄杏蒐ogistic映射產(chǎn)生,按照Logistic映射式式(1)進(jìn)行迭代,得到序列:
式中,xn∈(0,1),μ為分叉參數(shù)。
由Lyapunov指數(shù)的計(jì)算可知,當(dāng)3.569 9≤μ≤4時(shí),Lo-gistic映射處于混沌狀態(tài)。研究表明,當(dāng)且僅當(dāng)μ=4時(shí),映射具有最強(qiáng)的混沌特性,所以在生成混沌序列時(shí)取μ=4。xn是實(shí)值序列,實(shí)值序列不利于計(jì)算機(jī)處理,通常需要對(duì)實(shí)值序列進(jìn)行量化,對(duì)xn進(jìn)行量化得到二值序列Xn。
Logistic序列對(duì)初始值敏感,只要設(shè)定迭代次數(shù)、初始值,就可以得到很多偽隨機(jī)序列,因此將初始值作為用戶的密鑰,利用式(1)產(chǎn)生混沌序列混沌序列Xp。加密數(shù)字水印的方法很多,這里采用將水印圖像W表示為向量形式Wp,P=1,2,…MxN。Wp作為明文空間,利用混沌序列Xp對(duì)水印圖像進(jìn)行加密,得到加密后的水印圖像Vp:
這里+執(zhí)行異或運(yùn)算。解密過程與加密相同,用加密后的水印和混沌序列進(jìn)行異或運(yùn)算。將x0=0.800 000 000 1作為用戶的密鑰,圖2為加密后的水印圖像?;煦缧蛄袑?duì)初值極其敏感,即使密鑰(初值)相差細(xì)微,也無法正確解密水印圖像。
(2)對(duì)宿主圖像進(jìn)行一級(jí)DCT變換。得到4個(gè)子帶LL、LH、HL、HH,為了兼顧透明性和魯棒性,選擇HL作為嵌入子 、帶。提取HL系數(shù)組成的矩陣A。
(3)對(duì)HL系數(shù)組成的矩陣A,按照8x8的大小進(jìn)行分塊。分成8x8的塊是為了與JPEG壓縮標(biāo)準(zhǔn)兼容。
(4)對(duì)分塊后的矩陣進(jìn)行DCT變換。
評(píng)論