Apparemment trompeusement facile. Après tout ce que nous savons qu'un std ou vecteur OpenCV peuvent être facilement convertis en matrice comme ceci:convertir la matrice openCV en vecteur
vector<Point> iptvec(10);
Mat iP(iptvec);
L'inverse est suggéré dans OpenCV antisèche:
vector<Point2f> ptvec = Mat_ <Point2f>(iP);
Cependant, il y a une mise en garde: la matrice doit avoir seulement une ligne ou une colonne. Pour convertir une matrice arbitraire que vous avez à remodeler:
int sz = iP.cols*iP.rows;
vector<Point2f> ptvec = Mat <Point2f>(iP.reshape(1, sz));
Sinon, vous obtiendrez une erreur:
* OpenCV Erreur: Assertion a échoué (obscurcit == 2 & & (tailles [0] == 1 | | tailles [1] == 1 || tailles [0] * tailles [1] == 0)) dans create, fichier /home/.../OpenCV-2.4.2/modules/core/src/matrix.cpp , ligne 1385 ...
Est-ce une question? – alrikai