基于宏块强度的视频帧复制篡改检测
林晓江, 廖广军*
广东警官学院刑事技术系,广州 510440
*通信作者简介: 廖广军,男,四川渠县人,博士,教授,研究方向为影像技术。E-mail: 56114827@qq.com

第一作者简介:林晓江,男,广东汕头人,本科在读,研究方向为电子物证。E-mail: 1439037069@qq.com

摘要

本文针对H.264视频的帧复制篡改问题,提出一种基于宏块强度的帧复制篡改检测方法。在进行帧间复制篡改后,视频中的复制帧与被复制帧的相关性增强,导致复制帧内零向量宏块或跳跃宏块数量异常。本文首先介绍了零向量宏块强度和跳跃宏块强度的概念,然后对视频逐帧进行宏块强度计算和分析,最后基于分析结果对复制帧进行定位。仿真实验结果证明,所提方法对于识别帧复制篡改视频、定位篡改点是有效的。该方法也能为视频真实性(完整性)的鉴定提供支撑。

关键词: 视频篡改; 宏块强度; 帧间篡改; 帧复制
中图分类号:DF793.2 文献标志码:A 文章编号:1008-3650(2021)05-0491-06
Detection of Video Frame Duplication Based on Macroblock Intensity
LIN Xiaojiang, LIAO Guangjun*
Department of Criminal Science and Technology, Guangdong Police College, Guangzhou 510440, China
Abstract

Video frame duplication is a forgery to video materials, requiring forensic identification when a video requests its authenticity. Here, a method is tentatively proposed to detect video frame duplication based on macroblock intensity. As the correlation is enhanced between the original frame and its duplicated one when a video frame has been duplicated and pasted, an abnormality will appear in the duplicated frame at the amount of macroblock from both the zero-vector's and skip's. About this assay, an introduction was here at first put on the concept of macroblock intensity of zero-vector and skip. With one experimental video existing frame duplication, the macroblock intensities were successively calculated and analyzed frame by frame. Consequently, the duplicated frames were finally located. Through simulation tests, it was verified that the identification of frame duplication can be got through based on the abnormal macroblock intensity of both zero-vector and skip, capable of locating the tamper sites and ascertaining the authenticity (integrity) of related videos. The proposed method is therefore effective for recognizing the forged video of frame duplication.

Key words: video forgery; macroblock intensity; inter-frame forgery; video frame duplication

视听资料作为刑事诉讼法规定的证据种类之一, 在以审判为中心的诉讼制度改革背景下, 其重要性不言而喻。在视频采集方法极大丰富、视频编辑处理技术高速发展的情况下, 视频的真实性(完整性)问题受到广泛的关注, 视频的篡改取证问题逐渐成为研究热点。

视频篡改取证可分为主动取证和被动取证[1]。主动取证是在视频生成时就内嵌入附加信息, 通过检验附加信息的完整性来鉴别视频是否经过篡改, 典型的技术为水印技术[2, 3]。主动取证技术依赖于视频压缩的事先设定, 存在较大的局限性。被动取证技术包括利用视频的二次压缩[4]、噪声相关性[5]、连续性[6]、光流周期性[7]等进行篡改检测, 但文献中所提方法多属于整体属性的把握, 无法定位篡改点。为了实现篡改点的定位, 文献[8]通过判断各类型宏块数量是否异常, 确定P帧是否为第一次编码视频中的I帧, 再利用I帧的周期性分析判断视频是否经过二次压缩, 但该算法要求两次压缩编码的图像组(group of pictures, GOP)大小不同。文献[9]在文献[8]的基础上, 增加考虑了运动宏块(motion vector macro blocks)和零向量宏块(zero vector macro blocks)的变化情况, 拓宽了预测变量特征, 提出了基于预测变量特征的视频帧删除检测算法。但该算法只适用于单帧删除视频的篡改检测, 无法应对帧复制篡改的情况。文献[10]提出的基于P、B帧宏块数量变化(macroblocks number variation)特征的视频篡改检测方法重点关注B帧的篡改异常特性和I帧的周期性特征, 对P帧, 特别是P帧化降低检测复杂度关注较少。

针对上述不足, 本文针对H.264的编码视频, 从宏块类型数量的变化入手, 提出基于宏块强度的帧复制篡改检测方法, 重点解决帧复制篡改的定位检测问题。

1 宏块强度

帧复制篡改有个基本要求, 即尽量减少对视频连续性的影响, 以达到不突兀的效果, 因此, 复制帧一般通过参考被复制帧进行编码。在H.264编码中, 存在多帧参考机制, 如果编码过程中被复制帧属于复制帧多帧参考帧中的一帧, 就会造成复制帧的宏块强度异常。

1.1 零向量宏块强度

H.264编码视频, 帧内的待编码宏块先通过运动估计在参考帧中寻找到最佳匹配块并计算运动矢量, 再把相关的运动信息通过运动补偿进行变换、量化和编码, 最后输出。当视频进行帧间复制篡改操作, 复制帧参考被复制帧进行编码时, 复制帧与被复制帧的帧间相关性增强。由于复制帧与参考帧内容上是完全相同的两帧, 即复制帧与参考帧中相同宏块所在的位置是一致的, 所以复制帧中的大部分宏块通过运动估计在被复制帧中相同位置找到最佳匹配块, 最终复制帧内大部分的待编码宏块得到的运动矢量为零。也就是说, 复制帧内大量的宏块被编码成了零向量宏块。零向量宏块剧增存在于复制帧与被复制帧在帧序列中的位置相对较远且复制帧参考被复制帧进行编码的情境中, 适用于部分P帧。根据复制帧参考被复制帧进行编码时零向量宏块剧增的特征, 针对P帧定义了零向量宏块强度Z(n):

(1)

式(1)中ZMB(n)为第n帧零向量宏块的数量; 为第n帧所在的GOP里所有P帧的平均零向量宏块数。

1.2 跳跃宏块强度

H.264编码过程中, 为了进一步减小视频的帧间冗余, 如果复制帧与被复制帧在帧序列中的位置相邻或较接近时, 视频编码算法会根据复制帧与被复制帧位置和参考情况, 将复制帧与被复制帧中相同的宏块在复制帧中标记为跳跃宏块(skip macro blocks)。根据复制帧中的跳跃宏块剧增的特征, 本文定义了跳跃宏块强度S(n):

(2)

式(2)中SMB(n)为第n帧跳跃宏块的数量, MMB(n)为第n帧运动宏块的数量。

2 基于宏块强度的帧复制篡改检测

基于宏块强度的视频帧复制篡改检测流程如图1所示, 主要分为以下几个步骤:P帧化和多帧参考化、宏块强度异常判定、帧复制篡改的判定及篡改点的定位。

图1 基于宏块强度的视频帧复制篡改检测流程图Fig.1 Flow chart of detecting the forged video with frames duplicated based on macroblock intensity

2.1 P帧化和多帧参考化

H.264编码视频中, P帧和B帧虽都采用帧间预测的方式编码, 但P帧和B帧实际编码过程仍存在着较大差异, 无法比较两者的宏块强度。因此, 为了解决P帧与B帧无法比较的问题, 本文提出将待检测视频里的B帧进行P帧化, 对P帧进行多帧参考化。在将视频进行P帧化和多帧参考化时, 视频帧内的零向量宏块和跳跃宏块数量虽然会发生改变, 但是这并不会造成复制帧与被复制帧之间的相关性强度发生质变, 也就是不会改变视频帧宏块强度的整体趋势。所以, P帧化和多帧参考化能有效解决P帧与B帧宏块强度无法比较的问题, 并降低帧复制篡改检测的复杂度。

2.2 宏块强度异常判定

H.264编码标准中存在多帧参考的机制, 且现有的运动估计算法做不到完美的运动估计, 复制帧参考被复制帧进行编码时, 除了会将复制帧内的大部分宏块编码成零向量宏块或跳跃宏块外, 还会存在宏块被编码成非零向量宏块或非跳跃宏块。被编码成非零向量宏块或非跳跃宏块的宏块数相对正常帧较少, 即复制帧的零向量宏块和跳跃宏块相对较多。因此, 复制帧的零向量宏块强度和跳跃宏块强度较正常帧异常强。所以, 若某视频帧的零向量宏块强度或跳跃宏块强度较正常帧异常强时, 可以判定此帧为宏块强度异常帧。

2.3 帧复制篡改的判定及篡改点的定位

若综合分析视频帧的零向量宏块强度和跳跃宏块强度结果, 存在第n帧被判定为宏块强度异常帧, 则基本可以判定此视频为帧复制篡改视频, 定位第n帧处为帧复制篡改点。由于视频P帧的宏块由跳跃宏块、零向量宏块和其他种类宏块组成, 所以在复制帧中, 跳跃宏块和零向量宏块一定程度上呈反比例关系。结合本文所定义的宏块强度公式分析, 零向量宏块强度异常和跳跃宏块强度异常的现象一般不会同时出现。

3 仿真实验与分析

为了检验帧复制篡改检测方法的有效性, 本文随机分别对5段动态视频(存在运动的人或物的视频)和5段静态视频[11](画面完全静止, 不存在运动的人和物的视频)进行单帧相邻复制篡改、连续帧的相邻复制篡改、单帧非相邻复制篡改和连续帧的非相邻复制篡改。视频帧复制篡改后, 用H.264编码标准进行编码。然后对待检测视频进行P帧化和多帧参考化, 如利用FFMPEG的命令:

ffmpeg/bin/ffmpeg.exe -i a.mp4 -bf 0 -refs 15 b.mp4

通过“ -bf 0” 命令将输入的视频a.mp4的B帧数设置为0进行P帧化, 通过“ -refs 15” 命令将视频参考帧数设置为15帧进行多帧参考化。之后再按照帧复制篡改检测流程逐帧进行宏块数量的统计并计算帧的宏块强度, 得到实验结果如图2、图3。

图2 动态视频的宏块强度Fig.2 Macroblock intensity changing from a dynamic video

图3 静态视频的宏块强度Fig.3 Macroblock intensity changing from a static video

从动态视频的帧复制篡改检测结果图2可知, 运用零向量宏块强度和跳跃宏块强度于动态视频的帧复制篡改检测中都有不错的效果, 但复制帧的零向量宏块强度异常特征没有跳跃宏块强度异常特征显著。原因在于:在编码过程中, 复制帧与被复制帧中相同的宏块在复制帧中被标记为跳跃宏块一般存在于复制帧与被复制帧位置相邻或较接近的情况下。而复制帧与被复制帧位置相对较远时, 两者相同的宏块则在复制帧中被编码为零向量宏块。又由于在两帧位置相对较近的情况下, 视频编码时算法会更加精准, 所以, 复制帧中跳跃宏块相对更多, 零向量宏块相对较少。也就是说, 复制帧中跳跃宏块强度异常强的幅度大于复制帧中零向量宏块强度异常强的幅度。所以, 针对动态视频的帧复制篡改检测, 跳跃宏块强度的检测灵敏度较零向量宏块强度更高。

从静态视频的帧复制篡改检测结果图3可知, 将零向量宏块强度运用于静态视频帧复制篡改检测中的效果没有动态视频的好。静态视频中, 帧与帧之间的差异不大, 导致复制帧与被复制帧之间的相对相似性不突出, 加上静态视频复制帧与被复制帧之间非相邻, 更削弱了复制帧与非相邻的被复制帧在帧序列中的相对相似性。此时, 视频编码算法难以将被复制帧作为复制帧的主要参考帧来编码复制帧, 零向量宏块强度便不能起到作用。因此, 零向量宏块强度不适用于静态视频中的帧复制篡改检测。静态视频中, 复制帧与被复制帧之间相邻或较接近时, 视频编码算法就近优先将相邻的被复制帧作为复制帧的主要参考帧, 虽然帧间差异小, 但复制帧和相邻的被复制帧之间相对相似性较其他帧更强, 此时跳跃宏块强度能起作用。因此, 跳跃宏块强度适用于静态视频中的帧复制篡改检测。

综合动态视频和静态视频实验结果, 零向量宏块强度的检测方法不适用于静态视频但适用于动态视频; 跳跃宏块强度的检测方法在动态视频和静态视频的帧复制篡改检测中都适用, 且跳跃宏块强度的视频帧复制篡改检测方法的灵敏度较零向量宏块强度更高, 即本文提出的检测方法更适用于复制帧与被复制帧相邻或较接近的帧复制篡改检测。

4 篡改点的相对异常度

由于宏块强度的异常帧判定存在较主观的判断, 为解决此问题, 本文针对视频篡改点判定定义相对异常度AB, 并通过相关实验, 得出参考阈值。

(3)

(4)

式(3)中, Z(n)为第n帧的零向量宏块强度, Z(n)为第n帧所在的GOP里所有P帧的平均零向量宏块强度, A适用于利用零向量宏块强度检测帧复制篡改的篡改点判定。式(4)中, S(n)为第n帧的跳跃宏块强度, S(n)为第n帧所在的GOP里所有P帧的平均跳跃宏块强度, B适用于利用跳跃宏块强度检测帧复制篡改的篡改点判定。在视频帧序列中的一个GOP中, 若存在第n帧满足A>6或B>6时, 基本可以判定该帧所在处为疑似篡改点。

为了检验篡改点的相对异常度的可行性, 本文利用篡改点的相对异常度对上文图2动态视频中的“ 第9帧在帧序列14-16处复制三次” 篡改视频进行篡改点定位, 结果如表1表2

表1 视频帧的相对异常度A Table 1 The relative abnormality (A) of a video's frames
表2 视频帧的相对异常度B Table 2 The relative abnormality (B) of a video's frames

表1表2结果可知, “ 第9帧在帧序列14-16处复制三次” 篡改视频中帧序列为14的相对异常度A和帧序列为16的相对异常度B满足条件, 可以判定为疑似篡改点, 验证了相对异常度A和B判定篡改点的可行性。

5 结语

针对视频的帧复制篡改问题, 本文利用帧复制篡改后视频中的复制帧与被复制帧的相关性增强, 导致复制帧内零向量宏块强度或跳跃宏块强度较正常帧异常强的特性, 提出了基于宏块强度的视频帧复制篡改检测方法。实验表明, 通过计算复制帧的零向量宏块强度和跳跃宏块强度能有效检测出帧复制篡改视频, 并对篡改点进行定位, 能在一定程度上为视频的帧复制篡改检测提供有效的鉴定意见。但本文提出的篡改检测方法也存在不足, 由于P帧的单向预测性, 若复制帧的帧序列小于被复制帧, 则利用宏块强度检测出的可能为被复制帧, 无法定位复制帧。但即使复制帧的帧序列小于被复制帧时存在无法定位复制帧的不足, 本文提出的帧复制篡改检测方法依然能够通过判断被复制帧的宏块强度是否异常来确定待检测视频是否为篡改视频, 有助于非法证据排除。

参考文献
[1] 姚晔, 胡伟通, 任一支, . 数字视频区域篡改的检测与定位[J]. 中国图象图形学报, 2018, 23(6): 779-791.
(YAO Ye, HU Weitong, REN Yizhi, et al. Detection and localization of digital video regional tampering[J]. Journal of Image and Graphics, 2018, 23(6): 779-791. ) [本文引用:1]
[2] 马利民, 张伟, 宋莹. 基于H. 264比特流运动矢量的水印算法研究[J]. 现代电子技术, 2019, 42(16): 88-93.
(MA Limin, ZHANG Wei, SONG Ying. Research on watermarking algorithm based on H. 264 bit stream motion vector[J]. Modern Electronics Technique, 2019, 42(16): 88-93. ) [本文引用:1]
[3] 李淑芝, 张翔, 邓小鸿, . 基于模式特征的H. 264/AVC可逆视频水印[J]. 中国图象图形学报, 2015, 20(10): 1285-1296.
(LI Shuzhi, ZHANG Xiang, DENG Xiaohong, et al. Reversible video watermarking algorithm for H. 264/AVC based on mode feature[J]. Journal of Image and Graphics, 2015, 20(10): 1285-1296. ) [本文引用:1]
[4] 秦运龙, 孙广玲, 王朔中, . 根据GOP异常进行视频帧序列剪辑篡改的盲检测[J]. 电子学报, 2010, 38(7): 1597-1602.
(QIN Yunlong, SUN Guangling, WANG Shuozhong, et al. Blind detection of video sequence montage based on GOP abnormality[J]. Acta Electronica Sinica, 2010, 38(7): 1597-1602. ) [本文引用:1]
[5] 张旭, 黎智辉, 王鑫, . 视频取证技术研究进展[J]. 刑事技术, 2015, 40(2): 87-93.
(ZHANG Xu, LI Zhihui, WANG Xin, et al. A survey of video forensic technology[J]. Forensic Science and Technology, 2015, 40(2): 87-93. ) [本文引用:1]
[6] 许磊, 郭晶晶, 黎智辉. 合成不雅视频案件检验1例[J]. 刑事技术, 2014, 39(4): 13-14.
(XU Lei, GUO Jingjing, LI Zhihui. Examining a case of synthetic indecent video[J]. Forensic Science and Technology, 2014, 39(4): 13-14. ) [本文引用:1]
[7] 林晶, 黄添强, 李小琛, . 基于光流周期特性的视频帧率上转篡改检测[J]. 计算机系统应用, 2016, 26(6): 131-136.
(LIN Jing, HUANG Tianqiang, LI Xiaochen, et al. Detection of video frame-rate up-conversion using periodic properties of optical flow[J]. Computer Systems and Applications, 2016, 26(6): 131-136. ) [本文引用:1]
[8] VAZQUEZ-PADIN D, FONTANI M, BIANCHI T, et al. Detection of video double encoding with GOP size estimation [C] //2012 IEEE International Workshop on Information Forensics and Security(WIFS): 151-156. [本文引用:2]
[9] 吴俞醒. 基于连续性特征的视频帧间篡改检测算法的研究与实现[D]. 上海: 上海交通大学, 2015.
(WU Yuxing. Video inter-frame forgery detection based on continuity feature[D]. Shanghai: Shanghai Jiaotong University, 2015. ) [本文引用:1]
[10] 张伟, 孙锬锋, 蒋兴浩. 基于P、B帧MBNV特征的视频篡改检测方法[J]. 信息技术, 2016(11): 1-4.
(ZHANG Wei, SUN Tanfeng, JIANG Xinghao. Video forgery detection based on MBNV feature in P&B frames[J]. Information Technology, 2016(11): 1-4. ) [本文引用:1]
[11] 李猛, 胡永健, 刘琲贝, . 基于TCS-LBP算子的视频帧复制篡改检测算法[J]. 华南理工大学学报(自然科学版), 2018, 46(5): 60-67.
(LI Meng, HU Yongjian, LIU Beibei, et al. Digital video frame duplication detection based on TCS-LBP operator[J]. Journal of South China University of Technology (Natural Science Edition), 2018, 46(5): 60-67. ) [本文引用:1]