專利名稱:一種魯棒的數(shù)字圖像自適應(yīng)零水印方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種數(shù)字水印技術(shù),尤其是涉及一種魯棒的數(shù)字圖像自適應(yīng)零水印方 法。
背景技術(shù):
隨著計(jì)算機(jī)網(wǎng)絡(luò)和多媒體技術(shù)的迅速發(fā)展,數(shù)字媒體例如數(shù)字圖像、數(shù)字音頻、數(shù) 字視頻等得到了廣泛的傳輸和應(yīng)用,隨之而來數(shù)字媒體的安全、版權(quán)的保護(hù)和認(rèn)證等方面 問題也變得日益突出。例如,任何用戶通過網(wǎng)絡(luò)可以方便地獲取他人的原始數(shù)字媒體,在沒 有得到作者或版權(quán)所有者許可的情況下,對(duì)原始數(shù)字媒體加以任意復(fù)制、修改和再傳輸,從 而嚴(yán)重侵害了作者的著作權(quán)和版權(quán)所有者的利益。數(shù)字水印技術(shù)作為加密技術(shù)的一種補(bǔ)充,其能夠有效地解決原始數(shù)字媒體的安 全、版權(quán)的保護(hù)和認(rèn)證等方面問題,已成為當(dāng)前數(shù)字媒體信息安全領(lǐng)域的一個(gè)重要分支。數(shù) 字水印技術(shù)是通過對(duì)原始數(shù)字媒體的數(shù)據(jù)(空域或變換域系數(shù)值)進(jìn)行一定的修改,將包 含作者或作品的某種信息(如簽名、版權(quán)標(biāo)識(shí)、序列號(hào)、日期或圖標(biāo)等)作為數(shù)字水印嵌入 到原始數(shù)字媒體中,以此為原始數(shù)字媒體提供必要的認(rèn)證信息和版權(quán)保護(hù)。數(shù)字水印要發(fā) 揮作用,一般應(yīng)具備水印魯棒性和水印不可覺察性兩個(gè)基本要求。水印魯棒性,是指原始 數(shù)字媒體在經(jīng)過數(shù)字信號(hào)處理或者外來攻擊之后,嵌入的數(shù)字水印仍然具有較好的可檢測(cè) 性或者說仍能夠反映出原始數(shù)字媒體的版權(quán)等方面信息。水印不可覺察性,是指數(shù)字水印 的嵌入不能影響到原始數(shù)字媒體的視覺或聽覺質(zhì)量,從而不會(huì)影響原始數(shù)字媒體的應(yīng)用價(jià) 值。顯然,通過改變?cè)紨?shù)字媒體的數(shù)據(jù)來嵌入數(shù)字水印的傳統(tǒng)數(shù)字水印技術(shù)不可避免地 存在著水印魯棒性和水印不可覺察性之間的矛盾一方面,水印不可覺察性要求嵌入的數(shù) 字水印信息應(yīng)盡可能地少,而另一方面,水印魯棒性則希望盡可能多地嵌入數(shù)字水印信息。近幾年來,零水印技術(shù)的提出極大地緩解了傳統(tǒng)的數(shù)字水印技術(shù)在水印魯棒性和 水印不可覺察性之間存在的矛盾,成為數(shù)字水印技術(shù)中一個(gè)新的研究方向。零水印技術(shù)是 指對(duì)原始數(shù)字媒體的數(shù)據(jù)不進(jìn)行修改,而是通過原始數(shù)字媒體的自身特征信息構(gòu)造出一個(gè) 水印密鑰(或稱零水印),再與待嵌入的實(shí)際數(shù)字水印結(jié)合形成相關(guān)零水印信息后(或直接 將零水印)注冊(cè)到知識(shí)產(chǎn)權(quán)信息數(shù)據(jù)庫中的一種數(shù)字水印技術(shù)。在零水印技術(shù)中,零水印 的構(gòu)造和注冊(cè)過程就是通常意義上的數(shù)字水印嵌入過程,一旦注冊(cè)完成,原始數(shù)字媒體就 被認(rèn)為包含了該水印信息而具備了版權(quán)保護(hù)能力。顯然,零水印技術(shù)突破了“向數(shù)字媒體中 嵌入水印”才能實(shí)現(xiàn)版權(quán)保護(hù)功能的常規(guī)思想。由于零水印技術(shù)中的數(shù)字水印是注冊(cè)到知 識(shí)產(chǎn)權(quán)信息數(shù)據(jù)庫中,而不是嵌入到原始數(shù)字媒體中,也就不存在數(shù)字媒體質(zhì)量下降或嵌 入水印量受限制等問題,正因?yàn)檫@個(gè)特性,零水印技術(shù)很好地平衡了數(shù)字水印的水印魯棒 性和水印不可覺察性之間的關(guān)系。因此,對(duì)于零水印技術(shù)而言,研究的關(guān)鍵轉(zhuǎn)移到如何挖掘出隱含在原始數(shù)字媒體 內(nèi)部穩(wěn)定的特征信息并由此構(gòu)造出一個(gè)魯棒的零水印。零水印的構(gòu)造可以在原始數(shù)字媒體 空域內(nèi)直接進(jìn)行,也可以在變換域例如離散小波變換(DWT)、離散余弦變換(DCT)和離散傅里葉變換(DFT)內(nèi)進(jìn)行。相對(duì)而言,在變換域內(nèi)進(jìn)行零水印的構(gòu)造被認(rèn)為是比較可靠和安 全的方法。2005年,王成儒、李段在光電工程學(xué)報(bào)中提出了一種利用小波零樹結(jié)構(gòu)和主分量 分析構(gòu)造圖像零水印的方法。該方法首先對(duì)原始圖像進(jìn)行小波分解,然后根據(jù)零樹結(jié)構(gòu)思 想選擇一些重要小波系數(shù)以及它們的后代組成的系數(shù)樹作為圖像的特征向量。對(duì)這些特征 向量進(jìn)行主分量分析后,再進(jìn)行二值化處理,將二值化處理后的結(jié)果構(gòu)造出零水印。檢測(cè)結(jié) 果顯示,對(duì)于常規(guī)的圖像處理,例如bbp = 0. 1的JPEG壓縮處理、均值為0且方差為0. 01 的高斯噪聲干擾、[8X8]窗口的中值濾波處理,裁去圖像左上角1/4區(qū)域以及旋轉(zhuǎn)2度的 幾何攻擊,檢測(cè)到的零水印歸一化相關(guān)系數(shù)分別為0. 68,0. 70,0. 81,0. 64和0. 54。2008年,曾凡娟、周安民在計(jì)算機(jī)應(yīng)用學(xué)報(bào)中提出了一種基于Contourlet變換和 奇異值分解的數(shù)字圖像零水印算法。算法對(duì)原始圖像進(jìn)行Contourlet變換,將其分解為一 系列多尺度、局部化、方向性的子帶圖像,再選擇低頻子帶進(jìn)行分塊奇異值分解,根據(jù)每塊 分解中第一個(gè)奇異值的整數(shù)位大小的不變性構(gòu)造出零水印。檢測(cè)結(jié)果顯示,對(duì)于質(zhì)量因子 為70%的JPEG壓縮處理、高斯噪聲干擾、中值濾波處理以及裁去圖像左上角1/4區(qū)域的幾 何攻擊,檢測(cè)到的零水印歸一化相關(guān)系數(shù)分別為0. 99,0. 94,0. 97和0. 86。同年,高仕龍?jiān)谒拇ù髮W(xué)學(xué)報(bào)中提出了一種DT-CWT(二元樹復(fù)小波變換)域內(nèi)的 自適應(yīng)圖像零水印算法。算法通過對(duì)載體圖像進(jìn)行DT-CWT變換,對(duì)得到的兩個(gè)DT-CWT低 頻子帶進(jìn)行奇異值分解并自適應(yīng)選取部分奇異值,經(jīng)歸一化處理構(gòu)造出零水印,然后發(fā)送 到注冊(cè)中心作為用戶的版權(quán)標(biāo)志。檢測(cè)結(jié)果顯示,對(duì)于質(zhì)量因子為40%的JPEG壓縮處理、 均值為0且方差為0.01的高斯噪聲干擾、[5X5]窗口的中值濾波處理以及旋轉(zhuǎn)1度的幾 何攻擊,檢測(cè)到的零水印歸一化相關(guān)系數(shù)分別為0. 97,0. 86,0. 91和0. 82。2009年,趙杰、王眶和何冰等人在計(jì)算機(jī)工程與科學(xué)學(xué)報(bào)中提出了一種基于圖像 置亂和小波變換的零水印算法。算法首先對(duì)水印圖像進(jìn)行置亂處理,然后利用載體圖像一 級(jí)小波分解后的低頻子圖和置亂后的水印圖像得到提取矩陣,再對(duì)提取矩陣進(jìn)行一定的打 亂加密,由此完成零水印的嵌入和提取。檢測(cè)結(jié)果顯示,對(duì)于質(zhì)量因子為8%的JPEG壓縮處 理、均值為0方差為0. 005的高斯噪聲干擾、[3X3]窗口的中值濾波處理以及裁去圖像1/8 區(qū)域的幾何攻擊,檢測(cè)到的零水印歸一化相關(guān)系數(shù)分別為0. 94,0. 92,0. 98和0. 83。同年,牛萬紅、潘晨在濟(jì)南大學(xué)學(xué)報(bào)中提出了一種基于非負(fù)矩陣分解的零水印算 法。算法通過對(duì)載體圖像進(jìn)行非負(fù)矩陣分解(NMF)得到基于部分表示的基矩陣和相應(yīng)的系 數(shù)矩陣,再將待嵌入二值水印置亂并擴(kuò)展為系數(shù)矩陣的大小,比較相同位置上的二值水印 與系數(shù)陣元素二進(jìn)制編碼的某個(gè)高位面值,由此構(gòu)造出零水印。檢測(cè)結(jié)果顯示,對(duì)于質(zhì)量因 子為80%的JPEG壓縮處理、乘性噪聲干擾、[5 X 5]窗口的高斯低通濾波處理、裁剪圖像1/4 區(qū)域以及旋轉(zhuǎn)1度的幾何攻擊,檢測(cè)到的零水印歸一化相關(guān)系數(shù)分別為0. 74,0. 62,0. 74、 0. 94 和 0. 50。目前,零水印技術(shù)仍處于探索和發(fā)展階段,雖有許多零水印方法已被提出,但是大 多數(shù)零水印方法的魯棒性不夠理想,這不利于數(shù)字媒體作品的版權(quán)保護(hù)和內(nèi)容認(rèn)證。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供一種在不改變?cè)紨?shù)字圖像質(zhì)量的基礎(chǔ)上,實(shí)現(xiàn)更為魯棒的抗常規(guī)圖像處理和完全免疫于圖像平移攻擊,能夠很好地平衡數(shù)字水印的魯 棒性和不可覺察性之間的矛盾的零水印方法。本發(fā)明解決上述技術(shù)問題所采用的技術(shù)方案為一種魯棒的數(shù)字圖像自適應(yīng)零水 印方法,包括零水印嵌入和零水印檢測(cè)兩部分,所述的零水印嵌入包括以下步驟①-1、在零水印嵌入端,將待嵌入二值數(shù)字水印的原始數(shù)字圖像記為F,將待嵌入 的二值數(shù)字水印記為W,對(duì)原始數(shù)字圖像F進(jìn)行歸一化處理,然后對(duì)歸一化處理后的數(shù)字 圖像進(jìn)行L級(jí)二維離散小波變換,得到一個(gè)第一小波逼近子圖F_A和多個(gè)第一小波細(xì)節(jié)子 圖,其中,原始數(shù)字圖像F的分辨率為MXN,M表示待嵌入數(shù)字水印的原始數(shù)字圖像F的豎 直分辨率,N表示待嵌入數(shù)字水印的原始數(shù)字圖像F的橫向分辨率,待嵌入的二值數(shù)字水 印W的分辨率為UXV,U表示待嵌入的二值數(shù)字水印W的豎直分辨率,V表示待嵌入的二 值數(shù)字水印W的橫向分辨率,第一小波逼近子圖F_A的分辨率為(Mz^)X(NM), M/浐表 示第一小波逼近子圖F_A的豎直分辨率,N/力表示第一小波逼近子圖F_A的橫向分辨率,
minO為取最小值函數(shù),maxO為取最大值函數(shù),符號(hào)丨丨 表示取小于其自身的最大整數(shù);①_2、對(duì)第一小波逼近子圖F_A進(jìn)行二維離散傅里葉變換,得到一個(gè)分辨率與第 一小波逼近子圖F_A的分辨率相同的二維第一離散傅里葉頻譜,記為F_AF ;然后從二維第 一離散傅里葉頻譜F_AF中提取出二維第一離散傅里葉幅度譜,記為F_AA,F(xiàn)_AA = abs(F_ AF), abs ()為求幅度函數(shù);①-3、對(duì)二維第一離散傅里葉幅度譜F_AA進(jìn)行掃描排列,得到一個(gè)一維第一幅度 譜系數(shù)序列,記為 F_AAD,F(xiàn)_AAD = {f_aad (χ), 1 ^ χ ^ (M/2L) X (N/2L)},其中,f_aad (χ)表 示一維第一幅度譜系數(shù)序列F_AAD中的第χ個(gè)幅度譜系數(shù);①-4、從一維第一幅度譜系數(shù)序列F_AAD中順序選取UXV+1個(gè)彼此幅度譜系數(shù) 值相差S的幅度譜系數(shù),構(gòu)成一個(gè)新的一維第一幅度譜系數(shù)序列,記為F_AADN,F(xiàn)_AADN = {f_aadn(y),1≤y≤UXV+1},并記錄新的一維第一幅度譜系數(shù)序列F_AADN中的各個(gè)幅度 譜系數(shù)在一維第一幅度譜系數(shù)序列F_AAD中的位置信息,其中,f_aadn(y)表示新的一維第 一幅度譜系數(shù)序列F_AADN中的第y個(gè)幅度譜系數(shù),δ為設(shè)定的差值閾值;①-5、依次比較新的一維第一幅度譜系數(shù)序列F_AADN中相鄰前后兩個(gè)幅度譜系 數(shù)的大小,設(shè)相鄰前后兩個(gè)幅度譜系數(shù)中的前一個(gè)幅度譜系數(shù)為f_aadn(Z),設(shè)相鄰前后兩 個(gè)幅度譜系數(shù)中的后一個(gè)幅度譜系數(shù)為f_aadn(Z+l),如果f_aadn(Z) > f_aadn (ζ+l),則 返回值1,反之,則返回值0 ;然后將所有返回值按先行后列順序排列方式貯存于一個(gè)大小 為UXV的二維矩陣中,將該二維矩陣作為第一二值水印密鑰,記為WB,其中,1彡ζ彡UXV ;①_6、將待嵌入的二值數(shù)字水印W進(jìn)行置亂處理,記置亂后的二值數(shù)字水印為W1, 然后將置亂后的二值數(shù)字水印W1與第一二值水印密鑰Wb進(jìn)行異或運(yùn)算得到水印信息,記為 W',W' =XoHW1, Wb),再將水印信息W'保存到注冊(cè)機(jī)構(gòu)的水印數(shù)據(jù)庫中,完成零水印的 嵌入,其中,xor()為異或運(yùn)算函數(shù);①-7、零水印嵌入端將記錄的新的一維第一幅度譜系數(shù)序列F_AADN中的各個(gè)幅 度譜系數(shù)在一維第一幅度譜系數(shù)序列F_AAD中的位置信息、保存在注冊(cè)機(jī)構(gòu)的水印數(shù)據(jù)庫 中的水印信息r、零水印嵌入端的二值數(shù)字水印W傳輸給零水印檢測(cè)端;
所述的零水印檢測(cè)包括以下步驟②-1、在零水印檢測(cè)端,將嵌入有二值數(shù)字水印的數(shù)字圖像記為TF,對(duì)嵌入有二 值數(shù)字水印的數(shù)字圖像TF進(jìn)行歸一化處理,然后對(duì)歸一化處理后的數(shù)字圖像進(jìn)行L級(jí)二 維離散小波變換,得到一個(gè)第二小波逼近子圖TF_A和多個(gè)第二小波細(xì)節(jié)子圖,其中,嵌入 有二值數(shù)字水印的數(shù)字圖像TF的分辨率為M' XN' , M'表示嵌入有二值數(shù)字水印的數(shù) 字圖像TF的豎直分辨率,M' =M, N'表示嵌入有二值數(shù)字水印的數(shù)字圖像TF的橫向分 辨率,N' = N,第二小波逼近子圖TF_A的分辨率為(M' /2l) X (N' /2l), M' 表示第 二小波逼近子圖TF_A的豎直分辨率,N' It表示第二小波逼近子圖TF_A的橫向分辨率,
IogJmH)],min()為取最小值函數(shù),max()為取最大值函數(shù),符號(hào)
,表示
取小于其自身的最大整數(shù);②-2、對(duì)第二小波逼近子圖TF_A進(jìn)行二維離散傅里葉變換,得到一個(gè)分辨率與 第二小波逼近子圖TF_A的分辨率相同的二維第二離散傅里葉頻譜,記為TF_AF ;然后從二 維第二離散傅里葉頻譜TF_AF中提取出二維第二離散傅里葉幅度譜,記為TF_AA,TF_AA = abs (TF_AF),abs ()為求幅度函數(shù);②-3、對(duì)二維第二離散傅里葉幅度譜TF_AA進(jìn)行掃描排列,得到一個(gè)一維第二幅 度譜系數(shù)序列,記為 TF_AAD,TF_AAD = {tf_aad(x),1 彡 χ 彡(M' /2L) X (N' /2)},其中, tf_aad(x)表示一維第二幅度譜系數(shù)序列TF_AAD中的第χ個(gè)幅度譜系數(shù);②_4、根據(jù)零水印嵌入端記錄的新的一維第一幅度譜系數(shù)序列F_AADN中的各個(gè) 幅度譜系數(shù)在一維第一幅度譜系數(shù)序列F_AAD中的位置信息,從一維第二幅度譜系數(shù)序列 TF_AAD中提取出相應(yīng)位置的UXV+1個(gè)幅度譜系數(shù),構(gòu)成一個(gè)新的一維第二幅度譜系數(shù)序 列,記為 TF_AADN,TF_AADN = {tf_aadn(y),1 彡 y 彡 UXV+1},其中,tf_aadn(y)表示新的 一維第二幅度譜系數(shù)序列TF_AADN中的第y個(gè)幅度譜系數(shù);②-5、依次比較新的一維第二幅度譜系數(shù)序列TF_AADN中相鄰前后兩個(gè)幅度譜 系數(shù)的大小,設(shè)相鄰前后兩個(gè)幅度譜系數(shù)中的前一個(gè)幅度譜系數(shù)為tf_aadn(ζ),設(shè)相鄰 前后兩個(gè)幅度譜系數(shù)中的后一個(gè)幅度譜系數(shù)為tf_aadn(Z+l),如果tf_aadn(Z) > tf_ aadn(Z+l),則返回值1,反之,則返回值0 ;然后將所有返回值按先行后列順序排列方式貯 存于一個(gè)大小為UXV的二維矩陣中,將該二維矩陣作為第二二值水印密鑰,記為W' B,其 中,ζ < UXV ;②-6、對(duì)保存在注冊(cè)機(jī)構(gòu)的水印數(shù)據(jù)庫中的水印信息W'和第二二值水印密鑰 W' B進(jìn)行異或運(yùn)算,提取得到二值數(shù)字水印W2,W2 = Xor (W',W' B),再將二值數(shù)字水印W2 進(jìn)行反置亂處理得到具有版權(quán)認(rèn)證信息的數(shù)字水印W*,其中,xor()為異或運(yùn)算函數(shù);②_7、計(jì)算得到的具有版權(quán)認(rèn)證信息的數(shù)字水印礦與零水印嵌入端的二值數(shù)字水 印W的相關(guān)性,確定是否檢測(cè)出嵌入的二值數(shù)字水印。所述的步驟①-1中對(duì)原始數(shù)字圖像F進(jìn)行歸一化處理的具體過程為將歸一化處 理后的數(shù)字圖像記為F',將歸一化處理后的數(shù)字圖像F'的第m行第η列像素的像素值記 為 f' (m, n), f' (111,11)=€(111,11)/255,其中,€(111,11)表示原始數(shù)字圖像?的第111行第11 列像素的像素值,1彡m彡M,1彡η彡N。所述的步驟①-3中對(duì)二維第一離散傅里葉幅度譜F_AA進(jìn)行掃描排列采用“Ζ”字型掃描排列方法。所述的步驟①-4的具體過程為a.從一維第一幅度譜系數(shù)序列F_AAD中選取第 1個(gè)幅度譜系數(shù)f_aad(l),將其移入到新的一維第一幅度譜系數(shù)序列F_AADN中作為新的 一維第一幅度譜系數(shù)序列F_AADN中的第1個(gè)幅度譜系數(shù)f_aadn(l),即f_aadn(l) = f_ aad(l) ;b.從一維第一幅度譜系數(shù)序列F_AAD中的第2個(gè)幅度譜系數(shù)f_aad(2)開始,順序 尋找一個(gè)與第1個(gè)幅度譜系數(shù)f_aad(l)的差值的絕對(duì)值大于等于δ的位置最近鄰的幅度 譜系數(shù),設(shè)找到的幅度譜系數(shù)為一維第一幅度譜系數(shù)序列F_AAD中的第k個(gè)幅度譜系數(shù)f_ aad(k),將f_aad(k)移入到新的一維第一幅度譜系數(shù)序列F_AADN中作為新的一維第一幅 度譜系數(shù)序列F_AADN中的第2個(gè)幅度譜系數(shù)f_aadn⑵,即f_aadn⑵=f_aad (k),其中, 2彡k彡(M/2l) X (N/2l) ;c.以此類推,從一維第一幅度譜系數(shù)序列F_AAD中的第k+Ι個(gè)幅 度譜系數(shù)f_aad(k+l)開始,順序?qū)ふ蚁乱粋€(gè)與第k個(gè)幅度譜系數(shù)f_aad(k)的差值的絕對(duì) 值大于等于S的位置最近鄰的幅度譜系數(shù),并將找到的幅度譜系數(shù)移入到新的一維第一 幅度譜系數(shù)序列F_AADN中,直至新的一維第一幅度譜系數(shù)序列F_AADN中的幅度譜系數(shù)的 個(gè)數(shù)達(dá)到UXV+1個(gè)為止,并記錄新的一維第一幅度譜系數(shù)序列F_AADN中的各個(gè)幅度譜系 數(shù)在一維第一幅度譜系數(shù)序列F_AAD中的位置信息。所述的步驟②-1中對(duì)嵌入有二值數(shù)字水印的數(shù)字圖像TF進(jìn)行歸一化處理的具體 過程為將歸一化處理后的數(shù)字圖像記為TF',將歸一化處理后的數(shù)字圖像TF'的第m行 第η列像素的像素值記為tf' (m,n),tf' (m,η) = tf (m,η)/255,其中,tf (m,η)表示嵌入 有二值數(shù)字水印的數(shù)字圖像TF的第m行第η列像素的像素值,1彡m彡M' , 1 ^ η ^ N'。所述的步驟②-3中對(duì)二維第二離散傅里葉幅度譜TF_AA進(jìn)行掃描排列采用“Z” 字型掃描排列方法。與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)在于1)在零水印嵌入端,相比于傳統(tǒng)的數(shù)字水印技術(shù)(即非零水印技術(shù)),本發(fā)明提 出的零水印方法并沒有對(duì)原始數(shù)字圖像數(shù)據(jù)產(chǎn)生任何破壞,維持了原始數(shù)字圖像數(shù)據(jù)的完 整性,因此不存在圖像質(zhì)量的下降問題。同時(shí),嵌入的二值數(shù)字水印完全不可覺察,這是因 為本發(fā)明提出的零水印方法實(shí)際上并沒有將二值數(shù)字水印嵌入到原始數(shù)字圖像中,而是將 其注冊(cè)到水印數(shù)據(jù)庫中,突破了“向數(shù)字媒體中嵌入水印”才能實(shí)現(xiàn)版權(quán)保護(hù)功能的常規(guī)思
術(shù)g
;ο2)在零水印檢測(cè)端,相比于現(xiàn)有的零水印技術(shù),本發(fā)明提出的零水印方法具有更 好的魯棒性,這是因?yàn)楸景l(fā)明的零水印方法是在離散小波變換(DWT)和離散傅里葉變換 (DFT)復(fù)合域內(nèi)進(jìn)行的,充分利用了離散小波變換得到的小波逼近子圖的良好穩(wěn)定性和離 散傅里葉變換得到的幅度譜的平移不變性的特點(diǎn),從而實(shí)現(xiàn)了一種更為魯棒的抗常規(guī)圖像 處理和完全免疫于圖像平移攻擊的零水印方法。3)本發(fā)明方法很好地平衡了數(shù)字水印的魯棒性和不可覺察性之間的矛盾。
圖1為零水印嵌入的流程框圖;圖2為零水印檢測(cè)的流程框圖;圖3a為歸一化后的Lena灰度圖像;
圖3b為原始的二值字符水??;
圖3c為置亂后的二值字符水??;
圖4a為嵌入二值數(shù)字水印后的Lena圖像;
圖4b為從圖4a中檢測(cè)出的二值數(shù)字水?。?br>
圖5a為經(jīng)直方圖均衡化后的水印Lena圖像
圖5b為從圖5a中檢測(cè)出的二值數(shù)字水??;
圖6a為經(jīng)JPEG壓縮后的水印Lena圖像;
圖6b為從圖6a中檢測(cè)出的二值數(shù)字水?。?br>
圖7a為疊加高斯噪聲后的水印Lena圖像;
圖7b為從圖7a中檢測(cè)出的二值數(shù)字水印;
圖8a為中值濾波后的水印Lena圖像;
圖8b為從圖8a中檢測(cè)出的二值數(shù)字水印;
圖9a為左移1/4后的水印Lena圖像;
圖9b為右移1/4后的水印Lena圖像;
圖9c為從圖9a中檢測(cè)出的二值數(shù)字水?。?br>
圖9d為從圖9b中檢測(cè)出的二值數(shù)字水??;
圖10為待對(duì)比檢測(cè)的Woman圖像;
具體實(shí)施例方式以下結(jié)合附圖實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)描述。本發(fā)明提出的一種數(shù)字圖像的自適應(yīng)零水印方法,其利用了離散小波變換得到的 小波逼近子圖的良好穩(wěn)定性和離散傅里葉變換得到的離散傅里葉幅度譜的平移不變性,其 主要包括零水印嵌入和零水印檢測(cè)兩部分,零水印嵌入的主要過程為首先對(duì)原始數(shù)字圖 像進(jìn)行適當(dāng)層次的離散小波變換,并對(duì)得到的小波逼近子圖再進(jìn)行離散傅里葉變換,然后 依據(jù)待嵌入的二值數(shù)字水印的大小自適應(yīng)地選取滿足一定差值的離散傅里葉幅度譜系數(shù), 最后根據(jù)這些幅度譜系數(shù)相互之間的大小關(guān)系構(gòu)造出一個(gè)魯棒的二值水印密鑰,并與待嵌 入的二值數(shù)字水印進(jìn)行異或運(yùn)算后保存到注冊(cè)機(jī)構(gòu)完成零水印的嵌入;零水印檢測(cè)的主要 過程為通過對(duì)嵌入有二值數(shù)字水印的數(shù)字圖像進(jìn)行相似的離散小波變換和離散傅里葉變 換處理過程,結(jié)合保存在注冊(cè)機(jī)構(gòu)里的水印信息,可以提取出相關(guān)水印以證明對(duì)原始數(shù)字 圖像的所有權(quán)。其中,零水印嵌入的流程框圖如圖1所示,其具體包括以下步驟①-1、在零水印嵌入端,將待嵌入二值數(shù)字水印的原始數(shù)字圖像記為F,將待嵌入 的二值數(shù)字水印記為W,對(duì)原始數(shù)字圖像F進(jìn)行歸一化處理,然后對(duì)歸一化處理后的數(shù)字圖 像進(jìn)行L級(jí)二維離散小波變換,得到一個(gè)第一小波逼近子圖F_A和多個(gè)第一小波細(xì)節(jié)子圖, 其中,原始數(shù)字圖像F的分辨率為MXN,M表示待嵌入數(shù)字水印的原始數(shù)字圖像F的豎直分 辨率,N表示待嵌入數(shù)字水印的原始數(shù)字圖像F的橫向分辨率,F(xiàn) = {f|0^ f(m,n) ^ 255, 1彡m彡M,1彡η彡N},f(m, η)表示待嵌入二值數(shù)字水印的原始數(shù)字圖像F的第m行第η 列像素的像素值,待嵌入的二值數(shù)字水印W的分辨率為UX V,U表示待嵌入的二值數(shù)字水 印W的豎直分辨率,V表示待嵌入的二值數(shù)字水印W的橫向分辨率,W= {w I w (u, ν) =0/1,
101彡u彡U,1彡ν彡V},w(u,ν)表示待嵌入的二值數(shù)字水印W的第u行第ν列像素的像 素值,第一小波逼近子圖F_A的分辨率為(Μ/21) X (N/2l),M/2l表示第一小波逼近子圖F_A
的豎直分辨率,N/浐表示第一小波逼近子圖F A的橫向分辨率,
min()為取最小值函數(shù),maxO為取最大值函數(shù),符號(hào)“|_」”表示取小于其自身的最大整數(shù)。在此具體實(shí)施例中,對(duì)原始數(shù)字圖像F進(jìn)行歸一化處理的具體過程為將歸一化 處理后的數(shù)字圖像記為F',將歸一化處理后的數(shù)字圖像F'的第m行第η列像素的像素值 記為f' (m, n),f' (111,11)=€(111,11)/255,其中,€(111,11)表示原始數(shù)字圖像?的第111行第 η列像素的像素值,1彡m彡Μ,1彡η彡N。在此具體實(shí)施例中,待嵌入的二值數(shù)字水印W可選用具有版權(quán)信息的作者簽名、 文字標(biāo)識(shí)、序列號(hào)或公司圖標(biāo)等二值圖像。①_2、對(duì)第一小波逼近子圖F_A進(jìn)行二維離散傅里葉變換,得到一個(gè)分辨率與第 一小波逼近子圖F_A的分辨率相同的二維第一離散傅里葉頻譜,記為F_AF ;然后從二維第 一離散傅里葉頻譜F_AF中提取出二維第一離散傅里葉幅度譜,記為F_AA,F(xiàn)_AA = abs(F_ AF), abs ()為求幅度函數(shù)。①_3、對(duì)二維第一離散傅里葉幅度譜F_AA進(jìn)行掃描排列,得到一個(gè)一維第一幅度 譜系數(shù)序列,記為 F_AAD,F(xiàn)_AAD = {f_aad(x),1 彡 χ 彡 M/2LXN/2L},其中,f_aad(x)表示 一維第一幅度譜系數(shù)序列F_AAD中的第χ個(gè)幅度譜系數(shù)。在此具體實(shí)施例中,對(duì)二維第一離散傅里葉幅度譜?_々々進(jìn)行掃描排列采用現(xiàn)有 的“Z” (Zig-Zag)字型掃描排列方法,該掃描排列方法是一種在數(shù)字圖像中經(jīng)常處理的方 法?!癦”(Zig_Zag)字型掃描排列方法也稱為“之”字型掃描排列方法,計(jì)算機(jī)工程與科學(xué)中 的《基于Zig-Zag掃描的空域圖像置亂新算法》(作者鄭文斌)公開過該掃描排列方法。①-4、從一維第一幅度譜系數(shù)序列F_AAD中順序選取UXV+1個(gè)彼此幅度譜系數(shù) 值相差S的幅度譜系數(shù),構(gòu)成一個(gè)新的一維第一幅度譜系數(shù)序列,記為F_AADN,F(xiàn)_AADN = {f_aadn(y),1彡y彡UXV+1},并記錄新的一維第一幅度譜系數(shù)序列F_AADN中的各個(gè)幅 度譜系數(shù)在一維第一幅度譜系數(shù)序列?_々々0中的位置信息,其中,f_aadn(y)表示新的一 維第一幅度譜系數(shù)序列F_AADN中的第y個(gè)幅度譜系數(shù),δ為設(shè)定的差值閾值。具體處理 過程如下a.從一維第一幅度譜系數(shù)序列F_AAD中選取第1個(gè)幅度譜系數(shù)f_aad(l),將 其移入到新的一維第一幅度譜系數(shù)序列F_AADN中作為新的一維第一幅度譜系數(shù)序列F_ AADN中的第1個(gè)幅度譜系數(shù)f_aadn(l),即f_aadn(l) = f_aad(l) ;b.從一維第一幅度 譜系數(shù)序列F_AAD中的第2個(gè)幅度譜系數(shù)f_aad(2)開始,順序?qū)ふ乙粋€(gè)與第1個(gè)幅度譜 系數(shù)f_aad(l)的差值的絕對(duì)值大于等于δ的位置最近鄰的幅度譜系數(shù),設(shè)找到的幅度譜 系數(shù)為一維第一幅度譜系數(shù)序列F_AAD中的第k個(gè)幅度譜系數(shù)f_aad(k),即如果滿足| f_ aad(k)-f_aad(l) |彡δ,則將f_aad(k)移入到新的一維第一幅度譜系數(shù)序列F_AADN中作 為新的一維第一幅度譜系數(shù)序列F_AADN中的第2個(gè)幅度譜系數(shù)f_aadn(2),即f_aadn(2) =f_aad(k),其中,2彡k彡M/2lXN/2l ;c.以此類推,從一維第一幅度譜系數(shù)序列F_AAD中 的第k+Ι個(gè)幅度譜系數(shù)f_aad(k+l)開始,順序?qū)ふ蚁乱粋€(gè)與第k個(gè)幅度譜系數(shù)f_aad(k) 的差值的絕對(duì)值大于等于S的位置最近鄰的幅度譜系數(shù),并將找到的幅度譜系數(shù)移入到 新的一維第一幅度譜系數(shù)序列F_AADN中,直至新的一維第一幅度譜系數(shù)序列F_AADN中的幅度譜系數(shù)的個(gè)數(shù)達(dá)到UXV+1個(gè)為止,并記錄新的一維第一幅度譜系數(shù)序列F_AADN中的 各個(gè)幅度譜系數(shù)在一維第一幅度譜系數(shù)序列F_AAD中的位置信息。在此,位置最近鄰的幅度譜系數(shù)實(shí)際上指的是在尋找滿足條件的幅度譜系數(shù)的過 程中,第1個(gè)滿足條件的幅度譜系數(shù)即為位置最近鄰的幅度譜系數(shù)。在此,設(shè)定的差值閾值δ是自適應(yīng)性確定的,一般情況下可在確保能夠選取到 UXV+1個(gè)幅度譜系數(shù)的前提下盡量的取大值,以提高數(shù)字圖像在受到攻擊處理時(shí)所選取 的這些幅度譜系數(shù)相互間大小關(guān)系的不變性。由于原始數(shù)字圖像和二值數(shù)字水印的大小 不同,因此設(shè)定的差值閾值δ的取值也就不同,選取的幅度譜系數(shù)的個(gè)數(shù)和位置也隨之而 變,因此具有自適應(yīng)性。①-5、依次比較新的一維第一幅度譜系數(shù)序列F_AADN中相鄰前后兩個(gè)幅度譜系 數(shù)的大小,設(shè)相鄰前后兩個(gè)幅度譜系數(shù)中的前一個(gè)幅度譜系數(shù)為f_aadn(Z),設(shè)相鄰前后兩 個(gè)幅度譜系數(shù)中的后一個(gè)幅度譜系數(shù)為f_aadn (z+1),如果f_aadn (ζ) > f_aadn (z+1),則 返回值1,反之,則返回值0 ;然后將所有返回值按先行后列順序排列方式貯存于一個(gè)大小 為UXV的二維矩陣中,將該二維矩陣作為第一二值水印密鑰,記為WB,其中,1彡ζ彡UXV。 在此,生成的第一二值水印密鑰Wb體現(xiàn)了原始數(shù)字圖像的內(nèi)在特征。①_6、將待嵌入的具有實(shí)際版權(quán)意義的二值數(shù)字水印W進(jìn)行置亂處理,記置亂后 的二值數(shù)字水印為W1,然后將置亂后的二值數(shù)字水印W1與第一二值水印密鑰Wb進(jìn)行異或運(yùn) 算得到水印信息,記為W' ,W' =XoHW1, Wb),再將水印信息W'保存到注冊(cè)機(jī)構(gòu)的水印數(shù) 據(jù)庫中,完成零水印的嵌入,其中,xor()為異或運(yùn)算函數(shù)。在此,對(duì)待嵌入的二值數(shù)字水印W進(jìn)行置亂處理,可以有效提高得到的水印信息 W'在注冊(cè)機(jī)構(gòu)中的安全性。在此,置亂可以采用常規(guī)的Arnold變換(又稱貓臉變換),也可采用現(xiàn)有的其他任 意成熟的置亂變換方法。①-7、零水印嵌入端將記錄的新的一維第一幅度譜系數(shù)序列F_AADN中的各個(gè)幅 度譜系數(shù)在一維第一幅度譜系數(shù)序列F_AAD中的位置信息、保存在注冊(cè)機(jī)構(gòu)的水印數(shù)據(jù)庫 中的水印信息r、零水印嵌入端的二值數(shù)字水印W傳輸給零水印檢測(cè)端。其中,零水印檢測(cè)的流程框圖如圖2所示,其具體包括以下步驟②-1、在零水印檢測(cè)端,將嵌入有二值數(shù)字水印的數(shù)字圖像記為TF,對(duì)嵌入有二 值數(shù)字水印的數(shù)字圖像TF進(jìn)行歸一化處理,然后對(duì)歸一化處理后的數(shù)字圖像進(jìn)行L級(jí)二維 離散小波變換,得到一個(gè)第二小波逼近子圖TF_A和多個(gè)第二小波細(xì)節(jié)子圖,其中,嵌入有 二值數(shù)字水印的數(shù)字圖像TF的分辨率為M' XN',M'表示嵌入有二值數(shù)字水印的數(shù)字圖 像TF的豎直分辨率,M' = M, N'表示嵌入有二值數(shù)字水印的數(shù)字圖像TF的橫向分辨率, N' = N, TF = {tf I 0 ^ tf (m, η) ^ 255,1 ^ m ^ M',1 彡 η 彡 N' },其中,tf (m,η)表示 嵌入有二值數(shù)字水印的數(shù)字圖像TF的第m行第η列像素的像素值,第二小波逼近子圖TF_ A的分辨率為(M' /2l) X (N' /2l),M' It表示第二小波逼近子圖TF_A的豎直分辨率,
N' /浐表示第二小波逼近子圖TF A的橫向分辨率
為取
最小值函數(shù),max ()為取最大值函數(shù),符號(hào)“”表示取小于其自身的最大整數(shù)。在此具體實(shí)施例中,對(duì)嵌入有二值數(shù)字水印的數(shù)字圖像TF進(jìn)行歸一化處理的具體過程為將歸一化處理后的數(shù)字圖像記為TF',將歸一化處理后的數(shù)字圖像TF'的第m 行第η列像素的像素值記為tf' (m,n),tf' (m,n) = tf (m,η)/255,其中,tf (m,η)表示嵌 入有二值數(shù)字水印的數(shù)字圖像TF的第m行第η列像素的像素值,1彡m彡M',1彡η彡N'。②-2、對(duì)第二小波逼近子圖TF_A進(jìn)行二維離散傅里葉變換,得到一個(gè)分辨率與 第二小波逼近子圖TF_A的分辨率相同的二維第二離散傅里葉頻譜,記為TF_AF ;然后從二 維第二離散傅里葉頻譜TF_AF中提取出二維第二離散傅里葉幅度譜,記為TF_AA,TF_AA = abs (TF_AF),abs ()為求幅度函數(shù)。②-3、對(duì)二維第二離散傅里葉幅度譜TF_AA進(jìn)行掃描排列,得到一個(gè)一維第二幅 度譜系數(shù)序列,記為 TF_AAD,TF_AAD = {tf_aad(x),1 彡 χ 彡 M/2LXN/2L},其中,tf_aad (χ) 表示一維第二幅度譜系數(shù)序列TF_AAD中的第χ個(gè)幅度譜系數(shù)。在此具體實(shí)施例中,對(duì)二維第二離散傅里葉幅度譜TF_AA進(jìn)行掃描排列也采用 “Z”字型掃描排列方法。②-4、根據(jù)零水印嵌入端記錄的新的一維第一幅度譜系數(shù)序列F_AADN中的各個(gè) 幅度譜系數(shù)在一維第一幅度譜系數(shù)序列F_AAD中的位置信息,從一維第二幅度譜系數(shù)序列 TF_AAD中提取出相應(yīng)位置的UXV+1個(gè)幅度譜系數(shù),構(gòu)成一個(gè)新的一維第二幅度譜系數(shù)序 列,記為 TF_AADN,TF_AADN = {tf_aadn(y),1 彡 y 彡 UXV+1},其中,tf_aadn(y)表示新的 一維第二幅度譜系數(shù)序列TF_AADN中的第y個(gè)幅度譜系數(shù)。②-5、依次比較新的一維第二幅度譜系數(shù)序列TF_AADN中相鄰前后兩個(gè)幅度譜 系數(shù)的大小,設(shè)相鄰前后兩個(gè)幅度譜系數(shù)中的前一個(gè)幅度譜系數(shù)為tf_aadn(ζ),設(shè)相鄰 前后兩個(gè)幅度譜系數(shù)中的后一個(gè)幅度譜系數(shù)為tf_aadn(Z+l),如果tf_aadn(Z) > tf_ aadn(Z+l),則返回值1,反之,則返回值0 ;然后將所有返回值按先行后列順序排列方式貯 存于一個(gè)大小為UXV的二維矩陣中,將該二維矩陣作為第二二值水印密鑰,記為W' B,其 中,ζ < UXV0②_6、對(duì)保存在注冊(cè)機(jī)構(gòu)的水印數(shù)據(jù)庫中的水印信息W'和第二二值水印密鑰 W' B進(jìn)行異或運(yùn)算,提取得到二值數(shù)字水印w2,W2 = Xor (W',W' B),再將二值數(shù)字水印W2 進(jìn)行反置亂處理得到具有版權(quán)認(rèn)證信息的數(shù)字水印W*,其中,XorO為異或運(yùn)算函數(shù)。在此,反置亂采用現(xiàn)有的反置亂變換方法。②_7、計(jì)算提取得到的版權(quán)認(rèn)證的數(shù)字水印W*與零水印嵌入端的二值數(shù)字水印W 的相關(guān)性,確定是否檢測(cè)出嵌入的二值數(shù)字水印。對(duì)本發(fā)明方法進(jìn)行實(shí)驗(yàn)仿真,實(shí)驗(yàn)仿真在Matlab7. 5平臺(tái)上進(jìn)行。仿真中原始數(shù)字圖像F選用512X512X8bit的Lena灰度圖像。在零水印方案 實(shí)施之前,對(duì)原始數(shù)字圖像F進(jìn)行歸一化處理,歸一化處理后的Lena灰度圖像如圖3a所 示,待嵌入的二值數(shù)字水印選擇具有明確含義的二值字符圖像W= {wIw(u, ν) =0/1, 1 < u < 32,1 < ν < 32},如圖3b所示。為了提高二值數(shù)字水印的安全性,將待嵌入的二 值數(shù)字水印進(jìn)行置亂處理,置亂后的二值字符水印Wl如圖3c所示。依據(jù)原始Lena灰度圖 像和待嵌入的二值字符水印的大小,在零水印方案具體實(shí)施過程中,對(duì)Lena灰度圖像進(jìn)行 三級(jí)小波分解和重建,而差值閾值δ的取值設(shè)定為24. 5。嵌入水印后的數(shù)字圖像的質(zhì)量采用峰值信噪比(PSNR)進(jìn)行評(píng)判
13
,其中,f(m,η)表示原始數(shù)字圖像F的第m
行第η列像素的像素值,f' (m,n)表示嵌入水印后的數(shù)字圖像的第m行第η列像素的像素
值,fmax表示原始數(shù)字圖像F的最大像素值,MXN表示原始數(shù)字圖像F的分辨率。 水印檢測(cè)結(jié)果的客觀評(píng)價(jià)采用歸一化相關(guān)系數(shù)(P )進(jìn)行評(píng)判
印嵌入端待嵌入的二值數(shù)字水印W的第u行第ν列像素的像素值,w*(u, ν)表示檢測(cè)出的 數(shù)字水印W*的第u行第ν列像素的像素值,G表示原始的二值數(shù)字水印W的所有像素的像 素值的均值,;7表示檢測(cè)出的數(shù)字水印f的所有像素的像素值的均值。根據(jù)相關(guān)系數(shù)的大 小可以判斷二值數(shù)字水印是否存在。圖4a為嵌入水印后的水印Lena圖像,從圖4a可以看出,該水印Lena圖像的質(zhì)量 并沒有發(fā)生任何變化(PSNR ―⑴dB),與原始Lena圖像一致,完全滿足了水印不可覺察性要 求。圖4b是檢測(cè)出的數(shù)字水印,在水印Lena圖像未受任何處理或攻擊破壞時(shí),可以正確無 誤地檢測(cè)出嵌入的二值字符水印,歸一化相關(guān)系數(shù)(P)為1.0。以下通過對(duì)水印Lena圖像進(jìn)行多種攻擊處理,來驗(yàn)證本發(fā)明方法的魯棒性。1)直方圖均衡化對(duì)圖4a所示的水印Lena圖像進(jìn)行直方圖均衡化處理,得到如圖5a所示的水印 Lena圖像。經(jīng)直方圖均衡化處理后,水印Lena圖像的像素值分布發(fā)生了明顯變化,峰值信 噪比(PSNR)下降至19.57dB。圖5b為水印檢測(cè)結(jié)果,從圖5b可以看出,嵌入的二值數(shù)字水 印能被很好地檢測(cè)出,歸一化相關(guān)系數(shù)(P)達(dá)到了 0.98。2) JPEG有損壓縮對(duì)圖4a所示的水印Lena圖像進(jìn)行JPEG有損壓縮處理,壓縮質(zhì)量因子選擇為 10%,得到的水印Lena圖像如圖6a所示。從圖6a可以看出,這時(shí)水印Lena圖像呈現(xiàn)出明 顯的方塊效應(yīng),視覺質(zhì)量發(fā)生了嚴(yán)重退化,峰值信噪比(PSNR)僅為29.65dB。但由圖6b所 示的水印檢測(cè)結(jié)果可知,嵌入的二值數(shù)字水印絲毫不受影響,歸一化相關(guān)系數(shù)(P)為1.0。表1給出了不同JPEG壓縮質(zhì)量因子下的水印Lena圖像質(zhì)量及水印檢測(cè)結(jié)果。從 表1可以看出,本發(fā)明方法具有非常理想的抗JPEG壓縮能力,壓縮質(zhì)量因子減小至8%時(shí)仍 能無差錯(cuò)地檢測(cè)出嵌入的二值數(shù)字水印。表1不同JPEG壓縮質(zhì)量因子下的水印Lena圖像質(zhì)量及水印檢測(cè)結(jié)果
唭中,W (U, V)表示原始的即零水
3)疊加高斯(Gauss)噪聲對(duì)圖4a的水印Lena圖像進(jìn)行噪聲干擾,干擾噪聲為均值為0方差為0. 01的高斯 噪聲,得到的水印Lena圖像列于圖7a中。從圖7a可以看出,這時(shí)水印Lena圖像的視覺質(zhì) 量發(fā)生嚴(yán)重退化,峰值信噪比(PSNR)僅為20.08dB。但由圖7b所示的水印檢測(cè)結(jié)果可知, 嵌入的二值數(shù)字水印不受影響,歸一化相關(guān)系數(shù)(P)達(dá)到了 1.0。表2給出了均值為0不同方差高斯噪聲干擾下的水印Lena圖像質(zhì)量及水印檢測(cè) 結(jié)果。從表2可以看出,本發(fā)明方法具有非常理想的抗噪聲干擾能力。例如當(dāng)均值為0方 差為0. 03的高斯噪聲干擾后,這時(shí)水印Lena圖像已面目全非,但嵌入其中的二值數(shù)字水印 仍能被完好地檢測(cè)出。表2均值為0不同方差高斯噪聲干擾下的水印Lena圖像質(zhì)量及水印檢測(cè)結(jié)果
4)中值濾波對(duì)圖4a的水印Lena圖像進(jìn)行中值濾波處理,中值濾波器窗口大小選擇為[7X7], 濾波后得到的水印Lena圖像如圖8a所示。從圖8a可以看出,經(jīng)過中值濾波后,水印Lena 圖像細(xì)節(jié)信息已比較模糊,峰值信噪比(PSNR)僅為27. 72dB。但由圖8b所示的水印檢測(cè)結(jié) 果可知,嵌入的二值數(shù)字水印根本不受影響,歸一化相關(guān)系數(shù)(P)達(dá)到了 1.0。表3給出了經(jīng)不同窗口大小中值濾波后的水印Lena圖像質(zhì)量及水印檢測(cè)結(jié)果。從 表3可以看出,本發(fā)明方法同樣具有理想的抗濾波處理能力。表3不同窗口中值濾波后的水印Lena圖像質(zhì)量及水印檢測(cè)結(jié)果
15 5)幾何平移和旋轉(zhuǎn)對(duì)圖4a的水印Lena圖像分別向左平移1/4和向右平移1/4區(qū)域,得到的水印Lena 圖像分別如圖9a和圖9b所示。圖9c為圖9a相應(yīng)的水印檢測(cè)結(jié)果,圖9d為圖9b相應(yīng)的 水印檢測(cè)結(jié)果,從圖9c和圖9d可以看出,本發(fā)明方法對(duì)于平移攻擊具有免疫性,嵌入的二 值數(shù)字水印完全不受影響。表4給出了經(jīng)不同角度旋轉(zhuǎn)后的水印Lena圖像質(zhì)量及水印檢測(cè)結(jié)果。從表4可 以看出,本發(fā)明方法也有比較好的抗幾何旋轉(zhuǎn)攻擊能力。表4經(jīng)不同角度旋轉(zhuǎn)后的水印Lena圖像質(zhì)量及水印檢測(cè)結(jié)果 6)算法的辨識(shí)性零水印是通過載體圖像自身特征信息構(gòu)造的,它隨載體圖像的不同而不同。因此, 構(gòu)造的有關(guān)零水印信息除了需要保存到注冊(cè)機(jī)構(gòu)的水印數(shù)據(jù)庫中作為圖像版權(quán)保護(hù)的憑 據(jù)之外,其自身的算法既要能辨認(rèn)受攻擊載體圖像的版權(quán)能力,即魯棒性要好,同時(shí)應(yīng)能解 決內(nèi)容相似數(shù)字圖像的版權(quán)識(shí)別,即水印的唯一辨識(shí)性也要好。這里以一幅與Lena圖像統(tǒng) 計(jì)特性相近且內(nèi)容相似的Woman圖像(如圖10所示)為例作對(duì)比檢測(cè),結(jié)果發(fā)現(xiàn),從Woman 圖像中提取的內(nèi)容與保存在水印數(shù)據(jù)庫中原始二值數(shù)字水印的相關(guān)性P只有0.06,因此 可以認(rèn)為兩者毫不相關(guān),說明本發(fā)明方法具有理想的水印辨識(shí)性。
權(quán)利要求
一種魯棒的數(shù)字圖像自適應(yīng)零水印方法,包括零水印嵌入和零水印檢測(cè)兩部分,其特征在于所述的零水印嵌入包括以下步驟① 1、在零水印嵌入端,將待嵌入二值數(shù)字水印的原始數(shù)字圖像記為F,將待嵌入的二值數(shù)字水印記為W,對(duì)原始數(shù)字圖像F進(jìn)行歸一化處理,然后對(duì)歸一化處理后的數(shù)字圖像進(jìn)行L級(jí)二維離散小波變換,得到一個(gè)第一小波逼近子圖F_A和多個(gè)第一小波細(xì)節(jié)子圖,其中,原始數(shù)字圖像F的分辨率為M×N,M表示待嵌入數(shù)字水印的原始數(shù)字圖像F的豎直分辨率,N表示待嵌入數(shù)字水印的原始數(shù)字圖像F的橫向分辨率,待嵌入的二值數(shù)字水印W的分辨率為U×V,U表示待嵌入的二值數(shù)字水印W的豎直分辨率,V表示待嵌入的二值數(shù)字水印W的橫向分辨率,第一小波逼近子圖F_A的分辨率為(M/2L)×(N/2L),M/2L表示第一小波逼近子圖F_A的豎直分辨率,N/2L表示第一小波逼近子圖F_A的橫向分辨率,min()為取最小值函數(shù),max()為取最大值函數(shù),符號(hào)表示取小于其自身的最大整數(shù);① 2、對(duì)第一小波逼近子圖F_A進(jìn)行二維離散傅里葉變換,得到一個(gè)分辨率與第一小波逼近子圖F_A的分辨率相同的二維第一離散傅里葉頻譜,記為F_AF;然后從二維第一離散傅里葉頻譜F_AF中提取出二維第一離散傅里葉幅度譜,記為F_AA,F(xiàn)_AA=abs(F_AF),abs()為求幅度函數(shù);① 3、對(duì)二維第一離散傅里葉幅度譜F_AA進(jìn)行掃描排列,得到一個(gè)一維第一幅度譜系數(shù)序列,記為F_AAD,F(xiàn)_AAD={f_aad(x),1≤x≤(M/2L)×(N/2L)},其中,f_aad(x)表示一維第一幅度譜系數(shù)序列F_AAD中的第x個(gè)幅度譜系數(shù);① 4、從一維第一幅度譜系數(shù)序列F_AAD中順序選取U×V+1個(gè)彼此幅度譜系數(shù)值相差δ的幅度譜系數(shù),構(gòu)成一個(gè)新的一維第一幅度譜系數(shù)序列,記為F_AADN,F(xiàn)_AADN={f_aadn(y),1≤y≤U×V+1},并記錄新的一維第一幅度譜系數(shù)序列F_AADN中的各個(gè)幅度譜系數(shù)在一維第一幅度譜系數(shù)序列FAAD中的位置信息,其中,f_aadn(y)表示新的一維第一幅度譜系數(shù)序列F_AADN中的第y個(gè)幅度譜系數(shù),δ為設(shè)定的差值閾值;① 5、依次比較新的一維第一幅度譜系數(shù)序列F_AADN中相鄰前后兩個(gè)幅度譜系數(shù)的大小,設(shè)相鄰前后兩個(gè)幅度譜系數(shù)中的前一個(gè)幅度譜系數(shù)為f_aadn(z),設(shè)相鄰前后兩個(gè)幅度譜系數(shù)中的后一個(gè)幅度譜系數(shù)為f_aadn(z+1),如果f_aadn(z)>f_aadn(z+1),則返回值1,反之,則返回值0;然后將所有返回值按先行后列順序排列方式貯存于一個(gè)大小為U×V的二維矩陣中,將該二維矩陣作為第一二值水印密鑰,記為WB,其中,1≤z≤U×V;① 6、將待嵌入的二值數(shù)字水印W進(jìn)行置亂處理,記置亂后的二值數(shù)字水印為W1,然后將置亂后的二值數(shù)字水印W1與第一二值水印密鑰WB進(jìn)行異或運(yùn)算得到水印信息,記為W′,W′=xor(W1,WB),再將水印信息W′保存到注冊(cè)機(jī)構(gòu)的水印數(shù)據(jù)庫中,完成零水印的嵌入,其中,xor()為異或運(yùn)算函數(shù);① 7、零水印嵌入端將記錄的新的一維第一幅度譜系數(shù)序列F_AADN中的各個(gè)幅度譜系數(shù)在一維第一幅度譜系數(shù)序列F_AAD中的位置信息、保存在注冊(cè)機(jī)構(gòu)的水印數(shù)據(jù)庫中的水印信息W′、零水印嵌入端的二值數(shù)字水印W傳輸給零水印檢測(cè)端;所述的零水印檢測(cè)包括以下步驟② 1、在零水印檢測(cè)端,將嵌入有二值數(shù)字水印的數(shù)字圖像記為TF,對(duì)嵌入有二值數(shù)字水印的數(shù)字圖像TF進(jìn)行歸一化處理,然后對(duì)歸一化處理后的數(shù)字圖像進(jìn)行L級(jí)二維離散小波變換,得到一個(gè)第二小波逼近子圖TF_A和多個(gè)第二小波細(xì)節(jié)子圖,其中,嵌入有二值數(shù)字水印的數(shù)字圖像TF的分辨率為M′×N′,M′表示嵌入有二值數(shù)字水印的數(shù)字圖像TF的豎直分辨率,M′=M,N′表示嵌入有二值數(shù)字水印的數(shù)字圖像TF的橫向分辨率,N′=N,第二小波逼近子圖TF_A的分辨率為(M′/2L)×(N′/2L),M′/2L表示第二小波逼近子圖TF_A的豎直分辨率,N′/2L表示第二小波逼近子圖TF_A的橫向分辨率,min()為取最小值函數(shù),max()為取最大值函數(shù),符號(hào)表示取小于其自身的最大整數(shù);② 2、對(duì)第二小波逼近子圖TF_A進(jìn)行二維離散傅里葉變換,得到一個(gè)分辨率與第二小波逼近子圖TF_A的分辨率相同的二維第二離散傅里葉頻譜,記為TF_AF;然后從二維第二離散傅里葉頻譜TF_AF中提取出二維第二離散傅里葉幅度譜,記為TF_AA,TF_AA=abs(TF_AF),abs()為求幅度函數(shù);② 3、對(duì)二維第二離散傅里葉幅度譜TF_AA進(jìn)行掃描排列,得到一個(gè)一維第二幅度譜系數(shù)序列,記為TF_AAD,TF_AAD={tf_aad(x),1≤x≤(M′/2L)×(N′/2L)},其中,tf_aad(x)表示一維第二幅度譜系數(shù)序列TF_AAD中的第x個(gè)幅度譜系數(shù);② 4、根據(jù)零水印嵌入端記錄的新的一維第一幅度譜系數(shù)序列F_AADN中的各個(gè)幅度譜系數(shù)在一維第一幅度譜系數(shù)序列F_AAD中的位置信息,從一維第二幅度譜系數(shù)序列TF_AAD中提取出相應(yīng)位置的U×V+1個(gè)幅度譜系數(shù),構(gòu)成一個(gè)新的一維第二幅度譜系數(shù)序列,記為TF_AADN,TF_AADN={tf_aadn(y),1≤y≤U×V+1},其中,tf_aadn(y)表示新的一維第二幅度譜系數(shù)序列TF_AADN中的第y個(gè)幅度譜系數(shù);② 5、依次比較新的一維第二幅度譜系數(shù)序列TF_AADN中相鄰前后兩個(gè)幅度譜系數(shù)的大小,設(shè)相鄰前后兩個(gè)幅度譜系數(shù)中的前一個(gè)幅度譜系數(shù)為tf_aadn(z),設(shè)相鄰前后兩個(gè)幅度譜系數(shù)中的后一個(gè)幅度譜系數(shù)為tf_aadn(z+1),如果tf_aadn(z)>tf_aadn(z+1),則返回值1,反之,則返回值0;然后將所有返回值按先行后列順序排列方式貯存于一個(gè)大小為U×V的二維矩陣中,將該二維矩陣作為第二二值水印密鑰,記為W′B,其中,1≤z≤U×V;② 6、對(duì)保存在注冊(cè)機(jī)構(gòu)的水印數(shù)據(jù)庫中的水印信息W′和第二二值水印密鑰W′B進(jìn)行異或運(yùn)算,提取得到二值數(shù)字水印W2,W2=xor(W′,W′B),再將二值數(shù)字水印W2進(jìn)行反置亂處理得到具有版權(quán)認(rèn)證信息的數(shù)字水印W*,其中,xor()為異或運(yùn)算函數(shù);② 7、計(jì)算得到的具有版權(quán)認(rèn)證信息的數(shù)字水印W*與零水印嵌入端的二值數(shù)字水印W的相關(guān)性,確定是否檢測(cè)出嵌入的二值數(shù)字水印。FSA00000166933500011.tif,FSA00000166933500012.tif,FSA00000166933500031.tif,FSA00000166933500032.tif
2.根據(jù)權(quán)利要求1所述的一種魯棒的數(shù)字圖像自適應(yīng)零水印方法,其特征在于所述的 步驟①-1中對(duì)原始數(shù)字圖像F進(jìn)行歸一化處理的具體過程為將歸一化處理后的數(shù)字圖像 記為F',將歸一化處理后的數(shù)字圖像F'的第m行第η列像素的像素值記為f' (m, η), f' (m, η) = f(m,η)/255,其中,f(m,η)表示原始數(shù)字圖像F的第m行第η列像素的像素 值,1≤m≤Μ,1≤ η ≤ N。
3.根據(jù)權(quán)利要求1或2所述的一種魯棒的數(shù)字圖像自適應(yīng)零水印方法,其特征在于所 述的步驟①_3中對(duì)二維第一離散傅里葉幅度譜F_AA進(jìn)行掃描排列采用“Ζ”字型掃描排列方法。
4.根據(jù)權(quán)利要求3所述的一種魯棒的數(shù)字圖像自適應(yīng)零水印方法,其特征在于所述的 步驟①_4的具體過程為a.從一維第一幅度譜系數(shù)序列F_AAD中選取第1個(gè)幅度譜系數(shù) f_aad(l),將其移入到新的一維第一幅度譜系數(shù)序列F_AADN中作為新的一維第一幅度譜 系數(shù)序列F_AADN中的第1個(gè)幅度譜系數(shù)f_aadn(l),f_aadn(l) = f_aad(l) ;b.從一維第 一幅度譜系數(shù)序列F_AAD中的第2個(gè)幅度譜系數(shù)f_aad(2)開始,順序?qū)ふ乙粋€(gè)與第1個(gè)幅 度譜系數(shù)f_aad(l)的差值的絕對(duì)值大于等于δ的位置最近鄰的幅度譜系數(shù),設(shè)找到的幅 度譜系數(shù)為一維第一幅度譜系數(shù)序列F_AAD中的第k個(gè)幅度譜系數(shù)f_aad (k),將f_aad (k) 移入到新的一維第一幅度譜系數(shù)序列F_AADN中作為新的一維第一幅度譜系數(shù)序列F_AADN 中的第 2 個(gè)幅度譜系數(shù) f_aadn (2),f_aadn (2) = f_aad (k),其中,2 彡 k 彡(M/2L) X (N/2L); c.以此類推,從一維第一幅度譜系數(shù)序列F_AAD中的第k+1個(gè)幅度譜系數(shù)f_aad(k+l)開 始,順序?qū)ふ蚁乱粋€(gè)與第k個(gè)幅度譜系數(shù)f_aad(k)的差值的絕對(duì)值大于等于δ的位置最 近鄰的幅度譜系數(shù),并將找到的幅度譜系數(shù)移入到新的一維第一幅度譜系數(shù)序列F_AADN 中,直至新的一維第一幅度譜系數(shù)序列F_AADN中的幅度譜系數(shù)的個(gè)數(shù)達(dá)到UX V+1個(gè)為止, 并記錄新的一維第一幅度譜系數(shù)序列F_AADN中的各個(gè)幅度譜系數(shù)在一維第一幅度譜系數(shù) 序列F_AAD中的位置信息。
5.根據(jù)權(quán)利要求1所述的一種魯棒的數(shù)字圖像自適應(yīng)零水印方法,其特征在于所述的 步驟②-1中對(duì)嵌入有二值數(shù)字水印的數(shù)字圖像TF進(jìn)行歸一化處理的具體過程為將歸一 化處理后的數(shù)字圖像記為TF',將歸一化處理后的數(shù)字圖像TF'的第m行第η列像素的像 素值記為 tf' (m, n),tf' (111,11)={€(111,11)/255, 其中3€(111,11)表示嵌入有二值數(shù)字水 印的數(shù)字圖像TF的第m行第η列像素的像素值,1彡m彡M',1彡η彡N'。
6.根據(jù)權(quán)利要求1或5所述的一種魯棒的數(shù)字圖像自適應(yīng)零水印方法,其特征在于所 述的步驟②_3中對(duì)二維第二離散傅里葉幅度譜TF_AA進(jìn)行掃描排列采用“Z”字型掃描排 列方法。
全文摘要
本發(fā)明公開了一種魯棒的數(shù)字圖像自適應(yīng)零水印方法,其主要包括零水印嵌入和零水印檢測(cè)兩部分,零水印嵌入和零水印檢測(cè)均是在離散小波變換和離散傅里葉變換復(fù)合域內(nèi)進(jìn)行的,充分利用了離散小波變換得到的小波逼近子圖的良好穩(wěn)定性和離散傅里葉變換得到的幅度譜的平移不變性的特點(diǎn),使本發(fā)明方法具有好的魯棒性,能夠抗常規(guī)圖像處理和完全免疫于圖像平移攻擊;同時(shí)由于本發(fā)明方法并沒有將二值數(shù)字水印嵌入到原始數(shù)字圖像中,而是將其注冊(cè)到水印數(shù)據(jù)庫中,因此沒有對(duì)原始數(shù)字圖像數(shù)據(jù)產(chǎn)生任何破壞,不存在圖像質(zhì)量的下降問題,嵌入的二值數(shù)字水印完全不可覺察,能夠很好地平衡數(shù)字水印的魯棒性和不可覺察性之間的矛盾。
文檔編號(hào)G06T1/00GK101908201SQ20101021655
公開日2010年12月8日 申請(qǐng)日期2010年6月28日 優(yōu)先權(quán)日2010年6月28日
發(fā)明者周亞訓(xùn), 楊高波, 董建峰, 金煒, 陳芬 申請(qǐng)人:寧波大學(xué)