为什么带有ROI的copyto会产生空白结果?

时间:2018-12-06 07:23:24

标签: c++ opencv

我的图像定义如下:

cv::Mat mapCanva = cv::Mat(256, 256, CV_8UC1, cv::Scalar::all(0));

和其他

cv::Mat shapeToBlit is loaded from png file, its 100x100

shapeToBlit .copyTo(mapCanva );

工作正常,但生成的图像为100x100,而我希望将shapeToBlit复制到mapCanvas顶部,所以我这样做:

cv::Mat insetImage = mapCanva(cv::Rect(0, 0, 100, 100));
shapeToBlit .copyTo(insetImage);

但是结果只是空白,就像什么都没有复制一样。嗯嗯。

如果我这样做:

shapeToBlit .copyTo(mapCanva(cv::Rect(100, 100, ourWidth, ourHeight)));

我的应用只是在行上的matrix.cpp内部崩溃:

CV_Assert(!fixedSize() || ((Mat*)obj)->size.operator()() == Size(cols, rows));

我在做什么错?在版本2.4和3.4上都尝试过

0 个答案:

没有答案