使用SIFT搜索图像数据库

多个 问题 都涉及到SIFT算法,但它们似乎都集中在两个图像之间的简单比较上。与其确定两幅图像的相似度,不如使用SIFT从成千上万的图像集合中找出最匹配的图像是否可行?换句话说,SIFT是否具有可扩展性?

例如,使用SIFT为一批图像生成关键点,将这些关键点存储在数据库中,然后找出与“查询”图像生成的关键点欧几里得距离最短的那些是否可行?

在计算欧几里得距离时,是否忽略关键点的x、y、尺度和方向部分,仅查看描述符?


回答:

有几种方法可以解决这个问题。

一种流行的方法是所谓的词袋表示法,它仅基于匹配的描述符数量进行匹配,从而忽略了由(x, y, 尺度和方向)组成的位置部分,仅查看描述符。

对大型数据库进行高效查询可能使用近似方法,如局部敏感哈希

其他方法可能涉及词汇树或其他数据结构。

要使用一种同时考虑位置信息的高效方法,请查看金字塔匹配核

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注