我正在使用 SURF,我正在尝试两者
FlannBasedMatcher
和
BruteForceMatcher
我看到我需要设置好匹配
matcher.knnMatch(,,2); // with k=2 (At least)
如果我设置 k = 1
,我不会得到该关键点的第一个距离较短的匹配项。
有什么原因吗?
最佳答案
knnMatch 将您的数据分成 k 组。如果k=1,你会把它放在一个大组里。
对于单个分区,算法很难计算出与第二个分区的距离。所以根本就没有距离可以计算。
关于opencv - knnMatch 要求 k>1 才能得到好的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11142643/