如何检测图像是否被修改?

3
假设有人有一张白纸黑字的图像(.JPG或.PNG),然后用高级照片编辑器(Photoshop、GIMP等)修改了这张图像(通过刷子更改字母/数字)并将其发送给我们。在我们这边是否有任何方法可以通过代码检测到这种修改?
我读到过一些算法用于相机上,输出图像是通过一系列操作/模式渲染的。当有人用图片编辑器触摸图像时,原始相机创建的模式中必须存在一些不正确之处。这是真的吗?如果有的话,请提供链接、代码或想法。

1
你听说过哪些算法?有参考资料吗? - koan
这只是一个猜测,但如果图像经过编辑工具处理,相机存储在图像上的EXIF数据会被更改/丢失吗? - George Profenza
@koan 说实话,我不记得链接是什么了,但一旦我找到了,我会在这里发布。 - Cas Sakal
3个回答

1

实际上,在这方面已经有很长的研究历史。例如,在像素级别,一个人修改的部分可能与相邻的像素不一致(在某些假设下,边缘永远不会与相邻的像素一致,但用户强制模糊区域与图片的其余部分不一致,如果您在图像中复制区域,则两个区域将具有难以置信的高相似度得分)。

当然,有很多对策(技术/逻辑)可以打败现有的伪造检测方法。

我建议你谷歌“数字图像伪造”。


谢谢Gary,我会研究一下并在这里发布有用的东西。 - Cas Sakal

1

只是一个想法,虽然我从未尝试过。

  1. 在预定义的比例下获取图像直方图,并将直方图存储到EXIF中
  2. 为了检查图像,将图像缩放到预定义的比例并获取其直方图
  3. 从EXIF直方图bin与(2)中获得的直方图bin进行比较

有点简单,我猜;-)


但我们没有原始图片alphaneo。 - Cas Sakal

0
不,这是不可能的。你可能能够想出一些能够在99%的情况下工作的东西,但我保证如果它足够重要,有人会找到对策。
例如,他们可以在Photoshop中修改图片,将其打印出来并拍摄新照片,然后将其发送给你。祝你好运检测到这种数字修改。

嗯,也许我应该把注意力集中在像素上。 - Cas Sakal
这可能有效,如果你在日常工作中看过很多Photoshop。 - so12311

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接