在Python中比较两个图像的简单方法

时间:2017-07-29 07:25:15

标签: python image

我需要从Windows 10中的“Asset”文件夹中复制图像,该文件夹会自动下载背景图像。其中一些图像将永远不会显示,并在某些时候被删除。为了确保在删除之前我已经看过所有新图像,我创建了一个Python脚本,将这些图像复制到另一个文件夹中。为了提高效率,我需要一种方法来比较两个只复制新图像的图像。我需要做的就是有一个功能,需要两个图像比较它们与一个简单的方法,以确保两个图像在视觉上不相同。一个简单的测试是将图像文件复制它并比较副本和原始文件,在这种情况下,函数应该能够告诉它们是相同的图像。 如何在python中比较两个图像?我需要简单有效的方法来做到这一点。我读过的几个答案有点复杂。

2 个答案:

答案 0 :(得分:3)

之前我遇到过类似的问题。我使用PIL.Image.tobytes()将图像转换为字节对象,然后在字节对象上调用hash()并比较哈希值。

答案 1 :(得分:1)

比较python中的两个图像

选项1: 使用ImageChops模块,它包含许多算术图像操作,称为通道操作(“chops”)。这些可用于各种目的,包括特殊效果,图像合成,算法绘画等。

示例:

ImageChops.difference(image1,image2)⇒图像

返回两个图像之间差异的绝对值   out = abs(image1 - image2)

选项2:

Scikit-image是SciPy的图像处理工具箱。

在scikit-image中,请使用compare_ssim 计算两幅图像之间的平均结构相似性指数

<强>参考文献:

Python Compare Two Images