Mat
我建议您不要使用类型,而是使用IplImage
类型。以以下示例代码为参考(我使用 VisualStudio2013 和 OpenCvSharp2):
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using OpenCvSharp;
using System.Drawing;
namespace TestOpenCVSharp
{
class Program
{
static void Main(string[] args)
{
// Read the Lenna image
IplImage inputImage = new IplImage(@"Lenna.png");
// Display the input image for visual inspection
new CvWindow("original image", inputImage);
Cv.WaitKey();
// Convert into bitmap
Bitmap bitimg = MatToBitmap(img);
// Save the bitmap
bitimg.Save(@"bitmap.png");
} // end of main function
// This is the function that converts IplImage image
// into Bitmap
public static Bitmap MatToBitmap(IplImage image)
{
return OpenCvSharp.Extensions.BitmapConverter.ToBitmap(image);
} // end of MatToBitmap function
} // end of class definition
} // end of namespace definition
这是您输入的 Lenna 图像:

这是bitmap.png
从Bitmap
类型创建的:

希望能帮助到你!
更新:
通过使用 OpenCVSharp3,以下代码还可以将Mat
类型转换为Bitmap
类型:
Mat image = new Mat(@"Lenna.png");
Cv2.ImShow("image", image);
Cv2.WaitKey();
Bitmap bitimg = MatToBitmap(image);
// Save the bitmap
bitimg.Save(@"bitmap.png");
具有以下功能:
public static Bitmap MatToBitmap(Mat image)
{
return OpenCvSharp.Extensions.BitmapConverter.ToBitmap(image);
} // end of MatToBitmap function
并且得到的结果与上图相同。