1

我正在計算已經計算出的兩個描述符之間的距離(歐幾里得或漢明)。問題是我不想使用匹配器,我只是想計算兩個描述符之間的距離。 我使用的OpenCV 2.4.9我有我的描述符存儲在墊類型:計算兩個描述符之間的距離

Mat descriptors1; 
Mat descriptors2; 

和現在我只想(因爲我使用二進制描述符優選的漢明距離)來計算的距離之間描述符1的第1行和描述符2的第1行(例如)。

我試圖使用bitwise_xor()函數,但後來我沒有一個有效的做bitcount的方式。有沒有函數來計算兩個陣列之間的漢明距離?

我注意到我對OpenCV相當陌生,但是我很感激任何幫助。謝謝

回答

5

你可以使用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. 
相關問題