首页 > 解决方案 > Emgu.CV 4.2.0 图像转换方法不可用

问题描述

我有一个 .Net Standard 2.0 项目,最新版本的 Emgu.CV - 4.2.0.3636 通过 Nuget 包安装。我还有 System.Drawing.Common 包,它支持位图。我需要将 Mat 转换为位图并从现有位图创建 Mats 的可能性。以前 Mats 有 Bitmap 属性,并且有一个 Image 的构造函数,例如接受 Bitmap 作为参数。从我在 Emgu.CV 4.2.0 版本的发行说明中看到的 - 这些已被位图的 ToMat() 扩展方法和 Mats/Images 的 AsBitmap() 方法取代。但是对我来说,这两种方法都不可用。

官网发布说明说:

它已被添加到 Emgu.CV.UI nuget 包(或 dll 文件)中

同时,我在 nuget 中看不到 Emgu.CV.UI 包,只有我已经安装的 Emgu.CV 包。

我还可能缺少什么?

标签: c#emgucv

解决方案


从 Emgu 4.4.0 开始,位图部分位于第三个(NuGet)包 Emgu.CV.Bitmap 中,它解决了这个问题(曾经在 Emgu.CV.runtime.windows 中,4.3.0 及之前版本)。

所以你需要三个包:

  • Emgu.CV(当然)
  • Emgu.CV.runtime.windows
  • 现在,Emgu.CV.Bitmap

推荐阅读