我只知道 C 语言,所以我很困惑/不理解 openCV
数据类型的语法,尤其是 cv::Mat, CvMat* , 垫子。
我的问题是如何将 cv::Mat
转换为 const CvMat
* 或 CvMat*
,谁能提供文档链接CvMat *mat
与 cv::Mat
和opencv2.4 中的Mat
的区别。
以及如何将我的 int 数据转换为 CvMat 中的 float 数据? 谢谢
最佳答案
cv::Mat
有一个 operator CvMat()如此简单的作业:
cv::Mat mat = ....;
CvMat cvMat = mat;
这使用相同的基础数据,因此您必须注意 cv::Mat
不会在 CvMat
之前超出范围。
如果您需要在采用CvMat*
的API 中使用CvMat
,则传递对象的地址:
functionTakingCmMatptr(&cvMat);
至于cv::Mat
和Mat
的区别,它们是一样的。在 OpenCV
示例中,通常假设(我认为这不是一个好主意)使用了 using namespace cv
。
关于c++ - 将 cv::Mat 转换为 const CvMat* 或 CvMat*,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11027574/