專利名稱:一種基于小波與dct雙重域的主動(dòng)式數(shù)字圖像內(nèi)容鑒別方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種主動(dòng)式數(shù)字圖像內(nèi)容鑒別方法,是一種基于小波與DCT雙重域的主動(dòng)式數(shù)字圖像內(nèi)容鑒別方法。
背景技術(shù):
數(shù)字圖像的便利性和不安全性是并存的。圖像的數(shù)字化為其傳輸和編輯提供了極大的高效性,但同時(shí)也帶來(lái)了一系列的安全隱患數(shù)字圖像的非法篡改及傳播變得容易,并且不留痕跡,而這些數(shù)據(jù)涉及到金融、電子商務(wù)和軍事信息通信等諸多方面,因此在網(wǎng)絡(luò)環(huán)境中對(duì)數(shù)字圖像實(shí)施有效的內(nèi)容保護(hù)成為了一個(gè)迫在眉睫的現(xiàn)實(shí)問題。為了解決這一問題,基于內(nèi)容的數(shù)字圖像鑒別技術(shù)應(yīng)運(yùn)而生,而它不僅僅是個(gè)法律問題,也是一個(gè)很重要的技術(shù)課題。
圖像信息易于被修改,在其內(nèi)容受到懷疑的時(shí)候,一個(gè)能夠可靠驗(yàn)證篡改發(fā)生與否的數(shù)字圖像真?zhèn)舞b別系統(tǒng)就顯得非常重要。數(shù)字圖像鑒別的目的是驗(yàn)證圖像內(nèi)容的真實(shí)性,內(nèi)容來(lái)源的可靠性和數(shù)據(jù)的完整性。由于圖像信息有著不同于傳統(tǒng)文本信息的特點(diǎn)數(shù)據(jù)量大圖像數(shù)據(jù)可以容忍一定程度的修改。這是由于人類感知系統(tǒng)對(duì)視覺上的微弱變化不敏感,甚至不可覺察。
因此可以把數(shù)字圖像鑒別的目標(biāo)定為拒絕剪切和替換等非法操作,而接受保持圖像內(nèi)容的合法操作,如高質(zhì)量的壓縮、格式轉(zhuǎn)換等。
近年來(lái),基于數(shù)字水印的鑒別技術(shù)研究出現(xiàn)了一些典型的算法最早的空域方法是基于最低有效位的方法,即在圖像最低有效位平面嵌入水印,這樣做可以保證嵌入的水印不可見,但是該算法的魯棒性差,容易被破壞掉,不能容忍圖像的任何修改。Wolf對(duì)LSB方法進(jìn)行了改進(jìn),在空域中加入M序列作為水印,水印的檢測(cè)是通過(guò)相關(guān)檢測(cè)器實(shí)現(xiàn)的。在嵌入和檢測(cè)過(guò)程中使用了塊結(jié)構(gòu)從而實(shí)現(xiàn)了對(duì)篡改圖像的定位功能。
Celik提出了一種脆弱性水印,對(duì)圖像在多層等級(jí)上進(jìn)行分塊和計(jì)算相應(yīng)的塊簽名,并將簽名嵌入到圖像的LSB位。在鑒別端利用“滑窗”搜索各層,從而做到對(duì)圖像篡改區(qū)域進(jìn)行較準(zhǔn)確地定位,同時(shí)該方法也具有空域方法的共同缺點(diǎn),就是魯棒性差,水印信息容易被濾波、圖像量化、幾何變換等操作破壞。
Wolfgang和Delp開發(fā)了一種把雙極M序列藏入圖像數(shù)據(jù)塊中的鑒別方法。這種方法能對(duì)惡意操作定位,具有中等魯棒性。但是,它的水印是由除最低有效位之外的像素的校驗(yàn)和產(chǎn)生的。因?yàn)榭山邮艿膲嚎s操作會(huì)導(dǎo)致圖像最低有效位的變化,從而導(dǎo)致系統(tǒng)的誤報(bào)率增加。
Wu模擬JPEG壓縮過(guò)程,對(duì)量化后的DCT系數(shù)通過(guò)查詢表嵌入兩類數(shù)據(jù)視覺上有意義的圖案和在圖像變換域提取的圖像內(nèi)容特征。該方法能適用于JPEG壓縮和其他一些壓縮方法,如小波變換,且水印圖像能存儲(chǔ)成壓縮格式。該方法能容忍一定失真,同時(shí)能夠檢測(cè)出圖像內(nèi)容發(fā)生篡改并且對(duì)篡改區(qū)域進(jìn)行定位。缺點(diǎn)是對(duì)于大面積圖像篡改或全部替換,無(wú)法正確將篡改區(qū)域定位出來(lái)。
Lin進(jìn)一步運(yùn)用半脆弱水印技術(shù),在圖像中嵌入前面提到的鑒別數(shù)字簽名。該方法能接受對(duì)水印圖像進(jìn)行滿足一定圖像質(zhì)量要求的JPEG有損壓縮,和一定范圍內(nèi)的圖像亮度調(diào)整,而拒絕剪裁和替換等惡意攻擊。在圖像發(fā)生篡改的情況下,能夠進(jìn)一步定位圖像被修改的區(qū)域和進(jìn)行近似地恢復(fù)。但對(duì)高壓縮比的圖像壓縮和除JPEG以外的其他壓縮,鑒別結(jié)果誤報(bào)率高。
Zhao提出一種雙重域半脆弱水印,即將圖像變換到DCT域提取圖像特征,然后在圖像的DWT域嵌入圖像特征信息,雙重域的使用能很好地控制魯棒性和脆弱性的程度,并且能很好地對(duì)偶然失真和有意篡改進(jìn)行區(qū)分、分類。但是該方法不能準(zhǔn)確定位較復(fù)雜的圖像修改位置。
易提出了一種基于圖像內(nèi)容的半脆弱鑒別水印,對(duì)原始圖像進(jìn)行小波變換后的近似系數(shù),用混沌序列進(jìn)行調(diào)制從而生成基于圖像內(nèi)容的水印信號(hào);利用原始圖像的HVS特性將水印信號(hào)嵌入到原始圖像的小波域中;檢測(cè)器能夠從接收到的水印圖像中提取出原始水印信號(hào),并依據(jù)接收到的水印圖像生成新的水印信號(hào),然后通過(guò)比較二者之間的差別,從而定位出受到攻擊的圖像位置,并能區(qū)分受到攻擊的類型。該算法具有良好的魯棒性和識(shí)別被篡改區(qū)域的能力。
上述的數(shù)字水印鑒別方法存在以下兩個(gè)問題(1)提出的數(shù)字水印鑒別方法大多屬于完全鑒別,要求數(shù)據(jù)不能有任何改變,而大部分多媒體數(shù)據(jù)為了滿足廣播、存儲(chǔ)和傳輸?shù)刃枰R詨嚎s格式表示,數(shù)字圖像也因?yàn)樾枨筮M(jìn)行轉(zhuǎn)換編碼。這些操作會(huì)改變數(shù)據(jù)的比特流,但不改變數(shù)據(jù)的內(nèi)容,這些在數(shù)字圖像鑒別系統(tǒng)中都應(yīng)該被認(rèn)為是可接受的,即數(shù)字圖像鑒別系統(tǒng)要兼具脆弱性和魯棒性(也叫半脆弱性),完全鑒別方法達(dá)不到這一要求。
(2)有的一些數(shù)字水印鑒別方法僅能達(dá)到辨別出圖像已被惡意篡改的要求,但這在多媒體安全傳輸中是遠(yuǎn)遠(yuǎn)不夠的,還需要能夠進(jìn)一步定位圖像被破壞的像素的位置,并能近似地恢復(fù)出被多種操作破壞了的圖像數(shù)據(jù),從而達(dá)到對(duì)數(shù)字圖像的完整性和真實(shí)性進(jìn)行更高層次地鑒別。
發(fā)明內(nèi)容
本發(fā)明針對(duì)現(xiàn)有技術(shù)的上述缺點(diǎn),提供一種基于小波與DCT雙重域的主動(dòng)式數(shù)字圖像內(nèi)容鑒別方法,能夠?qū)?shù)字圖象進(jìn)行修改辨別、真?zhèn)闻卸?、篡改定位和篡改恢?fù)。
為實(shí)現(xiàn)上述目的,本發(fā)明提供基于小波與DCT雙重域的主動(dòng)式數(shù)字圖像內(nèi)容鑒別方法,包括在發(fā)送端進(jìn)行的水印生成、水印嵌入和水印圖像生成和在鑒別端進(jìn)行的圖像鑒別和篡改初定位(1)水印生成上述圖像首先進(jìn)行象素值空間變換和小波變換圖像象素值減去128,將圖像象素值的范圍變換到[-128,127]的對(duì)稱區(qū)間,然后進(jìn)行兩級(jí)小波變換;再通過(guò)偽隨機(jī)數(shù)產(chǎn)生器PRNG(Pseudo-Random Number Generator)生成由{0,1}組成的二值序列集合,即定位水印w;(2)定位水印嵌入將w用基于均值量化或基于均值四等分量化的水印嵌入方法嵌入到圖像小波變換后的HL2和LH2中,選擇嵌入的HL2和LH2兩個(gè)小波子帶分別包含圖像的水平頻率信息和垂直頻率信息;(3)生成水印圖像進(jìn)行小波逆變換,將得到的象素值加上128,得到了水印圖像;(4)圖像鑒別首先進(jìn)行象素值空間轉(zhuǎn)換和小波變換,將待測(cè)圖像的象素值減去128,然后進(jìn)行兩級(jí)小波變換;再提取定位水印,從HL2和LH2中提取出嵌入的水印信息 ,然后與上述得出的水印信息w進(jìn)行鑒別比較,如果鑒別結(jié)果判定圖像未被修改或僅發(fā)生偶然失真,則認(rèn)為目標(biāo)圖像是真實(shí)可信的,鑒別結(jié)束;否則則認(rèn)為至少圖像發(fā)生了篡改,或同時(shí)發(fā)生篡改和失真,進(jìn)入步驟(5);(5)篡改初定位根據(jù)HL2和LH2可以得到兩個(gè)圖像篡改定位結(jié)果,它們分別側(cè)重標(biāo)示出圖像在水平方向上發(fā)生水印錯(cuò)誤的位置和在垂直方向上發(fā)生水印錯(cuò)誤的位置,然后將上述兩個(gè)定位結(jié)果合并,形成初定位結(jié)果。
進(jìn)一步,可通過(guò)下述步驟進(jìn)行圖象恢復(fù),首先在上述定位步驟中生成水印圖像前,在發(fā)送端進(jìn)行下述步驟(1)恢復(fù)特征提取在發(fā)送端對(duì)原圖像進(jìn)行恢復(fù)特征提取,將圖像小波變換的LL2子帶作為原始圖像的近似分量,用來(lái)提取恢復(fù)特征,恢復(fù)特征的產(chǎn)生過(guò)程是首先將LL2按8×8做分塊DCT變換,并且以下的操作都是針對(duì)塊操作的;將DCT系數(shù)進(jìn)行Z掃描后,取其中前11個(gè)系數(shù)進(jìn)行量化,量化矩陣是JPEG標(biāo)準(zhǔn)亮度量化矩陣;量化系數(shù)用固定的編碼位數(shù)矩陣L進(jìn)行二值編碼,所得數(shù)據(jù)作為恢復(fù)水印r;(2)嵌入恢復(fù)水印在發(fā)送端將恢復(fù)水印r用基于均值量化或基于均值四等分量化的水印嵌入方法嵌入到HL1中,其中選擇的求平均值的系數(shù)個(gè)數(shù)可與定位水印w′時(shí)有所不同;完成上述步驟,并生成水印圖像后,在鑒別端進(jìn)行下述步驟(3)篡改區(qū)域恢復(fù)在上述定位步驟中第5)步篡改區(qū)域定位之后,進(jìn)行篡改區(qū)域恢復(fù),從HL1中提取出嵌入的恢復(fù)水印r,然后利用恢復(fù)水印r對(duì)篡改定位區(qū)域的圖像進(jìn)行恢復(fù),得到恢復(fù)圖像。
在篡改區(qū)域恢復(fù)前進(jìn)行對(duì)角擴(kuò)展,找到初定位結(jié)果中圖像對(duì)角方向上的水印錯(cuò)誤,對(duì)其8個(gè)鄰域位置進(jìn)行水印錯(cuò)誤的擴(kuò)展操作,并進(jìn)一步補(bǔ)充完整;在上述步驟對(duì)角擴(kuò)展后,對(duì)圖象進(jìn)行去除孤立點(diǎn)操作,當(dāng)一個(gè)水印錯(cuò)誤點(diǎn)周圍的8領(lǐng)域像素點(diǎn)都不是水印錯(cuò)誤點(diǎn),就將該水印錯(cuò)誤點(diǎn)從定位結(jié)果中刪除;所述對(duì)角擴(kuò)展操作可循環(huán)執(zhí)行多次,如果圖像鑒別結(jié)果為圖像僅遭受篡改,那么對(duì)初定位結(jié)果進(jìn)行兩次或三次對(duì)角擴(kuò)展,如果圖像鑒別結(jié)果為圖像同時(shí)有篡改和偶然失真發(fā)生,那么對(duì)初定位結(jié)果進(jìn)行兩次對(duì)角擴(kuò)展,一次去除孤立點(diǎn)操作;所述對(duì)恢復(fù)信息進(jìn)行編碼時(shí),采用最低位用作符號(hào)位,輸入數(shù)據(jù)是Z掃描后的量化系數(shù),通過(guò)兩個(gè)循環(huán)操作產(chǎn)生量化系數(shù)的二值碼流第一循環(huán)操作是,首先遍歷所有的量化系數(shù)塊,對(duì)每個(gè)量化系數(shù)塊進(jìn)行相應(yīng)的二值編碼操作,第二循環(huán)操作是,每個(gè)量化系數(shù)塊中只對(duì)前有效個(gè)系數(shù)進(jìn)行編碼,其余的系數(shù)舍棄,對(duì)所保留的每個(gè)量化系數(shù)首先判定它的符號(hào),并根據(jù)符號(hào)對(duì)量化系數(shù)的最低位進(jìn)行修改,保證正數(shù)的編碼最低位為0,負(fù)數(shù)的編碼最低位為1,即如果量化系數(shù)為正數(shù)且為偶數(shù),則保持不變,量化系數(shù)為正數(shù)且為奇數(shù),則將系數(shù)減1;如果量化系數(shù)為負(fù)數(shù),先取其絕對(duì)值,然后判斷奇偶,如果該量化系數(shù)絕對(duì)值為偶數(shù),則絕對(duì)值減1,量化系數(shù)絕對(duì)值為奇數(shù),保持不變,在鑒別端,將提取出二進(jìn)制碼流轉(zhuǎn)換成十進(jìn)制的量化系數(shù)參考值,對(duì)提取出來(lái)的二進(jìn)制碼流,首先轉(zhuǎn)換成十進(jìn)制的量化系數(shù)值,然后根據(jù)量化系數(shù)值的奇偶性,還原出相應(yīng)的符號(hào),即如果量化系數(shù)值為偶數(shù),這表示此量化系數(shù)為正數(shù),否則量化系數(shù)符號(hào)為負(fù),將量化系數(shù)值取反。
所述步驟(4)圖象鑒別中的判別準(zhǔn)則可包括以下步驟(1)首先,根據(jù)下式判斷小波系數(shù)是否發(fā)生水印錯(cuò)誤, 其中Q(z,q)代表量化函數(shù),w代表原圖象的水印信息;
檢測(cè)HL2得到水印錯(cuò)誤記錄T1,檢測(cè)LH2得到水印錯(cuò)誤記錄T2;(2)將T1和T2合并,形成綜合的水印錯(cuò)誤記錄T;(3)對(duì)T進(jìn)一步分類,分成孤立的水印錯(cuò)誤系數(shù)Tisolated和密集的水印錯(cuò)誤系數(shù)Tdense,孤立的水印錯(cuò)誤系數(shù)表示該錯(cuò)誤系數(shù)的相鄰8個(gè)位置沒有其他的水印錯(cuò)誤系數(shù)存在,密集的水印錯(cuò)誤系數(shù)則正好相反,錯(cuò)誤系數(shù)的相鄰8個(gè)位置還有其他的水印錯(cuò)誤系數(shù),這樣分類的目的是計(jì)算水印錯(cuò)誤的密度,從而用于判斷是發(fā)生篡改還是偶然失真。
(4)計(jì)算篡改程度TRTR=Ntamper/Ntotal,Ntamper=Nisolated+Ndense,其中Ntamper指發(fā)生水印錯(cuò)誤系數(shù)的數(shù)目,Ttotal指系數(shù)總和,Nisolated指發(fā)生孤立水印錯(cuò)誤系數(shù)的數(shù)目,Ndense發(fā)生密集水印錯(cuò)誤系數(shù)的數(shù)目;根據(jù)TR,判斷是否發(fā)生篡改(I)TR=0,那么目標(biāo)圖像既沒發(fā)生篡改,也沒有偶然失真;(II)TR>0,且Ndense<α×Ntamper,0<α≤0.5,那么目標(biāo)圖像僅遭受偶然失真;(III)TR>0,且Ndense<α×Ntamper,0.5<α≤0.8,那么目標(biāo)圖像同時(shí)有篡改和偶然失真發(fā)生;(IV)以上情況都不滿足,那么目標(biāo)圖像僅遭受篡改。
結(jié)合附圖,本發(fā)明的詳細(xì)描述如下水印生成和嵌入過(guò)程如圖1所示,大致可分為以下幾個(gè)步驟(1)象素值空間變換和小波變換。首先把圖像象素值減去128,然后進(jìn)行兩級(jí)小波變換。將圖像象素值的范圍變換到[-128,127]的對(duì)稱區(qū)間,在下面步驟中有兩個(gè)優(yōu)點(diǎn)一是對(duì)稱圖像象素空間做DWT變換,更有利于低頻分量的集中,二是可以節(jié)約編碼的位數(shù),以便于在有限的水印容量中保留更多的圖像信息;(2)生成定位水印w。定位水印的產(chǎn)生方法可以通過(guò)偽隨機(jī)數(shù)產(chǎn)生器PRNG(Pseudo-Random Number Generator)來(lái)生成,定位水印是由{0,1}組成的二值序列集合;(3)定位水印嵌入。將w用基于均值四等分量化的水印嵌入方法嵌入到圖像小波變換后的HL2和LH2中,選擇嵌入的這兩個(gè)小波子帶分別主要包含圖像的水平頻率信息和垂直頻率信息,保證了圖像篡改檢測(cè)過(guò)程中兼顧水平方向和垂直方向上的改動(dòng),同時(shí)又保證了水印圖像的不可見性。
(4)恢復(fù)特征提取。將圖像小波變換的LL2子帶作為原始圖像的近似分量,用來(lái)提取恢復(fù)特征,恢復(fù)特征的產(chǎn)生過(guò)程分成以下四步將LL2按8×8做分塊DCT變換,并且以下的操作都是針對(duì)塊操作的;將DCT系數(shù)進(jìn)行Z掃描后,取其中前11個(gè)系數(shù)進(jìn)行量化,量化矩陣是JPEG標(biāo)準(zhǔn)亮度量化矩陣,相當(dāng)于50%質(zhì)量的JPEG壓縮;量化系數(shù)用固定的編碼位數(shù)矩陣L進(jìn)行二值編碼,用L矩陣編碼保證了每個(gè)塊的前11個(gè)量化系數(shù)剛好用64bits表示。
將編碼得到的二值序列作為恢復(fù)水印r;(5)將恢復(fù)水印r用均值四等分量化的水印嵌入方法嵌入到HL1中。
(6)生成水印圖像。小波逆變換,將得到的象素值加上128,就得到了水印圖像。
圖像鑒別及篡改定位和恢復(fù)過(guò)程如圖2所示。
(1)象素值空間轉(zhuǎn)換和小波變換。首先將受到懷疑的目標(biāo)圖像象素值減去128,然后進(jìn)行兩級(jí)DWT變換;
(2)定位水印提取。從HL2和LH2中提取出嵌入的水印信息 ,然后與已知的水印信息w進(jìn)行鑒別比較,如果鑒別結(jié)果判定圖像未被修改或僅發(fā)生偶然失真,則認(rèn)為目標(biāo)圖像是真實(shí)可信的,鑒別結(jié)束;否則則認(rèn)為至少圖像發(fā)生了篡改,或同時(shí)發(fā)生篡改和失真,進(jìn)入步驟(3);(3)篡改初定位。根據(jù)HL2和LH2可以得到兩個(gè)圖像篡改定位結(jié)果,它們分別側(cè)重標(biāo)示出圖像在水平方向上發(fā)生水印錯(cuò)誤的位置和在垂直方向上發(fā)生水印錯(cuò)誤的位置,然后將這兩個(gè)定位結(jié)果合并,形成初定位結(jié)果;(4)對(duì)角擴(kuò)展。該操作的目的是找到初定位結(jié)果中一些可能遺漏的圖像對(duì)角方向上的水印錯(cuò)誤,將它們進(jìn)一步補(bǔ)充完整,并且對(duì)角擴(kuò)展操作可循環(huán)執(zhí)行多次;(5)去除孤立點(diǎn)。通常圖像的非惡意操作帶來(lái)的失真,其定位結(jié)果呈均勻零散分布或隨機(jī)分布,因此通過(guò)去除掉水印錯(cuò)誤中的孤立點(diǎn)操作,可以達(dá)到盡量除去偶然失真的干擾,只定位惡意修改位置的目的,這樣就得到最終的定位結(jié)果;(6)篡改區(qū)域恢復(fù)。在對(duì)篡改區(qū)域定位之后,從HL1中提取出嵌入的恢復(fù)水印,然后利用恢復(fù)水印對(duì)篡改定位區(qū)域的圖像進(jìn)行恢復(fù),得到恢復(fù)圖像。
在一般的計(jì)算機(jī)操作中,整數(shù)都是用最高位作為符號(hào)位,來(lái)區(qū)分正數(shù)和負(fù)數(shù)。但是本發(fā)明中的算法進(jìn)行二值編碼時(shí),用來(lái)編碼的位數(shù)很有限,如果還占去最高位作符號(hào)位,那么能表示的數(shù)值范圍就大大縮小,例如上述L矩陣中對(duì)DC系數(shù)用7位來(lái)編碼,數(shù)值最大可達(dá)到127,但是無(wú)法區(qū)分正負(fù)。如果將最高位用作符號(hào)位,則數(shù)值范圍為[-63,63],雖然這樣可以區(qū)分?jǐn)?shù)值的正負(fù),但是能表示的數(shù)值范圍就大大減少。
本發(fā)明對(duì)恢復(fù)信息進(jìn)行編碼時(shí),用最低位用作符號(hào)位來(lái)解決上述問題。這樣既可以區(qū)分正負(fù)數(shù),同時(shí)數(shù)值范圍的變動(dòng)也不大。圖3(a)是二值編碼生成流程,輸入數(shù)據(jù)是Z掃描后的量化系數(shù),通過(guò)兩個(gè)循環(huán)操作產(chǎn)生量化系數(shù)的二值碼流。
Loop 1遍歷所有的量化系數(shù)塊,對(duì)每個(gè)量化系數(shù)塊進(jìn)行相應(yīng)的二值編碼操作,N表示量化系數(shù)塊的個(gè)數(shù)。
Loop 2其中valid表示保留的系數(shù)的數(shù)目,每個(gè)量化系數(shù)塊中只對(duì)前valid個(gè)系數(shù)進(jìn)行編碼,其余的系數(shù)舍棄,Ec表示編碼位數(shù)矩陣。
在Loop 2中,對(duì)保留的每個(gè)量化系數(shù)首先判定它的符號(hào),并根據(jù)符號(hào)對(duì)量化系數(shù)的最低位進(jìn)行修改,保證正數(shù)的編碼最低位為0,負(fù)數(shù)的編碼最低位為1。即如果量化系數(shù)為正數(shù)且為偶數(shù),則保持不變,量化系數(shù)為正數(shù)且為奇數(shù),則將系數(shù)減1;如果量化系數(shù)為負(fù)數(shù),先取其絕對(duì)值,然后判斷奇偶,如果該量化系數(shù)絕對(duì)值為偶數(shù),則絕對(duì)值減1,量化系數(shù)絕對(duì)值為奇數(shù),保持不變。
對(duì)于修改后的量化系數(shù),用Ec中規(guī)定的編碼位數(shù)將其轉(zhuǎn)換成二進(jìn)制碼流,對(duì)少數(shù)溢出編碼范圍的量化系數(shù),用其編碼范圍內(nèi)的最大值代替,同時(shí)保證符號(hào)的正確。
在鑒別端,將提取出二進(jìn)制碼流轉(zhuǎn)換成十進(jìn)制的量化系數(shù)參考值,實(shí)現(xiàn)流程如圖3(b)所示。對(duì)提取出來(lái)的二進(jìn)制碼流,首先轉(zhuǎn)換成十進(jìn)制的量化系數(shù)值,然后根據(jù)量化系數(shù)值的奇偶性,還原出相應(yīng)的符號(hào),即如果量化系數(shù)值為偶數(shù),這表示此量化系數(shù)為正數(shù),否則量化系數(shù)符號(hào)為負(fù),將量化系數(shù)值取反。
本發(fā)明中的基于均值四等分量化的水印嵌入方法是對(duì)Yu提出的基于均值量化的水印嵌入方法(Yu,G.J.,Mean Quantization Blind Watermarking forImage Authentication,ICIP00(Vol III706-709))進(jìn)行了改進(jìn),基于均值量化的水印嵌入就是根據(jù)要嵌入的水印信息,對(duì)若干嵌入位置的系數(shù)的平均值通過(guò)量化和更新,將該平均值修改到它所屬的量化區(qū)間的中間位置。由于若干系數(shù)平均值的變化程度更難以溢出一個(gè)量化步長(zhǎng)的范圍,從而提高了嵌入水印的魯棒性。
Yu提出的基于均值量化的水印嵌入方法為假設(shè)水印嵌入到圖像的小波域內(nèi),水印信息的嵌入過(guò)程就是小波系數(shù)的均值量化過(guò)程,具體步驟如下設(shè)q是量化步長(zhǎng),xi,i=1,…n表示n個(gè)小波系數(shù),w代表要嵌入的水印,Q(x,q)表示量化函數(shù)。
(1)求n個(gè)小波系數(shù)的平均值x‾=1nΣi=1nxi;]]>(2)求量化函數(shù)Q(x‾,q)=0,if tp≤x‾<(t+1)q,for t=0,±2,±4,...1,if tp≤x‾<(t+1)q,for t=±1,±3,±5,...;]]>(3)求量化噪聲r(shí) (4)系數(shù)更新大小uu‾=-r‾+0.5×q,if Q(x‾,q)=w-r‾+0.5×q,if Q(x‾,q)≠w and|r‾|>0.5×q-r‾-0.5×q,if Q(x‾,q)≠w and|r‾|≤0.5×q;]]>(5)新的均值系數(shù)x*x*=x+u;
(6)所有n個(gè)小波系數(shù)的更新xi*xi*=xi+u‾,for1≤i≤n.]]>通過(guò)實(shí)驗(yàn)可知利用原基于均值量化的水印嵌入方法向圖像小波域中嵌入大量數(shù)據(jù)時(shí),水印圖像的質(zhì)量比較差,而水印的不可見性在圖像鑒別算法中是必須保證的性質(zhì)。因此,在本發(fā)明中,嵌入水印時(shí)對(duì)基于均值量化的水印嵌入算法做了改進(jìn),即在嵌入水印時(shí)減小小波系數(shù)的平均值的修改程度,從而提高了水印信息的不可見性。
基于均值量化的水印嵌入算法的改進(jìn)主要體現(xiàn)在對(duì)系數(shù)更新大小u的改進(jìn)上,改進(jìn)后的u如下列公式。
ifQ(x‾,q)=w,u‾=-r‾+0.25×q,if|r‾|<0.25×q-r‾+0.5×q,if0.25×q≤|r‾|≤0.75×q-r‾+0.75×q,if|r‾|>0.75×qifQ(x‾,q)≠wand|r‾|>0.5×q,u‾=-r‾+1.5×q,if|r‾|≥0.75×q-r‾+1.25×q,elseifQ(x‾,q)≠and|r‾|≤0.5×q,u‾=-r‾-0.5×q,if|r‾|≤0.25×q-r‾-0.25×q,else]]>本發(fā)明中判斷目標(biāo)圖像是否發(fā)生篡改可分為以下幾步(1)首先,根據(jù)下式判斷小波系數(shù)是否發(fā)生水印錯(cuò)誤, 檢測(cè)HL2得到水印錯(cuò)誤記錄T1,檢測(cè)LH2得到水印錯(cuò)誤記錄T2;(2)將T1和T2合并,形成綜合的水印錯(cuò)誤記錄T;(3)對(duì)T進(jìn)一步分類,分成孤立的水印錯(cuò)誤系數(shù)Tisolated和密集的水印錯(cuò)誤系數(shù)Tdense,孤立的水印錯(cuò)誤系數(shù)表示該錯(cuò)誤系數(shù)的相鄰8個(gè)位置沒有其他的水印錯(cuò)誤系數(shù)存在,密集的水印錯(cuò)誤系數(shù)則正好相反,錯(cuò)誤系數(shù)的相鄰8個(gè)位置還有其他的水印錯(cuò)誤系數(shù),這樣分類的目的是計(jì)算水印錯(cuò)誤的密度,從而用于判斷是發(fā)生篡改還是偶然失真。
(4)計(jì)算篡改程度TRTR=Ntamper/Ntotal,Ntamper=Nisolated+Ndense,其中Ntamper指發(fā)生水印錯(cuò)誤系數(shù)的數(shù)目,Ttotal指系數(shù)總和,Nisolated指發(fā)生孤立水印錯(cuò)誤系數(shù)的數(shù)目,Ndense發(fā)生密集水印錯(cuò)誤系數(shù)的數(shù)目。
根據(jù)TR,就可以判斷是否發(fā)生篡改,規(guī)則如下(I)TR=0,那么目標(biāo)圖像既沒發(fā)生篡改,也沒有偶然失真;(II)TR>0,且Ndense<α×Ntamper,0<α≤0.5,那么目標(biāo)圖像僅遭受偶然失真;(III)TR>0,且Ndense<α×Ntamper,0.5<α≤0.8,那么目標(biāo)圖像同時(shí)有篡改和偶然失真發(fā)生;(IV)以上情況都不滿足,那么目標(biāo)圖像僅遭受篡改。
當(dāng)圖像鑒別判斷結(jié)果落在規(guī)則(I)、(II)范圍內(nèi),則表示圖像無(wú)篡改,當(dāng)判斷結(jié)果落在規(guī)則(III)、(IV)范圍內(nèi),則表示圖像被篡改,需要進(jìn)一步定位。由于選擇嵌入定位水印的位置是圖像小波變換后的HL2子帶和LH2子帶,篡改定位時(shí)只側(cè)重標(biāo)示出圖像在水平方向上發(fā)生水印錯(cuò)誤的位置和在垂直方向上發(fā)生水印錯(cuò)誤的位置,再采用對(duì)角擴(kuò)展方法,將定位中一些可能遺漏的對(duì)角方向上的水印錯(cuò)誤進(jìn)一步補(bǔ)充完整。對(duì)角擴(kuò)展操作可循環(huán)執(zhí)行多次。而去除孤立點(diǎn)操作則可以很好地去除偶然失真的干擾,例如JPEG帶來(lái)的失真,從而達(dá)到只定位出圖像惡意修改位置的目的。
對(duì)角擴(kuò)展方法的演示見圖5,假設(shè)位置0發(fā)生水印錯(cuò)誤,記T(0)=1,在以下四種情況下出現(xiàn)時(shí),對(duì)其8個(gè)鄰域位置進(jìn)行水印錯(cuò)誤的擴(kuò)展操作
(1)if T(1)=1,then T(2)=1 and T(4)=1;(2)if T(3)=1,then T(2)=1 and T(5)=1;(3)if T(6)=1,then T(4)=1 and T(7)=1;(4)if T(8)=1,then T(5)=1 and T(7)=1;在上述對(duì)角擴(kuò)展操作中,對(duì)于僅遭受篡改的目標(biāo)圖像,對(duì)角擴(kuò)展操作可循環(huán)執(zhí)行多次,以求達(dá)到比較準(zhǔn)確的定位效果;對(duì)于同時(shí)有篡改和偶然失真發(fā)生的目標(biāo)圖像,對(duì)角操作循環(huán)次數(shù)不能過(guò)多,否則偶然失真導(dǎo)致的水印錯(cuò)誤也被擴(kuò)大化,擴(kuò)展后的水印錯(cuò)誤就很難通過(guò)去除孤立點(diǎn)操作除去。如果圖像鑒別結(jié)果為圖像僅遭受篡改,那么對(duì)初定位結(jié)果進(jìn)行兩次或三次對(duì)角擴(kuò)展。如果圖像鑒別結(jié)果為圖像同時(shí)有篡改和偶然失真發(fā)生,那么對(duì)初定位結(jié)果進(jìn)行兩次對(duì)角擴(kuò)展,一次去除孤立點(diǎn)操作。通過(guò)實(shí)驗(yàn)證明上述規(guī)定的對(duì)角擴(kuò)展次數(shù)基本上可以補(bǔ)全對(duì)角方向上遺漏的水印錯(cuò)誤,從而達(dá)到較好的定位效果。
在本發(fā)明中,恢復(fù)水印是通過(guò)將圖像小波分解的近似分量做8×8分塊DCT變換、量化、取Z掃描后的前面若干個(gè)量化系數(shù)并進(jìn)行二值編碼后得到的。二值編碼是對(duì)選取的量化系數(shù)用固定的編碼位數(shù)矩陣L進(jìn)行編碼。使用編碼位數(shù)矩陣對(duì)選取的量化系數(shù)進(jìn)行編碼有兩個(gè)好處(1)在恢復(fù)水印的生成及嵌入端和提取端采用同樣的編碼位數(shù)矩陣,可以保證嵌入水印和提取水印的一致性;(2)可以控制編碼的位數(shù),有效地避免了恢復(fù)水印數(shù)據(jù)量溢出的情況。
本發(fā)明提供基于小波與DCT雙重域的主動(dòng)式數(shù)字圖像內(nèi)容鑒別方法,同時(shí)利用DWT變換域和DCT變換域的特性,水印的嵌入選擇圖像的DWT域,在基于均值量化的水印嵌入過(guò)程中,量化步長(zhǎng)的大小選擇充分考慮了人類視覺系統(tǒng)的特性,從而保證了水印圖像的不可見性?;謴?fù)信息的提取在圖像的DCT域完成,模擬JPEG壓縮的過(guò)程,有效地減少了恢復(fù)水印的數(shù)據(jù)量;并且定位精確度比較高,通過(guò)引入對(duì)角擴(kuò)展的方法,將圖像在對(duì)角方向上可能遺漏的篡改位置補(bǔ)充完整,定位精度達(dá)到8*8像素級(jí);能夠容忍一定程度的圖像處理操作帶來(lái)的圖像失真,并通過(guò)去除孤立點(diǎn)可很好地排除偶然失真的干擾。
圖1 ALR的水印生成和嵌入過(guò)程圖2 ALR的圖像鑒別過(guò)程圖3二值編解碼流程圖4對(duì)角擴(kuò)展演示5測(cè)試圖像圖6 ALR鑒別系統(tǒng)對(duì)JPEG的測(cè)試結(jié)果圖7“l(fā)ena”圖像的JPEG壓縮鑒別檢測(cè)8惡意篡改的測(cè)試圖像圖9惡意篡改lena圖像的定位結(jié)果10惡意篡改lena圖像的恢復(fù)結(jié)果11惡意篡改且進(jìn)行JPEG壓縮的sailboat圖像的定位結(jié)果12惡意篡改且壓縮的sailboat圖像的恢復(fù)結(jié)果圖具體實(shí)施方式
以下通過(guò)實(shí)施例對(duì)圖像偶然失真、惡意篡改和兩種修改同時(shí)發(fā)生三種情況分別進(jìn)行鑒別測(cè)試實(shí)施例1如圖5所示實(shí)驗(yàn)中使用的小波變換是雙正交9/7小波。嵌入定位水印時(shí),求均值的小波系數(shù)個(gè)數(shù)選擇n=2×2的大小。定位塊和恢復(fù)結(jié)果都精確到8×8量級(jí)。二值編碼中valid=11,即對(duì)DCT量化系數(shù)保留其Z掃描后的前11個(gè)系數(shù),這樣每個(gè)8×8數(shù)據(jù)塊剛好用64bits來(lái)表示,其中對(duì)量化系數(shù)進(jìn)行編碼所采用的L矩陣為L(zhǎng)=7775432176554210655431005543100044310000321000002100000010000000]]>對(duì)篡改圖像定位時(shí),進(jìn)行兩次對(duì)角擴(kuò)展。對(duì)既被篡改又有偶然失真的圖像,進(jìn)行兩次對(duì)角擴(kuò)展,一次去除孤立點(diǎn)操作。
從實(shí)驗(yàn)結(jié)果可以看出,對(duì)這些非篡改操作的圖像進(jìn)行定位,其定位區(qū)域呈均勻分布或隨機(jī)分布,經(jīng)過(guò)去除孤立點(diǎn),這些區(qū)域大部分都將被刪除。
將各種質(zhì)量因子下的JPEG壓縮圖像的鑒別結(jié)果統(tǒng)計(jì)如表1所示,表中“√”表示鑒別通過(guò),“×”鑒別失敗,即圖像發(fā)生了惡意篡改。
表1非惡意篡改的鑒別結(jié)果統(tǒng)計(jì)表
為了更直觀地闡述誤報(bào)率,將本發(fā)明鑒別系統(tǒng)對(duì)JPEG壓縮圖像的測(cè)試結(jié)果用圖7表示,從圖中可以看出,對(duì)于圖5中的12幅測(cè)試圖像,質(zhì)量因子為50%以上的JPEG壓縮圖像能全部通過(guò)鑒別,即誤報(bào)率為零。隨著質(zhì)量因子的減小,誤報(bào)率也迅速增大。質(zhì)量因子為40%的JPEG圖像鑒別誤報(bào)率為0.1,質(zhì)量因子為30%的JPEG圖像鑒別誤報(bào)率為0.3,而質(zhì)量因子為20%以下的JPEG圖像鑒別誤報(bào)率為1,即質(zhì)量因子太低的情況下的JPEG圖像視覺效果已經(jīng)非常糟糕,導(dǎo)致它們?nèi)繜o(wú)法通過(guò)鑒別,從而被當(dāng)作篡改圖像處理。
針對(duì)其中圖I01即Lena圖像,對(duì)于質(zhì)量因子下的JPEG壓縮(從0-100),它與鑒別端檢測(cè)出的水印錯(cuò)誤的關(guān)系如圖7所示。圖中圓點(diǎn)線表示由LH2和HL2共同得到的水印錯(cuò)誤個(gè)數(shù),方塊線表示去除孤立水印錯(cuò)誤點(diǎn)之后的水印錯(cuò)誤個(gè)數(shù),從圖中可以看出,經(jīng)過(guò)去除孤立點(diǎn),水印錯(cuò)誤點(diǎn)數(shù)目大大減少,從而使JPEG壓縮圖像能通過(guò)鑒別或判定僅發(fā)生偶然失真。這也說(shuō)明JPEG壓縮篡改的區(qū)域基本上呈均勻分布或隨機(jī)分布。
實(shí)施例2本發(fā)明中所述的惡意篡改主要指圖像經(jīng)過(guò)了剪切和替換操作。如圖8所示,其中(a)是256*256*8的lena原始圖像;(b)是水印圖像,PSNR=36.18db;(c)是將lena臉部惡意篡改后的水印圖像,以下將利用此幅篡改圖像來(lái)測(cè)試本發(fā)明的圖像鑒別方法。
對(duì)8(c)圖像進(jìn)行鑒別,鑒別結(jié)果如圖9所示,其中(a)是利用嵌入在HL2中的定位水印進(jìn)行定位的結(jié)果;(b)是利用嵌入在LH2中的定位水印進(jìn)行定位的結(jié)果;(c)是將(a)、(b)的定位結(jié)果合并后形成的對(duì)篡改圖像的初定位結(jié)果,從(c)可以看出,此時(shí)定位結(jié)果效果還是不好,因此進(jìn)行對(duì)角擴(kuò)展操作是很有必要的;(d)是對(duì)(c)進(jìn)行一次對(duì)角擴(kuò)展定位的結(jié)果;(e)是對(duì)(c)進(jìn)行兩次對(duì)角擴(kuò)展定位的結(jié)果,兩次對(duì)角擴(kuò)展后,已達(dá)到很好的篡改定位效果;(f)是對(duì)(e)進(jìn)行篡改恢復(fù)的結(jié)果。
得到圖像篡改定位結(jié)果后,進(jìn)一步從圖像小波變換后HL2中提取恢復(fù)信息,對(duì)定位區(qū)域進(jìn)行近似地恢復(fù),恢復(fù)結(jié)果如圖10所示,其中(a)是從HL2中提取出來(lái)的Lena恢復(fù)圖像,(b)是對(duì)惡意篡改Lena圖像的恢復(fù)結(jié)果。
實(shí)施例3以下對(duì)水印圖像同時(shí)施加惡意篡改和偶然失真,目的是測(cè)試本發(fā)明的鑒別方法是否能容忍偶然失真,同時(shí)能檢測(cè)出惡意篡改。圖11(a)是sailboat原始圖像;(b)是sailboat水印圖像,PSNR為36.02db;(c)是將sailboat水印圖像中的小船進(jìn)行了復(fù)制,并將篡改小船周圍的場(chǎng)景用周圍的水替代,然后進(jìn)行了圖像品質(zhì)為60的JPEG壓縮,鑒別結(jié)果為圖像同時(shí)遭受惡意篡改和偶然失真,然后進(jìn)行定位操作;(d)是通過(guò)嵌入中HL2的定位水印進(jìn)行定位的結(jié)果;(e)是通過(guò)嵌入在LH2中的定位水印進(jìn)行定位的結(jié)果;(f)是將(d)、(e)的定位結(jié)果合并后形成的對(duì)篡改圖像的初定位結(jié)果;(g)是對(duì)(f)進(jìn)行一次對(duì)角擴(kuò)展定位的結(jié)果;(h)是對(duì)(f)進(jìn)行兩次對(duì)角擴(kuò)展定位的結(jié)果;(i)是對(duì)(h)進(jìn)行去除孤立點(diǎn)操作的結(jié)果,這一操作可以很好地除去JPEG壓縮帶來(lái)的偶然失真。
本實(shí)施例還對(duì)篡改的sailboat水印圖像測(cè)試了進(jìn)行其他圖像品質(zhì)的JPEG壓縮,實(shí)驗(yàn)證明,本發(fā)明的圖像鑒別方法可以很好地除去JPEG壓縮帶來(lái)的干擾,只定位出惡意篡改的位置。
最后對(duì)圖11(c)進(jìn)行恢復(fù),恢復(fù)結(jié)果如圖12所示,其中(a)是從HL2中提取出來(lái)的sailboat恢復(fù)圖像,(b)是對(duì)惡意篡改且JPEG壓縮(質(zhì)量因子為60)的sailboat圖像的恢復(fù)結(jié)果,恢復(fù)圖像的精度達(dá)到8×8量級(jí)。
權(quán)利要求
1.一種基于小波與DCT雙重域的主動(dòng)式數(shù)字圖像內(nèi)容鑒別方法,其特征在于,包括在發(fā)送端進(jìn)行的水印生成、水印嵌入和水印圖像生成和在鑒別端進(jìn)行的圖像鑒別和篡改初定位(1)水印生成圖像首先進(jìn)行象素值空間變換和小波變換先將圖像象素值減去128,將圖像象素值的范圍變換到[-128,127]的對(duì)稱區(qū)間,然后進(jìn)行兩級(jí)小波變換;再通過(guò)偽隨機(jī)數(shù)產(chǎn)生器生成由{0,1}組成的二值序列集合,即定位水印w;(2)定位水印嵌入將w用基于均值量化或基于均值四等分量化的水印嵌入方法嵌入到圖像小波變換后的HL2和LH2中,選擇嵌入的HL2和LH2兩個(gè)小波子帶分別包含圖像的水平頻率信息和垂直頻率信息;(3)生成水印圖像進(jìn)行小波逆變換,將得到的象素值加上128,就得到了水印圖像;(4)圖像鑒別首先進(jìn)行象素值空間轉(zhuǎn)換和小波變換,將待測(cè)圖像的象素值減去128,然后進(jìn)行兩級(jí)小波變換;再提取定位水印,從HL2和LH2中提取出嵌入的水印信息 然后與上述得出的水印信息w進(jìn)行鑒別比較,如果鑒別結(jié)果判定圖像未被修改或僅發(fā)生偶然失真,則認(rèn)為目標(biāo)圖像是真實(shí)可信的,鑒別結(jié)束;否則則認(rèn)為至少圖像發(fā)生了篡改,或同時(shí)發(fā)生篡改和失真,進(jìn)入步驟(5);(5)篡改初定位根據(jù)HL2和LH2可以得到兩個(gè)圖像篡改定位結(jié)果,它們分別側(cè)重標(biāo)示出圖像在水平方向上發(fā)生水印錯(cuò)誤的位置和在垂直方向上發(fā)生水印錯(cuò)誤的位置,然后將上述兩個(gè)定位結(jié)果合并,形成初定位結(jié)果。
2.根據(jù)權(quán)利要求1所述基于小波與DCT雙重域的主動(dòng)式數(shù)字圖像內(nèi)容鑒別方法,其特征在于,可通過(guò)下述步驟進(jìn)行圖象恢復(fù),首先在上述定位步驟中生成水印圖像前,在發(fā)送端進(jìn)行下述步驟(1)恢復(fù)特征提取在發(fā)送端對(duì)原圖像進(jìn)行恢復(fù)特征提取,將圖像小波變換的LL2子帶作為原始圖像的近似分量,用來(lái)提取恢復(fù)特征,恢復(fù)特征的產(chǎn)生過(guò)程是首先將LL2按8×8做分塊DCT變換,并且以下的操作都是針對(duì)塊操作的;將DCT系數(shù)進(jìn)行Z掃描后,取其中前11個(gè)系數(shù)進(jìn)行量化,量化矩陣是JPEG標(biāo)準(zhǔn)亮度量化矩陣;量化系數(shù)用固定的編碼位數(shù)矩陣L進(jìn)行二值編碼,所得數(shù)據(jù)作為恢復(fù)水印r;(2)嵌入恢復(fù)水印在發(fā)送端將恢復(fù)水印r用基于均值量化或基于均值四等分量化的水印嵌入方法嵌入到HL1中,其中選擇的求平均值的系數(shù)個(gè)數(shù)與定位水印w′時(shí)相同或不同;完成上述步驟并生成水印圖像后,在鑒別端進(jìn)行下述步驟(3)篡改區(qū)域恢復(fù)在上述定位步驟中第5)步篡改區(qū)域定位之后,進(jìn)行篡改區(qū)域恢復(fù),從HL1中提取出嵌入的恢復(fù)水印r,然后利用恢復(fù)水印r對(duì)篡改定位區(qū)域的圖像進(jìn)行恢復(fù),得到恢復(fù)圖像。
3.根據(jù)權(quán)利要求2所述的一種基于小波與DCT雙重域的主動(dòng)式數(shù)字圖像內(nèi)容鑒別方法,其特征在于,在篡改區(qū)域恢復(fù)前進(jìn)行對(duì)角擴(kuò)展,找到初定位結(jié)果中圖像對(duì)角方向上的水印錯(cuò)誤,對(duì)其8個(gè)鄰域位置進(jìn)行水印錯(cuò)誤的擴(kuò)展操作,并進(jìn)一步補(bǔ)充完整;
4.根據(jù)權(quán)利要求3所述基于小波與DCT雙重域的主動(dòng)式數(shù)字圖像內(nèi)容鑒別方法,其特征在于,在上述步驟對(duì)角擴(kuò)展后,對(duì)圖象進(jìn)行去除孤立點(diǎn)操作,當(dāng)一個(gè)水印錯(cuò)誤點(diǎn)周圍的8領(lǐng)域像素點(diǎn)都不是水印錯(cuò)誤點(diǎn),就將該水印錯(cuò)誤點(diǎn)從定位結(jié)果中刪除;
5.根據(jù)權(quán)利要求3或4所述基于小波與DCT雙重域的主動(dòng)式數(shù)字圖像內(nèi)容鑒別方法,其特征在于,所述對(duì)角擴(kuò)展操作循環(huán)執(zhí)行多次,如果圖像鑒別結(jié)果為圖像僅遭受篡改,那么對(duì)初定位結(jié)果進(jìn)行兩次或三次對(duì)角擴(kuò)展,如果圖像鑒別結(jié)果為圖像同時(shí)有篡改和偶然失真發(fā)生,那么對(duì)初定位結(jié)果進(jìn)行兩次對(duì)角擴(kuò)展,一次去除孤立點(diǎn)操作;
6.根據(jù)權(quán)利要求1至5之一所述基于小波與DCT雙重域的主動(dòng)式數(shù)字圖像內(nèi)容鑒別方法,其特征在于,所述對(duì)恢復(fù)信息進(jìn)行編碼時(shí),采用最低位用作符號(hào)位,輸入數(shù)據(jù)是Z掃描后的量化系數(shù),通過(guò)兩個(gè)循環(huán)操作產(chǎn)生量化系數(shù)的二值碼流第一循環(huán)操作是,首先遍歷所有的量化系數(shù)塊,對(duì)每個(gè)量化系數(shù)塊進(jìn)行相應(yīng)的二值編碼操作,第二循環(huán)操作是,每個(gè)量化系數(shù)塊中只對(duì)前有效個(gè)系數(shù)進(jìn)行編碼,其余的系數(shù)舍棄,對(duì)所保留的每個(gè)量化系數(shù)首先判定它的符號(hào),并根據(jù)符號(hào)對(duì)量化系數(shù)的最低位進(jìn)行修改,保證正數(shù)的編碼最低位為0,負(fù)數(shù)的編碼最低位為1,即如果量化系數(shù)為正數(shù)且為偶數(shù),則保持不變,量化系數(shù)為正數(shù)且為奇數(shù),則將系數(shù)減1;如果量化系數(shù)為負(fù)數(shù),先取其絕對(duì)值,然后判斷奇偶,如果該量化系數(shù)絕對(duì)值為偶數(shù),則絕對(duì)值減1,量化系數(shù)絕對(duì)值為奇數(shù),保持不變,在鑒別端,將提取出二進(jìn)制碼流轉(zhuǎn)換成十進(jìn)制的量化系數(shù)參考值,對(duì)提取出來(lái)的二進(jìn)制碼流,首先轉(zhuǎn)換成十進(jìn)制的量化系數(shù)值,然后根據(jù)量化系數(shù)值的奇偶性,還原出相應(yīng)的符號(hào),即如果量化系數(shù)值為偶數(shù),這表示此量化系數(shù)為正數(shù),否則量化系數(shù)符號(hào)為負(fù),將量化系數(shù)值取反。
7.根據(jù)權(quán)利要求1至6之一所述基于小波與DCT雙重域的主動(dòng)式數(shù)字圖像內(nèi)容鑒別方法,其特征在于,所述步驟(4)圖象鑒別中的判別準(zhǔn)則可包括以下步驟(1)首先,根據(jù)下式判斷小波系數(shù)是否發(fā)生水印錯(cuò)誤, 其中Q(z,q)代表量化函數(shù),w代表原圖象的水印信息;檢測(cè)HL2得到水印錯(cuò)誤記錄T1,檢測(cè)LH2得到水印錯(cuò)誤記錄T2;(2)將T1和T2合并,形成綜合的水印錯(cuò)誤記錄T;(3)對(duì)T進(jìn)一步分類,分成孤立的水印錯(cuò)誤系數(shù)Tisolated和密集的水印錯(cuò)誤系數(shù)Tdense,孤立的水印錯(cuò)誤系數(shù)表示該錯(cuò)誤系數(shù)的相鄰8個(gè)位置沒有其他的水印錯(cuò)誤系數(shù)存在,密集的水印錯(cuò)誤系數(shù)則正好相反,錯(cuò)誤系數(shù)的相鄰8個(gè)位置還有其他的水印錯(cuò)誤系數(shù),以計(jì)算水印錯(cuò)誤的密度,從而用于判斷是發(fā)生篡改還是偶然失真;(4)計(jì)算篡改程度TRTR=Ntamper/Ntotal,Ntamper=Nisolated+Ndense,其中Ntamper指發(fā)生水印錯(cuò)誤系數(shù)的數(shù)目,Ttotal指系數(shù)總和,Nisolated指發(fā)生孤立水印錯(cuò)誤系數(shù)的數(shù)目,Ndense發(fā)生密集水印錯(cuò)誤系數(shù)的數(shù)目;根據(jù)TR,判斷是否發(fā)生篡改(I)TR=0,那么目標(biāo)圖像既沒發(fā)生篡改,也沒有偶然失真;(II)TR>0,且Ndense<α×Ntamper,0<α≤0.5,那么目標(biāo)圖像僅遭受偶然失真;(III)TR>0,且Ndense<α×Ntamper,0.5<α≤0.8,那么目標(biāo)圖像同時(shí)有篡改和偶然失真發(fā)生;(IV)以上情況都不滿足,那么目標(biāo)圖像僅遭受篡改。
全文摘要
本發(fā)明公開了一種基于小波與DCT雙重域的主動(dòng)式數(shù)字圖像內(nèi)容鑒別方法,包括在發(fā)送端進(jìn)行的水印生成、水印嵌入和水印圖像生成和在鑒別端進(jìn)行的圖像鑒別和篡改初定位;并可通過(guò)在上述定位步驟中生成水印圖像前,在發(fā)送端進(jìn)行恢復(fù)特征提取、嵌入恢復(fù)水印、在鑒別端進(jìn)行篡改區(qū)域恢復(fù)等步驟實(shí)現(xiàn)圖象恢復(fù)。本發(fā)明能夠?qū)?shù)字圖象進(jìn)行修改辨別、真?zhèn)闻卸?、篡改定位和篡改恢?fù)。
文檔編號(hào)G06T9/00GK101042769SQ20071003425
公開日2007年9月26日 申請(qǐng)日期2007年1月12日 優(yōu)先權(quán)日2007年1月12日
發(fā)明者李國(guó)輝, 涂丹, 吳瓊, 姚作樑, 張軍, 甘亞莉, 朱為 申請(qǐng)人:中國(guó)人民解放軍國(guó)防科學(xué)技術(shù)大學(xué)