OpenCV distance euclidienne entre deux vecteurs

je veux calculer la distance euclidienne entre deux vecteurs (ou deux lignes Matrx, peu importe). Y a-t-il une bonne fonction pour cela dans OpenCV?

8
demandé sur farahm 2014-04-16 13:48:42

2 réponses

oui.

Mat a,b; // num of rows/cols/channels does not matter, they just have to be equal for both

double dist = norm(a,b,NORM_L2);
21
répondu berak 2014-04-16 10:05:54

Source: OpenCV, C++: Distance entre deux points

Mat pts1(nPts, 1, CV_8UC2), pts2(nPts, 1, CV_8UC2);
// populate them
Mat diffPts = pts1-pts2;
Mat ptsx, ptsy;
// split your points in x and y vectors. maybe separate them from start
Mat dist;
magnitude(ptsx, ptsy, dist); // voila!
2
répondu rafaoc 2017-05-23 10:31:15