将'Emgu.CV.Image <Emgu.CV.Structure.Bgr,byte>'转换为'System.Drawing.Image'

时间:2019-10-11 22:47:21

标签: c# emgucv face-recognition

我正在用C#进行人脸识别。 我该如何解决这个错误?

  

错误4无法将类型'Emgu.CV.Image'隐式转换为'System.Drawing.Image'

此代码:

cameraBox1.Image = Frame;
names = "" ;
User.Clear();

2 个答案:

答案 0 :(得分:0)

System.Windows.Forms.PictureBox这样的

cameraBox1不直接接受Emgu.CV.Image。您必须像这样System.Drawing.Image

那样将其转换为cameraBox1.Image = Frame.ToBitmap();

答案 1 :(得分:0)

有两种方法:

a)图像类Bitmap Property

cameraBox1.Image = Frame.Bitmap;

在图像像素数据周围包装位图。不涉及副本。

b)图像类ToBitmap() method

cameraBox1.Image = Frame.ToBitmap();

将图像中的像素数据复制到新的位图中。

哪种选择取决于您的需求。 a)速度更快,但创建的共享内存更难处理。