【问题标题】:Set allocated Mat with raw data OpenCV使用原始数据 OpenCV 设置分配的 Mat
【发布时间】:2015-02-14 07:01:14
【问题描述】:

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

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

【问题讨论】:

  • cv::Mat(size, CV_8UC1, r​​aw).copyTo (yourPreallocatedImage);

标签: c++ opencv


【解决方案1】:

我想这不是最复杂的方法,但它应该可以工作:

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

【讨论】:

    【解决方案2】:
    cv::Mat mat(cv::Size(width, height), CV_8UC1, raw, cv::Mat::AUTO_STEP);
    
    copiedImage = mat.clone();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-19
      • 1970-01-01
      • 1970-01-01
      • 2014-06-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多