如何在 OpenCV 中将数据从 cv::Mat 复制到 CvMat,反之亦然?
问问题
10803 次
2 回答
9
根据cv::Mat 的文档,cv::Mat
有一个带有CvMat *
参数和operator CvMat()
成员函数的构造函数。因此,两者之间的复制可以很容易地完成,如下所示。
cv::Mat m;
// populate m
CvMat n = m; // cv::Mat::operator CvMat() const;
m = cv::Mat(&n); // cv::Mat::Mat(const CvMat* m, bool copyData = false);
// or
m = cv::Mat(&n, true); // to copy the data
于 2012-07-06T00:36:44.940 回答
1
根据opencv文档(http://docs.opencv.org/2.4/modules/core/doc/basic_structures.html):
“通过转换运算符 Mat::operator CvMat() const 和 Mat::operator IplImage() 提供从 Mat 到 CvMat 或 IplImage 的反向转换。运算符不复制数据。”
于 2016-03-15T10:18:05.437 回答