摘 要: 針對新的HEVC高效視頻編碼標準特性,,提出了一種基于版權(quán)保護的視頻水印算法,。分析了HEVC同上一版視頻格式標準H.264/AVC之間的編碼差別,在研究HEVC格式的基礎上為其設計了一個獨特的水印算法,。該算法首先對水印圖片進行置亂處理,,然后將水印嵌入到亮度分量離散正弦變換(DST)分塊的中頻系數(shù)中。實驗結(jié)果證明,,該算法對HEVC視頻有很好的嵌入和提取效果,,并可以抵抗多種形式的視頻攻擊。
關(guān)鍵詞: H.265/HEVC,;版權(quán)保護,;H.264/AVC;視頻水印
隨著硬件條件的不斷改善,,通過網(wǎng)絡傳輸?shù)臄?shù)據(jù)量近年來有著突飛猛進的增長,,尤其是數(shù)字媒體的傳播數(shù)量。2013年1月,,為了滿足人們對高清視頻的需求,,視頻壓縮標準高性能視頻編碼HEVC(High Efficiency Video Coding)作為可替代H.264編碼標準的新一代國際標準被正式提出使用。HEVC是ITU-T組織和ISO/IEC組織聯(lián)合開發(fā)的視頻編碼標準,,對以前的視頻格式進行了多方面的改革,,其僅需H.264/AVC一半帶寬就可播放相同質(zhì)量的視頻[1],因此數(shù)字視頻也將更容易被復制和修改,,與此同時,,數(shù)字視頻的保護問題也得到了研究者們的注意,。
由于版權(quán)保護的需要,過去十幾年里對多媒體水印的研究如火如荼,,范圍觸及版權(quán)控制,、圖像印刷、廣播監(jiān)控,、視頻授權(quán)等,,這方面的應用量飛速上漲。數(shù)字水印技術(shù)是通過在原始數(shù)據(jù)中嵌入秘密信息證實該數(shù)據(jù)的所有權(quán),,這種被嵌入的水印可以是一段文字,、標識、圖片等,,而且這種水印通常是不可見或不可察的,,它與原始數(shù)據(jù)(如圖像、音頻,、視頻數(shù)據(jù))緊密結(jié)合,,并隱藏其中,成為宿主數(shù)據(jù)的一部分,,并可以經(jīng)歷一些不破壞宿主數(shù)據(jù)使用價值或商用價值的操作而保存下來,。
針對各種格式的視頻水印算法國內(nèi)外學者都已經(jīng)研究了很多年,并且取得了豐碩的成果,。HARTUNG F和KUTTER M[2]闡述了水印的現(xiàn)實需求和應用領域,,介紹了水印系統(tǒng)的基本概念,并詳細討論了水印安全性和魯棒性,。PREDA R O和VIZIREANU D N[3]提出了一種多分辨率下的水印算法,,以二進制圖像做水印,水印的每一位都擴展進小波系數(shù)里,。Zhang Jing等人[4]針對H.264/AVC提出了一個魯棒性強的水印算法,首先生成灰度圖像,,然后嵌入壓縮域,,可以抵抗幀壓縮、高斯濾波,、反差增強等攻擊,。VERMA A K、SINGHAL M,、PATVARDHAN C[5]提出了一個基于YCbCr顏色空間和小波變換的數(shù)字視頻水印算法,,水印被嵌入時域空間平面。國內(nèi)對水印的研究也很透徹,,幾乎涉及水印嵌入,、提取的各個領域,。張江等人[6]分析了視頻水印技術(shù)的特點和面臨的挑戰(zhàn),闡述了視頻水印的模型及算法分類,,探討了視頻水印的發(fā)展趨勢,。張維緯等人[6]提出了一種基于H.264/AVC的視頻可逆脆弱水印算法,能對認證通過的視頻數(shù)據(jù)進行還原和對認證失敗的視頻I幀遭篡改區(qū)域進行有效的定位,。同鳴等人[7]提出了一種部分基矩陣稀疏約束的非負矩陣分解方法,,將水印嵌入在分解后的基矩陣大系數(shù)中,可以較好地抵抗強剪切攻擊,。李亞文[8]對壓縮視頻的圖像幀的亮度分量進行小波提升分解,,利用混沌系統(tǒng)對水印圖像進行置亂,提升了算法的安全性和抗攻擊能力,。
為了保護HEVC視頻編碼格式的數(shù)字視頻,,本文以新的HEVC視頻格式為研究對象,以為其設計水印算法為目的,,分析了HEVC同上一版視頻格式標準H.264/AVC之間的編碼差別及這些差別對現(xiàn)有水印算法思想的影響,,在仔細研究HEVC格式的基礎上為其設計了一個獨特的水印算法。實驗結(jié)果證明,,該算法對HEVC有很好的嵌入和提取效果,,并可以抵抗多種形式的視頻攻擊。
1 HEVC概述
為了彌補H.264/AVC難以滿足當前人們對高清視頻需求的不足,,HEVC在其基礎上進行了大量變革,,使得壓縮率大幅提高。與H.264相似,,HEVC的編碼架構(gòu)主要包括幀內(nèi)預測,、幀間預測、轉(zhuǎn)換,、量化,、熵編碼等模塊,但與AVC基于宏塊不同,,HEVC中類似的結(jié)構(gòu)為編碼樹單元(CTU),,其尺寸由編碼器進行指定,可以比傳統(tǒng)的宏塊大,。一個CTU包含一個亮度CTB和多個對應的色度CTB及句法元素,。一個L×L的亮度CTB,L可以設置為16,、32或者64[9],。預測類型是在CU內(nèi)編碼,CU是HEVC中用于幀間預測和幀內(nèi)預測的判決點,。
H.265引入了名為合并模式的幀間預測方法,,原理是PU之間的移動信息非常相似,,因此可以就近采用附近PU的形式而不作運動評估等計算。H.265也提供了1/2,、2/4,、3/4[9]像素非整數(shù)點位置運動評估,不過有8點插值濾波,,而H.264只有6點,。預測動作完成后,要采用類似DCT的整數(shù)變換算法對殘差進行編碼來進一步降低碼率,。H.265在進行變換操作時會先把CU拆開成若干個TU(變換單元),,這些TU并不需要和PU對齊。拆為TU的原因是CU中可能同時包含高頻部分和低頻部分,,直接用于變換處理量太大,。除此之外,HEVC的改進之處還包括熵編碼處理,、去塊濾波處理,。結(jié)合四叉樹的超大去塊編碼方式和新增的SAO去塊濾波被認為是HEVC和AVC的兩個重大區(qū)別。
HEVC幀內(nèi)編碼方案包括分塊變換編碼操作,,為了研究數(shù)字水印算法,,必須要弄清分塊變換編碼操作。當壓縮視頻序列通過HEVC編碼器時,,編碼單元CU是執(zhí)行每個視頻幀編碼的基本單元,,一個視頻幀首先被分成64×64個非重疊的CU單元,每個CU單元按照四叉樹[10]的分割方式繼續(xù)分成更小的單元,,如圖1所示,。
利用空間冗余壓縮,幀內(nèi)預測在HEVC編碼中通過相鄰塊編碼預測得到當前塊,,對一個N×N大小的編碼單元CU,,N∈{64,32,,16},,僅有一個大小為N×N的預測單元,然而當N=8時,,有8×8和4×4兩個預測尺寸。此外,,不同的PU尺寸,,HEVC支持35種[10]預測模式,如圖2所示,,而H.264只有9種,。35種預測模式中,,模式0和模式1分別是平面和直流模式,適合用在逐漸變化和小亮度變化的預測單元,,除去以上兩種模式,,其余33種不同方向的預測模式經(jīng)常用來捕捉邊緣特性。
對一個N×N的預測單元PU,,HEVC編碼從對應相鄰像素和幀內(nèi)預測生成35種預測塊,,這些參考像素從右上方、上,、左上,、左、左下相鄰塊像素編碼,,如圖3所示,。
2 基于HEVC的水印算法設計
本文提出的算法基于HEVC高效視頻編碼格式,主要包括水印預處理,、水印嵌入與提取模塊,,其中嵌入與提取算法是與HEVC的編碼器緊密結(jié)合的。
2.1 水印預處理
水印預處理是視頻水印算法重要的一個環(huán)節(jié),,它可以有效地去除水印信息的相關(guān)性,,提高水印信息抵抗攻擊的能力。水印信息可以是一幅圖片或者文字等載體數(shù)據(jù),,通常根據(jù)水印算法提供的水印容量來選取嵌入何種水印,。通過實驗發(fā)現(xiàn),本算法可嵌入的載體容量可達1 kB~10 kB,,所以可以嵌入簡單的單色圖像,。常用的水印預處理方法有置亂、擴頻等,,置亂的主要功能是去除水印信息本身的自相關(guān)性,,即使水印被第三方破解,由于水印信息是亂序的,,第三方仍然不能得知水印信息的真實來源并對其修改,,因此可以起到版權(quán)保護的作用。
本算法采取對水印信息進行置亂處理,,設AM×N表示大小為M×N的圖像,,Ax,y[x∈(0,,M-1),,y∈(0,N-1)]表示圖像A在點(x,,y)處的像素值,,由于是二值圖像,,Ax,y只能是0或1,。對水印圖像的像素矩陣進行光柵掃描,,得到的一維數(shù)組記為W。為了將水印信息W以置亂的方式嵌入,,首先生成一個Logistic混沌序列,。令μ=4,初始值設為0.9,,生成的Logistic序列為偽隨機序列,。
2.2 水印嵌入位置選擇
HEVC水印嵌入位置的選擇與AVC很不相同,需要重新考慮編碼單元的劃分,。HEVC最大編碼尺寸可達64×64,,按照設計初衷,HEVC應用對象主要是4 KB及以上視頻,,這也是編碼單元變大的原因,。根據(jù)人眼視覺模型,人眼對運動區(qū)域活躍的地方不敏感,,水印嵌入的位置應該選擇在紋理較復雜的區(qū)域,。由于非運動區(qū)域的平滑性,其編碼單元尺寸較大,,反過來運動區(qū)域的編碼尺寸一般較小,,所以水印嵌入的位置選擇在較深的編碼單元。在H.265編碼中,,編碼樹單元中4×4子塊的非零系數(shù)個數(shù)代表當前子塊的運動活性,,因此選擇大小為4×4的編碼單元進行嵌入對視頻質(zhì)量和碼率的影響更小。
2.3 水印嵌入算法
H.265編碼樹單元的預測殘差在經(jīng)過整數(shù)DST變換和量化之后,,預測殘差的能量主要集中在中低頻的DST系數(shù)中,,大部分的高頻系數(shù)都為零。HEVC在一個CU內(nèi)進行變換運算時,,可以將CU按照編碼樹層次細分,,從32×32到4×4的小塊。HEVC變換運算和AVC不同,,變換時先進行列運算然后進行行運算,,量化是與整數(shù)DST變換一并完成,是在TU中分別對亮度和色度分量進行的,。本算法將水印嵌入到亮度分量4×4 DST分塊的中頻系數(shù)中,,水印的嵌入流程圖如圖4所示。
為了獲得關(guān)于殘差信號的率失真成本,,HEVC編碼引出對預測殘差的轉(zhuǎn)換與量化編碼的編碼單元(TU),。在HEVC幀內(nèi)編碼中,決定一個PU單元的最優(yōu)內(nèi)模式之前,,要獲得相關(guān)的率失真成本,,一個N×N(N∈{32,16,,8,,4})的PU,也存在唯一尺寸為N×N的TU,,然而當N=64,,將有4個32×32的TU。色度預測殘差的變換編碼,,HEVC規(guī)定兩種變換:整數(shù)DST[11]和整數(shù)DCT,。整數(shù)DST用在4×4變換單元,而整數(shù)DCT用在32×32,、16×16,、8×8變換單元。為簡便起見,,本算法對4×4變換單元進行整數(shù)DST變換[10]操作,。
用R表示N×N變換單元的亮度預測殘差矩陣,當對R進行整數(shù)DST變換時,,R的QDST系數(shù)矩陣可以表示為:
R=(SfRSfT)×X00 X01 X02 X03X10 X11 X12 X13X20 X21 X22 X23X30 X31 X32 X33(1)
其中,,Q指量化步長,由量化參數(shù)QP決定,。Sf為:
Sf=A B C DC C 0 -CD -A -C BB -D C -A(2)
在解碼端,,對R進行逆QDST(IQDST)操作,重建的殘差信號表示為:
R=IQDST(R)=Sf-1(R×Q)(SfT)-1(3)
水印信息是通過修改QDST變換后的系數(shù)來嵌入的,,根據(jù)奇偶性來改變原DST變換矩陣系數(shù)的值,。本算法是將水印信息嵌入在4×4變換單元TU系數(shù)中,假設一個4×4變換單元TU的系數(shù)三元組為(Xij,,Xmn,,Xpq),嵌入水印信息以后為(X′ij,,X′mn,,X′pq),(X′ij,,X′mn,,X′pq)可由式(4)得出:
(X′ij,X′mn,,X′pq)=(Xij+t,,Xmn-t,Xpq+t)(4)
其中,,t的值為:
t=1,,if(Xij>0,w=1,,and Xij is even),, or(Xij>0,w=0,,and Xij is odd),,-1,if(Xij<0,,w=1,,and Xij is even), or(Xij<0,,w=0,,and Xij is odd),0,,if(Xij≠0,,w=1,and Xij is odd),, or(Xij≠0,,w=0,and Xij is even)(5)
2.4 水印提取算法
水印提取是嵌入的逆過程,,因此實現(xiàn)起來簡單方便,,提取流程圖如圖5所示。
先對嵌入水印的H.265碼流進行熵解碼,,得到每個編碼樹單元預測殘差的量化DST系數(shù),,再統(tǒng)計每個編碼樹單元中子塊DST系數(shù)的非零個數(shù),找出非零系數(shù)個數(shù)最多的子塊,,對其進行水印的提取和視頻還原,。可以通過得出的(X′ij,,X′mn,,X′pq)提取水印信息:
(Xij,,Xmn,,Xpq)=(X′ij,X′mn,X′pq)or(X′ij-1,,X′mn+1,,X′pq-1),if X′ij>0(X′ij,,X′mn,,X′pq)or(X′ij+1,X′mn-1,,X′pq+1),otherwise(6)
3 實驗結(jié)果與分析
為了驗證算法的性能和有效性,,本實驗基于H.265/HEVC參考軟件模型HM10.1進行仿真,,HM配置參數(shù)如表1所示。實驗中對PeopleOnStreet_2560x1600_30_crop測試序列進行水印的嵌入和提取,,水印圖像大小為28×16,,內(nèi)容是“SMU”。
圖6為正常編碼圖像,,圖7為嵌入水印后的編碼圖像,,對比可見,圖像主觀質(zhì)量并沒有明顯差異,,失真較小,。
圖8為選取的前15幀嵌入水印前后圖像的PSNR值對比,從圖中可知嵌入水印對視頻亮度平均PSNR影響很小,,符合要求,。
對含水印的視頻進行攻擊測試,表2是3種攻擊下提取出來的水印圖像,。
從表2可以看出,,椒鹽噪聲對水印的影響稍大,高斯噪聲略有影響,,視頻剪切對水印幾乎沒影響,。但不論受到何種攻擊后,提取出水印,,就能很容易地識別為原圖的內(nèi)容,,所以其魯棒性還是比較強的。
HEVC是新一代高性能視頻編碼標準,。本文介紹了HEVC在編碼和預測等方面相較于之前視頻格式的區(qū)別,,分析了HEVC格式的新特性對傳統(tǒng)水印算法的影響,并據(jù)此設計了一個針對HEVC編碼格式的視頻水印新算法,。實驗證明了該算法有很好的實用性,,并能有效抵抗多種視頻攻擊。
參考文獻
[1] BROSS B, SCHWARZ H,, MARPE D. The new high-efficiency video coding standard[J]. SMPTE Motion Imaging Journal,,2013,122(4):25-35.
[2] HARTUNG F,, KUTTER M. Multimedia watermarking techniques[J]. Proceedings of the IEEE,,1999,87(7):1079-1107.
[3] PREDA R O,, VIZIREANU D N. A robust digital watermarking scheme for video copyright protection in the wavelet domain[J]. Measurement,, 2010,43(10):1720-1726.
[4] Zhang Jing,, HO A T S,, Qiu Gang, et al. Robust video watermarking of H. 264/AVC[J]. IEEE Transactions on Circuits and Systems II: Express Briefs,, 2007,,54(2):205-209.
[5] VERMA A K, SINGHAL M,, PATVARDHAN C. Robust temporal video watermarking using YCbCr color space in Wavelet domain[C]. 2013 IEEE 3rd International Advance Computing Conference(IACC),, 2013:1195-1200.
[6] 張江,趙黎,,楊士強.視頻水印技術(shù)綜述[J].計算機應用,,2005,25(4):850-852.
[7] 同鳴,,張偉,,張建龍,等.一種基于部分基矩陣稀疏約束非負矩陣分解的抵抗大強度剪切攻擊視頻水印構(gòu)架[J].電子與信息學報,,2012,,34(8):1819-1826.
[8] 李亞文.一種基于混沌系統(tǒng)和提升小波的視頻水印算法[J].計算機與數(shù)字工程,2012,,40(4):99-101.
[9] SULLIVAN G J,, OHM J R, HAN W J,, et al. Overview of the high efficiency video coding(HEVC)standard[C]. IEEE Transaction on Circuits and Systems for Video Technology,, 2012, 22(12):1649-1668.
[10] CHANG P C,, CHUNG K L,, CHEN J J, et al. A DCT/DST-based error propagation-free data hiding algorithm for HEVC intra-coded frames[J]. Journal of Visual Communication and Image Representation,, 2014,,25(2):239-253.
[11] MEHER P K,, PARK S Y, MOHANTY B K,, et al. Efficient integer DCT architectures for HEVC[C]. IEEE Transactions on Circuits and Systems for Video Technology,,2014,24(1):168-178.