看起来很容易。毕竟我们知道 std 或 openCV 向量可以很容易地转换为矩阵,如下所示:
vector<Point> iptvec(10);
Mat iP(iptvec);
在 openCV 备忘单中建议相反:
vector<Point2f> ptvec = Mat_ <Point2f>(iP);
但是,有一个警告:矩阵必须只有一行或一列。要转换任意矩阵,您必须重塑:
int sz = iP.cols*iP.rows;
vector<Point2f> ptvec = Mat <Point2f>(iP.reshape(1, sz));
否则会报错:
*OpenCV 错误:在创建、文件/主页/.../OpenCV-2.4.2/modules/core/src/matrix.cpp,第 1385 行...