这个post向我们展示了如何将cv::Mat
映射到Eigen矩阵而不复制数据,它运行正常,但有一点我不明白。
Mat A(20, 20, CV_32FC1);
cv::randn(A, 0.0f, 1.0f); // random data
// Map the OpenCV matrix with Eigen:
Eigen::Map<Eigen::Matrix<float, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor>> A_Eigen(A.ptr<float>(), A.rows, A.cols);
问题是,Mat A
不告诉A_Eigen
每行应该占用多少字节,据我所知,OpenCV的cv::Mat
可能会也可能不会填充在每一行上,我是否需要告诉Eigen每行有多少字节(如何?)?或者我可以安全地省略它?
Ps:我正在使用Eigen 3