简单快速比较图片相似度的算法


一、Simple euclidean distance,简单欧氏距离


二、(Normalized) Cross Correlation,交叉相关(归一化的)

一种简单度量,可以用来比较图片的区域。比欧式距离更加鲁棒,但用于图像变形情况不起作用,需要设置threshold


三、Histogram comparision:直方图比较

如果你使用标准化后的直方图,那么效果会很好,并且不会受到仿射变换的影响。如何确定正确的threshold是一个问题。这个算法对颜色的改变也很敏感(亮度、对比度等等)。可以把该算法和前两种算法联合一起使用。


四、Detectors of salient points/areas,凸角点/区域识别

像MSER(Maximally Stable Extremal Regions)、SURF、SIFT等。

都是鲁棒性比较强的算法,对于简单任务而言可能有点复杂。好消息是不一定要求有一个确定大小的区域,仅有一个图标icon,算法有足够能力找到正确的匹配。对于这类算法的一个很好的评估请见附录pdf(Local invariant feature detectors: a survey.)


绝大多数这类算法在opencv中都已经实现了



附录:

pdf:http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.157.4126&rep=rep1&type=pdf

原文:http://stackoverflow.com/questions/4196453/simple-and-fast-method-to-compare-images-for-similarity

你可能感兴趣的:(图片相似度)