gpt4 book ai didi

python - 算法参数在 OpenCV FlannBasedMatcher 构造函数中取什么值?

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

在 python 中,OpenCV 的 FlannBasedMatcher 构造函数采用参数字典,其中第一个是 algorithmThe python tutorial建议可以通过传递不同命名的变量来指定 algorithm 的不同值,例如FLANN_INDEX_KDTREEFLANN_INDEX_LSH,但是变量 name 当然不能向构造函数传递任何信息。有人可能认为这些名称应该作为字符串传递,但在下面的示例中,FLANN_INDEX_KDTREE 被初始化为 0,因此完全不清楚 algorithm 参数是如何产生的有效。

OpenCV 实际上没有任何 Python 文档。 In C++ ,构造函数不采用通用字典,而是实例化 IndexClass 的对象,其中 IndexClass 的每个子类对应不同的算法。

最佳答案

algorithm 采用整数,教程中缺少的是使用不同值初始化 FLANN_INDEX_KDTREEFLANN_INDEX_LSH。 (大写应该暗示这些是固定整数值的描述性标签。)

C++ source code有这样一个初始化列表,从中可以看出LSH算法对应的值为6。它还将FLANN_INDEX_KDTREE初始化为1,这意味着python教程中有0的是错误的,或者源代码在不同的地方使用了冲突的定义(我错过了),这将是不幸的。

这些是源代码中的所有值:

FLANN_INDEX_LINEAR = 0
FLANN_INDEX_KDTREE = 1
FLANN_INDEX_KMEANS = 2
FLANN_INDEX_COMPOSITE = 3
FLANN_INDEX_KDTREE_SINGLE = 4
FLANN_INDEX_HIERARCHICAL = 5
FLANN_INDEX_LSH = 6
FLANN_INDEX_SAVED = 254
FLANN_INDEX_AUTOTUNED = 255

编辑:我提交了 a pull request解决现在已被接受的两个问题。

关于python - 算法参数在 OpenCV FlannBasedMatcher 构造函数中取什么值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42397009/

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