opencv - 如何将Emgu::CV::Mat转换为OpenCV cv::Mat,反之亦然?

我必须在C++ / CLI中的托管和非托管代码中都使用OpenCV。

我正在尝试在托管代码中使用Emgu CV来包装OpenCV对象,但是在进行转换时遇到了麻烦。

我该怎么做:

Emgu::CV::Mat convert = Function_That_Returns_OpenCV_CV_Mat();

或这个:
Function_That_Takes_OpenCV_CV_Mat(Emgu_CV_Mat_variable);

最佳答案

从OpenCV Mat到Emgu Mat:

cv::Mat openCvMat = Function_That_Returns_OpenCV_CV_Mat();
System::IntPtr openCvMatSystemIntPtr = openCvMat.ptr;
Emgu::CV::Mat^ result = 
   Emgu::CV::CvInvoke::CvArrToMat(
      openCvMatSystemIntPtr, false, false, 0);

https://stackoverflow.com/questions/36803713/

相关文章:

python-2.7 - Python OpenCV:Python 2.7与Python 3.5之间

python - 延时图像的亮度/直方图归一化

matlab - 光流直方图如何工作?

python - 从阈值图像中找到轮廓

opencv - 拼接细节中相机参数调整失败问题

android - 使用ORB和RANSAC的OpenCV中用于Android关键点匹配和阈值的性能

python - 从笔记本中提取文本

python - 从二进制字符串加载OpenCV图像

image - 不是JPEG文件:开头为0x0a 0x4c错误

opencv - 计算平行平面的单应性