馬利民 張偉 宋瑩
摘? 要: 針對水印質量和比特率增加的問題,該文設計兩種直接在H.264比特流運動矢量中進行水印嵌入的脆弱性視頻水印算法。算法I通過引入運動矢量誤差補償模塊和優(yōu)化水印嵌入位置選擇方法提高重建視頻質量;算法Ⅱ在其基礎上,引入幀內?幀間誤差補償模塊來消除由于幀內?幀間誤差累積現(xiàn)象帶來的重建視頻失真,進一步提高了重建視頻質量。實驗結果表明,算法I可以取得較好的重建視頻質量,且重建視頻流的比特率增加比較小;算法Ⅱ保證重建視頻質量的同時帶來一定比特率增加。兩種算法為H.264壓縮視頻的內容完整性認證提供了有效的解決方案。
關鍵詞: 數(shù)據(jù)隱藏; 誤差累積; 誤差補償; 水印嵌入; 算法設計; 視頻質量
中圖分類號: TN941.2?34; TP301.6? ? ? ? ? ? ? ? ?文獻標識碼: A? ? ? ? ? ? ? ? ? ?文章編號: 1004?373X(2019)16?0088?06
0? 引? 言
信息隱藏技術是將數(shù)據(jù)嵌入到其他數(shù)字媒體資源中,已經廣泛應用于版權保護、完整性驗證和保密通信等領域。目前,視頻文件成為重要的多媒體資源,其中H.264[1]憑借較高的壓縮效率力壓其他視頻壓縮標準,在互聯(lián)網上得到廣泛應用,因此其安全性需要重視[2]。一般水印算法分為魯棒性水印算法和脆弱性水印算法兩種。其中:魯棒性水印將水印信息嵌入在I幀量化后的整數(shù)變換系數(shù)中,用來實現(xiàn)視頻的版權保護[3? 5];脆弱性水印算法則將水印信息隱藏在運動矢量中,主要用于視頻內容的完整性認證[6?11]。本文重點對用于實現(xiàn)完整性認證的H.264壓縮域水印算法進行了研究。在設計用于完整性保護的視頻水印算法時,除了認證功能,還需要注意重建視頻的質量和嵌入后壓縮視頻的比特率增加。為了減小嵌入失真,文獻[6]在具有小分割模式的宏塊中選擇具有最佳率失真性能的運動矢量作為嵌入點以降低對重建視頻質量的影響。文獻[7]通過修改宏塊中每個分割塊的最佳匹配位置,利用分割塊匹配位置與待嵌二進制信息之間的映射規(guī)則,將信息隱藏到分割塊的匹配位置中。文獻[8?9]則對運動估計算法做出一定改進,以提高編碼效率。文獻[10]根據(jù)編碼過程中嵌入水印信息所引入預測誤差的大小來選擇待嵌入運動矢量,以減小嵌入失真。上述算法的計算復雜度較大,實時性較差。直接在H.264比特流運動矢量中進行水印信息的嵌入會引入幀內?幀間誤差累積現(xiàn)象和運動矢量誤差累積現(xiàn)象,導致重建視頻質量的嚴重下降。文獻[11]提出了一種基于H.264比特流的脆弱性水印算法,實現(xiàn)了H.264壓縮視頻的完整性認證,但沒有很好地解決誤差累積現(xiàn)象且引入了較大的嵌入失真。本文提出一種直接在H.264比特流運動矢量中進行水印嵌入的脆弱性水印算法。該算法通過解決運動矢量誤差累積現(xiàn)象及選擇合適的嵌入位置和嵌入方式,生成的水印視頻質量較好且比特率增加較小。此外,本文還設計了該算法的一個改進版本來提高算法的不可見性,解決幀內?幀間誤差累積現(xiàn)象。
3? 實驗結果及分析
本文提出的算法是基于JM 12.2 解碼器實現(xiàn)的。實驗中采用6個標準的YUV 4∶2∶0, QCIF格式的視頻序列,如圖3所示,其中編碼器參數(shù)設置如表1所示。
本節(jié)用Alg?Ⅰ和Alg?Ⅱ來分別代指算法Ⅰ和算法Ⅱ。圖4給出在相同實驗條件下,F(xiàn)oreman視頻在Alg?Ⅰ和Alg?Ⅱ以及未作任何補償?shù)那闆r下, 嵌入1 552 B的水印信息后,得到的視頻質量的比較結果,在這里僅給出第80幀圖像嵌入水印后效果圖。從圖4b)中可以看出,誤差累積現(xiàn)象會造成視頻質量的嚴重降級。通過Alg?Ⅰ處理后,視頻質量提高了近6.5 dB;而經過Alg?Ⅱ處理后,視頻質量提高近12 dB。
另外,本節(jié)將提出算法的結果與文獻[11]中結果進行比較,重點比較了嵌入相同水印信息下重建視頻的最低PSNR、平均PSNR及嵌入過程帶來的比特率的增加。實驗環(huán)境配置相同,區(qū)別在于本算法采用的是JM 12.2, 文獻[11]中采用的是JM 9.6。比較結果如表2所示,可以看出,算法Ⅰ和Ⅱ所得嵌入水印后視頻質量均高于文獻[11]算法。原因在于文獻[11]所采用的水印嵌入算法引入的誤差較大,而算法Ⅰ通過采用嵌入位置合理的選擇提高了算法的不可見性,而算法Ⅱ通過解決幀內?幀間誤差累積現(xiàn)象進一步提高了算法的不可見性,例如對于Container視頻序列來說,相比較文獻[11], 本文實現(xiàn)Alg?Ⅰ和Alg?Ⅱ算法在平均PSNR方面分別提高25 dB和27 dB,在最低PSNR方面分別可以提高13 dB和14 dB;在比特率增加方面,Alg?Ⅰ和文獻[11]引入的比特率增加都比較小,但對于Alg?Ⅱ算法帶來的比特率增加比較高,原因在于在進行幀內?幀間誤差補償時,由于補償信號的引入使得量化后IT系數(shù)本身為0的一些位置變?yōu)榉橇阒?,因此在進行熵編碼時會增大編碼后比特數(shù)。因此,對于Alg?Ⅱ而言,該算法是以比特率的增加為代價來提高重建視頻質量的。
算法Ⅰ和算法Ⅱ各有優(yōu)點,可根據(jù)實際場景需要進行選擇,如果對重建視頻質量要求較高,則選擇算法Ⅰ,反之可以選擇算法Ⅱ。
4? 結? 論
本文利用H.264宏塊分割特點,引入一種有效的嵌入位置選擇方法,并通過比較引入的預測誤差合理地選擇一種最優(yōu)的嵌入方式進一步減少嵌入誤差。實驗結果表明,所提算法可以取得較好的重建視頻質量且重建視頻流的比特率增加比較小。算法Ⅱ通過引入幀內?幀間誤差補償模塊進一步提高了重建視頻質量,但該算法帶來的比特率增加比較嚴重。這兩個算法可以很容易地集成到一個系統(tǒng)中,根據(jù)實際的應用需求進行具體選擇,靈活性較好。
參考文獻
[1] 劉凱,李晨田,麗華,等.基于H.264抗重壓縮的視頻水印算法[J].計算機應用與軟件,2018,35(12):163?168.
LIU Kai, LI Chentian, LI Hua, et al. A video watermarking algorithm against re?compression based on H.264 [J]. Computer applications and software, 2018, 35(12): 163?168.
[2] 葛莉.H.264和AVS編碼在數(shù)字電視系統(tǒng)中性能對比及應用分析[J].通信電源技術,2016,33(1):128?129.
GE Li. Performance comparison and application analysis of H.264 and AVS coding in digital television system [J]. Telecom power technology, 2016, 33(1): 128?129.
[3] 謝斌,彭林.基于H.264誤差漂移補償?shù)聂敯粜砸曨l水印算法[J].電視技術,2016,40(10):15?21.
XIE Bin, PENG Lin. Robust video watermarking algorithm based on H.264 error drift compensation [J]. Video engineering, 2016, 40(10): 15?21.
[4] 蔣剛毅,李文鋒,郁梅,等.H.264/AVC壓縮域魯棒視頻水印[J].光學精密工程,2015(21):260?270.
JIANG Gangyi, LI Wenfeng, YU Mei, et al. Robust video watermarking in H.264/AVC compressed domain [J]. Optics and precision engineering, 2015(21): 260?270.
[5] 李淑芝,唐銀,鄧小鴻,等.H.264壓縮域安全型視頻水印算法[J].電視技術,2015,39(21):5?9.
LI Shuzhi, TANG Yin, DENG Xiaohong, et al. Security of video watermarking algorithm in H.264 compressed domain [J]. Video engineering, 2015, 39(21): 5?9.
[6] 楊靜,鄭耿峰.基于運動矢量的脆弱視頻水印算法研究[J].電子設計工程,2017(12):153?156.
YANG Jing, ZHENG Gengfeng. A fragile video watermarking algorithm based on motion vectors [J]. Electronic design engineering, 2017(12): 153?156.
[7] 王煒,林夕杰,李孝琴.一種改進的H.264運動估計信息隱藏算法[J].計算機科學,2015,42(6):151?157.
WANG Wei, LIN Xijie, LI Xiaoqin. Improved information hiding algorithm based on motion estimation of H.264 [J]. Computer science, 2015, 42(6): 151?157.
[8] 郭繼昌,邱琳耀,張雪.一種利用預測運動矢量改進的H.264快速運動估計算法[J].數(shù)據(jù)采集與處理,2017,32(2):278?285.
GUO Jichang, QIU Linyao, ZHANG Xue. Improved method of H.264 fast motion estimation using predictive motion vector [J]. Journal of data acquisition and processing, 2017, 32(2): 278?285.
[9] 劉艷.引入搜索預測與閾值決策的改進菱形運動估計算法[J].圖學學報,2015,36(4):576?580.
LIU Yan. Improved diamond motion estimation algorithm based on search prediction and threshold decision [J]. Journal of graphics, 2015, 36(4): 576?580.
[10] ALY H A. Data hiding in motion vectors of compressed video based on their associated prediction error [J]. IEEE transactions on information forensics and security, 2011, 6(1): 14?18.
[11] NGUYEN C V, TAY D B H, DENG G. A fast watermarking system for H.264/AVC video [C]// IEEE Asia Pacific Conference on Circuits & Systems. Singapore: IEEE, 2006: 81?84.