使用原始数据OpenCV设置已分配的Mat

时间:2015-02-14 07:01:15

标签: c++ opencv

我有来自API的uchar* raw代表图像原始数据。此raw的宽度,高度和通道数已为人所知。我已经预先分配了一个宽度和高度的cv :: Mat(OpenCV)。

我的问题是 - 怎么可能将raw设置为这个cv :: Mat。我想将raw复制到cv :: Mat而不是仅仅切换指针。有没有完成此功能的功能,或者我需要自己手动执行此操作?

2 个答案:

答案 0 :(得分:0)

我想这不是最复杂的方式,但应该有效:

uchar* raw; cv::Mat image(size, type, raw); image = image.clone();

答案 1 :(得分:-1)

cv::Mat mat(cv::Size(width, height), CV_8UC1, raw, cv::Mat::AUTO_STEP);

copiedImage = mat.clone();