專利名稱:小波域混沌半脆弱數(shù)字水印嵌入與提取方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種小波域混沌半脆弱數(shù)字水印嵌入與提取方法,是一種特別適用于數(shù)字產(chǎn)品的認(rèn)證、內(nèi)容篡改定位和完整性證明的半脆弱數(shù)字水印嵌入與提取方法。
但是,這些基于安全的Hash函數(shù)的脆弱數(shù)字水印算法同樣存在很多問題。
問題一,上述類似算法不能容忍JPEG壓縮或者加性高斯白噪聲,不加區(qū)分的把它們也認(rèn)為是惡意攻擊。
問題二,上述算法由于不同級分享同一個LSB平面,導(dǎo)致嵌入內(nèi)容互相包含,所以需要分割算法來解決嵌入時的碰撞問題。
問題三,類似這些傳統(tǒng)的篡改定位方法一般是基于Hash函數(shù)對篡改的敏感性。Hash函數(shù)計算復(fù)雜度高,不適合實時處理,并且被認(rèn)可的安全的Hash函數(shù)種類少。
(2)基于受約束的矢量量化半脆弱數(shù)字水印矢量量化在圖像編碼領(lǐng)域應(yīng)用廣泛,一般來說是一種有損的壓縮編碼方法。參考文獻(xiàn)“Semi-fragile image watermarking method based on index constrainedvector quantization”(Lu Z M,Liu C H,Xu D G,et alElectronics Letters,2003,39(1)35-36)提出一種基于受約束的矢量量化的半脆弱數(shù)字水印算法(以下簡稱ICVQ)。該算法根據(jù)嵌入水印比特位把矢量量化碼本分類,再在滿足條件下的碼本子集中尋找最優(yōu)的量化碼本,以此達(dá)到嵌入水印比特的目的。該方案能容忍一定程度的JPEG壓縮,初步達(dá)到了半脆弱水印的設(shè)計要求。但是,該方案明顯存在許多不足之處問題一,只能抵抗很小程度JPEG壓縮。
問題二,嵌入水印的圖像的峰值信噪比太低。
問題三,必須離線設(shè)計矢量量化碼本,并且水印的提取必須傳輸該碼本。
綜上所見,對于一個性能良好的半脆弱數(shù)字水印,必須符合下面幾個基本要求(1)不可見,即嵌入水印后的數(shù)字多媒體數(shù)據(jù)必須要有很高的峰值信噪比值;(2)具有篡改證明能力;(3)能對非惡意攻擊具有很強的魯棒性,而對惡意攻擊具有較好的脆弱性;(4)檢測時不需要原始圖像;(5)具有篡改定位能力。而現(xiàn)有技術(shù)尚未能很好的解決這些問題。
為實現(xiàn)這樣的目的,本發(fā)明將原始圖像經(jīng)過二維二級小波分解,得到{LL2,HL2,LH2,HH2,HL1,LH1,HH1},其中LL2子層的象素灰度值映射為混沌初值,經(jīng)過若干次混沌迭代生成水印圖像,然后根據(jù)生成的水印圖像量化中頻系數(shù){HL2,LH2,HH2},利用混沌對初值的極端敏感性以及小波良好的時頻特性,精確地定位對加入水印圖像的篡改;通過靈活調(diào)節(jié)量化參數(shù)Δ1和Δ2,獲得對非惡意攻擊的魯棒性。
本發(fā)明包括以下具體步驟(1)初始化。選擇系統(tǒng)參數(shù)Key1,Key2,Δ1,Δ2。其中Key1和Key2為密鑰,Δ1和Δ2為量化參數(shù)。對原始圖像進(jìn)行二維二級小波分解,得到{LL2,HL2,LH2,HH2,HL1,LH1,HH1},并設(shè)LL2子層的大小為r×c。以密鑰Key1為混沌映射的初值,得到混沌隨機序列l(wèi)ocation(i,j)∈{0,1,2},1≤i≤r 1≤j≤c,此序列作為選擇量化系數(shù)所在的中頻子層;以密鑰Key2為混沌映射的初值,得到混沌隨機序列iternum(i,j)1≤i≤r 1≤j≤c,此序列將作為混沌迭代的次數(shù)。
(2)水印的生成把 映射為混沌的初值,這里 表示取下整數(shù),經(jīng)過迭代iternum(i,j)后,得到W(i,j)∈{0,1}。對LL2子層的所有系數(shù)執(zhí)行上述操作,得到大小為r×c的水印圖像W。
(3)水印嵌入根據(jù)location(i,j)∈{0,1,2},1 ≤i≤r 1≤j≤c選擇對應(yīng)量化系數(shù)所在的中頻子層{HL2,LH2,HH2},以Δ2為量化參數(shù),奇偶量化對應(yīng)的中頻系數(shù)。二維二級小波反變換,得到嵌入水印的圖像。
(4)水印的提取以及篡改認(rèn)證對收到的嵌入水印的圖像實行上述1~2步驟,得到嵌入的水印的第一個版本W(wǎng)′。另外,根據(jù)location(i,j)∈{0,1,2},1≤i≤r 1≤j≤c,找到嵌入時被量化的那個系數(shù)值,比如說是u(i,j), 那么第二個版本的水印可由 計算得到。比較兩個版本的水印,計算篡改矩陣T=|W′-W″|,那么矩陣中為1的元素定位了篡改位置。
本發(fā)明的小波變換域混沌半脆弱水印嵌入與提取方法,為定位型的認(rèn)證以及半脆弱數(shù)字水印開辟了一條新的路徑。通過修改原始圖像小波變換后的中頻系數(shù)嵌入水印,獲得了較高的峰值信噪比。量化參數(shù)Δ1和Δ2的靈活調(diào)整一方面能抵抗一定程度的非惡意篡改,另一方面能對惡意攻擊進(jìn)行篡改定位?;煦珉S機序列的應(yīng)用增加了算法的安全性。本發(fā)明的算法簡單,容易實現(xiàn),在提取水印時不需要原始圖像,對常見非惡意攻擊如一定程度的JPEG壓縮以及信道加性高斯噪聲具有很強的魯棒性,而對常見惡意攻擊如局部圖像內(nèi)容增加、篡改等具有良好的篡改定位和證明能力,速度優(yōu)勢明顯,同時視覺效果良好。這些良好的性能大大增加了它的應(yīng)用范圍。
圖2為圖像內(nèi)容增加的檢測實施例。
其中,圖2(a)為篡改前的嵌有水印的圖像,圖2(b)為篡改過的圖像,圖2(c)為篡改檢測結(jié)果。
圖3為加入水印圖像的峰值信噪比值與Δ2的關(guān)系。
在本發(fā)明提出的方案中,多次使用混沌系統(tǒng)產(chǎn)生偽隨機序列?;煦缡欠蔷€性方程(組)在某些特定條件下的解,它的隨機輸出由一確定的方程(組)決定,混沌系統(tǒng)的初始參數(shù)可以作為整個水印系統(tǒng)的密鑰,混沌系統(tǒng)良好的隨機性能和容易再生的特點增加了系統(tǒng)的安全性能。以下以一維離散混沌映射為例,fU→U,URz(n+1)=f(λ,z(n)),λ∈R,z(n)∈U (1)其中n=0,1,Λ表示迭代次數(shù),λ是控制系統(tǒng)混沌行為的參數(shù)。通過一個量化函數(shù),可以把實值的z(n)量化為z(n)∈{0,1}。2)水印的生成水印的生成對應(yīng)
圖1第二個虛線框。把 映射為混沌的初值,這里 表示取下整數(shù),經(jīng)過迭代iternum(i,j)后,得到W(i,j)∈{0,1}。對LL2子層的所有系數(shù)執(zhí)行上述操作,得到大小為r×c的水印圖像W。
這里Δ1的取值反映了水印的魯棒性能,Δ1越大,水印抵抗非惡意攻擊的魯棒性就越大。但是大的Δ1取值意味這混沌初值的個數(shù)的減少,這樣系統(tǒng)的安全性就降低,所以必須在魯棒性和系統(tǒng)安全性上做折中。3)水印嵌入水印嵌入對應(yīng)圖1第三個虛線框。定義奇偶量化函數(shù)y=g(x,b,d) x∈R b∈{0,1} d∈Z+,它根據(jù)二值數(shù)據(jù)b把系數(shù)x量化到對應(yīng)的奇偶區(qū)域,d是量化參數(shù)。本發(fā)明提出了一種簡單實用的奇偶量化法來修改頻域系數(shù)x,從而達(dá)到隱藏水印信息的目的。對應(yīng)關(guān)系如下 當(dāng)亂序水印比特b=0時,要保證修改后的系數(shù)x處于偶區(qū)域,此時,若x已在偶區(qū)域,則x向著該區(qū)域的中間值修改,若x在奇區(qū)域的左半?yún)^(qū)間,則向負(fù)方向探測最鄰近的一個偶區(qū)域,并向著該區(qū)域的中間值修改,若x在奇區(qū)域的右半?yún)^(qū)間,則向正方向探測最鄰近的一個偶區(qū)域,并向著該區(qū)域的中間值修改;當(dāng)b=1時,要保證修改后的系數(shù)處于奇區(qū)域,此時,若x已在奇區(qū)域,則x向著該區(qū)域的中間值修改,若x在偶區(qū)域的左半?yún)^(qū)間,則向負(fù)方向探測最鄰近的一個奇區(qū)域,并向著該區(qū)域的中間值修改,若x在偶區(qū)域的右半?yún)^(qū)間,則向正方向探測最鄰近的一個奇區(qū)域,并向著該區(qū)域的中間值修改。下面給出具體的函數(shù)計算式 這里, xr=sgn(x)(|x|mod1) (5)對小波域中頻系數(shù)實施奇偶量化,具體實施過程如下FOR i=1 to rFOR j=1 to cSWITCH location(i,j)CASE 0HL2(i,j)=g(HL2(i,j),W(i,j),Δ2)CASE 1LH2(i,j)=g(LH2(i,j),W(i,j),Δ2)CASE 2HH2(i,j)=g(HH2(i,j),W(i,j),Δ2)完成水印的嵌入過程。最后二維兩級小波反變換,得到嵌入水印的圖像。
同樣,這里的Δ2的取值也反映水印的魯棒性能,Δ2越大,水印抵抗非惡意攻擊的魯棒性就越大,但同時圖像質(zhì)量也隨之下降。所以必須在魯棒性和加入水印的圖像的質(zhì)量上做折中。4)水印的提取以及篡改認(rèn)證水印提取以及篡改認(rèn)證過程如下對收到的嵌入水印的圖像實行上述1~2步驟,得到嵌入的水印的第一個版本W(wǎng)′。另外, 根據(jù)location(i,j)∈{0,1,2},1≤i≤r 1≤j≤c,找到嵌入時被量化的那個系數(shù)值,比如說是u(i,j),那么第二個版本的水印可由下式計算得到 比較兩個版本的水印,計算篡改檢測矩陣T=|W′-W″| (7)如果W′=W″,那么T=0,這表明加入水印的圖像沒有被篡改過,否則,矩陣中為1的元素定位了篡改位置。注意到篡改檢測矩陣的大小是r×c,由于施行的是二級二維小波分級,所以篡改檢測矩陣的大小大概是加入水印圖像大小的1/16,這意味著篡改檢測矩陣上一點代表了加入水印圖像中一個4×4的小塊。5)實驗結(jié)果用Matlab 6模擬本算法。在本發(fā)明的一個圖像內(nèi)容增加實驗中,對于512×512×8‘Peppers’灰度圖,令Δ1=30,Δ2=16,加入水印的圖像如圖2(a)所示,峰值信噪比為41.6dB。前述ICVQ法的峰值信噪比為31.85dB,可見本算法的不可見性較好,加入水印后對原始圖像的修改很小。假如在加入水印的圖像上再加兩個辣椒如圖2(b)所示,利用本發(fā)明提出的算法來檢測這一篡改,篡改區(qū)域檢測結(jié)果如圖2(c)所示,可見本發(fā)明對圖像內(nèi)容的篡改能夠非常精確的定位,篡改區(qū)域輪廓明顯。
文獻(xiàn)上一般利用歸一化的互相關(guān)值(Normalized Cross-correlation,NC)來表示提取水印與原始水印之間的差別,NC值的定義如下NC=Σi=1rΣj=1cW(i,j)W′(i,j)Σi=1rΣj=1c|W(i,j)|2Σi=1rΣj=1c|W′(i,j)|2----(8)]]>表1為加入水印的圖像在受到不同質(zhì)量因子(Quality Factor,QF)下的JPEG壓縮以及不同方差σ2下的加性高斯白噪聲情況下,利用本發(fā)明所用算法提取出來的水印與原始水印之間的NC值。同時表1也列出了前述ICVQ法中所提方案在同樣質(zhì)量因子的JPEG壓縮下得到的NC值,很顯然本發(fā)明所提出算法魯棒性明顯強于文獻(xiàn)算法。
表1 在不同JPEG壓縮以及加性高斯白噪聲條件下的NC值。
加入水印的圖像的峰值信噪比值只與Δ2有關(guān),圖3顯示了加入水印圖像的峰值信噪比值與Δ2的關(guān)系。
權(quán)利要求
1.一種小波域混沌半脆弱數(shù)字水印嵌入與提取方法,其特征在于包括如下具體步驟1)初始化選擇系統(tǒng)參數(shù)Key1,Key2,Δ1,Δ2,其中Key1和Key2為密鑰,Δ1和A2為量化參數(shù),對原始圖像進(jìn)行二維二級小波分解,得{LL2,HL2,LH2,HH2,HL1,LH1,HH1},并設(shè)LL2子層的大小為r×c,以Key1為混沌映射的初值,得到混沌隨機序列l(wèi)ocation(i,j)∈{0,1,2},1≤i≤r 1≤j≤c,此序列作為選擇量化系數(shù)所在的中頻子層,以Key2為混沌映射的初值,得到混沌隨機序列iternum(i,j)1≤i≤r 1≤j≤c,此序列將作為混沌迭代的次數(shù);2)水印生成把 映射為混沌的初值,這里 表示取下整數(shù),經(jīng)過迭代iternum(i,j)后,得到W(i,j)∈{0,1},對LL2子層的所有系數(shù)執(zhí)行上述操作,得到大小為r×c的水印圖像W;3)水印嵌入根據(jù)location(i,j)∈{0,1,2},1 ≤i≤r 1≤j≤c選擇對應(yīng)量化系數(shù)所在的中頻子層{HL2,LH2,HH2},以Δ2為量化參數(shù),奇偶量化對應(yīng)的中頻系數(shù),二維兩級小波反變換,得到嵌入水印的圖像;4)水印提取以及篡改認(rèn)證對收到的嵌入水印的圖像實行上述1~2步驟,得到嵌入的水印的第一個版本W(wǎng)′,根據(jù)location(i,j)∈{0,1,2},1≤i≤r 1≤j≤c,找到嵌入時被量化的系數(shù)值u(i,j),得到第二個版本的水印 比較兩個版本的水印,計算篡改矩陣T=|W′-W″|,矩陣中為1的元素定位了篡改位置。
全文摘要
本發(fā)明涉及一種小波混沌半脆弱數(shù)字水印嵌入與提取方法,原始圖像經(jīng)過二維二級小波分解,得到{LL
文檔編號G06F12/14GK1474282SQ03129390
公開日2004年2月11日 申請日期2003年6月19日 優(yōu)先權(quán)日2003年6月19日
發(fā)明者何晨, 丁科, 蔣鈴鴿, 王宏霞, 何 晨 申請人:上海交通大學(xué)