1

在此处输入图像描述

我有Android在数据库中存储图片的代码。如何将存储的照片与拍摄的照片进行比较?

4

2 回答 2

2

可能有几个正确的答案,具体取决于您要查找的内容。

如果您正在谈论比较使用设备上相机制作的新照片,那么它几乎不可能与任何现有文件进行逐字节匹配。

如果您想从可能有副本的来源中检测完全匹配,请查看两个图像的文件大小和尺寸。如果它们完全相同,那么您可以查看字节。为了节省时间,请将内容的数字签名(例如,MD5 或 SHA1)哈希与图像一起存储在数据库中。

如果您想确定图像在外观上是否相似,那么您必须找到某种方法来表征图像。我不是这方面的专家,但在我幼稚的方法中,我会做一些事情,比如将图像分成固定数量的区域,并测量每个区域中红色、绿色和蓝色的数量。当找到近似匹配时,您甚至可以在越来越小的区域上递归地执行此操作。比较整个图像比找到部分匹配要容易得多。

于 2012-10-08T12:57:34.757 回答
1

你可以一点一点地阅读它并在它之间进行比较:)如果它是相同的。就像您知道从 0 和 1 构建的每个文件一样,因此您可以像二进制文件一样打开它并进行比较。

另一种解决方案。您可以阅读保存在图像文件中的图像和属性(例如:大小、宽度、高度、类型)...

我希望我能帮上忙;)

于 2012-10-08T12:40:18.800 回答