//因此需要把Mat类型转化为BitmapImage类型。
// 先把Mat转化为Bitmap类型:
public BitmapImage MatToBitmapImage(Mat image)
{
Bitmap bitmap = MatToBitmap(image);
using (MemoryStream stream = new MemoryStream())
{
bitmap.Save(stream, System.Drawing.Imaging.ImageFormat.Png); // 坑点:格式选Bmp时,不带透明度
stream.Position = 0;
BitmapImage result = new BitmapImage();
result.BeginInit();
result.CacheOption = BitmapCacheOption.OnLoad;
result.StreamSource = stream;
result.EndInit();
result.Freeze();
return result;
}
}
//再转化为BitmapImage类型。
public Bitmap MatToBitmap(Mat image)
{
return OpenCvSharp.Extensions.BitmapConverter.ToBitmap(image);
}