【问题标题】:Calculate distance between two descriptors计算两个描述符之间的距离
【发布时间】:2014-12-07 04:58:13
【问题描述】:

我正在尝试计算已计算的两个描述符之间的距离(欧几里得或汉明)。问题是我不想使用匹配器,我只想计算两个描述符之间的距离。 我正在使用 OpenCV 2.4.9,并且我的描述符存储在 Mat 类型中:

Mat descriptors1;
Mat descriptors2; 

现在我只想计算描述符 1 的第 1 行和描述符 2 的第 1 行之间的距离(最好是汉明距离,因为我使用的是二进制描述符)。

我曾尝试使用 bitwise_xor() 函数,但没有找到有效的位计数方法。没有计算两个数组之间汉明距离的函数吗?

我注意到我对 OpenCV 还很陌生,但我感谢任何帮助。谢谢

【问题讨论】:

    标签: c++ opencv euclidean-distance hamming-distance feature-descriptor


    【解决方案1】:

    您可以为此使用 opencv 的 norm 函数。

    Mat descriptors1;
    Mat descriptors2; 
    
    double dist_l2  = norm(descriptors1,descriptors2,NORM_L2);      // l2 for surf,sift
    double dist_ham = norm(descriptors1,descriptors2,NORM_HAMMING); // for ORB,BRIEF,etc.
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-05-25
    • 2021-05-15
    • 1970-01-01
    • 2021-01-14
    • 2010-10-30
    • 1970-01-01
    相关资源
    最近更新 更多