将cv::Mat转换为Magick::Image

6

我正在尝试将OpenCV C++中的 cv::Mat 转换为 ImageMagick 中的 Magick::Image。我能够找到的唯一示例使用旧版本的C OpenCV iplImage(例如,这里)。

是否有简单的方法实现这一转换?

2个回答

12

就是这么简单:

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

请注意,该函数不会复制数据。如果在使用Mat图像之前magik图像被释放,则结果将是SEGFAULT


-1

mat始终比图像本身要大。为了更有效地访问图像数据,宽度被改变为2的倍数。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接