首页 文章

查找ORB特征描述符之间的汉明距离

提问于
浏览
0

我正在尝试编写一个匹配ORB功能的函数 . 我没有使用默认匹配器(bfmatcher,flann matcher),因为我只想在图像中使用其他图像中的特征匹配特征 .

我看到ORS描述符是一个二进制数组 .

我的问题是如何匹配2个特征,即如何找到2个描述符之间的汉明距离?

ORB描述符:

descriptor1 =[34, 200, 96, 158, 75, 208, 158, 230, 151, 85, 192, 131, 40, 142, 54, 64, 75, 251, 147, 195, 78, 11, 62, 245, 49, 32, 154, 59, 21, 28, 52, 222]
descriptor2 =[128, 129, 2, 129, 196, 2, 168, 101, 60, 35, 83, 18, 12, 10, 104, 73, 122, 13, 2, 176, 114, 188, 1, 198, 12, 0, 154, 68, 5, 8, 177, 128]

谢谢 .

1 回答

  • 6

    ORB描述符只是32字节uchar Mat的 .

    bruteforce和flann matchers做的工作不仅仅是比较描述符,但如果这就是你现在想要的全部,那将是一个直的norm

    Mat descriptor1, descriptor2;
       double dist = norm( descriptor1, descriptor2, NORM_HAMMING);
       // NORM_HAMMING2 or even NORM_L1 would make sense, too.
       // dist is a double, but ofc. you'd only get integer values in this case.
    

相关问题