丁曉艷,趙慧民,2,郭一縝
(1.西安郵電大學(xué)通信與信息工程學(xué)院,陜西西安710121;2.廣東技術(shù)師范學(xué)院電子與信息學(xué)院,廣東廣州510665)
隨著計算機(jī)網(wǎng)絡(luò)技術(shù)的迅速發(fā)展,圖像、視頻、語音等多媒體產(chǎn)品的應(yīng)用也越來越廣泛,與此同時,引起多媒體作品版權(quán)(Intellectual Property Rights)糾紛和保護(hù)[1]的問題日益嚴(yán)重,為了解決這種類型的問題,數(shù)字水印技術(shù)發(fā)揮了巨大作用,作為解決多媒體信息的版權(quán)保護(hù)及內(nèi)容認(rèn)證問題的有效方法,成為目前學(xué)術(shù)領(lǐng)域研究的焦點。
H.264/AVC是目前最新的視頻編碼標(biāo)準(zhǔn),同時又被稱為ITU-T H.264[2]建議和MPEG第十部分的編碼標(biāo)準(zhǔn),而后簡稱為H.264。與以往的視頻編碼標(biāo)準(zhǔn)MPEG-2,MPEG-4和H.263相比,H.264編碼標(biāo)準(zhǔn)采用了很多全新的編碼技術(shù),例如:幀內(nèi)預(yù)測、熵編碼新特性、多幀預(yù)測、整數(shù)變換、高精度的亞像素運動補償、率失真優(yōu)化、低碼率以及容錯能力強(qiáng)等。使用這些新的技術(shù),可以發(fā)現(xiàn)H.264比MPEG-4提高50%的壓縮效率。H.264與舊的MPEG和H.263等編碼標(biāo)準(zhǔn)相比,是一種性能更好的視頻圖像壓縮編碼形式[3]。此標(biāo)準(zhǔn)采用基于塊的聯(lián)合編碼方式H.264新技術(shù),包括幀內(nèi)預(yù)測編碼、多種編碼方式相結(jié)合的編碼和算法在概念級上的分層結(jié)構(gòu)等[4]。由于H.264編碼標(biāo)準(zhǔn)在數(shù)字視頻電視廣播、數(shù)字視頻廣播、網(wǎng)絡(luò)多媒體傳輸以及多媒體通信等各方面都體現(xiàn)出了較好的性能,所以,H.264編碼標(biāo)準(zhǔn)將會成為多媒體傳輸過程中普遍使用的編碼方式。因此,研究基于H.264視頻編碼標(biāo)準(zhǔn)的視頻水印技術(shù)具有很重要的意義[5]。
為了提高水印的嵌入容量,同時獲取較高的魯棒性,可以考慮選擇幀中的一些語法元素完成水印信息的嵌入。H.264使用幀間編碼技術(shù),把運動向量差(Motion Vector Difference)和預(yù)測殘差塊經(jīng)DCT變換的系數(shù)寫入視頻編碼壓縮所得的碼流中,Altunbasak[6]分析H.264編碼標(biāo)準(zhǔn)中DCT系數(shù)的分布,得知幀中非零系數(shù)的幅值在-1和+1中選擇。系數(shù)值偏小,經(jīng)過信號處理,系數(shù)很可能變?yōu)?,由此可見,在DCT系數(shù)中嵌入水印信息是不可行的,不滿足水印魯棒性[7]要求。相反,運動向量(MotionVector,MV)[8]可以預(yù)示宏塊預(yù)測時確切的預(yù)測位置,具有一定程度的恒定性。
由于人類的視覺系統(tǒng)對視頻中變化緩慢的區(qū)域不敏感,因此可以選擇H.264中MV實現(xiàn)水印信息的嵌入,該方法不僅可以獲得較高的魯棒性,而且還可以降低水印嵌入對原始視頻的影響。
H.264使用樹狀結(jié)構(gòu)運動補償、MV預(yù)測等較復(fù)雜的幀間預(yù)測編碼,除去視頻的冗余信息,可以采用CAVLC等編碼技術(shù),提高視頻的編碼效率。結(jié)合H.264的MV的特性,提出了如圖1所示的水印嵌入方法。首先,選擇幀宏塊中MV作為水印嵌入?yún)^(qū)域,利用H.264標(biāo)準(zhǔn)的變換和量化特點,通過修改MV的幅值和方向,而后將水印信息嵌入到MV中。這里采用擴(kuò)頻技術(shù)使誤差在宏塊中分散,可以借此增強(qiáng)水印的魯棒性。將水印信息同預(yù)測殘差DCT變換系數(shù)一起寫入壓縮碼流。
圖1 水印嵌入方案流程圖
一個P宏塊可以分割為不同尺寸和形狀的子宏塊,而每一個子宏塊對應(yīng)有一個MV,P宏塊中MV可以構(gòu)成如下集合
視頻中運動物體的最大運動即是P宏塊中的最大MV。此時的MV變化范圍較小,由于視頻在運動量最大的區(qū)域有更多的嵌入空間,所以選擇運動量最大的區(qū)域嵌入水印,對視頻的主觀視覺質(zhì)量造成的影響較小。P宏塊根據(jù)幅度最大原理,在視頻MV集合中選取1/4像素精度的位置嵌入水印信息。用MVe為所要選的水印嵌入位置,可表示為
式中:MVex,MVey分別是水平和垂直方向上的MV。利用其運動補償像素精度的特點,MVe可使用量化的方法獲得其MV的位置,用CMVe表示MV,即
綜上可得MV。由其位置可以確定8個相鄰的1/2像素精度預(yù)測位置,形成方形的嵌入水印區(qū)域。水印是在方形區(qū)域通過修改嵌入??蓪⒎叫螀^(qū)域分成兩個相互獨立的區(qū)域Z1、Z2。圖2為水印的嵌入過程。
圖2 水印嵌入過程
由圖2可知Z2是方形區(qū)域的外部范圍,而Z1是Z2的內(nèi)部區(qū)域,這兩個子區(qū)域分別用來嵌入水印信息0和1。
假設(shè)要嵌入的水印w為0或1,可通過修改MV將水印嵌入。具體如下:
w=1,若MV在Z2區(qū)域,則需要改變MV,按照鄰近最大原則移至Z1區(qū)域;否則,不做任何的改變。
w=0,若MV在Z1區(qū)域內(nèi),則需要改變MV,按照鄰近最大原則移至Z2;否則,不做任何的改變。
P宏塊有skip-mode[9]編碼模式,當(dāng)含有水印的視頻在經(jīng)壓縮時,宏塊的預(yù)測模式可能會有所改變。這就意味著以往skip-mode模式P的宏塊可能存在MV,如果編碼的模式改變,則有可能不再有MV,水印信息遭到破壞,甚至完全丟失。同時,水印的同步性也被破壞。為了保護(hù)水印的同步,增強(qiáng)該方案的魯棒性,采用文獻(xiàn)[10]的擴(kuò)頻水印方案對水印進(jìn)行處理。
水印信息W={w(n),n=0,1,…,N},w(n)=0 或1,映射成雙向向量
式中:N表示水印信息的長度。擴(kuò)頻水印為
式中:p(m)=±1是偽隨機(jī)序列;S是擴(kuò)頻后長度,本文設(shè)為200。
水印的提取是在H.264/AVC解碼端實現(xiàn),可以將水印信息從壓縮碼流中有效地提取。具體步驟如下:
2)水印提取與擴(kuò)頻偽隨機(jī)序列的相關(guān)和Hn的表達(dá)式為
3)水印提取可通過相關(guān)關(guān)系得出
式中:τ是相關(guān)和閾值,方案中設(shè)置為0。
為了測試本文水印的魯棒性好壞,對4組經(jīng)典的視頻測試序列進(jìn)行實驗:Foreman,Salesman,Akiyo和News。測試選擇H.264編碼結(jié)構(gòu)為IPPP。與文獻(xiàn)[10]算法進(jìn)行對比。對視頻序列的前300幀進(jìn)行處理,此時設(shè)量化步長QP為30,嵌入水印的信息量遠(yuǎn)大于文獻(xiàn)[10]水印比特,同時考慮到常用的視頻水印攻擊方式[11],比如重壓縮編碼、旋轉(zhuǎn)、加性高斯白噪聲等,進(jìn)行魯棒性能的比較。
下面對4組測試序列在同等條件下進(jìn)行實驗,包括重壓縮編碼、對比度變化、椒鹽噪聲等下的魯棒性。
1)由峰值信噪比PSNR分析
在此用到一個參數(shù),即比特增加率(Bit Increase Rate,BER),定義為:設(shè)向視頻序中共嵌入Mbit的水印數(shù)據(jù),當(dāng)進(jìn)行水印檢測時,能正確檢測出Nbit的數(shù)據(jù),則
圖3給出了視頻水印的嵌入前后PSNR變換圖,由圖可見,水印嵌入前后的PSNR變化趨勢一致,由于本算法的水印嵌入是在H.264壓縮編碼過程中實現(xiàn)的,水印嵌入前后所產(chǎn)生的幀間預(yù)測誤差會經(jīng)運動補償彌補計算,經(jīng)過此過程預(yù)測誤差沒有擴(kuò)散,從而能夠保證原始視頻圖像與含有水印信息的視頻圖像在視覺質(zhì)量上沒有明顯的差異。
圖3 測試序列嵌入水印后的PSNR變化曲線
2)抗重編碼攻擊分析
圖4給出了視頻水印在不同量化步長(QP)下的抗重壓縮編碼的示意圖,4組視頻都是在相同的QP情況下嵌入水印信息的。如圖4所示,News,Salesman,Akiyo這3組視頻在取不同QP的情況下,進(jìn)行壓縮編碼,此時提取的水印BER為0,嵌入的水印信息在重壓縮編碼攻擊下可以保持其完整性。對于Foreman視頻序列而言,QP等于32和34時,其BER逐漸變大,但是變化很小。這是因為當(dāng)QP較大時,進(jìn)行壓縮編碼,壓縮后的視頻質(zhì)量有所下降,同時,運動補償所產(chǎn)生的MV精度也發(fā)生了變化,則相應(yīng)的BER變大。
圖4 不同QP值下抗重編碼壓縮性能
3)抗噪聲攻擊性能分析
圖5給出了在不同標(biāo)準(zhǔn)差的椒鹽噪聲攻擊下的BER水印曲線圖。隨著噪聲濾波標(biāo)準(zhǔn)差的增加,兩種算法的比特增加率也隨之增加,原因是噪聲攻擊嚴(yán)重影響了視頻序列像素的空間分布,使H.264編碼過程中的MV和整數(shù)DCT變換系數(shù)影響比較大,水印的提取會受到很大影響。雖然如此,本文算法的魯棒性也較好。圖5給出了文獻(xiàn)[10]與本算法的對比示意圖。
4)抗旋轉(zhuǎn)攻擊的分析
圖6給出了含水印的視頻序列在旋轉(zhuǎn)攻擊情況下魯棒性示意圖。由圖可知,本文BER值隨著旋轉(zhuǎn)角度的增大而增加,最大可達(dá)0.3。這是由于本文算法是基于MV的水印嵌入方法,當(dāng)視頻序列受到旋轉(zhuǎn)攻擊時,運動估計所得的MV就會受到影響,相應(yīng)地水印檢測與提取過程都會受到影響,BER值也增大。當(dāng)旋轉(zhuǎn)角度很小時,MV的改變也很小,能提取出有效的水印信息,具有良好的魯棒性。
圖5 在不同噪聲的攻擊下視頻質(zhì)量曲線
圖6 不同旋轉(zhuǎn)角度下的魯棒性
本文選擇P幀宏塊的最大MV作為該水印的嵌入位置,可以獲得良好的視覺質(zhì)量。在嵌入過程中,充分利用了H.264幀間預(yù)測編碼的運動補償和MV的特點,取得較好的水印嵌入方案,提高了水印的魯棒性,水印信息嵌入后碼率變化范圍很小。同時該算法和以往提出的H.264水印算法做了對比,實驗仿真結(jié)果表明該算法在抵御抗重壓縮編碼、高斯白噪聲、旋轉(zhuǎn)等的攻擊下仍然具有良好的魯棒性。
[1]李勇.用于流媒體版權(quán)保護(hù)的視頻水印技術(shù)[J].電視技術(shù).2012,36(8):41-43.
[2] ITU-T REC.H.264/ISO/IEC 11496-10,Advanced video coding,final committee draft document JVT-E022[S].2002.
[3]畢厚杰.新一代視頻壓縮編碼標(biāo)準(zhǔn)——H.264/AVC[M].北京:人民郵電出版社,2005:84-91.
[4]余兆明,查日勇,黃磊.圖像編碼標(biāo)準(zhǔn)H.264技術(shù)[M].北京:人民郵電出版社,2006:5-10.
[5] KIM D,CHOIY,KIM H,etal.The problems in digital watermarking into intra-frames of H.264/AVC[J].Image and Vision Computting,2010,28(8):1220-1228.
[6] ALTUNBASAK Y.An analysis of the DCT coefficients distribution with the H.264 video coder[C]//Proc.International Coference on Acoustics,Speech,and Signal Processing.[S.l.]:IEEE Press,2004:177-180.
[7]謝斌,任克強(qiáng),肖玲玲.一種基于HVS的DCT域穩(wěn)健性視頻水印算法[J].電視技術(shù),2011,35(9):30-35.
[8]朱德慶,金文光.基于MV的魯棒性視頻水印算法[J].浙江大學(xué)學(xué)報:理學(xué)版,2010,37(3):286-290.
[9]孟巍,韓崢,崔慧娟,等.H.264中SKIP和幀內(nèi)模式的快速判斷[J].清華大學(xué):自然科學(xué)版,2009,49(8):1160-1163.
[10] ZHANG J,ANTHONY T,QIU G,et al.Robust video watermarking of H.264/AVC[J].IEEE Trans.Circuits and System-II:Express Briefs,2007,54(2):205-209.
[11]毛頡.數(shù)字水印攻擊及對策分析[J].信息安全與技術(shù),2012(2):15-17.