比较两个图像是否相同(iOS)

时间:2012-12-29 02:50:45

标签: iphone objective-c ios

  

可能重复:
  How does one compare one image to another to see if they are similar by a certain percentage, on the iPhone?

我找到了这段代码,并试图更好地理解它:

UIImage *img1 = // Some photo;
UIImage *img2 = // Some photo;

NSData *imgdata1 = UIImagePNGRepresentation(img1);

NSData *imgdata2 = UIImagePNGRepresentation(img2);

if ([imgdata1 isEqualToData:imgdata2]) {
    NSLog(@"Same Image");
}

这是否会确认图像1与图像2完全相同?这种方法是最佳实践,还是有更好的方法呢?

2 个答案:

答案 0 :(得分:5)

你的代码是逐位比较两个图像,所以是的,它是100%的比较。

如果您需要更快的速度,可以从每个UIImage生成一个哈希值并比较两个哈希值,如here所述。

答案 1 :(得分:1)

看一下这个链接,它会谈到所有关于图像采样以查看百分比相似性:How does one compare one image to another to see if they are similar by a certain percentage, on the iPhone?