相同比特率的MPEG视频双压缩检测*

2016-09-08 10:32陈洁远蒋兴浩孙锬锋上海交通大学电子信息与电气工程学院上海0040信息内容分析技术国家工程实验室上海0040
信息安全与通信保密 2016年2期
关键词:比特率编码器编码

陈洁远, 蒋兴浩, 孙锬锋(上海交通大学电子信息与电气工程学院,上海0040;信息内容分析技术国家工程实验室,上海0040)

相同比特率的MPEG视频双压缩检测*

陈洁远1,2**, 蒋兴浩1,2, 孙锬锋1,2
(1上海交通大学电子信息与电气工程学院,上海200240;2信息内容分析技术国家工程实验室,上海200240)

MPEG视频双压缩检测在视频取证领域中扮演着重要的角色。然而,在现有的双压缩检测算法中,多数算法只能检测不同比特率的双压缩视频,缺少一种有效的检测视频同比特率双压缩的办法。本文提出了一种基于宏块模式的视频同比特率双压缩检测算法。宏块模式由宏块的编码类型以及运动矢量组成,文中首先分析了宏块模式在多次使用相同比特率编码后的收敛性,之后选择利用支持向量机对其建立模型进行分类,判断待检测视频是否经过了同比特率的二次压缩。通过与现有的方法进行对比,实验结果表明本文提出的方法可以有效检测同比特率下的双压缩视频,并且同时适用于MPEG-2以及MPEG-4标准。

双压缩检测;同比特率;宏块模式

[Abstract]The detection of double MPEG compression plays an important role in video forensics.However,most existing methods could not effectively detect double MPEG compression with the same bitrates in constant bitrates coding.Thus,a novel method based on macro block mode(MBM)is proposed to detect double MPEG compression with the same bitrates.MBM is composed of macro block coding type and its motion vector.The convergence of MBM during repeated compression is firstly analyzed,then the support vector machine is used to model the MBM feature and to discriminate whether a video is doubly compressed with the same bitrates.Experiments indicate that the proposed method outperforms the existing methods and is robust to both MPEG-2 and MPEG-4 videos.

[Key words]double compression;same bitrates;macro block mode

0 引言

近年来基于MPEG标准的监控摄像头广泛应用于各个场所,同时其拍摄的视频也会被作为证据用于司法取证。然而随着视频编辑软件的出现,视频更加容易被攻击者篡改,其完整性与真实性难以得到保证。攻击者在进行一个有意义的视频篡改时,必需的步骤就是首先将原始视频进行解码,篡改完毕后再对其进行二次压缩编码。所以视频双压缩检测成为了视频篡改取证中非常关链的技术手段[1]。

Wang和Farid通过对MPEG视频中量化后的离散余弦变换(DCT)系数进行建模,利用其统计特征进行双压缩检测[2,3]。基于首位数字特征的方法由Chen等人从JPEG图像双压缩检测中引入到MPEG视频双压缩检测[4]。王婉等人只利用I帧中的首位数字特征进行分类,提高了检测的准确率[5]。Xu等人利用MPEG-2视频中每个宏块特定位置的DCT系数的统计特征进行分类,在不同编码器和比特率下均得到了较好的检测准确率[6]。Jiang等人利用了相邻DCT系数间的马尔科夫统计特征进行检测,是日前效果最好的算法之一[7]。

然而当视频采用CBR方式进行编码时,上述算法都只能检测二次压缩使用与第一次压缩不同的比特率的双压缩视频。由于使用相同比特率进行压缩后,双压缩视频与单压缩视频的区别非常微小,导致算法失效。因此Huang等人为了解决此问题,利用MPEG-2视频中I帧的DCT系数在多次使用相同比特率进行重复压缩后的收敛性进行检测[8]。但是该方法对于量化程度比较敏感,当采样较低的比特率进行压缩时,检测准确率会大幅下降,同时只能适用于MPEG-2标准。

图1 116个原始YUV序列用不同编码器以不同比特率经过多次压缩后Cn的平均值

本文提出一种新的基于宏块模式的方法来检测同比特率MPEG双压缩视频。文中首先引入了宏块模式的概念,它由宏块的编码类型以及运动矢量构成。根据文献[9]中发现的使用相同量化因子进行多次压缩JPEG图像时DCT系数的收敛性,我们发现宏块模式在同比特率多次压缩后的也会有相同的收敛性,通过对视频进行同比特率的多次压缩,提取宏块模式变化的宏块数量作为特征,最后利用支持向量机(SVM)进行分类,判断视频是否经过使用同比特率的双压缩。实验结果表明,文中提出的方法在检测MPEG-2的视频中比Huang[8]等人的方法有更高的准确率,同时可以适用于MPEG-4编码。

1 宏块模式的统计特征

1.1 宏块决策和运动估计

MPEG视频中3种基本类型帧,分别为I帧、P帧以及B帧。I帧为帧内编码帧,P帧和B帧为预测编码帧。在P帧中的宏块也有3中基本类型,分别是帧内编码宏块(I宏块),帧间编码宏块(P宏块)以及跳过编码宏块(S宏块)。一个基于MPEG标准的编码器在编码一个宏块时首先要进行宏块决策,决定它的宏块类型,使用更少的比特进行编码。

当一个宏块被选为帧间编码宏块,则需要进行运动估计。运动估计利用视频中的前后帧的相关性进行压缩编码,在编码时只需要编码该宏块的运动矢量以及与其参照宏块的预测残差即可,因此可以减少大量编码实际像素所需要的空间。

1.2 宏块模式的统计特征

在固定比特率编码的视频中,量化因子Q是一个重要的参数用来控制编码的比特率。当一个固定比特率编码的MPEG视频以相同比特率多次压缩时,由于比特率没有变,因此相同位置的宏块有很大一部分依然会使用与前一次压缩相同的量化因子。在文献[9]中可以看到,当一个JPEG图像在以相同量化因子多次压缩后,相邻两次压缩之间,DCT系数变化的数量随着压缩次数的增加而减小。JPEG图像中同一个宏块在第n+1次编码后的DCT系数可以由第n次压缩后的DCT系数表示,如式(2):

Dn+1=[DCT(RT(IDCT(Dn×Q×QS)))/(Q×QS)](2)其中Dn表示第n次压缩后宏块的8×8DCT系数矩阵,DCT(·)和IDCT(·)分别表示8×8离散余弦变换和离散余弦逆变换,Q和QS表示量化矩阵和量化因子。RT(·)表示对一个数取整,并将其截断至[0,255]的范围内,[·]表示取整操作。上述操作符都是对矩阵中每个元素分别进行的。进一步令En表示重构像素后量化取整引起的误差,即:

通过式(2),(3)可以得到:

其中Rn为En进行离散余弦变换并量化后的系数。

从式(4)中我们可以看到,当对视频用相同量化因子进行多次编码后,Rn会变为零矩阵,此时Dn+1=Dn。越来越多的DCT系数保持不变,从而呈现一种收敛性。由于I帧的编码方式与JPEG图像相同,因此Huang等人利用I帧DCT系数的收敛性,检测同比特率MPEG双压缩视频[8]。

然而DCT系数对量化因子的大小非常敏感,当以较小的比特率进行压缩时,检测效果较差。因此我们引入了宏块模式(Macroblock Mode,MBM)的概念。宏块模式不仅保持了在相同量化因子下多次压缩的收敛性,同时对于量化强度不敏感。宏块模式定义为宏块类型和运动矢量的组合,即:

其中M表示一个宏块,Mtype和Mmv分别表示M的宏块类型和运动矢量。I-MB的Mmv为(0,0)。当两个宏块的宏块类型和运动矢量都相同时才认为两个宏块有相同的宏块模式。当用相同的比特率重复压缩一个视频时,如果在第n+1次压缩的视频中与在第n次压缩的视频中位于同一个位置的宏块拥有相同的宏块模式,则称该宏块在第n+1次压缩中是稳定的,否则认为它是不稳定的。

考虑用相同比特率进行多次压缩时P帧内的宏块,令第n+1次压缩中稳定宏块的数量为Tn,平均每个P帧中稳定宏块的数量为Cn=Tn/N,其中N为视频中P帧的数量。图1中展示的是116个原始YUV序列以不同比特率多次压缩后Cn的均值,其中横轴为压缩次数,纵轴为在该次压缩中宏块模式发生改变的平均宏块数。左图使用FFmpeg中的mpeg4编码器(FF-MPEG4),右图是使用FFmpeg中的mpeg2video编码器(FF-MPEG2)。可以看到不同曲线上Cn的值总会随着压缩次数的增加而减小,同时减小的速度越来越慢,即Cn+1-Cn>Cn+2-Cn+1。

图2 基于宏块模式的检测算法的流程图

2 基于宏块模式的检测算法

从图1中可以看到,单次压缩视频的C1会有更加大的值,同时曲线收敛的速度在相同压缩次数下也会比双压缩视频更快。为了使得宏块模式的统计特征可以被更好的利用,我们提出了一个机器学习的框架,将 Cn的值作为特征输入到支持向量机(SVM)中进行分类,提高准确率和鲁棒性。算法的流程图如图2所示,算法共分为如下4个步骤:

1)将输入的MPEG视频V解码成YUV文件,同时得到视频的比特率B。并且在解码的过程中提取P帧中各个宏块的宏块模式并保存为MBM0。

2)用相同的比特率B去重新编码之前得到的YUV文件,得到新的视频Vn,n=1,2,…,K。

3)解码视频Vn得到新的YUV文件,同时提取Vn中各个P帧的宏块模式信息,保存为MBMn。

4)重复K次步骤2和步骤3。利用多次压缩后的宏块模式信息MBMn,计算在相邻两次压缩中宏块模式发生变化的宏块的平均数量,记为Cn,n=1,2,…,K。具体的计算方法如式(6):

其中N表示视频中P帧的数量,Mn(i,x,y)表示在视频Vn中位于第i个P帧中(x,y)处的宏块。其中指示函数I(M1,M2)定义如下:

其中M1,M2为两个宏块。因此式(6)在统计相邻两次压缩中P帧内宏块模式发生变化的平均数量。

5)构造特征向量C=(Cn),n=1,2…,K,作为SVM的输入,使用训练集训练一个检测模型,利用该模型就可以进行同比特率MPEG视频双压缩检测。

图3 当K=2时C在特征空间中的分布

图3中显示了用FF-MPEG2编码器以700 Kbps进行编码,当K=2时,C在二维空间中的分布,其中方块为单次压缩视频,圆点为用同比特率二次压缩的视频。从图中可以看到,单次压缩的视频主要分布在空间的右下部分,也有一些会在右上角,说明单次压缩视频C1较大。而双压缩视频集中在空间的左小角,此时C1,C2都偏小。当K增大时,两类视频的分布中混叠的部分会更少,因此检测的准确率也会更高。但是更大的K意味着更多次数的编码和解码,编解码是一个计算量很大的过程,因此需要在准确率和效率之间进行权衡。

3 实验仿真

3.1 视频样本库的建立

本文实验中的视频样本来自常用的32段原始YUV序列(下载自https://media.xiph.org/video/derf/),为了增加样本的数量,我们将所有YUV序列以每100帧进行分割作为一个新的YUV序列,不足100帧的部分则舍弃,共生成116段原始YUV序列。所有的YUV序列会以固定比特率模式进行编码,作为单次压缩视频的正样本。之后对所有正样本,用与其相同的编码器以及相同的比特率进行二次压缩,产生作为同比特率双压缩视频的负样本。实验中所采用的编码器如表1所示,包括MPEG-2标准的一个编码器以及MPEG-4标准的两个编码器。SVM中选择的核函数是径向基函数,其中的超参数通过网格搜索的方式选择最佳的值。为了简单起见,在编码时只有I帧和P帧,GOP长度为10,其余参数都为相应编码器的默认值。

表1 实验中选用的三种编码器

3.1 实验结果与分析

对上述的实验样本集,由于实验中的正样本与负样本数量相同,因此用于衡量算法性能的指标就用准确率AR来表示,AR= (TPR+TNR)/2,其中TPR表示真阳性率,TNR为真阴性率。实验中我们实现了Huang[8]等人的方法,并用相同的样本库进行对比实验。由于文中所提出的方法基于SVM的模型,因此文中方法的结果是在样本库中用5折交叉验证后得到的平均值,实验结果如表2中所示。

表2 不同编码器在不同比特率下的检测准确率(%)

表2中展示了算法在3种编码器下,比特率从200 Kbps到900 Kbps不同比特率下的检测准确率,其中”平均值”这一行表示的是算法在不同比特率下的平均准确率。Huang这一列表示的是文献[8]中算法的准确率,MBM一列是文中提出的基于宏块模式的检测算法的准确率。可以看到在FF-MPEG2编码器下,文中提出的算法准确率高于文献[8]中的算法,平均检测准确率高了8%以上。同时可以看到当编码的比特率低于500 Kbps时,文献[8]中的算法的准确率明显的下降了,此时文中提出的算法准确率比文献[11]中的算法高出了10%以上。说明文章中提出的基于宏块模式的方法对量化程度不敏感,即使在比特率低于500 Kbps的情况下依然有75%以上的检测准确率。

在MPEG-4标准下的FF-MPEG4以及XVID编码器的实验中,从表2中可以看到Huang等人的方法的检测准确率都低于60%,这是因为在MPEG-4中I帧使用的量化矩阵中的元素都大于MPEG-2中量化矩阵的元素,这也就说明MPEG-4下的量化会更加厉害,因此文献[8]中的算法准确率都较低。而文中提出的方法在这两种编码器下也有较好的表现,平均准确率分别有82.57%和78.01%。在XVID上的准确率比在FF-MPEG4上略低是因为XVID中使用了更加复杂的宏块决策、运动估计以及码率控制算法,使得同一个位置的宏块在相邻两次压缩中有较多的宏块有不同的量化因子,使得算法的检测效果下降。

4 结语

同比特率MPEG视频双压缩检测日前依旧是一个有挑战性的问题,由于使用和原始视频相同的比特率进行二次压缩的视频与原始视频的差异较小,因此许多现有的算法只能检测不同比特率的双压缩视频。文中提出了一种新的基于宏块模式的同比特率MPEG视频双压缩检测算法,分析了在多次以相同比特率进行编码后宏块模式的收敛性,并结合支持向量机进行双压缩视频的检测。实验结果表明文中提出的算法比现有文献中的算法在MPEG-2视频中有更高的准确率,同时可以适用于MPEG-4标准,同样有较高的准确率。

[1] Milani S,Fontani M,Bestagini P,et al.An Overview on Video Forensics[J].APSIPA Transactions on Signal and Information Processing,2012,1:e2.

[2] WANG W,Farid H.Exposing Digital Forgeries in Video by Detecting Double MPEG Compression[C]//Proceedings of the 8th workshop on Multimedia and security.ACM,2006:37-47.

[3] WANG W,Farid H.Exposing Digital Forgeries in Video by Detecting Double Quantization[C]//Proceedings of the 11th ACM workshop on Multimedia and security.ACM,2009:39-48.

[4] CHEN W,SHI Y Q.Detection of Double MPEG Compression based on First Digitstatistics[M]//Digital Watermarking. Springer Berlin Heidelberg,2009:16-30.

[5] 王琬,蒋兴浩,孙锁锋.基于首位数字特征的双重MPEG压缩检测算法[J].电子与信息学报,2012,34:3046-3050.

[6] XU J,SU Y,LIU Q.Detection of Double MPEG-2 Compression based on Distributions of DCT Coefficients[J].International Journal of Pattern Recognition and Artificial Intelligence,2013,27(01):1354001.

[7] JIANG X,WANG W,SUN T,et al.Detection of Double Compression in MPEG-4 Videos based on Markovstatistics[J].Signal Processing Letters,IEEE,2013,20(5):447-450.

[8] HUANG Z,HUANG F,HUANG J.Detection of Double Compression with the Same Bit Rate in MPEG-2 Videos[C]//Signal and Information Processing(China SIP),2014 IEEE China Summit&International Conference on.IEEE,2014:306-309.

[9] HUANG F,HUANG J,SHI Y Q.Detecting Double JPEG Compression with the Same Quantization Matrix[J].Information Forensics and Security,IEEE Transactions on,2010,5(4):848-856.

Detection of Double MPEG Compression with Same Bitrate

CHEN Jie-yuan1,2,JIANG Xing-hao1,2,SUN Tan-feng1,2
(1School of Electronic Information and Electrical Engineering,Shanghai Jiaotong University,Shanghai 200240,China;2National Engineering Lab on Information Content Analysis Techniques,GT036001,Shanghai 200240,China)

TP391

A

1009-8054(2016)02-0113-04

2015-10-19

**

xhjiang@sjtu.edu.cn

陈洁远(1990—),男,硕士研究生,主要研究方向为视频篡改检测;

蒋兴浩(1976—),男,博士,教授,主要研究方向为多媒体信息安全、视频内容分析;

孙锬锋(1975—),男,博士,副教授,主要研究方向为多媒体信息安全、视频内容分析。

猜你喜欢
比特率编码器编码
融合CNN和Transformer编码器的变声语音鉴别与还原
一个大范围混沌系统及其在DCSK 中的应用
基于SAR-SIFT和快速稀疏编码的合成孔径雷达图像配准
《全元诗》未编码疑难字考辨十五则
子带编码在图像压缩编码中的应用
Genome and healthcare
基于双增量码道的绝对式编码器设计
基于多个网络接口的DASH系统设计与实现
应用旋转磁场编码器实现角度测量
基于数字信号处理的脉冲编码器