我正在设计用于查找类似哈希的索引策略。为图像生成哈希值。即
字符串A =“00007c3fff1f3b06738f390079c627c3ffe3fb11f0007c00fff07ff03f003000”//图像1…
首先,这是一个非常棘手的问题。不要指望整洁,整洁的答案。
我见过的一个近似数据结构是 空间逼近样本层次结构(SASH) 。
SASH(空间近似样本层次结构)是用于有效地计算相似性查询的近似答案的通用数据结构。相似性查询自然地出现在许多重要的计算环境中,特别是基于内容的多媒体数据库检索,以及用于聚类和分类的最近邻方法。
SASH仅使用距离函数来构建数据结构,因此距离函数(以及在您的情况下,图像散列函数)也需要“好”。基本的直觉大致是如果A~B(图像A接近图像B)和B~C,那么通常是A~C。数据结构在相对接近的项目之间创建链接,并且您仅通过查看来修剪搜索对于更接近您的查询的事情。此策略是否真正有效取决于数据的性质和距离函数。
自从我看了SASH以来已经有10年左右的时间了,所以也可能有更新的发展。 Michael Houle的页面 似乎表明他对所谓的事情进行了较新的研究 排名覆盖树木 ,看起来与SASH的目的相似。这至少应该让你开始在该领域的研究;阅读一些论文并遵循参考线索。