【发布时间】:2015-07-21 01:29:08
【问题描述】:
在使用 flann 匹配器而不手动计算时,有没有办法获得两个匹配描述符之间的汉明距离? (即遍历匹配的描述符,对每个元素进行异或运算,然后计数)。
我正在匹配 ORB 计算的描述符,如下所示:
FlannBasedMatcher flannMatcher;
flannMatcher.match(des1, des2, matches);
如果我检查距离:
cout << matches.at(0).distance;
我得到了 NORM_L2 距离,但是我的应用程序需要汉明距离。
上下文:
我想这样做的原因是我使用 ORB 从训练图像集中生成训练描述符,使用蛮力匹配器查找匹配项,然后根据汉明距离过滤不良匹配项。
然后我想使用 flann 匹配器将网络摄像头流上的描述符与这些训练描述符匹配(并显示哪些训练图像与当前帧最匹配),但由于 flann 匹配器似乎没有给出汉明距离我在过滤不良匹配时遇到了困难,在选择最匹配的火车图像时我遇到了很多错误。
【问题讨论】:
标签: c++ opencv computer-vision