摘 要:針對JPEG 2000圖像內(nèi)容認證的需求,提出一種適用于JPEG 2000圖像認證的半脆弱水印算法。首先,將原始圖像分塊按Hilbert掃描順序排列;然后在原圖像分塊Hilbert序列中選取分塊,再結(jié)合各分塊臨界噪聲閾值矩陣JND閾值,完成小波域的水印自適應(yīng)嵌入;最后,引入私鑰對水印進行加密,提高系統(tǒng)的安全性。在認證端,從接收到的圖像提取其中所隱藏信息,比較接收到的圖像和隱藏信息,判斷內(nèi)容發(fā)生變化的位置。實驗表明,該算法對竄改等破壞圖像內(nèi)容的惡意操作有精確的檢測和定位能力。
關(guān)鍵詞:JPEG 2000; 數(shù)字圖像; 半脆弱水印; 內(nèi)容認證
中圖分類號:TP309.2文獻標志碼:A
文章編號:1001-3695(2007)06-0147-03
隨著多媒體技術(shù)和網(wǎng)絡(luò)技術(shù)的飛速發(fā)展及廣泛應(yīng)用,對圖像、音/視頻等多媒體數(shù)字內(nèi)容的保護已成為迫切需要解決的問題。對數(shù)字內(nèi)容的保護一般可以分為兩個方面:①版權(quán)保護;②內(nèi)容完整性(真實性)保護,即認證(或稱為竄改提示)。用于版權(quán)保護的數(shù)字水印要求有很強的魯棒性和安全性,用于多媒體內(nèi)容真實性鑒定(或竄改提示)的水印,一般稱為脆弱水印(或易損水印)。這種水印同樣是在內(nèi)容數(shù)據(jù)中嵌入不可見的信息。在實際應(yīng)用中,并不需要脆弱水印對所有的修改都非常敏感。對惡意竄改高度敏感和對內(nèi)容保護操作魯棒的半脆弱水印更能適應(yīng)實際應(yīng)用的要求。一個半脆弱水印通常應(yīng)該滿足三個基本要求:對惡意竄改的高度敏感性和對內(nèi)容保護操作的魯棒性、不可見性、安全性。半脆弱水印不但要對惡意的攻擊特別敏感,又要對一些常規(guī)的圖像操作(如JPEG壓縮、噪聲等)有一定的魯棒性,從而將偶然攻擊與惡意竄改區(qū)分開來[1-3]。
由于JPEG壓縮應(yīng)用的普遍性,抗JPEG壓縮一直是半脆弱水印的重要研究內(nèi)容及難點。Ho與Li[4]利用基于相關(guān)信號及系數(shù)大小提取的圖像特征不受JPEG壓縮影響的特點,將水印序列嵌入到量化后的DCT系數(shù)中,以達到抗JPEG壓縮的目的。Zhang等人[5]根據(jù)JPEG壓縮過程中的不變參量進行水印生成和嵌入調(diào)制,利用小波特性對圖像竄改區(qū)域進行定位。Zhou等人[6]通過在水印序列中加入糾錯編碼(ECC)來恢復(fù)由于JPEG壓縮所造成的誤碼。Hu等人[7]提出了基于人類視覺特性HVS的易碎水印,并通過對水印的形態(tài)學(xué)處理,使檢測結(jié)果更加準確。盡管已有不少抗JPEG的脆弱水印被提出來,但已有算法的抗JPEG性能還不能令人滿意。
本文提出了一種用于圖像內(nèi)容認證的半脆弱公開水印算法。該算法結(jié)合了基于小波域的自適應(yīng)水印嵌入等技術(shù)實現(xiàn)水印認證系統(tǒng),同時,為了增加系統(tǒng)的安全性,算法中引入了用戶的私鑰。通過對水印信號的檢測,可以有效地探測到對被保護圖像的惡意竄改,同時定位出被竄改的區(qū)域。通過對竄改區(qū)域的定位可知:①由竄改區(qū)域分析竄改者的動機;②可能的竄改者;③竄改的內(nèi)容是否合法。
1 提出的算法
對于發(fā)送者而言,從原始的圖像中提取有意義的信號,然后將其作為水印信號嵌入到圖像中。在接收方,當收到嵌入水印的圖像以后,用私鑰解開水印信號,通過對比圖像提取的信號與嵌入的水印信號,達到版權(quán)認證的目的。就信號的提取而言,不同的目的提取信號的方式方法也不一樣。
1.1 水印的嵌入
1.1.1 塊視覺閾值JND計算
本文算法基于塊的臨界噪聲閾值JND計算利用了HVS的幾個特性[8]:
(1)人眼對不同亮度區(qū)域的噪聲的視覺敏感性不同,通常對中等灰度最為敏感,在中等灰度很寬的范圍中Weber比保持常數(shù)0.02,向低灰度和高灰度兩個方向呈非線性下降。
(2)人眼對圖像平滑區(qū)噪聲較敏感而對紋理區(qū)噪聲較遲鈍。
(3)二維數(shù)字圖像經(jīng)一層小波變換后得到四個子圖像。人眼對不同方向不同層次的中高頻子帶圖像的噪聲不是非常敏感。
這樣,圖像分塊經(jīng)一層小波變換后各細節(jié)子帶的視覺可容許噪聲閾值可由式(1)來表示。
1.1.2 嵌入水印的量化(圖1)
1.1.3 嵌入算法
本文選擇在原圖像各8×8分塊一層小波變換后三個細節(jié)子帶進行水印嵌入,水印嵌入強度以式(1)的噪聲閾值為上限。基本方法是:首先將原始圖像各8×8分塊按Hilbert掃描順序排列,然后在原圖像8×8分塊Hilbert序列中選取兩相鄰分塊分別進行一層DWT,再結(jié)合各分塊JND閾值,通過不同強度地調(diào)整兩相鄰塊三個對應(yīng)細節(jié)子帶均值間的大小關(guān)系以完成水印自適應(yīng)地嵌入。在本文中,為達到視覺的掩蔽效應(yīng),將水印信號嵌入到小波系數(shù)中對視覺不很敏感的部分,即選擇WLL嵌入水印。這樣,既不會使水印太脆弱,可以抵御一般的圖像處理操作,也不會太魯棒,對于那些惡意的竄改不能檢測出來。在提取的信號S被嵌入之前使用了私鑰對其加密,得到水印信號W。
水印嵌入基本框圖如圖2所示。此系統(tǒng)可以根據(jù)量化系數(shù)的選擇不同而使水印信號的脆弱程度不同。由實驗結(jié)果顯示若Q=1,當圖像受到高斯噪聲的攻擊時,已經(jīng)不能通過系統(tǒng)的認證。
1.2 水印的認證
當接收到圖像后,接收者可以從中提取出水印信號,如圖3所示。
(1)將圖像分割成為不相鄰的塊,然后計算每一塊的均值,利用嵌入水印時的算法描述得到每一塊的信息。
(2)對每一塊進行DWT變換,提取嵌入水印的小波系數(shù),計算其與量化系數(shù)的比值,提取水印信號,然后利用密鑰從水印信號中得到每一塊的信息。
通過比較直接從圖像中提取的信息與從水印信號中提取的信息,可以知道接收的圖像是否被竄改過。假如圖像被竄改,則這兩部分提取的信息是不一致的,圖像不能通過認證系統(tǒng)。而且我們知道,不同的塊提取的水印是不一樣的,因此找到那些錯誤水印的位置就可以準確地定位被竄改的區(qū)域。這樣的定位檢測在網(wǎng)絡(luò)傳輸中是很有用的。當圖像被竄改后,只需要重發(fā)那些被竄改的區(qū)域就可以了,不用整個圖像重新發(fā)送,從而降低了網(wǎng)絡(luò)的負荷。
2 實驗結(jié)果
實驗中選擇了標準測試圖像Lena(256×256,8位灰度級)作為原始圖像,以說明本文算法的有效性。
2.1 圖像質(zhì)量
采用峰值信噪比(PSNR)評價水印圖像質(zhì)量。PSNR定義為
2.2 抗壓縮性能
表1表示在JPEG算法后的錯誤率。可以看出,如果壓縮比不超過16:1,提取的信號與水印幾乎一樣,沒有圖像質(zhì)量的降級。但是,實際應(yīng)用中很少用到超過16:1的壓縮比。
表1 JPEG壓縮后的錯誤檢測率
2.3 圖像認證
在實驗中,Lena的兩個部分被竄改了,而接收者可以正確察覺到這樣的竄改,并且準確定位。在圖5(a)中,含水印的Lena圖像左側(cè)有一小星;在圖5(b)中,被竄改的區(qū)域由白色的塊替代標示出來。
3 結(jié)束語
本文提出了一種基于半脆弱公開水印的JPEG 2000數(shù)字圖像內(nèi)容認證算法。該算法通過直接從原始圖像中提取特征,采用臨界噪聲閾值矩陣(JND)方法在小波域?qū)崿F(xiàn)自適應(yīng)水印嵌入,嵌入水印有很好的透明性。為了提高算法的安全性,引入了私鑰對水印進行加密。實驗結(jié)果表明在圖像沒有受到攻擊的情況下,可以順利地通過此認證系統(tǒng);即使圖像經(jīng)過了一些常用的圖像處理(如JPEG壓縮等)后,仍然可以通過認證;當圖像受到惡意攻擊后,則無法檢測到水印,被攻擊的部分可被認證系統(tǒng)檢測出。由于半脆弱水印技術(shù)的研究處于起步期,基于該技術(shù)的內(nèi)容認證技術(shù)也處于探索階段,其安全漏洞和未知攻擊有待發(fā)現(xiàn)和研究。下一步的目標是研究如何利用雙鑰體制為多數(shù)字媒體內(nèi)容提供更完善的認證與保護。
本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文。