knnMatch需要k> 1才能获得好结果?

时间:2012-06-21 16:31:11

标签: opencv sift surf

我正在使用SURF而我正在尝试两种

FlannBasedMatcher

BruteForceMatcher

我看到我需要设置好匹配

matcher.knnMatch(,,2); // with k=2 (At least)

如果我设置k = 1我没有得到该关键点的第一个不那么遥远的匹配 有什么理由吗?

1 个答案:

答案 0 :(得分:2)

knnMatch将您的数据划分为k个组。如果k = 1,您将把它放在一个大组中。

使用单个分区,算法很难计算到第二个分区的距离。因此根本无法计算距离。