随着计算机和图像处理技术的发展,采用深度学习技术(例如deepfake)合成的图片和视频已经能够达到以假乱真的程度。经过合成或者篡改的图像在网络上传播会对公众产生误导,扰乱人们的日常生活。因此需要一种能够检测图像是否真实的方法。 一、背景 随着计算机和图像处理技术的发展,人们可以方便的对数字图像进行编辑修改。过去,对图像进行修改主要是采用Photoshop等图像编辑软件进行人工编辑。近年来,随着深度学习技术在图像处理领域的成功应用,对图像进行编辑变得越来越容易。采用深度学习技术可以方便的对图像进行去噪,合成,抠图,修改等操作,甚至可以根据需要直接生成图像。同时,深度学习技术强大的图像处理能力也使得自动化批量处理或者生成图像成为可能。但是,技术往往是一把双刃剑。深度学习在给图像处理带来方便的同时,也带来了危险。采用深度学习技术(例如deepfake)合成的图片和视频已经能够达到以假乱真的程度。经过合成或者篡改的视频在网络上传播会对公众产生误导,扰乱人们的日常生活。因此需要一种能够检测图像是否真实的方法。 在静态图像中,JPEG是应用非常广泛的一种图像存储格式。网络上交流的图像中大部分为JPEG图像。因此本文介绍一种对伪造的JPEG图像进行检测的方法。 二、JPEG图像压缩原理 JPEG是一种有损压缩的图像存储格式。在存储的过程中去掉了图像的高频成分,使得图像的数据量大幅减少,同时还能确保图像质量不发生明显的劣化。JPEG图像的压缩过程如下:1将图像进行颜色空间转换,然后分成 8*8的小块,对每个小块进行离散余弦变换(DCT)。2采用一定的量化表对每个小块的DCT系数进行量化。量化表对JPEG图像质量起着决定性的作用,通常与质量因子对应。大的质量因子对应于取值较小的量化表,量化失真较小,压缩以后的图像质量较高。相反,小的质量因子压缩以后图像的质量较低。3采用Huffman编码对图像进行编码与存储。

其中,上述第2步导致图像中的信息出现损失。 三、JPEG图像篡改检测 对图像进行合成或者篡改可以针对图像中所有的像素来进行,也可以针对图像中的部分像素来进行。由于JPEG图像的压缩存储过程是以


8*8 的子块为单位进行的,因此在最终存储的图像中会存在“块效应”。伪造者在篡改图像时,不论其采用传统的例如Photoshop等图像编辑软件,还是采用深度学习技术,其篡改的结果往往会破坏JPEG图像的“块效应”。这种破坏通过肉眼几乎观察不到,但是通过对图像数据的分析可以检测到这种破坏,进而识别经过合成或者篡改的JPEG图像。 在检测的过程中使用灰度图像。对于彩色图像首先将其转化为灰度图。设未被篡改的JPEG图像A的质量因子为QA,采用深度学习技术对图像A进行修改,并采用质量因子

QB

进行压缩,得到JPEG图像B。为了使图像B的质量更好,往往有 QB>QA

。对于图像B,由于其曾采用质量 因子QA压缩过

,当对其再次以


压缩时,其失真程度会达到一个极小值。同时,对图像A进行修改的过程破坏了图像A原有的块效应。而破坏的程度是随机的,这种破坏反应在图像B中就是被修改的区域呈现出被采用不同的质量因子多次压缩的特征。基于以上原理,对合成或篡改的JPEG图像的检测流程如下:1对待检测图像img0,采用质量因子


Q

QL

QH分别对img0进行再压缩,得到一系列再压缩的图像。其中,


QL为较低的质量因子,例如


QL=30


QH为较高的质量因子,例如

QH=90。2对于再压缩得到的每一幅图像img1,分别计算其与img0相比的失真程度,记为

K(Q)。3对所有再压缩得到的图像,以


为横坐标,以

Q为纵坐标画出


K-Q曲线。

以下分几种情况分别展示

K-Q曲线的形式与JPEG图像篡改的关系。

四、数值算例

1.正常一次高质量压缩的JPEG图像


图1 

在图1中的JPEG图像为数码相机直出的图像,其质量因子为90。可以看出,该图像对应的 K-Q 曲线是一条单调下降的曲线,且曲线比较平滑。


2.正常两次压缩的JPEG图像


图2

图2中的图像为将图1中图像经过质量因子70再次压缩以后所得到的图像。压缩以后的图像与原图像的观感差距很小,但是从图2中可以看出,其

K-Q 曲线在70处取得了极小值,也就是说在该点,图像的失真达到一个极小值。


3.正常三次压缩的JPEG图像


图3

图3是将图2中的图像再次以80的质量因子压缩以后获得的

K-Q曲线。该曲线在70和80处都取得了极小值。也就是说,虽然图像经过80的质量因子的压缩,但其中还存在着70的质量因子的压缩痕迹。

4.多次压缩的JPEG图像


图4

图4是采用不同的质量因子对图1中的图片进行多次压缩后的图像所对应的

K-Q曲线。可以看出,多次压缩会导致曲线出现较大的波动。

5.合成的JPEG图像


图5和图6是采用deepfake将视频帧中的人物面部进行替换以后存储的JPEG图像。由于替换的过程对图像的修改较大,因此可以看出其对应的

K-Q曲线波动也较大。 五、总结


通过以上分析和实验可以看出,采用对JPEG图像进行再压缩并观察K-Q

曲线波动性的方法可以有效的检测经过合成或者篡改的JPEG图像。另外,这种方法对由视频帧转化成的JPEG图像也有较好的检测效果。