Exposing Digital Forgeries by Detecting Duplicated Image Regions
文章思路
把图像分割小块,然后计算每个小块之间 相同像素块的位置信息(坐标)的偏移量,如果有大量的偏移量是相同的,那就判定该区域有重复
1 Introduction
在本文中,我们提出了一种技术,可以有效地检测和定位图像中的重复区域。该技术通过首先在小的固定尺寸图像块上应用主成分分析(PCA)来产生降维表示。这种表示对于由于加性噪声或有损压缩引起的图像中的微小变化具有鲁棒性。然后,通过对所有的图像块进行 lexicographically sorting(词典分类)来检测重复区域。在[D]中提出了一种基于DCT块系数字典排序的相似区域检测方法。虽然这两种方法采用类似的方法,数据驱动的PCA基础可以更好地捕捉判别特征。我们展示了该技术对credible forgeries(可信伪造)的有效性,并量化了其对加性噪声和有损JPEG压缩的鲁棒性和敏感性。
2 Detecting Duplicated Regions
给定具有n个像素的图像,我们的任务是确定它是否包含未知位置和形状的重复区域。检查每一个可能的区域计算量是非常大的。
一种更有效的算法可以寻找重复的小固定块。通过将每个这样的块串入向量并对所有图像块进行词典分类,相同的块对应于排序列表中的相邻对。该算法的 primary cost 将是字典排序,得到O(N log N)的复杂性,因为图像块的数目与图像像素的数目成比例,N. Note,这是相对于蛮力指数算法的显著改进。然而,这种方法的缺点是,它对重复区域之间的小变化非常敏感,例如,由于加性噪声或有损压缩。我们描述了一种克服该限制同时保留其效率的算法。
考虑具有N个像素的灰度图像(下面我们讨论该算法如何扩展到彩色图像)。图像由重叠的像素块拼接 (√b ×√b像素尺寸)其中,每一个都被假定比待检测的重复区域的尺寸小得多。使用向量表示这些像素块(x_i i = 1, . . . , N_b, N_b = (√N −√b + 1)^2).现在我们考虑用基于主成分分析(PCA)的图像块的代替这种表示方法。
计算及公式部分见原论文 我怎么找不到markdown了
3式实现对first N_t项降维,投影到PCA基的first N_t特征向量给出了最小二乘意义下的最佳N_t维近似(如果X_is的分布是多维高斯)。因此,这种降维表示提供了一个方便(convenient space)的空间,其中在存在噪声的情况下识别相似的块,因为基的截断将去除较小的强度变化。
detection algorithm proceeds as follows:
- 进一步减少由于corrupting noise产生的微小变化,图像块的降维表达式a_i是分量量化的[a_i/Q],(正整数Q表示量化箱的数量。).
- 构造一个N_b×b的矩阵,其行包含这些量化系数。矩阵S存放按列顺序对该矩阵行进行字典排序的结果,让 s_i表示这个排序矩阵的第i行,并让元组(Xi,Yi)表示对应于s_i的块的图像坐标(左上角)。
- 下一步考虑all pairs of rows,s_i和s_j,行距|i-j|,在排序矩阵S中小于指定的阈值。所有这些对的图像中的偏移由:
公式
从所有这样的偏移量的列表中,通过注意高发生率的偏移来检测图像中的重复区域。例如,一个大的复制区域将由许多较小的块组成,这些块中的每一个将在字典排序的矩阵中彼此接近地出现,并且将具有相同的偏移。为了避免由于均匀强度区域引起的误命中,忽略指定阈值以下的偏移幅度。详见附录A step-by-step的算法。
构建duplication map 将检测结果可视化——创建与原始相同大小的零值图像,并且被认为是重复的区域中的所有像素被分配一个唯一的灰度值。(复杂度来自于lexicographic sorting)。
有至少两种方法将该算法拓展到彩色图片,简单的方法是独立的处理每个颜色通道(e.g.,RGB)进而产生3个e duplication maps,另外一种 直接在彩色图中应用PCA(apply PCA to color blocks of size 3b, and proceed in the same way as described above.)
3 Results
为了量化我们的算法的鲁棒性和灵敏度,我们构建了一个大小为512×512像素的100个彩色图像的数据库。这些图像是从尼康D100数码相机拍摄的2000×3008幅图像中剪裁出来的。在每个图像中,随机方形区域被复制并粘贴到图像中的随机非重叠位置。然后,每个图像通过JPEG压缩,具有不同的质量因子,或者随着具有可变信噪比(SNR)的加性噪声而破坏(corrupted)。如图4的上排所示,例如,四个图像的大小为32×32, 64×64, 96×96,128×128的重复区域,前两个图像用JPEG质量85和65压缩,另外两个图像被附加噪声破坏,信噪比为36dB和2dB。图4的底部显示的是在每个图像的绿色通道上运行我们的算法时返回的重复映射。在这些例子中,以及以下描述的所有参数被设置为:b=64,e=0.01,Q=256,N_n=100,N_f=128,N_d=16。如图5所示,检测精度和false positive rate是JPEG压缩质量的函数。注意,除了小的块size和低的JPEG质量外,精度通常是非常好的( accuracy is, in general, very good)。还要注意的是,false positive 的平均数目(不正确标记为重复的区域)相对较低。图6中所示的检测精度和false positive rate是加性高斯白噪声的信噪比(SNR)的函数。正如在前面的例子中,除了小的块size和低信噪比之外,检测速率几乎是完美的。
4 Discussion
我们已经提出了一种高效和鲁棒的技术,自动检测图像中的重复区域。该技术通过首先在小的固定大小的图像块上应用主成分分析(PCA)来产生减小的维数表示,这是由于加性噪声或有损压缩而对图像中的微小变化具有鲁棒性的。然后,通过对所有的图像块进行词典分类来检测重复区域。我们已经证明了该技术对似是而非伪造的有效性,并量化了其对JPEG有损压缩和加性噪声的敏感性-我们发现即使在存在大量的破坏噪声的情况下,检测也是可能的。我们还开发了用于检测图像中数字篡改痕迹的其他技术〔2, 6, 7,8〕。该套件中的每一种技术都在完全没有数字水印或签名的情况下,提供了一种互补的图像认证方法。毫无疑问,将建立对抗措施来foil每一种技术。Our hope, however, is that our tools, as well as those of others [3, 5], will make it increasingly harder to create credible digital forgeries that will simultaneously foil each of the detection schemes.