【问题标题】:Convert cv::Mat to Magick::Image将 cv::Mat 转换为 Magick::Image
【发布时间】:2012-01-03 20:45:31
【问题描述】:

我正在尝试将 OpenCV C++ cv::Mat 转换为 ImageMagick Magick::Image。我能找到的唯一示例使用较旧的 C OpenCV iplImage(例如,请参阅 here)。

有没有一种简单的方法可以做到这一点?

【问题讨论】:

    标签: c++ opencv imagemagick


    【解决方案1】:

    就这么简单:

    Image Mat2Magick(Mat& src)
    {
       Image mgk(src.cols, src.rows, "BGR", CharPixel, (char *)src.data);
       return mgk;
    }
    

    请注意,该函数不会复制数据。如果在使用 Mat 镜像之前发布了 magik 镜像,则结果为SEGFAULT

    【讨论】:

      【解决方案2】:

      mat 总是比图像本身大。为了更有效地访问图像数据,将宽度更改为 2 的倍数。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-12-29
        • 2014-05-07
        • 2011-06-07
        • 2016-04-13
        • 2011-10-23
        相关资源
        最近更新 更多