如何比较两个彩色图像之间的相似性?

时间:2015-06-26 20:39:24

标签: python image machine-learning computer-vision

two image side by side (please ignore the red line in between

我想比较这两个图像的接近程度(相似区域的红色),但我不能逐个像素地进行比较,因为它们的颜色位置并不完全相同。任何人都知道这里有什么好方法吗?

谢谢,

1 个答案:

答案 0 :(得分:3)

我个人建议使用indico图片功能API。基本上,您传递了您正在处理的图像,并返回一组代表该图像中更高级别形态结构的特征。

如果您在这些功能之上计算余弦相似度,您将获得更直观的相似性指标。

这里有一个很好的github链接,显示如果你在这里寻找的是前端,如何做到这一点:https://github.com/IndicoDataSolutions/imagesimilarity

代码本身非常简单:

from indicoio import image_features
from scipy import spatial

features_1 = image_features(<path_to_image>, <api_key>)
features_2 = image_features(<path_to_image>, <api_key>)
similarity = 1 - spatial.distance.cosine(dataSetI, dataSetII)  # This is what you want

完整文档为here

完全披露:我是籼的首席执行官,所以我有偏见,但我确实认为这对这种情况有帮助。