gpt4 book ai didi

opencv - SIFT 描述符匹配的有效方法

转载 作者:太空宇宙 更新时间:2023-11-03 20:47:19 24 4
gpt4 key购买 nike

有 2 张图像 A 和 B。我从中提取关键点(a[i] 和 b[i])。
我想知道如何有效地确定 a[i] 和 b[j] 之间的匹配?

我想到的最明显的方法是将 A 中的每个点与 B 中的每个点进行比较。但是对于大型图像数据库来说,这非常耗时。我怎样才能将点 a[i] 与 b[k] 进行比较,其中 k 的范围很小?

我听说 kd-tree 可能是个不错的选择,不是吗?关于kd-tree有什么好的例子吗?

还有什么建议吗?

最佳答案

KD 树存储经过训练的描述符的方式使得在执行匹配时能够更快地找到最相似的描述符。

在 OpenCV 中,使用 kd-tree 真的很容易,我会给你一个 flann 匹配器的例子:

flann::GenericIndex< cvflann::L2<int> >  *tree; // the flann searching tree
tree = new flann::GenericIndex< cvflann::L2<int> >(descriptors, cvflann::KDTreeIndexParams(4)); // a 4 k-d tree

然后,当你进行匹配时:

const cvflann::SearchParams params(32);
tree.knnSearch(queryDescriptors, indices, dists, 2, cvflann::SearchParams(8));

关于opencv - SIFT 描述符匹配的有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12814808/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com