0

我想将我从服务器下载的图像与保存到包中的图像进行比较,看看它是否是相同的图像。我将如何在 iOS 中实现这一点?

谢谢!

碎纸机

4

3 回答 3

2

如果您想知道它是否是同一张图像,那么您应该只使用哈希函数。

如果您已经决定应该使用什么散列函数,那么您甚至可以让服务器向您发送图像的散列并将其与图像的本地散列进行比较,而不是向您发送图像本身。

如果哈希匹配,则根本不需要下载图像。另一方面,如果哈希值不同,那么您知道您需要下载新图像。

于 2012-08-01T06:06:25.763 回答
2

如果期望图像完全相同,而不是重新压缩或其他任何东西,您可以在NSDataobject 中加载两者并将其与isEqualToData:.

如果它们可能具有不同的元数据,但图像仍然相同,那么您可以将它们作为图像加载并使用类似于此的解码比较实际图像像素:如何从 UIImage (Cocoa Touch) 或 CGImage (Core图形)?.

如果它们相似,但格式可能不同或重新压缩,那么您需要图像比较软件,例如OpenCV

于 2012-08-01T06:07:21.190 回答
0

首先你可以比较图像大小然后大小相同然后你可以在图像比较中使用答案

于 2012-08-01T05:59:48.663 回答