The invention of the Internet and the wide spread of the computers, scanners and the printers make it simply easy to gain, exchange and transport the digital media data. However , the bad guys and units can copy and transport the documents with the copyright at their minds through the internet. Digital watermarking is an effective way to solve this problem.
The paper had mainly discusses the semi-fragile digital water- marking, a branch of the digital water-marking. At first this paper introduces the universe conception and methods of the digital water- marking. Then it gives a few of the common algorithms of semi-fragile water-marking. At last it proposes an algorithm to cover the request of the research. It is divided into four parts including the preprocessing of the water-marking, the embedding of it, the detection of it, and the attack-detecting. Then it gives the results of the experiment and analysis it. The simulation platform is the Matlab 6.5.
At the last of this paper, the estimation and the forecast to the semi-fragile water marking are proposed.
KEY WORDS : copyright protection, digital watermarking,
semi-fragile, Matlab
目 錄
目 錄 I
摘要 III
ABSTRACT IV
第一章 緒論 1
1.1 課題研究意義 1
1.1.1 使用數(shù)字水印的必要性 1
1.1.2 使用半脆弱數(shù)字水印的必要性 3
1.1.3使用半脆弱數(shù)字水印的優(yōu)點(diǎn) 3
1.1.4 課題目標(biāo) 4
1.2半脆弱數(shù)字水印的研究現(xiàn)狀 4
1.3 論文的組織 5
第二章 相關(guān)技術(shù)與設(shè)計(jì)環(huán)境概述 7
2.1 數(shù)字水印的概念 7
2.1.1 數(shù)字水印的基本概念 7
2.1.2 半脆弱數(shù)字水印的基本概念 10
2.1.3 半脆弱數(shù)字水印的實(shí)現(xiàn)方法 10
2.2 算法性能指標(biāo)簡(jiǎn)介 12
2.3 仿真介紹 13
第三章 圖像認(rèn)證半脆弱水印算法原理與總體設(shè)計(jì) 15
3.1 用于圖像認(rèn)證算法的特殊要求分析 15
3.2 實(shí)現(xiàn)認(rèn)證功能的總體設(shè)計(jì) 15
3.2.1模塊劃分 16
3.2.2算法框架圖 16
第四章 圖像認(rèn)證半脆弱水印算法的詳細(xì)設(shè)計(jì)與實(shí)現(xiàn) 19
4.1 算法思路 19
4.2 各步驟詳細(xì)設(shè)計(jì) 19
4.2.1水印預(yù)處理的實(shí)現(xiàn) 19
4.2.2水印嵌入的實(shí)現(xiàn) 21
4.2.3水印檢測(cè)的實(shí)現(xiàn) 22
4.3 實(shí)驗(yàn)結(jié)果與分析 23
第五章 總結(jié)與展望 30
5.1 本文所做的工作總結(jié) 30
5.2 工作展望 30
參 考 文 獻(xiàn) 32
致 謝 34
附 錄1 35
1.1 程序清單 35
摘要
因特網(wǎng)的出現(xiàn)以及計(jì)算機(jī)、掃描儀和打印機(jī)的廣泛使用使得數(shù)字化多媒體數(shù)據(jù)的獲取、交換和傳輸變得異常簡(jiǎn)單。但是通過(guò)網(wǎng)絡(luò)傳播數(shù)據(jù)也使有惡意的個(gè)人或團(tuán)體在沒(méi)有得到數(shù)據(jù)文件所有者許可的情況下能肆意地復(fù)制和傳播有版權(quán)保護(hù)的文檔。數(shù)字水印技術(shù)則為這種問(wèn)題提供了一個(gè)潛在的解決方案。
論文研究的方向–半脆弱(Semi-fragile)數(shù)字水印,是數(shù)字水?。―igital Watermarking)的一個(gè)重要分支。論文首先介紹了水印技術(shù)的通用概念和方法,然后介紹了半脆弱水印的幾種常見(jiàn)算法,在此基礎(chǔ)上提出了一種能抗幾種典型攻擊的半脆弱算法。本算法實(shí)現(xiàn)分成四個(gè)部分,水印預(yù)處理,水印嵌入,水印檢測(cè),攻擊檢測(cè)。通過(guò)實(shí)驗(yàn)可以看出,算法能有效實(shí)現(xiàn)圖像認(rèn)證的功能。算法用Matlab6.5實(shí)現(xiàn)仿真。
最后,對(duì)半脆弱水印技術(shù)所存在的問(wèn)題和未解決的難題進(jìn)行了思考,并對(duì)其之后的發(fā)展方向進(jìn)行了展望。
關(guān)鍵詞 版權(quán)保護(hù) 數(shù)字水印 半脆弱 Matlab
ABSTRACT
第一章 緒論
計(jì)算機(jī)和網(wǎng)絡(luò)的廣泛應(yīng)用,大大地方便了人們獲取信息和交流信息。由于數(shù)字化信息以多種形式在網(wǎng)絡(luò)上迅速便捷地傳輸,政府、企業(yè)及個(gè)人都逐漸把網(wǎng)絡(luò)作為主要的通信手段,大量重要文件和個(gè)人信息以數(shù)字化形式存儲(chǔ)和傳輸,電子商務(wù)則通過(guò)網(wǎng)絡(luò)為我們提供了各種服務(wù),網(wǎng)絡(luò)與信息安全問(wèn)題變得越來(lái)越重要。
傳統(tǒng)的信息加密方法可以加密文本信息,保證其傳輸?shù)陌踩?,但如果要?duì)圖像、視頻和聲音等多媒體信息進(jìn)行加密,則基于密碼學(xué)的傳統(tǒng)加密方法就比較困難了,隨著計(jì)算機(jī)處理能力的快速提高,這種通過(guò)不斷增加密鑰長(zhǎng)度來(lái)提高系統(tǒng)密級(jí)的方法變得越來(lái)越不可靠。特別是隨著網(wǎng)絡(luò)多媒體技術(shù)的發(fā)展,信息已經(jīng)不僅僅局限于文本,許多信息是圖形圖象和視頻格式,需要認(rèn)證和版權(quán)保護(hù)的聲像數(shù)據(jù)也越來(lái)越多。此外,在軍事領(lǐng)域,人們可能需要將一幅作戰(zhàn)地圖隱藏在一幅藝術(shù)作品中。這些應(yīng)用需求正是數(shù)字水印技術(shù)要解決的問(wèn)題。
1.1 課題研究意義
1.1.1 使用數(shù)字水印的必要性
數(shù)字水?。―igital Watermarking)技術(shù)是通過(guò)一定的算法將一些標(biāo)志性信息直接嵌入到多媒體內(nèi)容當(dāng)中,但不影響原內(nèi)容的價(jià)值和使用,并且不能被人的知覺(jué)系統(tǒng)覺(jué)察或注意到,只有通過(guò)專用的檢測(cè)器或閱讀器才能提取。其中的水印信息可以是作者的序列號(hào)、公司標(biāo)志、有特殊意義的文本等,可用來(lái)識(shí)別文件、圖像或音樂(lè)制品的來(lái)源、版本、原作者、擁有者、發(fā)行人、合法使用人對(duì)數(shù)字產(chǎn)品的擁有權(quán)。嵌入數(shù)字多媒體作品中的數(shù)字水印須具有以下特性:
(1)不可見(jiàn)性或隱蔽性:不易被察覺(jué),不會(huì)引起原來(lái)數(shù)字作品明顯的圖像質(zhì)量下降,即看不到數(shù)字水印的存在;
(2) 魯棒性:即當(dāng)被保護(hù)的信息經(jīng)過(guò)某種改動(dòng)后,比如在傳輸、壓縮、濾波,圖像的幾何變換如平移、伸縮、旋轉(zhuǎn)、剪裁等處理下,數(shù)字水印不容易被破壞;
(3)安全性:加入水印和檢測(cè)水印的方法對(duì)沒(méi)有授權(quán)的第三方是保密的而且不可輕易被破解,即使被黑客檢測(cè)到了也不能讀出(數(shù)字水印需要加密)〔1〕。
因特網(wǎng)的出現(xiàn)以及計(jì)算機(jī)、掃描儀和打印機(jī)的廣泛使用使得數(shù)字化多媒體數(shù)據(jù)的獲取、交換和傳輸變得異常簡(jiǎn)單。但是通過(guò)網(wǎng)絡(luò)傳播數(shù)據(jù)也使有惡意的個(gè)人或團(tuán)體在沒(méi)有得到數(shù)據(jù)文件所有者許可的情況下能肆意地復(fù)制和傳播有版權(quán)保護(hù)的文檔。數(shù)字水印技術(shù)則為這種問(wèn)題提供了一個(gè)潛在的解決方案。數(shù)字水印是往多媒體數(shù)據(jù)(如圖像、聲音、視頻信號(hào)等)中添加某些數(shù)字信息以達(dá)到版權(quán)保護(hù)等作用。如果沒(méi)有魯棒性(Robustness)的要求,水印與信息偽裝技術(shù)上的處理本質(zhì)上是完全一致的。典型數(shù)字水印系統(tǒng)模型:
圖1.1 水印信號(hào)嵌入模型
圖1.2 水印信號(hào)檢測(cè)模型
圖1.1為水印信號(hào)嵌入模型,其功能是完成將水印信號(hào)加入原始數(shù)據(jù)中;圖1.2為水印信號(hào)檢測(cè)模型,用以判斷某一數(shù)據(jù)中是否含有指定的水印信號(hào)〔2〕。
數(shù)字水印主要用于:阻止非法復(fù)制(間接的)、確定所有權(quán)(作者、發(fā)行人、分發(fā)商、合法的最終用戶)、確定作品的真實(shí)性和完整性(是否偽造、被篡改)、證實(shí)收件人、不可否認(rèn)的傳送、法庭證據(jù)的驗(yàn)證、贗品甄別、識(shí)別文件來(lái)源與版本、Web網(wǎng)絡(luò)巡邏監(jiān)視盜賊、廣播監(jiān)控〔1-2〕 。
1.1.2 使用半脆弱數(shù)字水印的必要性
數(shù)字水印是往多媒體數(shù)據(jù)(如圖像、聲音、視頻信號(hào)等)中添加某些數(shù)字信息以達(dá)到版權(quán)保護(hù)等作用。如果沒(méi)有魯棒性的要求,水印與信息偽裝技術(shù)上的處理本質(zhì)上是完全一致的。在絕大多數(shù)情況下我們希望添加的信息是不可察覺(jué)的,并且希望攻擊者在不破壞數(shù)據(jù)本身質(zhì)量的情況下無(wú)法將水印去掉。發(fā)展數(shù)字水印技術(shù)的原動(dòng)力就是為了提供多媒體數(shù)據(jù)的版權(quán)保護(hù)。按水印的特性可以將數(shù)字水印分為魯棒數(shù)字水印和脆弱數(shù)字水印兩類。魯棒數(shù)字水印主要用于在數(shù)字作品中標(biāo)識(shí)著作權(quán)信息,如作者、作品序號(hào)等,它要求嵌入的水印能夠經(jīng)受各種常用的編輯處理;脆弱數(shù)字水印主要用于完整性保護(hù),與魯棒水印的要求相反,脆弱水印必須對(duì)信號(hào)的改動(dòng)很敏感,人們根據(jù)脆弱水印的狀態(tài)就可以判斷數(shù)據(jù)是否被篡改過(guò)。
圖像認(rèn)證的目的是確認(rèn)作品沒(méi)有受到惡意篡改,可用脆弱水印來(lái)實(shí)現(xiàn)認(rèn)證。為了便于操作,脆弱水印對(duì)某些變換具有較低的魯棒性,而對(duì)另外一些則更低。脆弱水印對(duì)圖像的改變極為敏感,即使最微小的改變也會(huì)導(dǎo)致檢測(cè)到改變。比如說(shuō),對(duì)一副圖像進(jìn)行很小的質(zhì)量的JPEG(Joint Photographic Experts Group,聯(lián)合圖像專家組)壓縮(1%),加入了脆弱水印的圖像在檢測(cè)時(shí),給出的結(jié)論就是圖像被篡改,即圖像已不是原來(lái)的或者說(shuō)可以接受的圖像了。但是實(shí)際上,就HVS(Human Visual System,人類視覺(jué)系統(tǒng))來(lái)說(shuō),1%的JPEG是完全可以接受的。這就是說(shuō),對(duì)于現(xiàn)在廣泛使用的數(shù)字圖像來(lái)說(shuō),少量的不在關(guān)鍵位上的改變是完全可以接受的,在視覺(jué)或者聽(tīng)覺(jué)上即HVS上是不會(huì)有很大的感覺(jué)的。此時(shí),基于脆弱水印的精確認(rèn)證就無(wú)法實(shí)現(xiàn)認(rèn)證功能。
1.1.3使用半脆弱數(shù)字水印的優(yōu)點(diǎn)
近年來(lái),國(guó)內(nèi)外有關(guān)認(rèn)證水印的研究日益增加,根據(jù)識(shí)別能力的不同,又分為脆弱水印和半脆弱水印。脆弱水印不是本文要討論的重點(diǎn)。由于實(shí)際應(yīng)用上的不確定性,導(dǎo)致了簡(jiǎn)單的數(shù)字水印不能勝任,人們提出了半脆弱水印。比如說(shuō)了法庭上的證據(jù),圖像的或音頻的,簡(jiǎn)單的水印加入了,敵手可能破解水印,并加入有利于敵手的篡改水印,這樣原始的水印就無(wú)法發(fā)揮作用。用了半脆弱水印的話,任何敵手的惡意篡改都可能被檢測(cè)到,并由于算法的不同,而采取水印毀滅或是諸如水印以篡改的信息。這樣,這種證據(jù)就不能被敵手應(yīng)用了。另外,由于水印是半脆弱的,在非惡意攻擊下,比如JPEG壓縮后,檢測(cè)系統(tǒng)給出的結(jié)論仍然會(huì)是通過(guò)認(rèn)證。這就是因?yàn)榘氪嗳跛?duì)善意攻擊的魯棒性而體現(xiàn)的優(yōu)勢(shì)??偟膩?lái)說(shuō),即對(duì)惡意篡改的脆弱性和對(duì)善意改變的魯棒性。
1.1.4 課題目標(biāo)
研究的過(guò)程就是學(xué)習(xí)數(shù)字水印的相關(guān)知識(shí)的過(guò)程,并在一定的理解的前提下能提出自己的想法,并在仿真平臺(tái)上實(shí)現(xiàn)。具體來(lái)說(shuō),就是了解數(shù)字水印的概念,發(fā)展,理解半脆弱數(shù)字水印的提出和意義,實(shí)現(xiàn)方法,現(xiàn)有算法,實(shí)現(xiàn)一個(gè)自己的能用于圖像認(rèn)證的半脆弱水印算法。具體針對(duì)本算法,要實(shí)現(xiàn)的四個(gè)部分如下:
(1) 水印預(yù)處理(Preprocessing) 嵌入水印前將要嵌入的水印進(jìn)行某種處理,以達(dá)到加密的目的。本算法是使用海明碼處理水印后再用高斯序列處理,才成為要嵌入的水印。
(2) 水印嵌入(Embedding) 采用分塊植入方法,原圖像分成8塊,由圖像的能量和方差決定分塊,再給每塊賦基準(zhǔn)域值噪聲。
(3) 水印檢測(cè)(Detection) 從植入水印后的圖像中提取水印信息,并把圖像和原圖像,水印和原水印進(jìn)行比較。
(4) 攻擊檢測(cè)(Attack detecting) 對(duì)遭受攻擊的圖像進(jìn)行水印提取和分析,從而判斷圖像是否遭受惡意篡改。
1.2半脆弱數(shù)字水印的研究現(xiàn)狀
利用半脆弱性水印進(jìn)行圖像內(nèi)容認(rèn)證在保證數(shù)字媒體信息一定視(或聽(tīng))覺(jué)質(zhì)量的前提下,將與媒體內(nèi)容相關(guān)或不相關(guān)的標(biāo)志信息作為水印直接嵌入媒體內(nèi)容中,當(dāng)媒體內(nèi)容需要認(rèn)證時(shí),可將水印提出鑒定其是否真實(shí)完整。由于半脆弱性水印本身在對(duì)篡改具有一定的敏感性和脆弱性的同時(shí),仍然具備數(shù)字水印的一般特征,如不可見(jiàn)、安全性和對(duì)某些圖像信號(hào)處理的穩(wěn)健性,因此在圖像內(nèi)容認(rèn)證中獲得了廣泛的使用。目前,半脆弱水印已應(yīng)用于新聞圖片、電子商務(wù)、法律案件、醫(yī)學(xué)圖像、工程設(shè)計(jì)等領(lǐng)域。
近年來(lái),國(guó)內(nèi)外有關(guān)認(rèn)證水印的研究日益增加,根據(jù)識(shí)別能力的不同,又分為脆弱水印和半脆弱水印。脆弱水印不是本文要討論的重點(diǎn)。早期的脆弱水印技術(shù)大多采用對(duì)圖像重要性校驗(yàn)和將水印嵌入到LSB (Least Significant Bit,最低有效位)平面上的方法對(duì)媒體內(nèi)容的完整性進(jìn)行認(rèn)證。改進(jìn)后的脆弱水印算法有了新的特性,不僅可實(shí)現(xiàn)對(duì)篡改位置的定位,有的甚至可用于篡改部位的復(fù)原。但總的來(lái)說(shuō)這些脆弱水印的魯棒性較低,無(wú)論對(duì)惡意篡改還是對(duì)正常的圖像處理都非常敏感,而事實(shí)上大多數(shù)圖像內(nèi)容認(rèn)證的應(yīng)用并不需要如此精確,因此完全脆弱性水印在實(shí)際應(yīng)用中實(shí)用性不高。
為了提高脆弱性水印在實(shí)際應(yīng)用中的實(shí)用性,同時(shí)具有脆弱水印和魯棒性水印兩種功能的半脆弱水印應(yīng)運(yùn)而生。半脆弱水印在容忍一定程度的常見(jiàn)信號(hào)處理操作的同時(shí),還可把正常的信號(hào)處理與惡意篡改區(qū)別對(duì)待。篡改發(fā)生時(shí),半脆弱水印認(rèn)證系統(tǒng)不僅可提供篡改的破壞量位置,而且可幫助分析篡改類型。另外,基于半脆弱水印的自嵌入水印還可恢復(fù)被篡改的部分。半脆弱水印作為一項(xiàng)新型數(shù)字媒體認(rèn)證技術(shù),近年來(lái)得到長(zhǎng)足發(fā)展,并且逐步從靜止圖像擴(kuò)展到視頻等領(lǐng)域。視頻水印從實(shí)現(xiàn)算法上來(lái)說(shuō)同靜止圖像水印并無(wú)太大差別,但對(duì)半脆弱水印算法的實(shí)時(shí)性要求是必要的,而且應(yīng)能處理連續(xù)幀序列。由于實(shí)際應(yīng)用上的不確定性,導(dǎo)致了簡(jiǎn)單的數(shù)字水印不能勝任,人們提出了半脆弱水印。比如說(shuō)了法庭上的證據(jù),圖像的或音頻的,簡(jiǎn)單的水印加入了,敵手可能破解水印,并加入有利于敵手的篡改水印,這樣原始的水印就無(wú)法發(fā)揮作用。用了半脆弱水印的話,任何敵手的惡意篡改都可能被檢測(cè)到,并由于算法的不同,而采取水印毀滅或是諸如水印以篡改的信息。這樣,這種證據(jù)就不能被敵手應(yīng)用了。另外,由于水印是半脆弱的,在非惡意攻擊下,比如JPEG壓縮后,檢測(cè)系統(tǒng)給出的結(jié)論仍然會(huì)是通過(guò)認(rèn)證。這就是因?yàn)榘氪嗳跛?duì)善意攻擊的魯棒性而體現(xiàn)的優(yōu)勢(shì)??偟膩?lái)說(shuō),即對(duì)惡意篡改的脆弱性和對(duì)善意攻擊的魯棒性。
脆弱水印因?yàn)樵趦?nèi)容認(rèn)證方面的重要性而受到日益廣泛的關(guān)注。在惡意篡改和偶然攻擊之間必須要有一個(gè)確定,所以半脆弱水印要對(duì)內(nèi)容保護(hù)的操作要有一定的魯棒性。一個(gè)半脆弱水印要具備以下三個(gè)要求:對(duì)惡意篡改的高度敏感性和對(duì)內(nèi)容保護(hù)操作的魯棒性、不可見(jiàn)性、安全性。半脆弱水印不但要對(duì)惡意的攻擊特別敏感,還要對(duì)一些常規(guī)的圖像操作具有一定的魯棒性,據(jù)此區(qū)分偶然攻擊和惡意篡改。因?yàn)镴PEG壓縮的普遍性,抗JPEG壓縮一直是半脆弱水印研究的重點(diǎn)和難點(diǎn)[3-5]。國(guó)際上已有這方面的諸多論文問(wèn)世。
1.3 論文的組織
論文全文共分五章:
第一章 緒論。這一章主要介紹本課題的研究意義、現(xiàn)狀和目標(biāo)。
第二章 相關(guān)技術(shù)和設(shè)計(jì)環(huán)境概述。這一章主要介紹了數(shù)字水印的基本概念和半脆弱數(shù)字水印的基本概念,并介紹了實(shí)現(xiàn)認(rèn)證的半脆弱水印的5種流行的方法。對(duì)于各種方法的優(yōu)劣評(píng)判,接下來(lái)介紹了評(píng)價(jià)算法的幾個(gè)指標(biāo)。最后,介紹了實(shí)現(xiàn)仿真的平臺(tái),Matlab6.5。
第三章 圖像認(rèn)證半脆弱水印算法原理與總體設(shè)計(jì)。針對(duì)圖像認(rèn)證這一目標(biāo),我們的半脆弱水印有它自己的要求和特點(diǎn)。根據(jù)這些要求我們?cè)O(shè)計(jì)了算法,這一章給出了算法的框架,并對(duì)算法進(jìn)行了模塊劃分,最后給出了程序框圖。
第四章 圖像認(rèn)證半脆弱水印算法的詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)。這一章詳細(xì)介紹了水印算法的各個(gè)步驟的實(shí)現(xiàn),最后對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行分析,并評(píng)價(jià)了本算法。
第五章 總結(jié)與展望。這一章主要是對(duì)本次畢業(yè)設(shè)計(jì)論文工作的總結(jié),以及對(duì)數(shù)字水印技術(shù)發(fā)展的想法。
第二章 相關(guān)技術(shù)與設(shè)計(jì)環(huán)境概述
數(shù)字水印技術(shù)的基本思想源于古代的偽裝術(shù)(密寫(xiě)術(shù))。古希臘的斯巴達(dá)人曾將軍事情報(bào)刻在普通的木板上,用石蠟填平,收信的一方只要用火烤熱木板,融化石蠟后就可以看到密信。使用最廣泛的密寫(xiě)方法恐怕要算化學(xué)密寫(xiě)了,牛奶、白礬、果汁等都曾充當(dāng)過(guò)密寫(xiě)藥水的角色。大約700年前,在手工造紙技術(shù)中出現(xiàn)了紙張上的水印。
可以說(shuō),人類早期使用的保密通信手段大多數(shù)屬于密寫(xiě)而不是密碼。但與密碼技術(shù)相比,密寫(xiě)術(shù)始終沒(méi)有發(fā)展成為一門(mén)獨(dú)立的學(xué)科,其中的主要原因是密寫(xiě)術(shù)缺乏必要的理論基礎(chǔ)。
然而今天的數(shù)字化技術(shù)的發(fā)展為古老的密寫(xiě)術(shù)注入了新的活力,在研究數(shù)字水印的過(guò)程中,研究者大量借鑒了信息偽裝的思想。尤其是近年來(lái)信息隱藏技術(shù)理論框架研究的興起,更給密寫(xiě)術(shù)成為一門(mén)嚴(yán)謹(jǐn)?shù)目茖W(xué)帶來(lái)了希望。
2.1 數(shù)字水印的概念
2.1.1 數(shù)字水印的基本概念
在數(shù)字水印技術(shù)中,水印的數(shù)據(jù)量和魯棒性構(gòu)成了一對(duì)基本矛盾。理想的水印算法應(yīng)該既能隱藏大量數(shù)據(jù),又可以抗各種信道噪聲和信號(hào)變形。然而在實(shí)際這兩個(gè)指標(biāo)往往不能同時(shí)實(shí)現(xiàn),但是實(shí)際應(yīng)用一般只偏重其中的一個(gè)方面。如果是為了隱蔽通信,數(shù)據(jù)量顯然是最重要的,由于通信方式極為隱蔽,遭遇敵方篡改攻擊的可能性很小,因而對(duì)魯棒性要求不高。但對(duì)保證數(shù)據(jù)安全來(lái)說(shuō),情況恰恰相反,各種保密的數(shù)據(jù)隨時(shí)面臨著被盜取和篡改的危險(xiǎn),所以魯棒性是十分重要的,此時(shí),隱藏?cái)?shù)據(jù)量的要求居于次要地位。
一般數(shù)字水印的通用模型包括嵌入和檢測(cè)、提取兩個(gè)階段。數(shù)字水印的生成階段,嵌入算法的嵌入方案的目標(biāo)是使數(shù)字水印在不可見(jiàn)性和魯棒性之間找到一個(gè)較好的折中。檢測(cè)階段主要是設(shè)計(jì)一個(gè)相應(yīng)于嵌入過(guò)程的檢測(cè)算法。檢測(cè)的結(jié)果或是原水?。ㄈ缱址驁D標(biāo)等),或是基于統(tǒng)計(jì)原理的檢驗(yàn)結(jié)果以判斷水印存在與否。檢測(cè)方案的目標(biāo)是使錯(cuò)判與漏判的概率盡量小。為了給攻擊者增加去除水印的不可預(yù)測(cè)的難度,目前大多水印制作方案都在加入、提取時(shí)采用了密鑰,只有掌握密鑰的人才能讀出水印。
數(shù)字水印技術(shù)從不同的角度有下面的一些劃分方法。
1. 按特性劃分
按水印的特性可以將數(shù)字水印分為魯棒數(shù)字水印和脆弱數(shù)字水印。魯棒數(shù)字水印主要用于在數(shù)字作品中標(biāo)識(shí)著作權(quán)信息,它要求嵌入的水印能夠經(jīng)受各種常用的編輯處理;脆弱數(shù)字水印主要用于完整性保護(hù),脆弱水印必須對(duì)信號(hào)的改動(dòng)很敏感,人們根據(jù)脆弱水印的狀態(tài)就可以判斷數(shù)據(jù)是否被篡改過(guò)。
2. 按水印所附載的媒體劃分
按水印所附載的媒體,數(shù)字水印分為圖像水印、音頻水印、視頻水印、文本水印以及用于三維網(wǎng)格模型的網(wǎng)格水印等。
3. 按檢測(cè)過(guò)程劃分
按水印的檢測(cè)過(guò)程將數(shù)字水印分為明文水印和盲水印。明文水印在檢測(cè)過(guò)程中需要原始數(shù)據(jù),而盲水印的檢測(cè)只需要密鑰,不需要原始數(shù)據(jù)。一般明文水印的魯棒性比較強(qiáng),但其應(yīng)用受到存儲(chǔ)成本的限制。目前數(shù)字水印大多數(shù)是盲水印。
4. 按內(nèi)容劃分
按數(shù)字水印的內(nèi)容可以將水印劃分為有意義水印和無(wú)意義水印。有意義水印是指水印本身也是某個(gè)數(shù)字圖像(如商標(biāo))或數(shù)字音頻片段的編碼;無(wú)意義水印則只對(duì)應(yīng)于一個(gè)序列號(hào)。有意義水印如由于受到攻擊或其他原因致使解碼后的水印破損,人們?nèi)匀豢梢酝ㄟ^(guò)視覺(jué)觀察確認(rèn)是否有水印。但對(duì)于無(wú)意義水印來(lái)說(shuō),如果解碼后的水印序列有若干碼元錯(cuò)誤,則只能通過(guò)統(tǒng)計(jì)決策來(lái)確定信號(hào)中是否含有水印。
5. 按水印隱藏的位置劃分
按數(shù)字水印的隱藏位置劃分為時(shí)域數(shù)字水印、頻域數(shù)字水印、時(shí)/頻域數(shù)字水印和時(shí)間/尺度域數(shù)字水印。時(shí)域數(shù)字水印是直接在信號(hào)空間上疊加水印信息,而頻域數(shù)字水印、時(shí)/頻域數(shù)字水印和時(shí)間/尺度域數(shù)字水印則分別是在DCT變換域、時(shí)/頻變換域和小波變換域上隱藏水印。隨著數(shù)字水印技術(shù)的發(fā)展,各種水印算法層出不窮,水印的隱藏位置也不再局限于上述四種。實(shí)際上只要構(gòu)成一種信號(hào)變換,就有可能在其變換空間上隱藏水印。
6. 按用途劃分
不同的應(yīng)用需求造就了不同的水印技術(shù)。而這又可分為6種不同的水印技術(shù)。
(1)數(shù)字作品的知識(shí)產(chǎn)權(quán)保護(hù)
版權(quán)標(biāo)識(shí)水印是目前研究最多的一類數(shù)字水印由于數(shù)字作品的拷貝、修改非常容易,而且可以做到與原作完全相同,所以原創(chuàng)者不得不采用一些嚴(yán)重?fù)p害作品質(zhì)量的辦法來(lái)加上版權(quán)標(biāo)志,而這種明顯可見(jiàn)的標(biāo)志很容易被篡改。數(shù)字作品的所有者可用密鑰產(chǎn)生一個(gè)水印,并將其嵌入原始數(shù)據(jù),然后公開(kāi)發(fā)布其水印版本作品。當(dāng)該作品被盜版或出現(xiàn)版權(quán)糾紛時(shí),所有者即可從盜版作品或水印版作品中獲取水印信號(hào)作為依據(jù),從而保護(hù)所有者的權(quán)益。
目前用于版權(quán)保護(hù)的數(shù)字水印技術(shù)已經(jīng)進(jìn)入了初步實(shí)用化階,IBM(International Business Machines Corporation,國(guó)際商用機(jī)器公司)公司在其”數(shù)字圖書(shū)館”軟件中就提供了數(shù)字水印功能,Adobe公司也在其著名的Photoshop軟件中集成了Digimarc公司的數(shù)字水印插件。
(2)商務(wù)交易中的票據(jù)防偽
隨著高質(zhì)量圖像輸入輸出設(shè)備的發(fā)展,特別是高精度彩色噴墨、激光打印機(jī)和高精度彩色復(fù)印機(jī)的出現(xiàn),使得貨幣、支票以及其他票據(jù)的偽造變得更加容易。
據(jù)報(bào)道,美國(guó)、日本以及荷蘭都已開(kāi)始研究用于票據(jù)防偽的數(shù)字水印技術(shù)。麻省理工學(xué)院媒體實(shí)驗(yàn)室受美國(guó)財(cái)政部委托,已經(jīng)開(kāi)始研究在彩色打印機(jī)、復(fù)印機(jī)輸出的每幅圖像中加入唯一的、不可見(jiàn)的數(shù)字水印,在需要時(shí)可以實(shí)時(shí)地從掃描票據(jù)中判斷水印的有無(wú),快速辨識(shí)真?zhèn)巍?br>此外在電子商務(wù)中會(huì)出現(xiàn)大量過(guò)度性的電子文件,如各種紙質(zhì)票據(jù)的掃描圖像等。即使在網(wǎng)絡(luò)安全技術(shù)成熟以后,各種電子票據(jù)也還需要一些非密碼的認(rèn)證方式。數(shù)字水印技術(shù)可以為各種票據(jù)提供不可見(jiàn)的認(rèn)證標(biāo)志,從而大大增加了偽造的難度。
(3)標(biāo)題與注釋
即將作品的標(biāo)題、注釋等內(nèi)容(如照片的拍攝時(shí)間和地點(diǎn)等)以水印形式嵌入到作品中,這種隱式注釋不需要額外的帶寬,且不易丟失.
(4)篡改提示
由于現(xiàn)有的信號(hào)拼接和鑲嵌技術(shù)可以做到移花接木而不為人知,基于數(shù)字水印的篡改提示是解決這一問(wèn)題的理想技術(shù)途徑,通過(guò)隱藏水印的狀態(tài)可以判斷聲像信號(hào)是否被篡改。為實(shí)現(xiàn)該目的,通??蓪⒃紙D象分成多個(gè)獨(dú)立塊,再將每個(gè)塊加入不同的水印。
同時(shí)可通過(guò)檢測(cè)每個(gè)數(shù)據(jù)塊中的水印信號(hào),來(lái)確定作品的完整性。與其他水印不同的是,這類水印必須是脆弱的,并且檢測(cè)水印信號(hào)時(shí),不需要原始數(shù)據(jù)。
(5)使用控制
這種應(yīng)用的一個(gè)典型的例子是DVD(Digital Video Disk, 數(shù)字化視頻光盤(pán))防拷貝系統(tǒng),即將水印信息加入DVD數(shù)據(jù)中,這樣DVD播放機(jī)即可通過(guò)檢測(cè)DVD數(shù)據(jù)中的水印信息而判斷其合法性和可拷貝性。從而保護(hù)制造商的商業(yè)利益。
(6)隱蔽通信及其對(duì)抗
數(shù)字水印所依賴的信息隱藏技術(shù)不僅提供了非密碼的安全途徑,可以實(shí)現(xiàn)網(wǎng)絡(luò)情報(bào)戰(zhàn)的革命。網(wǎng)絡(luò)情報(bào)戰(zhàn)是信息戰(zhàn)的重要組成部分,其核心內(nèi)容是利用公用網(wǎng)絡(luò)進(jìn)行保密數(shù)據(jù)傳送。由于經(jīng)過(guò)加密的文件往往是混亂無(wú)序的,容易引起攻擊者的注意。網(wǎng)絡(luò)多媒體技術(shù)的廣泛應(yīng)用使得利用公用網(wǎng)絡(luò)進(jìn)行保密通信有了新的思路,利用數(shù)字化聲像信號(hào)相對(duì)于人的視覺(jué)、聽(tīng)覺(jué)冗余,可以進(jìn)行各種信息隱藏,從而實(shí)現(xiàn)隱蔽通信〔4〕。
2.1.2 半脆弱數(shù)字水印的基本概念
按照水印特性,即水印抵抗攻擊噪聲能力可分為魯棒水印和脆弱水印,而半脆弱水印是介于兩者之間的水印技術(shù)。
魯棒水印是指經(jīng)受攻擊后仍然能夠提取出的水印,它能夠抵制任何企圖破壞或去除水印的操作,任何企圖移動(dòng)和破壞水印的操作都將導(dǎo)致媒體質(zhì)量的嚴(yán)重?fù)p害。這個(gè)特性使得它主要用在版權(quán)保護(hù)和內(nèi)容跟蹤上。透明性(不可見(jiàn)性)和魯棒性是其最重要的兩個(gè)特征。
為了取得理想的魯棒性,提出了許多水印技術(shù)。如利用擴(kuò)頻的方法,將水印作為一個(gè)窄帶的信號(hào)通過(guò)寬帶的信道(載體圖像)進(jìn)行傳輸,各種有意無(wú)意的干擾被視作噪聲。還有基于圖像特征的自適應(yīng)水印方案,動(dòng)態(tài)地改變水印嵌入?yún)?shù)來(lái)降低嵌入過(guò)程帶來(lái)的干擾,增強(qiáng)水印的魯棒性。脆弱水印極容易破壞,一般用于圖像的認(rèn)證。任何對(duì)嵌入水印圖像的操作都會(huì)破壞嵌入其中的水印,許多的水印技術(shù)還能定位出被篡改部分的位置。但是,脆弱水印對(duì)圖像某些正常的操作魯棒性太差,比如正常的JPEG壓縮及圖像的增強(qiáng)。實(shí)際應(yīng)用中我們希望嵌入的水印對(duì)這些正常的操作具有一定的魯棒性同時(shí)又能夠檢測(cè)到對(duì)圖像惡意修改(比如添加、移動(dòng)、扭曲圖像中的物體)。由此,就產(chǎn)生了所謂的半脆弱水印。
半脆弱水印融合了魯棒水印和脆弱水印的特性,主要用在圖像的內(nèi)容認(rèn)證上,這就需要它必須具備兩個(gè)基本特性:(1)透明性:即嵌入水印的過(guò)程是不可察覺(jué)的,嵌入水印后的圖像質(zhì)量不能引起質(zhì)的變化。這是大多數(shù)水印嵌入方案所要求的。(2)盲檢測(cè):即在認(rèn)證的時(shí)候不需要原始圖像。
2.1.3 半脆弱數(shù)字水印的實(shí)現(xiàn)方法
一個(gè)典型的數(shù)字水印系統(tǒng),包括水印的生成、水印的嵌入及水印提取的三個(gè)部分,半脆弱水印和魯棒水印的嵌入過(guò)程基本相同,但是在水印提取(即圖像認(rèn)證)的過(guò)程中與魯棒水印不同。下面我們以圖像的半脆弱水印為例說(shuō)明水印的嵌入和檢測(cè)過(guò)程:
(1)水印的嵌入過(guò)程
水印的嵌入算法為 (),水印為W,原始圖像為I,嵌入水印后的圖像為 。設(shè) 。 為從圖像中抽取出要嵌入水印的屬性序列, 。 為相應(yīng)的水印序列,水印是有特殊意義的信息,如文字、序列號(hào)、公司標(biāo)志、聲音等。則一般的嵌入規(guī)則為:
(加法規(guī)則) (2.1)
(乘法規(guī)則) (2.2)
利用 代替載體圖像中的V,即得到嵌入水印的圖像 。抽取的屬性序列V即可以是采樣強(qiáng)度/幅度(空域/時(shí)域)或者是變換系數(shù)大小(變換域),由此對(duì)應(yīng)空域和頻域的水印算法。參數(shù) 隨著采樣的不同而不同。水印嵌入強(qiáng)度應(yīng)該保證水印是不可見(jiàn)的,即嵌入的水印應(yīng)該不影響載體圖像的原內(nèi)容和價(jià)值。算法的框架如下:
圖2.1 一般水印的嵌入框圖
(2)水印的檢測(cè)過(guò)程
水印的提取算法為 ,對(duì)于一個(gè)待測(cè)試的圖像 ,利用提取算法提取出水印 ,其中K為提取密鑰。利用W和 的差別(需要預(yù)先設(shè)置一個(gè)閾值)或者利用一個(gè)相似函數(shù),我們就可以對(duì)圖像的真實(shí)性進(jìn)行認(rèn)證。脆弱水印算法的目的在于真實(shí)性認(rèn)證,因此在認(rèn)證的過(guò)程,或者說(shuō)在水印的提取過(guò)程中不需要原始圖像;而魯棒水印的目的是版權(quán)保護(hù),因此某些魯棒水印算法在水印提取的過(guò)程中可能需要原始圖像。一般水印檢測(cè)和認(rèn)證框圖如圖2.2。
2.2 算法性能指標(biāo)簡(jiǎn)介
圖2.2 一般水印檢測(cè)和認(rèn)證框圖
水印的不可感知性和穩(wěn)健性之間有一個(gè)權(quán)衡。對(duì)水印的不可感知性進(jìn)行評(píng)估可以通過(guò)主觀測(cè)試或者通過(guò)質(zhì)量度量來(lái)衡量?,F(xiàn)在,在圖像和視頻的編碼壓縮領(lǐng)域最流行的失真度量標(biāo)準(zhǔn)是SNR(Signal to Noise Ratio,信噪比),以及PSNR (Peak Signal to Noise Ratio,峰值信噪比)。它們通常以dB(decibel,分貝)來(lái)度量。
(2.3)
(2.4)
其中 和 ,分別表示原始圖像和嵌入水印后的圖像中點(diǎn)的灰度值。X, Y分別是圖像行和列的個(gè)數(shù)。由2.4式中可以看出較高的峰值信噪比對(duì)應(yīng)較高的圖像相似程度,也就是表示嵌入水印后的圖像有較高的不可感知性。還有用MSE(Mean Squared Error,均方誤差)來(lái)度量圖像的客觀保真度的,與PSNR相反,MSE越小表示圖像的近似程度越高,即:
(2.5)
在確定了失真度量后,下一個(gè)要解決的問(wèn)題就是如何評(píng)估穩(wěn)健性。根據(jù)嵌入水印的類型:一種是由某一密鑰產(chǎn)生的隨機(jī)序列;另一種是特定的信息或圖像。水印檢測(cè)的方法也相應(yīng)有兩種:對(duì)于隨機(jī)序列的判定,一般利用假設(shè)檢驗(yàn)的原理計(jì)算相似性,即:
(2.6)
當(dāng) 時(shí)水印存在,否則判定水印不存在[8]。
當(dāng)然,一個(gè)可能成為標(biāo)準(zhǔn)的數(shù)字水印系統(tǒng)必須能夠抵御各式各樣的攻擊,上述的評(píng)測(cè)標(biāo)準(zhǔn)只是其中的幾個(gè)方面,如信噪比和峰值信噪比這兩種度量方法在大多數(shù)情況下可以較為準(zhǔn)確的反映出圖像的視覺(jué)質(zhì)量,但由于它們沒(méi)有與人類的視覺(jué)系統(tǒng)和感知性相結(jié)合,所以在進(jìn)行評(píng)估時(shí)又可能導(dǎo)致錯(cuò)誤的結(jié)論??梢?jiàn)數(shù)字水印的跨學(xué)科性質(zhì)決定了其進(jìn)展與相關(guān)學(xué)科的發(fā)展密切相關(guān)。
2.3 仿真介紹
Matlab是Mathworks公司開(kāi)發(fā)的一種集計(jì)算、圖形可視化和編輯功能于一體的功能強(qiáng)大、操作簡(jiǎn)便、易于擴(kuò)充的語(yǔ)言,是目前國(guó)際上公認(rèn)的優(yōu)秀的數(shù)學(xué)應(yīng)用軟件之一。
? 在70年代中期,Cleve Moler博士和其同事在美國(guó)國(guó)家科學(xué)基金的資助下開(kāi)發(fā)了調(diào)用EISPACK和LINPACK的FORTRAN子程序庫(kù)。EISPACK是特征值求解的FOETRAN程序庫(kù),LINPACK是解線性方程的程序庫(kù)。在當(dāng)時(shí),這兩個(gè)程序庫(kù)代表矩陣運(yùn)算的最高水平。
到70年代后期,身為美國(guó)New Mexico大學(xué)計(jì)算機(jī)系系主任的Cleve Moler,在給學(xué)生講授線性代數(shù)課程時(shí),想教學(xué)生使用EISPACK和LINPACK程序庫(kù),但他發(fā)現(xiàn)學(xué)生用FORTRAN編寫(xiě)接口程序很費(fèi)時(shí)間,于是他開(kāi)始自己動(dòng)手,利用業(yè)余時(shí)間為學(xué)生編寫(xiě)EISPACK和LINPACK的接口程序。Cleve Moler給這個(gè)接口程序取名為Matlab,該名為矩陣(matrix)和實(shí)驗(yàn)室(labotatory)兩個(gè)英文單詞的前三個(gè)字母的組合。在以后的數(shù)年里,Matlab在多所大學(xué)里作為教學(xué)輔助軟件使用,并作為面向大眾的免費(fèi)軟件廣為流傳。
1983年春天,Cleve Moler到Standford大學(xué)講學(xué),Matlab深深地吸引了工程師John Little。John Little敏銳地覺(jué)察到Matlab在工程領(lǐng)域的廣闊前景。同年,他和Cleve Moler,Steve Bangert一起,用C語(yǔ)言開(kāi)發(fā)了第二代專業(yè)版。這一代的Matlab語(yǔ)言同時(shí)具備了數(shù)值計(jì)算和數(shù)據(jù)圖示化的功能。
1984年,Cleve Moler和John Little成立了Math Works公司,正式把Matlab推向市場(chǎng),并繼續(xù)進(jìn)行Matlab的研究和開(kāi)發(fā)。
在當(dāng)今30多個(gè)數(shù)學(xué)類科技應(yīng)用軟件中,就軟件數(shù)學(xué)處理的原始內(nèi)核而言,可分為兩大類。一類是數(shù)值計(jì)算型軟件,如Matlab,Xmath,Gauss等,這類軟件長(zhǎng)于數(shù)值計(jì)算,對(duì)處理大批數(shù)據(jù)效率高;另一類是數(shù)學(xué)分析型軟件,Mathematica,Maple等,這類軟件以符號(hào)計(jì)算見(jiàn)長(zhǎng),能給出解析解和任意精確解,其缺點(diǎn)是處理大量數(shù)據(jù)時(shí)效率較低。MathWorks公司順應(yīng)多功能需求之潮流,在其卓越數(shù)值計(jì)算和圖示能力的基礎(chǔ)上,又率先在專業(yè)水平上開(kāi)拓了其符號(hào)計(jì)算,文字處理,可視化建模和實(shí)時(shí)控制能力,開(kāi)發(fā)了適合多學(xué)科,多部門(mén)要求的新一代科技應(yīng)用軟件Matlab。經(jīng)過(guò)多年的國(guó)際競(jìng)爭(zhēng),Matlab以經(jīng)占據(jù)了數(shù)值軟件市場(chǎng)的主導(dǎo)地位。
在Matlab進(jìn)入市場(chǎng)前,國(guó)際上的許多軟件包都是直接以FORTRANC語(yǔ)言等編程語(yǔ)言開(kāi)發(fā)的。這種軟件的缺點(diǎn)是使用面窄,接口簡(jiǎn)陋,程序結(jié)構(gòu)不開(kāi)放以及沒(méi)有標(biāo)準(zhǔn)的基庫(kù),很難適應(yīng)各學(xué)科的最新發(fā)展,因而很難推廣。Matlab的出現(xiàn),為各國(guó)科學(xué)家開(kāi)發(fā)學(xué)科軟件提供了新的基礎(chǔ)。在Matlab問(wèn)世不久的80年代中期,原先控制領(lǐng)域里的一些軟件包紛紛被淘汰或在Matlab上重建。
MathWorks公司1993年推出了Matlab 4.0版,1995年推出4.2C版(for win3.X)1997年推出5.0版。1999年推出5.3版。Matlab5.X較Matlab 4.X無(wú)論是界面還是內(nèi)容都有長(zhǎng)足的進(jìn)展,其幫助信息采用超文本格式和PDF格式,在Netscape 3.0或IE 4.0及以上版本,Acrobat Reader中可以方便地瀏覽。
時(shí)至今日,經(jīng)過(guò)MathWorks公司的不斷完善,Matlab已經(jīng)發(fā)展成為適合多學(xué)科,多種工作平臺(tái)的功能強(qiáng)大大大型軟件。在國(guó)外,Matlab已經(jīng)經(jīng)受了多年考驗(yàn)。在歐美等高校,Matlab已經(jīng)成為線性代數(shù),自動(dòng)控制理論,數(shù)理統(tǒng)計(jì),數(shù)字信號(hào)處理,時(shí)間序列分析,動(dòng)態(tài)系統(tǒng)仿真等高級(jí)課程的基本教學(xué)工具;成為攻讀學(xué)位的大學(xué)生,碩士生,博士生必須掌握的基本技能。在設(shè)計(jì)研究單位和工業(yè)部門(mén),Matlab被廣泛用于科學(xué)研究和解決各種具體問(wèn)題。在國(guó)內(nèi),特別是工程界,Matlab一定會(huì)盛行起來(lái)??梢哉f(shuō),無(wú)論你從事工程方面的哪個(gè)學(xué)科,都能在Matlab里找到合適的功能〔7〕。
第三章 圖像認(rèn)證半脆弱水印算法原理與總體設(shè)計(jì)
半脆弱水印技術(shù)既可以在一定程度上容忍施加于含水印數(shù)字媒體上的常見(jiàn)信號(hào)處理操作(如疊加噪聲、平滑濾波、有損壓縮等),又能夠?qū)阂獯鄹淖龀鰣?bào)警反應(yīng)且具有定位篡改區(qū)域的能力,故在網(wǎng)絡(luò)時(shí)代具有更重要的應(yīng)用價(jià)值。近幾年,半脆弱圖像數(shù)字水印技術(shù)研究取得了很大進(jìn)展,陸續(xù)提出了諸如與JPEG編解碼器相結(jié)合、基于視覺(jué)掩蔽特性、基于量化系數(shù)等多種水印嵌入算法。這些半脆弱型水印算法普遍具有篡改檢測(cè)較出色、虛警率較低的優(yōu)點(diǎn),但也不同程度存在透明性較差、對(duì)某些常規(guī)信號(hào)處理不夠魯棒、篡改區(qū)域定位不夠準(zhǔn)確等不足。
3.1 用于圖像認(rèn)證算法的特殊要求分析
圖像認(rèn)證的目的是確認(rèn)作品沒(méi)有受到任何改變,可用脆弱水印來(lái)實(shí)現(xiàn)圖像認(rèn)證。為了便于檢測(cè),脆弱水印對(duì)某些變換(如壓縮),具有較低的健壯性,面對(duì)其他變換的健壯性更低。脆弱水印對(duì)圖像的改變極其敏感,適于圖像的精確認(rèn)證,但對(duì)數(shù)字圖像來(lái)說(shuō),少量比特的改變不會(huì)造成原作品實(shí)質(zhì)上的不同,事實(shí)上有的失真(如有損壓縮等)會(huì)修改作品中很多的比特,但在視覺(jué)上不會(huì)造成改變。在許多應(yīng)用中,兩幅圖像在視覺(jué)上相似就意昧著其壓縮版本是可接受的。此時(shí),基于脆弱水印的精確認(rèn)證無(wú)法實(shí)現(xiàn)圖像認(rèn)證,這促使研究人員提出能夠進(jìn)行選擇認(rèn)證的半脆弱水印。目前大多數(shù)圖像數(shù)字水印研究都集中在版權(quán)保護(hù)水印上,而對(duì)圖像認(rèn)證水印的研究相較少,針對(duì)這種情況,論文中提出了一種能經(jīng)受JPEG壓縮的半脆弱水印算法。該方法將兩個(gè)水印位嵌入到圖像每個(gè)8*8塊的高頻DCT(Discrete Cosine Transform,離散余弦變換)系數(shù)中,水印信號(hào)和嵌入的位置由DCT系數(shù)樣本和密鑰決定。這種水印可以從嚴(yán)重的JPEG壓縮中保存下來(lái),但對(duì)低通濾波和噪聲等極為敏感,可用于圖像的選擇認(rèn)證〔8〕。
3.2 實(shí)現(xiàn)認(rèn)證功能的總體設(shè)計(jì)
所謂認(rèn)證水印就是在保證數(shù)字媒體信息一定視(或聽(tīng))覺(jué)質(zhì)量的前提下,將與媒體內(nèi)容相關(guān)或不相關(guān)的標(biāo)志信息作為水印直接嵌入媒體內(nèi)容中,當(dāng)媒體內(nèi)容需要認(rèn)證時(shí),可將水印提出鑒定其是否真實(shí)完整。認(rèn)證水印除了具有數(shù)字水印的一般特征,如不可見(jiàn)、穩(wěn)健性、安全性外,水印本身對(duì)篡改必須具有一定的敏感性和脆弱性。因此,同樣在數(shù)字媒體中嵌入信息,認(rèn)證水印與魯棒水印的不同之處在于當(dāng)信息內(nèi)容發(fā)生改變時(shí),認(rèn)證水印信息會(huì)發(fā)生一定程度的改變。要實(shí)現(xiàn)對(duì)于圖像的認(rèn)證功能,在水印嵌入和檢測(cè)上就有一些要求了。本身嵌入的水印就不能對(duì)要保護(hù)的圖像在感官上有太大的改變,這就要求嵌入的水印要在較低的有效位上,嵌入的水印不能是顯式的。提取出水印后,我們要把水印和嵌入的水印進(jìn)行比較,以確定水印是否被篡改,最終才能認(rèn)證圖像。
3.2.1模塊劃分
本算法共分為四個(gè)部分,水印預(yù)處理,水印嵌入,水印檢測(cè),攻擊檢測(cè)。
圖3.1 算法模塊劃分圖
3.2.2算法框架圖
認(rèn)證水印系統(tǒng)的一般框架如圖3.2,系統(tǒng)主體包括三部分,水印的產(chǎn)生,嵌入和檢測(cè)認(rèn)證。
認(rèn)證水印系統(tǒng)首先將提取的宿主圖像信息(特征或圖像內(nèi)容)或自定義信息(圖像標(biāo)志或序列號(hào))轉(zhuǎn)變?yōu)樗⌒盘?hào),通過(guò)嵌入算法將其嵌入原始圖像中,得到的含水印的圖像經(jīng)過(guò)信道在信宿端被接收.通過(guò)檢測(cè)認(rèn)證算法進(jìn)行認(rèn)證,得到檢測(cè)結(jié)果。檢測(cè)認(rèn)證時(shí),要求僅僅借助待測(cè)圖像,或者再加上水印信息,即可得認(rèn)證結(jié)果。在實(shí)際應(yīng)用中,在嵌入和檢測(cè)的過(guò)程中,還需加入密鑰。
圖3.2 認(rèn)證水印系統(tǒng)的一般框架圖
圖3.3給出一典型認(rèn)證水印實(shí)現(xiàn)的例子??梢钥闯?,圖3.3(a)(b)無(wú)明顯視覺(jué)差異。圖3.3(d)能較好的定位篡改部位。
(a)原始圖像 (b)嵌入水印后的圖像 (c)篡改圖像 (d)檢測(cè)結(jié)果
圖 3.3 認(rèn)證水印的實(shí)現(xiàn)例子
而本論文的設(shè)計(jì)思想就是要實(shí)現(xiàn)對(duì)于圖像的認(rèn)證。由于其特有的性質(zhì),我的算法也有一定的特性。首先產(chǎn)生的水印信息是高斯偽隨機(jī)碼,這是因?yàn)槲铱紤]到,在具體的一副圖像中,不同的主體植入的水印信息是不同的,而我現(xiàn)在植入隨機(jī)序列作為信息,就具有一定的普遍性了。還有,我做的是不可見(jiàn)水印,也就無(wú)所謂植入的信息是否有直觀意義了。之后是對(duì)水印信息進(jìn)行海明編碼,其作用是為了防止在傳輸過(guò)程中的客觀出錯(cuò)。對(duì)信息進(jìn)行置亂則是加密的需要了。做完了這些準(zhǔn)備工作后即可以植入水印信息了。我的算法采用分塊DCT植入的方法,即把圖像分成8*8的小塊,每個(gè)都植入水印信息。最后就是對(duì)圖像進(jìn)行攻擊測(cè)試了。我一共選用了10種常見(jiàn)的攻擊,一一做實(shí)驗(yàn),驗(yàn)證我算法的性能。
下面就給出這個(gè)算法的框架圖。
圖3.4 本程序的框圖
第四章 圖像認(rèn)證半脆弱水印算法的詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)
在實(shí)際應(yīng)用中,一個(gè)實(shí)用的數(shù)字媒體認(rèn)證系統(tǒng)應(yīng)大致滿足一些基本要求。如對(duì)篡改操作與否應(yīng)具備極強(qiáng)的判斷能力;應(yīng)對(duì)數(shù)字媒體內(nèi)容被篡改的程度進(jìn)行有效描述;在無(wú)法得知原始數(shù)字媒體內(nèi)容或其它與真實(shí)信號(hào)內(nèi)容相關(guān)的信息條件下,判斷可能發(fā)生的篡改操作的具體類別,例如信號(hào)處理中的濾波、壓縮、還是替換操作等。
4.1 算法思路
由于本算法是要實(shí)現(xiàn)對(duì)圖像的認(rèn)證功能,故在算法上有一定的特點(diǎn)。由于具體水印信息的不確定性,本論文加入的水印信息是個(gè)隨機(jī)的噪聲碼,這樣在水印信息上就具有一定的普遍性了。算法首先是在擴(kuò)頻域?qū)λ⌒畔⑦M(jìn)行預(yù)處理,采用的方法有海明編碼,直序擴(kuò)展,以達(dá)到一定的加密和抗傳輸錯(cuò)誤要求。嵌入算法是在DCT域分塊植入水印信息。檢測(cè)算法和嵌入算法是個(gè)相逆的過(guò)程。最后把提取的水印和原水印進(jìn)行相關(guān)系數(shù)比較,從而判斷是否受到篡改攻擊。
4.2 各步驟詳細(xì)設(shè)計(jì)
模塊化程序設(shè)計(jì)就是把一個(gè)復(fù)雜的程序分成若干小部分,分部來(lái)進(jìn)行設(shè)計(jì),以達(dá)到簡(jiǎn)化設(shè)計(jì)的目的。水印算法現(xiàn)在大都采用這種方法。論文的算法把程序分成如下三個(gè)部分:水印預(yù)處理、水印嵌入和水印檢測(cè)。
4.2.1水印預(yù)處理的實(shí)現(xiàn)
要想得到安全的水印,在嵌入目標(biāo)水印前必須要對(duì)其進(jìn)行一個(gè)預(yù)處理的過(guò)程。也就是加密的過(guò)程。本算法是用海明編碼和偽隨機(jī)碼進(jìn)行置亂以隱藏加入的水印信息。如果傳輸?shù)臄?shù)據(jù)位是m位,加了r位冗余位,那么總共傳輸?shù)臄?shù)據(jù)單元是m+r位。 為了能夠發(fā)現(xiàn)這m+r位數(shù)據(jù)單元在傳輸?shù)侥康亩撕笫欠癯鲥e(cuò),并能夠指明是在哪一位出錯(cuò),那么r至少應(yīng)該能夠代表m+r+1種狀態(tài)。r比特能夠代表2r不同狀態(tài)。 因此,2r>=m+r+1 。若m=7,則滿足上式的最小r值為:4。下面以一個(gè)例子來(lái)說(shuō)明海明碼的糾錯(cuò)原理。
海明碼的接收端的公式:
S3= P3⊕ D4⊕D3 ⊕D2
S2= P2⊕D4 ⊕D3 ⊕D1 (4.1)
S1= P1⊕D4 ⊕D2 ⊕D1
假定海明碼1010101在傳送中由于偶然錯(cuò)誤變成了1000101 ,
S3= P3⊕ D4⊕D3 ⊕D2=0⊕1⊕0 ⊕0 =1
S2= P2⊕D4 ⊕D3 ⊕D1=0⊕1⊕ 0 ⊕1=0
S1= P1⊕D4 ⊕D2 ⊕D1=1⊕1⊕ 0 ⊕1=1
因此,由S3S2S1= 101,指出第5位錯(cuò),應(yīng)由0變1。這樣就可以糾錯(cuò)了。
本文的算法要求先實(shí)現(xiàn)海明編碼,根據(jù)本論文加入的水印信息是34*4的偽隨機(jī)碼,所以實(shí)現(xiàn)海明編碼后得到的是36*7的編碼。
for i=1:36
s=8*x0(i,1)+4*x0(i,2)+2*x0(i,3)+x0(i,4);
switch s
case 0
x0(i,5)=0;x0(i,6)=0;x0(i,7)=0;
case 1
x0(i,5)=0;x0(i,6)=1;x0(i,7)=1;
case 2
x0(i,5)=1;x0(i,6)=1;x0(i,7)=0;
case 3
x0(i,5)=1;x0(i,6)=0;x0(i,7)=1;
case 4
x0(i,5)=1;x0(i,6)=1;x0(i,7)=1;
case 5
x0(i,5)=1;x0(i,6)=0;x0(i,7)=0;
case 6
x0(i,5)=0;x0(i,6)=0;x0(i,7)=1;
case 7
x0(i,5)=0;x0(i,6)=1;x0(i,7)=0;
case 8
x0(i,5)=1;x0(i,6)=0;x0(i,7)=1;
case 9
x0(i,5)=1;x0(i,6)=1;x0(i,7)=0;
case 10
x0(i,5)=0;x0(i,6)=1;x0(i,7)=1;
case 11
x0(i,5)=0;x0(i,6)=0;x0(i,7)=0;
case 12
x0(i,5)=0;x0(i,6)=1;x0(i,7)=0;
case 13
x0(i,5)=0;x0(i,6)=0;x0(i,7)=1;
case 14
x0(i,5)=1;x0(i,6)=0;x0(i,7)=0;
case 15
x0(i,5)=1;x0(i,6)=1;x0(i,7)=1;
end;
end;
由于本身我們嵌入的水印信息是高斯正態(tài)分布序列,本身就具有一定的無(wú)序性,再加上之后用偽碼進(jìn)行了置亂,很好的達(dá)到了加密的目的。為了抵抗在傳輸過(guò)程中的偶然錯(cuò)誤,偽碼用了海明碼糾錯(cuò)。所以檢測(cè)的時(shí)候我用相關(guān)的糾錯(cuò)解碼技術(shù)就可再現(xiàn)水印信息。
4.2.2水印嵌入的實(shí)現(xiàn)
由于JPEG壓縮的不變性,也就是說(shuō),如果一個(gè)DCT系數(shù)是經(jīng)過(guò)某個(gè)預(yù)先選定的量化步長(zhǎng)量化并取整得到的,只要后續(xù)的量化步長(zhǎng)小于選定值,則這個(gè)DCT系數(shù)可以被精確重建,換句話說(shuō),如果某幅圖像預(yù)先經(jīng)過(guò)某個(gè)選定的質(zhì)量因子的JPEG有損壓縮,那么這幅圖像可以對(duì)任何大于該選定質(zhì)量因子的后續(xù)JPEG壓縮保持不變,因?yàn)樵剂炕瘓D像所有DCT系數(shù)都可以精確重建,而如果后續(xù)JPEG壓縮的質(zhì)量因子小于選定值,原始量化圖像的DCT系數(shù)則無(wú)法恢復(fù)。這個(gè)需要預(yù)先選定的質(zhì)量因子一般可以設(shè)定為人眼最低可以接受的圖像質(zhì)量因子,也就是說(shuō),任何低于該質(zhì)量因子的圖像被視為不可接受的。JPEG標(biāo)準(zhǔn)推薦圖像的質(zhì)量因子在50一75之間均為視覺(jué)上可以接受的,因此我們可以選擇50作為預(yù)先設(shè)定的質(zhì)量因子,其對(duì)應(yīng)的量化表為DCT系數(shù)的量化步長(zhǎng)。
利用前面所述的JPEG壓縮的不變性,首先將原始圖像的8*8塊DCT系數(shù)塊按預(yù)定的質(zhì)量因子對(duì)應(yīng)的量化表進(jìn)行量化,通過(guò)對(duì)量化后的DCT系數(shù)進(jìn)行”微調(diào)”來(lái)嵌入水印信息比特,再進(jìn)行DCT反變換得到水印圖像。相同的過(guò)程提取出水印,并將其與原始水印信息匹配的百分比和設(shè)定的閾值比較,決定是否通過(guò)認(rèn)證。該算法能夠抵抗所有大于預(yù)定質(zhì)量因子的攻擊。
算法中水印信息的選擇是基于圖像內(nèi)容特征的。一種簡(jiǎn)單的基于圖像內(nèi)容的特征是每個(gè)分塊灰度值的均值的最重要位(MSB ,the Most Significant Bit),即最高位。水印的嵌人算法采用了一種無(wú)損數(shù)據(jù)隱藏方法環(huán)形直方圖算法(Circular His-togram Algorithm)。首先把待嵌人水印的圖像分成8*8塊,每塊64個(gè)像素通過(guò)密鑰被隨機(jī)地分為A和B兩組,在每一組中,灰度值直方圖映射為一個(gè)環(huán)形,環(huán)形的周長(zhǎng)為256個(gè)單位,等分為Q個(gè)區(qū)間,每個(gè)區(qū)間分的弧長(zhǎng)為256/O若一個(gè)像素灰度值落在某個(gè)區(qū)間之內(nèi),則這個(gè)區(qū)間的權(quán)重加1,這樣每一組共有犯?jìng)€(gè)權(quán)重加載在環(huán)上。計(jì)算每組環(huán)上的加權(quán)平均值,從統(tǒng)計(jì)學(xué)的角度分析,由于A, B兩組的像素都是隨機(jī)選擇的,因而A, B兩組的加權(quán)平均值應(yīng)非常接近或近似相等。為了在每一個(gè)8*8塊中嵌入1比特水印信息,將塊中像素的灰度值作如下修改:
若嵌人比特為”1 ” C`=C+P當(dāng)像素在A組中;
C`=C-P當(dāng)像素在B組中;
若嵌入比特為”0″ C`=C-P當(dāng)像素在A組中;
C`=C+P當(dāng)像素在B組中;
其中c為待嵌入水印圖像的像素灰度值,c為修改后,即嵌入水印后圖像的像素灰度值,P= 256/Q。若嵌入比特”1″,則A組中的所有像素灰度值增加P,對(duì)應(yīng)到環(huán)上即像素灰度值均順時(shí)針?lè)较蚱D(zhuǎn)了一個(gè)區(qū)間,每個(gè)像素在環(huán)上的位置均順時(shí)針轉(zhuǎn)了360/Q度。相應(yīng)的B組中的所有像素均逆時(shí)針?lè)较蚱D(zhuǎn)了相同的度數(shù)。這樣當(dāng)嵌入比特”10的時(shí)候,A組的加權(quán)平均值大于B組,且每個(gè)圖像塊灰度值的均值,即選定的圖像特征保持不變。嵌入”0″比特的情況同理可得。通過(guò)這種環(huán)形直方圖無(wú)損數(shù)據(jù)隱藏算法將由圖像內(nèi)容特征產(chǎn)生的水印信息嵌入了預(yù)壓縮后的圖像〔9〕。
4.2.3水印檢測(cè)的實(shí)現(xiàn)
將接收到的待驗(yàn)證的圖像先按預(yù)定質(zhì)量因子壓縮,恢復(fù)出預(yù)壓縮后的水印圖像;再依照環(huán)形直方圖算法提取水印:將圖像8*8分塊按選定的密鑰隨機(jī)分成A, B兩組,并映射到環(huán)上,計(jì)算A, B兩組對(duì)應(yīng)環(huán)的加權(quán)平均值。如果A組的加權(quán)平均值大于B組,則提取出比特”1″,反之則提取出比特”0″。圖像認(rèn)證過(guò)程將提取出的水印比特與對(duì)恢復(fù)出的預(yù)壓縮圖像再次計(jì)算得到的特征信息進(jìn)行比較匹配,若匹配的百分比大于設(shè)定的域值則圖像通過(guò)認(rèn)證,反之判斷為遭受過(guò)惡意篡改。由前面所說(shuō)的JPEG壓縮的不變性可知,該算法可以抵抗任何高于預(yù)定質(zhì)量因子的JPEG壓縮。并能根據(jù)認(rèn)證過(guò)程中不匹配的比特定位遭受篡改的位置,精度為8*8塊。由于嵌人的水印信息是基于圖像內(nèi)容特征的,每幅圖像嵌人的比特信息必定各不相同,因而可以有效地抵抗共謀攻擊〔10〕。
論文中用到的糾錯(cuò)編碼現(xiàn)在就可以發(fā)揮它的優(yōu)勢(shì)了。程序?qū)崿F(xiàn)到此,論文用糾錯(cuò)解碼的方法得到36*4的提取水印,把這個(gè)水印和之前植入的水印信息進(jìn)行比較,就可以作出是否被篡改的判斷了。
for i=1:36
s1(i)=x1(i,1)+x1(i,2)+x1(i,3)+x1(i,5);
s2(i)=x1(i,2)+x1(i,3)+x1(i,4)+x1(i,6);
s3(i)=x1(i,1)+x1(i,2)+x1(i,4)+x1(i,7);
s1(i)=mod(s1(i),2);
s2(i)=mod(s2(i),2);
s3(i)=mod(s3(i),2);
if (s1(i)==0&s2(i)==0)&(s3(i)==1)
x1(i,7)=~x1(i,7);
elseif (s1(i)==0&s2(i)==1)&(s3(i)==0)
x1(i,6)=~x1(i,6);
elseif (s1(i)==0&s2(i)==1)&(s3(i)==1)
x1(i,4)=~x1(i,4);
elseif (s1(i)==1&s2(i)==0)&(s3(i)==0)
x1(i,5)=~x1(i,5);
elseif (s1(i)==1&s2(i)==0)&(s3(i)==1)
x1(i,1)=~x1(i,1);
elseif (s1(i)==0&s2(i)==1)&(s3(i)==0)
x1(i,3)=~x1(i,3);
elseif (s1(i)==1&s2(i)==1)&(s3(i)==1)
x1(i,2)=~x1(i,2);
end;
end;
4.3 實(shí)驗(yàn)結(jié)果與分析
由算法寫(xiě)的程序在Matlab6.5平臺(tái)上仿真,使用標(biāo)準(zhǔn)水印實(shí)驗(yàn)圖像cameraman(256*256)(如圖4.1)作為認(rèn)證圖像。由于Matlab的易用性,我只要用個(gè)簡(jiǎn)單的函數(shù)imread()就能讀取cameraman圖像為我用了。
圖4.1 Cameraman
Matlab功能強(qiáng)大的函數(shù)功能使我生成高斯正態(tài)序列也變得簡(jiǎn)單了。如下的程序能生成36*4的信息。
randn(’state’,1106);
g1=randn(36,4);
for i=1:36
for j=1:4
if g1(i,j)>=0
w0(i,j)=1;
else w0(i,j)=0;
end;
end;
end;
加入的高斯正態(tài)序列生成的圖片,也即要加入的水印圖像如圖4.2。
圖 4.2 水印圖像
這些屬于預(yù)處理的工作做好后,就可以實(shí)現(xiàn)嵌入了。嵌入水印是所有所有算法中最重要的部分,這部分寫(xiě)的好壞能很大程度上影響算法的性能。應(yīng)用本算法嵌入水印后的圖像為4.3圖。
圖 4.3 嵌入水印后的圖像
使用語(yǔ)句imwrite(f,’attackf.jpg’,'jpg’,'quality’,30)即實(shí)現(xiàn)了30%JPEG壓縮。攻擊后的圖像為圖4.4。
圖 4.4 30%jpeg壓縮后的圖像
我們知道,在評(píng)價(jià)一個(gè)算法好壞的時(shí)候有兩中標(biāo)準(zhǔn),一種是主觀的一種是客觀的。首先在主觀上我們可以很直接的說(shuō),算法能抵抗壓縮因子為30%的JPEG壓縮。當(dāng)我們把壓縮因子提高到20%時(shí)的圖像如圖4.5。
這樣在主觀上我們就能看出來(lái)壓縮因子在20時(shí),算法就有一定的局限性了。對(duì)JPEG壓縮攻擊后的圖像進(jìn)行水印提取后與嵌入的水印進(jìn)行相關(guān)系數(shù)運(yùn)算結(jié)果是r11=corr2(w0,w11)=1;snr11=31.2909。對(duì)余下的九種攻擊,我們也給出圖像,并求其相關(guān)系數(shù)和信噪比。由于算法加入了糾錯(cuò)編碼,使得水印在遭受惡意篡改后所求出的相關(guān)系數(shù)是0,而在遭受了善意攻擊后的相關(guān)系數(shù)則是1。
所以得出結(jié)論如下:本算法能有效抵抗高斯低通濾波,直方圖均衡化,圖像增亮和變暗,對(duì)增加對(duì)比度,降低對(duì)比度,添加高斯噪聲增黑白像素點(diǎn),添加乘積性噪聲則性能下降。也就是說(shuō)本算法能很好的實(shí)現(xiàn)對(duì)圖像的認(rèn)證功能。但算法對(duì)篡改的定位不是很有效,只能在主觀上判斷篡改部分。
圖 4.5 20%jpeg壓縮后的圖像
snr=30.3054 r=1
以下依次給出論文所做的其它攻擊后的圖像,如圖4.6-4.14。
圖4.6高斯低通濾波后的圖像 圖4.7 直方圖均衡化后的圖像
snr=31.067 r=1 snr=31.126 r=1
圖4.8 圖像增亮處理后的 圖4.9 圖像變暗處理后的
snr= 30.596 r=1 snr=30489 r=1
圖4.10 增加對(duì)比度后的圖像 圖4.11 降低對(duì)比度后的圖像
snr=30.158 r=0 snr=31.268 r=0
圖4.12 添加高斯噪聲后的圖像 圖4.13 增加黑白點(diǎn)像素后的圖像
snr=31.564 r=0 snr=31.357 r=0
圖4.14添加乘積性噪聲后圖像
snr=31.874 r=0
第五章 總結(jié)與展望
5.1 本文所做的工作總結(jié)
本論文主要是研究了一個(gè)用于圖像認(rèn)證的水印算法,并對(duì)其有效性進(jìn)行了評(píng)價(jià)。下面就在本論文寫(xiě)作過(guò)程中作的工作進(jìn)行一下總結(jié):
一. 針對(duì)現(xiàn)在數(shù)字媒體應(yīng)用的日益廣泛和盜版現(xiàn)狀的擔(dān)憂,提出了數(shù)字水印的概念。并進(jìn)一步闡述了數(shù)字水印的必要性和重要性。然后對(duì)于特殊應(yīng)用上,比如圖像認(rèn)證方面的要求,引出了半脆弱水印的概念。之后論文還詳細(xì)介紹了脆弱水印的發(fā)展歷程和研究現(xiàn)狀。
二. 論文具體解釋了數(shù)字水印的定義和半脆弱水印的技術(shù)要求,并詳細(xì)介紹了國(guó)內(nèi)外做半脆弱水印的方法,在此基礎(chǔ)上介紹了評(píng)價(jià)水印算法優(yōu)劣的幾個(gè)指標(biāo)。最后對(duì)本次畢業(yè)設(shè)計(jì)要用到的仿真平臺(tái)Matlab6.5進(jìn)行了簡(jiǎn)單的介紹。
三. 針對(duì)要實(shí)現(xiàn)對(duì)圖像進(jìn)行認(rèn)證這一目標(biāo),介紹了認(rèn)證算法的一般要求,然后就提出了一個(gè)可用于圖像認(rèn)證的半脆弱水印算法。介紹了算法的思路,并畫(huà)出了算法的方框圖。
四. 這部分詳細(xì)說(shuō)明了算法各個(gè)部分的實(shí)現(xiàn)過(guò)程。包括水印的預(yù)處理的實(shí)現(xiàn),水印嵌入的實(shí)現(xiàn)和水印檢測(cè)的實(shí)現(xiàn)。之后把仿真后的輸出結(jié)果直觀的貼在論文里,并給出了攻擊后圖像對(duì)于原圖像的信噪比和水印的相關(guān)系數(shù)。再加上我們的主觀評(píng)價(jià),得出了對(duì)算法的評(píng)價(jià)。
5.2 工作展望
數(shù)字水印技術(shù)的理論基礎(chǔ)依然非常薄弱,大多數(shù)水印算法還是經(jīng)驗(yàn)性的。主要有以下幾個(gè)方面還需努力:
〔1〕 從現(xiàn)實(shí)的角度看,水印系統(tǒng)必然要在算法的魯棒性、水印的嵌入信息量以及不可覺(jué)察性之間達(dá)到一個(gè)平衡,這涉及魯棒性算法的原理性設(shè)計(jì)、水印的構(gòu)造模型、水印能量和容量的理論估計(jì)、水印嵌入算法和檢測(cè)算法的理論研究等方面。如何確定平衡點(diǎn)仍是一個(gè)難題,目前大多數(shù)水印算法均利用經(jīng)驗(yàn)而不是從理論上解決此問(wèn)題;
〔2〕如何將水印技術(shù)與現(xiàn)行國(guó)際圖像及視頻壓縮標(biāo)準(zhǔn),如JPEG2000和MPEG-4(Moving Picture Experts Group-4,運(yùn)動(dòng)圖像專家組)相結(jié)合,以及如何將水印技術(shù)應(yīng)用于DVD工業(yè)標(biāo)準(zhǔn)中;
〔3〕 所有權(quán)的證明問(wèn)題還沒(méi)有完全解決,就目前已經(jīng)出現(xiàn)的很多算法而言,攻擊者完全可以破壞掉圖像中的水印,或復(fù)制出一個(gè)理論上存在的”原始圖像”,這導(dǎo)致文件所有者不能令人信服地提供版權(quán)歸屬的有效證據(jù)。因此一個(gè)好的水印算法應(yīng)該能夠提供完全沒(méi)有爭(zhēng)議的版權(quán)證明,在這方面還需要做很多工作。目前將水印作為版權(quán)保護(hù)的法律證據(jù)還不可能;
〔4〕聲頻和視頻水印的解決方案還不完善,大多數(shù)的視頻水印算法實(shí)際上是將其圖像水印的結(jié)果直接應(yīng)用與視頻領(lǐng)域中,而沒(méi)有考慮視頻應(yīng)用中大數(shù)據(jù)量以及近乎實(shí)時(shí)的特性。從今后的發(fā)展上看,水印在包括DVD等數(shù)字產(chǎn)品在內(nèi)的視頻和音頻領(lǐng)域?qū)⒂袠O為廣闊的應(yīng)用前景。因此如何設(shè)計(jì)成熟的、合乎國(guó)際規(guī)范的水印算法仍然懸而未決;
〔5〕現(xiàn)有水印算法中在原理上有許多雷同之處,但目前國(guó)內(nèi)外的工作尚未能對(duì)這些有內(nèi)在聯(lián)系的不同算法中的共性問(wèn)題進(jìn)行高度提煉和深入的理論研究,因而缺乏對(duì)數(shù)字水印作進(jìn)一步研究具有指導(dǎo)意義的理論結(jié)果。
從目前看大多數(shù)水印算法本質(zhì)上都沒(méi)什么差別,且在嵌入過(guò)程中均是對(duì)PN(Pseudo Noise Sequence,偽隨機(jī)序列)序列進(jìn)行調(diào)制并結(jié)合掩蔽特性,在檢測(cè)過(guò)程中使用基于相關(guān)法的假設(shè)檢驗(yàn)。水印算法的設(shè)計(jì)不僅要考慮一般性的由標(biāo)準(zhǔn)數(shù)據(jù)處理過(guò)程導(dǎo)致的魯棒性問(wèn)題,而且要考慮由于惡意攻擊而導(dǎo)致的魯棒性問(wèn)題。前面已經(jīng)提到了幾種普遍的攻擊類型,針對(duì)性的水印策略和方法也在研究中。一句話,水印應(yīng)該有足夠的冗余設(shè)計(jì)以保證能夠抵抗各種攻擊行為。在版權(quán)保護(hù)方面,還需要考慮一些額外的方面。一個(gè)問(wèn)題是如果有很多水印被嵌入到圖像中,如何證明那個(gè)最先被嵌入的。此問(wèn)題的解決也許需要數(shù)字時(shí)間標(biāo)識(shí)或水印等級(jí)等方法。而且現(xiàn)在已經(jīng)可以看出,一個(gè)水印算法僅僅有足夠的魯棒性不足以保證解決有效版權(quán)問(wèn)題,即使能夠得到原始數(shù)據(jù)。更進(jìn)一步的講,水印算法應(yīng)該是非對(duì)稱的、單向的、不可逆的。
雖然已經(jīng)有商業(yè)化的水印系統(tǒng),但對(duì)水印的研究還遠(yuǎn)未成熟,許多問(wèn)題如魯棒性、真?zhèn)舞b別、版權(quán)證明、網(wǎng)絡(luò)快速自動(dòng)驗(yàn)證等方面仍然還需要比較完美的解決方案〔11-14〕。
評(píng)論
查看更多