【问题标题】:given two images, determine whether one is edited from the other (and which is the original)给定两张图像,确定一张是否是从另一张中编辑的(哪个是原始图像)
【发布时间】:2012-04-30 10:32:30
【问题描述】:

假设网络上有一张没有水印的图片。有人下载它并对其进行一些编辑,例如添加水印等。是否可以在 php 中编写脚本来比较这两个图像。就像我将这两个图像提交给脚本时,它应该能够输出原始图像和处理后的图像。

我读了谷歌的网站管理员页面,上面写着

Google 经常会在网上找到同一张图片的多个副本。我们使用许多不同的信号来识别图像的原始来源 块引用

这是我的问题的主要关注点

还有一个疑问是图像中是否有任何元标记。如果在所有如何阅读它们。是否可以编辑它们。图像中是否有无法编辑的信息(非视觉信息)。

【问题讨论】:

  • 您正在寻找的东西很难实现(如果今天不是不可能的话)。
  • 看看stackoverflow.com/questions/4477417/… 和那里的链接...
  • 如果您在无法编辑的图像中找到信息,我的十六进制编辑器说她想看看。
  • 如果我理解正确,您的问题不是“如何找到图像的原始来源”,而更像是“如果我有两张图像,有什么方法可以判断其中一张是否是编辑另一个”?
  • @DavidThomas 经常问这个问题“你试过什么?”。首先正确阅读问题。尝试这个是否足够简单。我完全不知道从哪里开始。我正在寻找指南,而不是确切的代码。先明白这一点。显然我在谷歌上尝试了很多,只有重要的链接似乎很小。

标签: php image


【解决方案1】:

图像中的任何内容都可以编辑(毕竟,它只是字节的集合),而且对图像添加水印或只是稍微改变对比度绝对是微不足道的,以使其成为与原始文件截然不同的文件。还有其他一些非破坏性更改会使图像文件看起来与简单的比较算法完全不同(例如,缩放、更改文件类型和压缩、更改亮度、旋转等)。

但是,高级图像处理算法通常仍然可以识别以上述方式处理过的图像之间的相似性。有很多算法可以做到这一点,老实说,你可能会花费数千小时尝试自己推出这样的算法。这类算法被称为“基于内容的图像检索”。

您最好调用已经开发用于执行此操作的引擎。以下是一些可能性:

祝你好运!

【讨论】:

    【解决方案2】:

    数码相机拍摄的照片通常嵌入了 exif 数据。

    您可以通过exif_read_data function in PHP获取数据。

    关于识别相似图像,这里有一些有用的资源:

    【讨论】:

      【解决方案3】:

      您可以将两张图片都提交给ImageEdited,然后查看哪一张已被编辑。即使 exif 数据丢失,它也会告诉您何时使用程序创建了图像。

      【讨论】:

        猜你喜欢
        • 2014-04-22
        • 2013-12-08
        • 1970-01-01
        • 1970-01-01
        • 2021-09-11
        • 1970-01-01
        • 2020-02-02
        • 2017-12-30
        • 1970-01-01
        相关资源
        最近更新 更多