陽(yáng) 溢,劉博文,李 揚(yáng)
(1.重慶通信學(xué)院,重慶 400035;2.解放軍61655部隊(duì),重慶 400035)
現(xiàn)代科技的快速發(fā)展促成了數(shù)字多媒體技術(shù)的日新月異,人們?cè)絹?lái)越離不開(kāi)豐富多彩的數(shù)字生活。視頻因其信息量大、感受直接、客觀真實(shí)等諸多優(yōu)點(diǎn)成為人們獲取信息、娛樂(lè)休閑的重要媒介。但與此同時(shí),視頻作品的大量復(fù)制與分發(fā)也給版權(quán)保護(hù)帶來(lái)了威脅。視頻所有者為了控制視頻作品的傳播途徑與范圍,采取了在發(fā)送端與接收端進(jìn)行數(shù)據(jù)加密的方法。但是加密數(shù)據(jù)一旦被破密,幾乎沒(méi)有補(bǔ)救措施。數(shù)字視頻水印技術(shù)為這類(lèi)問(wèn)題的解決提供了思路,視頻所有者將自己的版權(quán)信息嵌入到視頻中,并與視頻使用者建立對(duì)應(yīng)關(guān)系。當(dāng)出現(xiàn)版權(quán)糾紛時(shí),可將水印作為證據(jù)來(lái)對(duì)自己的版權(quán)進(jìn)行有效保護(hù)[1-2]。
目前已提出的數(shù)字視頻水印算法主要分為基于原始視頻嵌入水印和基于壓縮編碼域嵌入水印兩類(lèi)方法[3-4]。
第1類(lèi)方法主要通過(guò)利用原始視頻的空間、時(shí)間冗余,或?qū)σ曨l數(shù)據(jù)進(jìn)行各類(lèi)變換,再修改變換參數(shù)來(lái)實(shí)現(xiàn)水印的嵌入。這類(lèi)方法具有抗攻擊性能好、易于實(shí)現(xiàn)等優(yōu)點(diǎn)。但由于此類(lèi)算法主要是在壓縮編碼前嵌入水印,故存在抗壓縮編碼能力弱、水印不易檢測(cè)提取、實(shí)時(shí)性不能保證等缺點(diǎn)。文獻(xiàn)[5]先將水印信息做混沌映射以提高其安全性,再將加密后的水印嵌入到視頻序列小波變換后特定的場(chǎng)景分塊中,在保持較好的不可見(jiàn)性的同時(shí)具備對(duì)抗丟幀、幀平均、幀交換等多種攻擊的能力。文獻(xiàn)[6]先將水印進(jìn)行混沌加密以提高水印安全性,然后通過(guò)修改視頻幀奇異值分解后的最大奇異值來(lái)實(shí)現(xiàn)水印嵌入。文獻(xiàn)[7]提出了一種聯(lián)合DWT、DCT和SVD變換的視頻水印算法,具有抗多種壓縮編碼的性能。文獻(xiàn)[8]利用密鑰選取特定視頻幀,并對(duì)視頻幀的每一分量進(jìn)行互不重疊的分塊,然后對(duì)分塊做提升小波變換和低頻子帶DCT變換,最后利用自適應(yīng)機(jī)制來(lái)嵌入水印。
第2類(lèi)方法主要通過(guò)結(jié)合視頻編碼器,在編碼的各個(gè)階段利用冗余進(jìn)行水印的嵌入。這類(lèi)方法抗壓縮編碼的效果較好,但是缺乏對(duì)各類(lèi)攻擊信號(hào)處理的魯棒性。文獻(xiàn)[9]通過(guò)分析運(yùn)動(dòng)矢量的區(qū)域特性,利用運(yùn)動(dòng)掩蔽效應(yīng)來(lái)嵌入水印,具有較好的抗壓縮攻擊效果。文獻(xiàn)[10]通過(guò)特定調(diào)制規(guī)則將水印嵌入到視頻壓縮編碼過(guò)程中的P幀,實(shí)現(xiàn)了水印的快速嵌入與檢測(cè)提取,并且很好地控制了編碼視頻的碼率上升。文獻(xiàn)[11]先分析視頻幀分塊DCT域的高細(xì)節(jié)區(qū)是否符合視覺(jué)掩蔽效應(yīng),再對(duì)水印做自適應(yīng)的嵌入,具有很好的不可見(jiàn)性。
在設(shè)計(jì)用于版權(quán)保護(hù)的數(shù)字視頻水印算法時(shí),應(yīng)在充分考慮算法的復(fù)雜度、可實(shí)現(xiàn)性和抗丟幀、加噪等攻擊的同時(shí),結(jié)合視頻壓縮編碼原理,使算法能抵抗壓縮、格式轉(zhuǎn)換等攻擊。由于第1類(lèi)水印嵌入方法是在原始視頻中嵌入水印,故在嵌入階段省去了復(fù)雜的編解碼環(huán)節(jié),復(fù)雜度得以降低。另外,在原始視頻中的變換域嵌入魯棒性較強(qiáng)的水印可以使算法具有廣泛的抗攻擊性能。因此,本文考慮針對(duì)原始視頻的變換域來(lái)設(shè)計(jì)水印嵌入方案。
雖然考慮在原始視頻中嵌入水印,但嵌入水印后的視頻仍將通過(guò)視頻編碼才利于傳輸。目前主流的視頻壓縮編碼標(biāo)準(zhǔn)為H.264/AVC,將原始視頻幀劃分為I幀、P幀和B幀,以求在壓縮效率與視覺(jué)質(zhì)量之間達(dá)到平衡。I幀采用幀內(nèi)預(yù)測(cè)編碼,壓縮重建后的I幀失真較小,具有較好的抗壓縮失真性能,因此考慮在I幀中進(jìn)行水印的嵌入。這就要求水印嵌入算法能根據(jù)接下來(lái)的視頻編碼器對(duì)I幀的選取規(guī)則確定水印的嵌入幀。
另外,由于人眼對(duì)亮度分量的變化比對(duì)色度分量的變化更為敏感,所以選擇在I幀的亮度分量中嵌入水印。要提高水印的安全性,還應(yīng)在嵌入水印之前對(duì)水印進(jìn)行置亂處理,使得攻擊者即便知曉水印提取算法,也無(wú)法恢復(fù)出原始水印。
依據(jù)上述思考,本文提出了一種基于運(yùn)動(dòng)分析的DWT-SVD域視頻水印算法。先根據(jù)H.264編碼器編碼規(guī)則選取I幀,并提取亮度分量進(jìn)行二維小波變換,然后對(duì)LL分量進(jìn)行運(yùn)動(dòng)分析與分塊奇異值分解。與此同時(shí),利用混沌映射對(duì)原始水印進(jìn)行置亂,根據(jù)嵌入規(guī)則修改分塊奇異值分解后的U矩陣來(lái)實(shí)現(xiàn)水印嵌入。水印提取過(guò)程是水印嵌入的逆運(yùn)算。視頻水印嵌入與提取算法流程如圖1所示。
圖1 視頻水印嵌入與提取算法流程
在對(duì)數(shù)字視頻嵌入水印時(shí),必須考慮到視頻畫(huà)面的運(yùn)動(dòng)對(duì)水印嵌入效果的影響,以滿(mǎn)足視頻水印對(duì)不可見(jiàn)性的要求。通常來(lái)說(shuō),人眼容易捕捉到運(yùn)動(dòng)的物體,即對(duì)運(yùn)動(dòng)的物體較為敏感。因此,視頻相鄰幀間維持不變的場(chǎng)景或者變化微小的場(chǎng)景相對(duì)于運(yùn)動(dòng)場(chǎng)景更適合水印的嵌入。另一方面,人眼雖然容易捕捉到運(yùn)動(dòng)的物體,但是對(duì)于快速運(yùn)動(dòng)的物體卻很難發(fā)現(xiàn)其細(xì)節(jié)部分的變化,所以視頻中快速運(yùn)動(dòng)的區(qū)域也比較適合水印的嵌入。
離散余弦變換(DCT)具有很強(qiáng)的“能量集中”特性。自然界中大多數(shù)信號(hào)在經(jīng)過(guò)DCT后能量都集中在低頻部分。利用該特點(diǎn),可以對(duì)相鄰視頻幀進(jìn)行分塊DCT變換,然后用相鄰幀對(duì)應(yīng)的DCT子塊的直流系數(shù)變化幅度來(lái)衡量畫(huà)面的運(yùn)動(dòng)程度,獲得的運(yùn)動(dòng)系數(shù)為
其中:DC(r,s)為第r個(gè)I幀的第s個(gè)子塊DCT直流系數(shù);DE(r,s)為第r幀和其后續(xù)幀的第s子塊DCT直流系數(shù)的差值絕對(duì)值。子塊排序方式為由左至右、由上至下。
由式(1)可知:靜止不動(dòng)的視頻運(yùn)動(dòng)系數(shù)為0,設(shè)其對(duì)應(yīng)的嵌入強(qiáng)度為1。隨著運(yùn)動(dòng)幅度的增加,嵌入強(qiáng)度減小;當(dāng)運(yùn)動(dòng)幅度進(jìn)一步增加時(shí),嵌入強(qiáng)度又會(huì)增大。因此,基于分塊DCT分析的嵌入強(qiáng)度k1為
視頻是由連續(xù)變化的圖像組成,因此相鄰幀亮度存在一定的差值。利用該差值,可以進(jìn)一步衡量視頻畫(huà)面的運(yùn)動(dòng)程度。設(shè)相鄰幀子塊亮度差值為
其中:Y(r,s)為第r個(gè)I幀的第s個(gè)子塊的亮度值;M(r,s)為第r幀和后續(xù)幀的第s個(gè)子塊亮度值之差的絕對(duì)值?;诹炼炔畹那度霃?qiáng)度k2如式(4)所示。
基于運(yùn)動(dòng)分析的聯(lián)合嵌入強(qiáng)度k3由上述2個(gè)強(qiáng)度分量的乘積決定,如式(5)所示。
為使水印的嵌入在魯棒性和不可見(jiàn)性之間達(dá)到平衡,將k3按式(6)所示進(jìn)行映射,得到總嵌入強(qiáng)度K:
混沌系統(tǒng)對(duì)初始值和參數(shù)具有極其敏感的依賴(lài)性,因此常把它們作為混沌加密系統(tǒng)的密鑰。TD-ERCS系統(tǒng)是一類(lèi)新的全域性離散混沌系統(tǒng),具有零相關(guān)特性和穩(wěn)定的概率分布特性,其映射關(guān)系為:
給定TD-ERCS系統(tǒng)參數(shù) μ(0<μ≤1),初值x0(0 <x0≤1)和α(0<α≤π),切延遲m(m=2,3,4,…),TD-ERCS通過(guò)上述迭代關(guān)系將產(chǎn)生2個(gè)獨(dú)立的實(shí)值序列xn和kn。除給定參數(shù)外,其他一些初始值根據(jù)式(8)求得。
其中(μ,x0,α,m)稱(chēng)為T(mén)D-ERCS 種子參數(shù),取μ,x0,α為密鑰控制參數(shù),0 <μ≤1,0≤x0≤1,0 <α≤π,m始終設(shè)定為3。
視頻幀屬于典型的二維信號(hào),二維小波變換相當(dāng)于將信號(hào)在水平和垂直2個(gè)方向上進(jìn)行分解。分解結(jié)果為1個(gè)低頻分量和3個(gè)高頻分量。原信號(hào)的絕大部分能量包含在低頻分量中,水平、垂直和對(duì)角線(xiàn)方向上的細(xì)節(jié)信息包含在另外3個(gè)高頻分量中。由于低頻分量經(jīng)各類(lèi)信號(hào)處理之后的失真較小,因而選擇在該分量進(jìn)行水印的嵌入。
圖像(視頻幀)可看作是由許多非負(fù)整數(shù)為元素組成的矩陣。設(shè)M∈Rm×n表示一個(gè)圖像矩陣,R表示實(shí)數(shù)域,則M的奇異值分解如式(9)所示。
其中:ui和vi分別是 U和V的列向量;δi是M的非零奇異值。矩陣的奇異值有著抗干擾能力強(qiáng)、比例不變性和旋轉(zhuǎn)不變性等諸多優(yōu)良特性。另外,經(jīng)研究發(fā)現(xiàn):U矩陣中的某些系數(shù)也具有非常好的穩(wěn)定性,特別是U(2,1)和U(3,1)相差較小,穩(wěn)定性良好。因此,本文考慮通過(guò)調(diào)制它們的數(shù)值來(lái)嵌入水印。
步驟1 根據(jù)編碼規(guī)則選取原始視頻中的I幀,提取亮度分量做二維DWT,將得到的LL分量進(jìn)行4×4分塊,按本文方法對(duì)LL分量進(jìn)行運(yùn)動(dòng)分析,確定每個(gè)分塊Bs的嵌入強(qiáng)度值Ks,其中s為子塊的序號(hào),按由左至右、由上至下的順序排列。
步驟2 將原始水印W按本文方法進(jìn)行混沌置亂處理,得到置亂水印。
步驟4 對(duì)LL分量的第s個(gè)分塊進(jìn)行奇異值分解,取出 Us矩陣中的Us(2,1))和Us(3,1)。此時(shí),若待嵌入信息為1,即當(dāng)(s)=1時(shí),將Us(2,1)修改為
步驟6 對(duì)后續(xù)的置亂水印子矩陣也采用相同方法嵌入到I幀LL分量分塊SVD后的U矩陣中,然后進(jìn)行視頻重建,得到含水印視頻。
步驟1 根據(jù)編碼規(guī)則選取含水印視頻的I幀,提取亮度分量進(jìn)行二維DWT,并對(duì)LL分量進(jìn)行4×4分塊。
步驟2 對(duì)每個(gè)LL分量的第s個(gè)分塊進(jìn)行SVD,取出 Us矩陣中的 Us(2,1))和 Us(3,1)。確定置亂水印子矩陣取值為
步驟3 對(duì)后續(xù)I幀重復(fù)上述操作,再對(duì)提取的置亂水印子矩陣重組為置亂水印,最后對(duì)其逆置亂,得到水印W'。
本實(shí)驗(yàn)在Matlab R2010a與VC++6.0環(huán)境下完成。采用3個(gè)不同分辨率下的視頻作為載體,待嵌水印為一幅分辨率為64×64標(biāo)有“數(shù)字水印”字樣的二值圖像。利用上述算法嵌入水印,并在水印的置亂、算法不可見(jiàn)性、水印的提取質(zhì)量、視頻編碼對(duì)碼率的影響、算法魯棒性等方面做相關(guān)實(shí)驗(yàn)分析。
在將水印嵌入到視頻之前,為了提高水印安全性,先對(duì)原始水印按本文1.3節(jié)方法進(jìn)行混沌置亂,結(jié)果如圖2所示??梢钥吹?置亂后的水印呈現(xiàn)無(wú)規(guī)律性,攻擊者即便提取到了置亂水印,如果不知道水印置亂的具體方法和參數(shù),也無(wú)法知道水印內(nèi)容,從而確保了水印的安全。
圖2 原始水印和置亂水印
水印的嵌入與提取實(shí)驗(yàn)首先在QCIF(176×144)格式下進(jìn)行。結(jié)果如圖3所示,其中:(a)~(c)為3個(gè)原始視頻的首幀(I幀);(d)為原始水印;(e)~(g)為3個(gè)嵌入水印視頻的首幀;(h)為提取的水印??梢钥闯?嵌入水印后的視頻與原始視頻在視覺(jué)上無(wú)明顯差異,且算法實(shí)現(xiàn)了對(duì)水印的盲提取。之后,將水印嵌入到 CIF(352×288)、D1(720×576)等不同格式的視頻中,結(jié)果的不可見(jiàn)性良好,均實(shí)現(xiàn)了盲提取。
圖3 水印嵌入與提取結(jié)果
對(duì)數(shù)字視頻水印算法而言,其性能優(yōu)劣主要體現(xiàn)在嵌入水印的不可見(jiàn)性與魯棒性?xún)煞矫?。不可?jiàn)性通過(guò)實(shí)驗(yàn)已有所體現(xiàn),這里主要從嵌入水印后視頻的峰值信噪比(PSNR)方面來(lái)進(jìn)行定量分析。圖4為嵌水印視頻幀(QCIF格式)PSNR值連線(xiàn)圖。可以看出:PSNR均在30 dB以上,具有良好的不可見(jiàn)性。
圖4 嵌入水印視頻幀的PSNR
表1為采用不同格式的視頻嵌入水印后的視頻幀平均PSNR。可以看出:雖然采用的視頻分辨率存在差異,但PSNR值的變化非常微小,表明算法適用于不同分辨率的視頻。
表1 嵌入水印視頻幀的平均PSNR dB
水印的嵌入對(duì)視頻壓縮編碼可能會(huì)造成一定程度的影響。表2為原始視頻和嵌入水印視頻經(jīng)H.264編碼后的碼率,采用QCIF格式視頻。由表2可知:同原始視頻相比,嵌入水印的視頻經(jīng)編碼后的碼率略大。這是因?yàn)樗〉那度肫茐牧嗽家曨l的部分相關(guān)性,使編碼效率降低。但是,碼率增加率都在4%以?xún)?nèi),即水印嵌入對(duì)視頻編碼碼率影響非常小。這從另一方面表明了算法具有較好的不可見(jiàn)性。
表2 原始和嵌水印視頻經(jīng)H.264編碼后的碼率kbit/s
視頻水印嵌入與檢測(cè)提取的實(shí)時(shí)性是衡量算法應(yīng)用價(jià)值的一個(gè)重要指標(biāo)。表3為利用本算法將水印嵌入在不同格式的視頻所需的時(shí)間和提取所需的時(shí)間。由表3可知:水印的嵌入時(shí)間明顯短于提取時(shí)間。這是由于水印嵌入先于編碼,而水印提取則必須待需要嵌入水印的I幀解碼完成后再進(jìn)行。另外,隨著視頻分辨率的上升,所需時(shí)間也增加了,這是由于分辨率的提高導(dǎo)致了運(yùn)算量的增大。但是,水印嵌入與提取所需時(shí)間均較短,能夠滿(mǎn)足日常應(yīng)用對(duì)實(shí)時(shí)性的要求。
水印的歸一化相關(guān)系數(shù)(NC)可以用來(lái)衡量算法的魯棒性強(qiáng)弱。在實(shí)驗(yàn)中,視頻采用QCIF格式,應(yīng)用不同的攻擊方法對(duì)嵌入水印的視頻進(jìn)行攻擊,水印提取結(jié)果及其N(xiāo)C值如表4所示。由表4可知:在各種攻擊下,提取的水印能夠被正常識(shí)別,NC值都保持在 0.92以上,具有較強(qiáng)的魯棒性。
表3 嵌入與提取水印所需時(shí)間 s
表4 不同攻擊下視頻提取的水印
將本文算法與其他算法進(jìn)行比較,進(jìn)一步反映魯棒性的強(qiáng)弱。實(shí)驗(yàn)中采用文獻(xiàn)[5-8]所提算法與本文算法做對(duì)比,視頻統(tǒng)一用QCIF格式的Highway視頻,實(shí)驗(yàn)結(jié)果如表5所示。由表5可以看出:本文算法的抗攻擊能力具有一定優(yōu)勢(shì),特別是在抗幀平均方面優(yōu)勢(shì)明顯,表明算法具有較強(qiáng)的魯棒性。
表5 不同算法的魯棒性比較
本文在深入研究已有算法的基礎(chǔ)上,結(jié)合人眼視覺(jué)特性對(duì)視頻畫(huà)面進(jìn)行運(yùn)動(dòng)分析,并利用混沌映射對(duì)原始水印置亂以提高算法安全性,提出一種在視頻I幀的DWT-SVD域嵌入水印的算法。實(shí)驗(yàn)結(jié)果表明:本算法具有良好的不可見(jiàn)性和魯棒性,在版權(quán)保護(hù)和秘密信息隱藏等方面具有較好的應(yīng)用前景。
本算法也存在一些不足。例如,水印提取時(shí)間還需要進(jìn)一步縮短,水印抗壓縮能力還有待加強(qiáng),水印還需具備一定的自糾錯(cuò)能力等。這些問(wèn)題有待進(jìn)一步研究加以解決。
[1]俞銀燕,湯幟.數(shù)字版權(quán)保護(hù)技術(shù)研究綜述[J].計(jì)算機(jī)學(xué)報(bào),2005,28(12):1957-1968.
[2]呂高巖,張永平,梁鳳梅,等.視頻水印技術(shù)綜述[J].電視技術(shù),2012,36(21):24-29.
[3]Hussein J A.Luminance-based embedding approach for color image watermarking[J].Image,Graphics and Signal Processing,2012(3):49-55.
[4]諶志鵬,鄒建成.基于對(duì)象的抗幾何攻擊的視頻水印算法[J].北京郵電大學(xué)學(xué)報(bào),2012,35(4):33-37.
[5]Reyes R,Cruz C,Nakano M.Digital Video Watermarking in DWT Domain Using Chaotic Mixtures[J].IEEE Latin America Transactions,2010,8(3):304-310.
[6]許鐵鑫,蔣華.基于混沌和SVD的數(shù)字視頻水印算法[J].計(jì)算機(jī)仿真,2013,30(4):406-410.
[7]Dey N,Das P,Roy A B,et al.DWT-DCT-SVD based Intravascular Ultrasound Video Watermarking[C]//2012 World Congress on Information and Communication Technologies(WICT).USA:[s.n.],2012:224-229.
[8]熊祥光,王力,王端理.基于提升小波變換和DCT的彩色視頻水印算法[J].計(jì)算機(jī)應(yīng)用研究,2013,30(4):1191-1197.
[9]Zhengdong Z,Pei W,Shen C.A video watermarking scheme based on the region character of motion vectors[J].Journal of Image and Graphics,2008,10(13):1926-1929.
[10]Noorkami M,Mersereau R M.Digital video watermarking in P-frames with controlled video bit-rate increase[J].IEEE Transaction on Information Forensics and Security,2008,3(3):441-455.
[11]陳光喜,成彥.基于HVS的抗幾何攻擊視頻水印方案[J].計(jì)算機(jī)工程,2008,34(24):152-154.