opencv - BFMatcher 和 FlannBasedMatcher 的区别

标签 opencv

我想知道 openCV 中 BFMatcherFlannBasedMatcher 在匹配精度或质量方面有何不同。我知道 FlannBasedMatcher 在应用于大型数据库时可能会更快,但是无论执行时间如何,这两个匹配器是否会在最后找到相同的匹配项?

最佳答案

BFMatcher 将尝试所有的可能性(这就是“蛮力”的意思,因此它将找到最佳匹配。

FLANN,意思是“Fast Library for Approximate Nearest Neighbors”,速度会快很多,但会找到一个近似最近邻。它会找到一个很好的匹配,但不一定是最好的匹配。您可以使用 FLANN 的参数来提高精度(即匹配的“质量”),但这会以减慢算法为代价。

换句话说:FLANN 比 BFMatcher 快很多,但它只找到一个近似的最近邻,这是一个很好的匹配,但不一定是最好的。您可以使用 FLANN 的参数来提高其速度或精度。

关于opencv - BFMatcher 和 FlannBasedMatcher 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10610966/

相关文章:

image-processing - OpenCV 中的图像边缘/形状检测

python - 检测视频中的人脸,裁剪它们并以相同的顺序保存所有帧 - opencv python

Android : libopencv_java3. 所以在 aarch64 平台上找不到 armeabi-v7a abi 过滤器

c++ - 有没有什么功能等同于Matlab在OpenCV中的imadjust with C++?

c++ - OpenCV 3.0 主动轮廓(蛇形)算法

c++ - Visual Studio 中 Opencv 的介绍性示例程序以代码 -1 退出。没有理由

c++ - Opencv DMatch距离超出范围

java - 如何匹配BufferedImage和Mat的颜色模型?

qt - OpenCV246 和 Qt LNK1104 无法打开文件 lib.obj

c++ - ANN OPENCV 错误断言失败