抱歉,如果这是一个愚蠢的问题,我不是在c++中使用指针的最有经验的人。
我正在使用openCv,并将cv::Mat初始化为:
cv::Mat* frame;我还有另一个Mat,填充的数据初始化为:
cv::Mat frameRaw;显然,一个是指针,另一个不是。
我需要将数据从frameRaw复制到frame中。
我已经尝试过*frame = frameRaw;,但是它给了我一个异常错误。
我该怎么做呢?
谢谢。
发布于 2016-09-27 19:25:27
谢谢你指出我的错误。我没有正确初始化Mat。添加
frame = new cv::Mat();
修复了该问题。
发布于 2016-09-27 19:28:39
请看代码片段,希望这能回答您的问题:
Mat * f = new Mat(2,2,CV_32FC1);
f->at<float>(0,0) = 1;
f->at<float>(0,1) = 2;
f->at<float>(1,0) = 3;
f->at<float>(1,1) = 4;
Mat ff;
f->copyTo(ff);
cout<<ff;https://stackoverflow.com/questions/39723233
复制相似问题