c++ - 为什么带有 ROI 的 copyto 会产生空白结果?
问题描述
我的图像定义如下:
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 版上都试过了
解决方案
推荐阅读
- ios - 我正在尝试在 TableViewController 中加载 collectionView 并将 collectionView 添加到 tableView 的子视图中
- python - 我无法从 Python 为 Tkinter GUI 运行我的可执行文件。我怎样才能解决这个问题?
- android - OkHttp 拦截器和 CookieJar 不适用于最新的华为,如 P40
- c# - C# 尝试发送查询
- javascript - d3 - 在同一页面上使用 D3 v3 和 D3 v4
- node.js - Discord JS - 如何从 JSON 获取图像 url?
- python - Python:检查文件是否存在并仅复制丢失的文件
- reactjs - 创建一个以屏幕中间为中心的动态宽度 TextInput
- javascript - 无法在 Web 浏览器中运行此 React Native 示例
- mathematical-optimization - 具有最大日长和特定节点开始/结束日的旅行推销员问题