匹配多个图像时的 SIFT 特征匹配性能

标签 sift kdtree knn

我有一个图像库,其中包含约 5000 张图像和约 150 个特征。现在我有另一张具有约 300 个特征的图像,并且我想在我的库中找到 5 个最相似的图像。

暴力破解需要大约300 * 5000 * 150 * 128次操作,花费太多时间。因此,我为库中每个图像的特征构建了一个 kd 树,这意味着大约 5000 个 kd 树。我用过bbf search像其他 sift 库一样近似最近邻居。但性能变得比我的暴力算法还要慢。为了确保这不是我的实现的错误,我将其他库的匹配算法修改为暴力破解,它们的性能也有所提高。

我的问题是是否有可能将约 5000 个 kd 树组合成一棵树?或者是否有其他方法可以在匹配多个图像时提高性能?

最佳答案

您可以考虑使用Locality Sensitive Hashing ,即使不是 100% 准确,也应该快得多。

关于匹配多个图像时的 SIFT 特征匹配性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10188214/

相关文章:

python - OpenCV 将角对齐到网格

haskell - 如何在 Haskell 中实现快速、惰性的 KDTree?

java - KD-Tree 点重复并给我错误的输出

cluster-analysis - SIFT 向量的分层 k 均值聚类

java - 找不到 log4j siftAppender 输出日志

c++ - 使用 FLANN 匹配从 OpenCV SIFT 列表中识别图像

c++ - 比std::nth_element更快的东西

Python。 K近邻TypeError : samples data type = 17 is not supported

javascript - 如何在标记中显示弹出窗口?

python - MGLEARN Plot KNN 分类不显示绘图