数字图像取证 - 基于文件格式的取证 3

Posted on Mon 15 June 2020 in Digital Image Forensics • 1 min read

JPEG Ghost

上一节中Double JPEG方法可以检测图像是否被二次压缩过。本节内容将定位出具体被二次压缩过的区域。这一技术被称为JPEG Ghost。

前面介绍过一组RAW data存储为JPEG文件格式首先需要进行傅里叶变换随后便进行量化操作。那么假设有一组经由傅里叶变换后的值\(c_1\)按照\(q_1\)进行量化。随后进行还原并按照\(c_2\)进行量化得到\(q_2\)。如果\(q_1=0\)(也就是不进行二次量化操作)或\(q_1=q_2\)\(c_1\)\(c_2\)之间的损失一定是最小的。同时\(c_1\)\(c_2\)之间的损失也会随着\(q_1\)\(q_2\)的增大而增大。根据这样一个特点未经过二次压缩的图像应是一组基本单调上升但在某一点突然下降至0的数据。而经过二次量化的图像则是会出现2个或以上的下降点。如下图 未经过二次量化的图像 经过二次量化的图像 故本例子中第二次量化的等级为23。

Localization

上面提及了JPEG Ghost的概念以及部分表现,这里对这一方法进行详细描述。首先定义JPEG Ghost中的损失

$$ d(x, y, q)=\frac{1}{3} \sum_{i=1}^{3}\left[f(x, y, i)-f_{q}(x, y, i)\right]^{2} $$

其中\(f(x,y,i),i=(1,2,3)\)表示RGB三个通道中的值(即每个通道经过DCT变换后的值),\(f_q(\cdot)\)表示按照量化等级q进行还原后的数据。 下图是经过二次压缩的JPEG图像原始图像的量化等级为85,而第二次压缩的量化等级为65。那么当q不断增大,损失一定会在65以及85处瞬间变小,同时将损失表示为图像量化等级在65以及85时候会出现明显的黑色(误差为0,表现为黑色) 经过二次量化的图像

变体

由于该差异是在频域空间中计算的,那么无法避免频率较高的区域(天空)的损失的显著性会低于高特征区域(草地)。那么引入归一化技术可以在一定程度上减缓这一现象。这一方法主要是将图像分块处理,计算qxq大小的区域的损失随后将其进行归一化

$$ \delta(x, y, q)=\frac{1}{3} \sum_{i=1}^{5} \frac{1}{b^{2}} \sum_{b_{x}=0}^{0} \sum_{b_{y}=0}^{5}\left[f\left(x+b_{x}, y+b_{y}, i\right)-f_{q}\left(x+b_{x}, y+b_{y}, i\right)\right]^{2} $$

利用Min-Max归一化对其进行处理

$$ d(x, y, q)=\frac{\delta(x, y, q)-\min _{q}[\delta(x, y, q)]}{\max _{q}[\delta(x, y, q)]-\min _{q}[\delta(x, y, q)]} $$