opencv python中cv2.NORM_L2和cv2.NORM_L1之间的区别

时间:2015-09-29 16:43:00

标签: python opencv feature-detection

我正在使用python额外模块的sift算法进行一些功能匹配。 虽然我不明白的一件事是传递给BFMatcher的normType背后的概念。即在哪种情况下必须使用哪些?

任何帮助都是非常宝贵的

1 个答案:

答案 0 :(得分:10)

来自WolframAlpha NormL1NormL2

给出一个向量:

enter image description here

Norm L1 是出租车(或曼哈顿)距离(绝对值之和):

enter image description here

Norm L2 是欧氏距离(平方和的平方根):

enter image description here

规范的类型告诉BFMatcher如何计算每两个特征之间的距离。

NORM L1的计算速度通常要快得多(主要是因为你不计算平方根)。 NORM L2更准确。

你可以找到一个很好的比较here