董曉慧,林其偉,許東旭
(華僑大學(xué) 信息科學(xué)與工程學(xué)院,福建 廈門361021)
隨著網(wǎng)絡(luò)傳輸技術(shù)及多媒體技術(shù)的迅速發(fā)展,視頻已廣泛存在于生產(chǎn)和生活的方方面面.然而,多媒體信息安全問題也日趨嚴(yán)重,例如,多媒體作品的版權(quán)保護(hù)問題、作品內(nèi)容的完整性認(rèn)證等,而信息隱藏[1]技術(shù)是解決這些難題的有效途徑之一.此外,目前的視頻正向著高清分辨率,甚至4K×2K 等超清分辨率發(fā)展,現(xiàn)有的視頻編碼技術(shù)已遠(yuǎn)遠(yuǎn)不能滿足消費(fèi)者的需求[2],而高效率視頻編碼(HEVC)尤其適用于處理高清視頻[3].因此,研究基于HEVC的視頻信息隱藏技術(shù)具有重要的意義.目前視頻信息隱藏算法大多是基于H.264和MPEG 編碼標(biāo)準(zhǔn)的.以往最常見的一種方法是在離散余弦變換(DCT)系數(shù)上嵌入隱藏信息[4-7],另一種是在運(yùn)動(dòng)矢量(MV)上嵌入隱藏信息[8-10].這類方案信息嵌入容量大,且完全不會(huì)因?yàn)殡[秘信息的嵌入而降低I幀的視頻質(zhì)量[11].然而,由于HEVC較之前的H.264編碼標(biāo)準(zhǔn)在技術(shù)上進(jìn)行了大量的創(chuàng)新與改進(jìn),其特點(diǎn)決定了以往兩種常用的信息隱藏方案不可直接用于HEVC.本文結(jié)合HEVC獨(dú)有的幀內(nèi)預(yù)測(cè)特點(diǎn),提出一種基于HEVC幀內(nèi)預(yù)測(cè)模式修改的視頻信息隱藏方案.
HEVC沿用了H.264的混合編碼框架[12],通過幀間預(yù)測(cè)編碼和幀內(nèi)預(yù)測(cè)編碼消除時(shí)域空域的相關(guān)性.然而,HEVC沒有繼續(xù)沿用之前的“宏塊”這一概念,而是使用編碼單元(CU)作為基本的編碼結(jié)構(gòu).CU 的尺寸從8×8到64×64,且CU 的大小和圖像的特性是自適應(yīng)的.在圖像比較平緩的區(qū)域,選擇較大的CU,而在圖像邊緣或紋理復(fù)雜的區(qū)域,選擇較小的CU,這樣有利于提高編碼效率.一個(gè)CU可以包含一個(gè)或者多個(gè)預(yù)測(cè)單元(PU).PU 是進(jìn)行預(yù)測(cè)運(yùn)算的基本單元,對(duì)于一個(gè)幀內(nèi)N×N(N∈{64,32,16})的CU,PU 尺寸只能為N×N;而對(duì)于N=8的CU,PU 有8×8或4×4兩種尺寸.
在H.264中,幀內(nèi)預(yù)測(cè)可以去除相鄰塊之間的空間冗余,取得更為有效的壓縮,而HEVC 的幀內(nèi)預(yù)測(cè)技術(shù)[13]是H.264幀內(nèi)預(yù)測(cè)過程的擴(kuò)展和深入.HEVC在H.264基礎(chǔ)上增加了幀內(nèi)預(yù)測(cè)方向的個(gè)數(shù),相較于H.264的9種幀內(nèi)預(yù)測(cè)方向,HEVC共有35種預(yù)測(cè)模式,分別為DC模式、planar模式和33種角度預(yù)測(cè)模式.這使預(yù)測(cè)方向更加細(xì)化,預(yù)測(cè)結(jié)果更加精確,能夠更加有效地減少冗余.
HEVC幀內(nèi)預(yù)測(cè)方向,如圖1所示.在planar模式、DC模式和33種角度預(yù)測(cè)模式之間進(jìn)行拉格朗日率失真優(yōu)化(RDO)計(jì)算,比較各個(gè)率失真代價(jià)(RDcost)后,選取最小代價(jià)對(duì)應(yīng)的模式作為最優(yōu)的預(yù)測(cè)模式,其計(jì)算復(fù)雜度相當(dāng)大.因此,為了降低編碼器的計(jì)算復(fù)雜度,HEVC首先進(jìn)行粗略模式選擇(RMD)處理,即對(duì)35種預(yù)測(cè)模式分別求解其對(duì)應(yīng)的哈達(dá)瑪代價(jià),從中選出N個(gè)代價(jià)最小的模式,并考慮當(dāng)前CU 最可能的模式(MPMs);接著對(duì)可能的N到N+3個(gè)候選模式進(jìn)行RDO 計(jì)算,從中選出最優(yōu)的預(yù)測(cè)模式.
圖1 HEVC幀內(nèi)預(yù)測(cè)方向Fig.1 Modes and directional orientations for intrapicture prediction
采用32×32的二值圖像作為待嵌入信息,如圖2所示.
Arnold變換是俄國數(shù)學(xué)家Arnold提出的,一幅N×N的數(shù)字圖像的二維Arnold變換定義為
式(1)中:x,y∈{0,1,2,…,N-1}為變換前像素的位置;x′,y′為變換之后的像素位置;mod為模運(yùn)算.
數(shù)字圖像可以看作一個(gè)二維矩陣,經(jīng)過Arnold變換之后,圖像的像素位置會(huì)重新排列,降低圖像的相關(guān)性[14],從而達(dá)到提高信息安全性的目的.Arnold置亂在經(jīng)過若干次迭代后,矩陣會(huì)回到最初狀態(tài),從而還原出原始圖,且周期的大小與N有關(guān).對(duì)任意的N(N>2),Arnold變換的周期為T2N/2[15],對(duì)待嵌入圖像進(jìn)行Arnold置亂后的圖像,如圖3所示.
圖2 待嵌入圖像 Fig.2 Picture to be embedded
圖3 Arnold置亂圖像Fig.3 Arnold transform image
通過編譯碼器中交織器和解交織器的使用,turbo碼有效地實(shí)現(xiàn)了隨機(jī)性編譯碼的思想,通過短碼和長(zhǎng)碼的有效結(jié)合,可達(dá)到距香農(nóng)理論極限0.7dB以內(nèi)的極好性能.一般來說,編碼后的視頻序列傳送到解碼端的過程中會(huì)遭受各種各樣的干擾.如果在視頻編碼端嵌入信息,可能造成解碼端提取到的信息位產(chǎn)生錯(cuò)誤,從而影響隱藏信息提取的正確性.為了降低這種影響,利用turbo碼的糾錯(cuò)功能對(duì)置亂后的二值信息序列進(jìn)行編碼.即使提取端出現(xiàn)錯(cuò)誤提取,只要錯(cuò)誤在turbo碼的糾錯(cuò)范圍之內(nèi),還能恢復(fù)出正確的隱藏信息.
雖然turbo編解碼耗時(shí)較多,但是文中使用的turbo碼編碼是在隱秘信息的預(yù)處理階段進(jìn)行的,其計(jì)算復(fù)雜程度并不影響嵌入算法的復(fù)雜度和實(shí)時(shí)性.同樣的,在解碼端,turbo碼解碼也是在全部提取出嵌入信息之后進(jìn)行的,因此,也不會(huì)影響算法的實(shí)時(shí)性.
根據(jù)人眼視覺系統(tǒng)的特性,人眼對(duì)視頻圖像中紋理較復(fù)雜和亮度較高的區(qū)域敏感性較差[16].HEVC編碼標(biāo)準(zhǔn)中,圖像比較平坦的區(qū)域選擇較大的CU,圖像邊緣或紋理復(fù)雜的區(qū)域選擇較小的CU.最小的8×8CU 對(duì)應(yīng)的PU 大小有兩種可能的大小,其他尺寸的CU 對(duì)應(yīng)的PU 只有一種大小.
為了使算法更加簡(jiǎn)化,且保證隱藏信息的不可見性,折中選擇在16×16CU 中嵌入隱秘信息.為了操作方便,以預(yù)測(cè)模式的奇偶性進(jìn)行操作:模式信息{2,4,6,…,30}對(duì)應(yīng)“0”;模式信息{3,5,7,…,31}對(duì)應(yīng)“1”.這里不考慮模式0和1,一是因?yàn)樗鼈兌际怯迷诩y理比較平滑的區(qū)域[17],二是統(tǒng)計(jì)分析表明,選中模式0和1的概率很高,若強(qiáng)制改為其他模式,勢(shì)必導(dǎo)致較大的率失真性能損失.
二值待嵌入信息序列為W={ωi|i=1,2,…,M,ωi∈{0,1}},信息的嵌入是在HEVC的I幀編碼過程中進(jìn)行的,具體有以下4個(gè)步驟.
步驟1在I幀中從第一個(gè)編碼樹單元(coding tree unit,CTU)開始,找出尺寸為16×16 的CU.
步驟2利用率失真開銷函數(shù)計(jì)算出當(dāng)前16×16PU 的最優(yōu)預(yù)測(cè)模式best_pm.
步驟3如果最優(yōu)預(yù)測(cè)模式best_pm 為0或1,則跳過當(dāng)前PU,不進(jìn)行隱秘信息嵌入.如果best_pm 不為0或1,則按照下面規(guī)則修改:如果best_pm 的奇偶性與當(dāng)前待嵌入信息位一致,則保持best_pm 不變;如果不一致,就用sub_pm 代替best_pm.由于HEVC模式選擇過程中是先進(jìn)行RMD 選出幾種模式,再進(jìn)行這幾種模式的率失真計(jì)算得到最優(yōu)預(yù)測(cè)模式,因此,為了保證模式修改前后的奇偶性一定不同,sub_pm 設(shè)置如下:如果best_pm 奇偶性與次優(yōu)模式(即RDcost第二小的模式)奇偶性不同,sub_pm 就為次優(yōu)模式;如果相同,sub_pm 就為best_pm 兩側(cè)相鄰的兩個(gè)模式中殘差變換絕對(duì)值總和(SATD)較小的那個(gè)模式.嵌入過程可表示為
式(2)中:wm_pm 為嵌入隱秘信息后PU 的預(yù)測(cè)模式;ωi為當(dāng)前PU 對(duì)應(yīng)的待嵌入信息位.
步驟4遍歷所有的采集傳輸單元(CTU),直到待隱藏信息全部嵌入完成.
隱秘信息提取是嵌入的逆過程,算法只需解碼含隱秘信息的視頻碼流中的幀內(nèi)亮度預(yù)測(cè)模式即可,不需要提供原始視頻,具體有以下4個(gè)步驟.
步驟1對(duì)含有隱秘信息的視頻碼流進(jìn)行部分解碼,得到I幀16×16CU 的所有亮度塊的預(yù)測(cè)模式信息.
步驟2判斷預(yù)測(cè)模式的奇偶性進(jìn)行信息提取(模式0,1除外,如果解碼出來的模式為0或1,就跳過當(dāng)前PU),提取過程可表示為
式(3)中:ω′i為提取的隱秘信息位;de_pm 為解碼得到的16×16CU 的預(yù)測(cè)模式.
步驟3重復(fù)上述步驟,直到隱秘信息提取完畢或視頻碼流結(jié)束.
步驟4把提取出來的信息進(jìn)行turbo碼解碼和Arnold反置亂,可還原出原始的隱秘信息.
為了驗(yàn)證該算法的性能,利用HEVC測(cè)試平臺(tái)HM12.0進(jìn)行仿真實(shí)驗(yàn).實(shí)驗(yàn)中使用5個(gè)不同分辨率的標(biāo)準(zhǔn)測(cè)試序列:PeopleOnStreet,Traffic,ParkScene,BQTerrace和Vidyo3.參考軟件配置參數(shù),如表1所示,其余參數(shù)均采用默認(rèn)配置.
表1 HM 的主要參數(shù)配置Tab.1 Configuration parameters of the HM
5個(gè)測(cè)試序列在嵌入隱秘信息前后的視頻圖像,如圖4所示.圖4(a)~(e)為5個(gè)測(cè)試序列的原始圖像.圖4(f)~(j)為嵌入隱密信息后重建的視頻圖像.由圖4可知:在隱秘信息嵌入前后,視頻質(zhì)量基本沒有變化,主觀上證明了該算法的隱秘信息滿足不可見性.
測(cè)試序列的實(shí)驗(yàn)結(jié)果,如表2所示.表2中:RPSN為峰值信噪比;η為碼率變化量;C為嵌入容量;δ為編碼時(shí)間變化量;“+”表示嵌入隱藏信息后,相對(duì)于原始是增加的;“-”表示嵌入隱藏信息后,相對(duì)于原始降低.由表2可知:RPSN和碼率變化非常微小,從客觀上證明了隱秘信息的嵌入對(duì)視頻影響很小;編碼時(shí)間的變化量也在合理范圍內(nèi),這是由于編碼時(shí)間的變化量主要取決于最優(yōu)預(yù)測(cè)模式和當(dāng)前信息位不一致的塊的個(gè)數(shù)多少.實(shí)驗(yàn)結(jié)果表明:文中算法對(duì)編碼視頻的率失真性能損失幾乎可以忽略不計(jì).
圖4 信息隱藏前后視頻圖像質(zhì)量對(duì)比Fig.4 Comparison of the visual quality between the original and the marked frames
表2 對(duì)測(cè)試序列的實(shí)驗(yàn)結(jié)果Tab.2 Experimental result for test sequence
提出一種基于幀內(nèi)預(yù)測(cè)模式的HEVC 視頻信息隱藏算法,通過修改16×16PU 最優(yōu)預(yù)測(cè)模式實(shí)現(xiàn)信息隱藏,算法操作簡(jiǎn)單、提取方便.對(duì)于一般視頻,提取時(shí)不需要對(duì)視頻碼流進(jìn)行完全解碼,只需要解碼出I幀16×16CU 亮度預(yù)測(cè)模式即可.實(shí)驗(yàn)結(jié)果表明:該算法在嵌入隱秘信息之后,視頻的主客觀質(zhì)量較原始視頻基本沒有變化,比特率的增加量也很小.略有不足之處在于算法在視頻選擇上還有一些局限性,對(duì)紋理復(fù)雜和分辨率較高的視頻信息隱藏容量更大,效果也更好,而對(duì)紋理平坦且分辨率較低的視頻容量較小.因此,今后的工作是研究如何進(jìn)一步提高算法的視頻信息隱藏的容量.
[1]ZHAO Yan-tao.Reversible data hiding based on sorting and histogram modification[J].Journal of Optoelectronics Laser,2010(1):102-106.
[2]李恒忠,崔建明,郭勇,等.基于HEVC視頻標(biāo)準(zhǔn)的熵編碼過程[J].電腦知識(shí)與技術(shù),2013,9(14):3356-3359,3365.
[3]洪佳慶,林其偉.采用HEVC的精細(xì)可分級(jí)編碼[J].華僑大學(xué)學(xué)報(bào):自然科學(xué)版,2014,35(3):253-256.
[4]申金媛,胡青云,劉潤(rùn)杰,等.一種基于H.264壓縮域的魯棒性視頻水印算法[J].鄭州大學(xué)學(xué)報(bào):工學(xué)版,2013,34(5):63-67.
[5]劉雅寧.壓縮域視頻水印技術(shù)研究[D].西安:西安電子科技大學(xué),2007:197-200.
[6]張承乾.視頻信息隱藏分析研究[D].天津:天津大學(xué),2009:1453-1458.
[7]張維緯,張茹,劉建毅,等.一種基于H.264/AVC的視頻可逆脆弱水印算法[J].電子與信息學(xué)報(bào),2013,35(1):106-112.
[8]ZHUO Zhao,YU Neng-h(huán)ai,LI Xue-long.A novel video watermark scheme in compressed domain based on fast motion estimation[C]∥Proceedings of ICCT.Beijing:[s.n.],2003:1878-1882.
[9]ZHANG Jun,MAITRE H,LI Jie-gu,et al.Embedding watermark in MPEG video sequence[C]∥Multimedia Signal Processing.Cannes:IEEE Press,2001:535-540.
[10]DAI Yuan-jun,ZHANG Li-h(huán)e,YANG Yi-xian.A new method of MPEG video watermarking technology[C]∥Processings of ICCT.Beijing:Beijing University of Posts and Telecommunications Press,2003:1845-1847.
[11]陳志玉.壓縮視頻安全方法研究[D].南京:南京郵電大學(xué),2013:18-20.
[12]劉昱,胡曉爽,段繼忠.新一代視頻編碼技術(shù)HEVC算法分析及比較[J].電視技術(shù),2012,36(20):45-49.
[13]LAINEMA J,BOSSEN F,HAN W J,et al.Intra coding of the HEVC standard[J].IEEE Transaction on Circuits and Systems for Video Technology,2012,22(12):1792-1801.
[14]李麗麗,孫勁光.SITF特征區(qū)域Contourlet域遙感圖像水印算法[J].信號(hào)處理,2012,9(28):1254-1261.
[15]張春森,范金健,胡平波.小波變換和Arnold變換的數(shù)字水印技術(shù)[J].西安科技大學(xué)學(xué)報(bào),2012,32(1):95-100.
[16]吳國楨,馮桂.一種基于H.264半脆弱視頻水印方案[J].通信技術(shù),2012,45(1):112-118.
[17]朱秀昌,李欣,陳杰.新一代視頻編碼標(biāo)準(zhǔn):HEVC[J].南京郵電大學(xué)學(xué)報(bào):自然科學(xué)版,2013,33(3):1-11.