C# 如何将位图转换为图像<;Bgr,字节>;
我正在使用OpenCV库进行图像处理C# 如何将位图转换为图像<;Bgr,字节>;,c#,.net,opencv,C#,.net,Opencv,我正在使用OpenCV库进行图像处理 我想将系统.Drawing.Bitmap转换为图像。如何执行此操作?图像构造函数有一个位图重载(假设您正在使用Emgu CV包装器,因为您已将其标记为.NET) Image myImage=新图像(myBitmap); 需要关注的人: 您应该将依赖项dll添加到项目中,并将Emgu\emgucv windows universal cuda 2.9.0.1922\bin\x86中的“复制到输出目录”属性更改为“始终复制”(添加->现有项) 在我的项目中添加:
我想将
系统.Drawing.Bitmap
转换为图像
。如何执行此操作?图像构造函数有一个位图
重载(假设您正在使用Emgu CV包装器,因为您已将其标记为.NET
)
Image myImage=新图像(myBitmap);
需要关注的人:
您应该将依赖项dll添加到项目中,并将Emgu\emgucv windows universal cuda 2.9.0.1922\bin\x86中的“复制到输出目录”属性更改为“始终复制”(添加->现有项)
在我的项目中添加:opencv_core290.dll、opencv_highgui290.dll、opencv_ffmpeg290.dll、opencv_imageproc290.dll和cudart32_55.dll
from:图像的构造函数不再接受位图作为参数。对于Emgu版本4.3,我必须使用以下代码:
Image emguImage=bitmap.ToImage();
我在github和补丁笔记中找到了它。官方文档教程没有正确更新。我使用的是Emgu 4.3.0.3890,我遇到了与我的团队集成代码相同的问题。 给我带来麻烦的是:
Image<Bgr, byte> img = bitmap.ToImage<Bgr, byte>();
Image img=bitmap.ToImage();
我没有看到构建创建了两个名为x86和x64的新目录。
当我发现它时,我将这两个目录添加到二进制文件的位置,一切都正常。
我没有时间去看这些目录中的哪一个文件对它负责,但嘿,它起了作用。:-) 在.NET
Emgu.CV 4.4.0.4099
中,我必须安装Emgu.CV.Bitmap 4.4.0.4099
和Emgu.CV.runtime.windows
才能使用Bitmap.ToImage()
扩展方法。我在NetStandard 2.1上使用Emgu.CV 4.5.1.4349
需要安装Emgu.CV.Bitmap和Emgu.CV.runtime.windows才能将位图转换为图像
var myImage=myBitmap.ToImage()错误:“Emgu.CV.CvInvoke”的类型初始值设定项引发了异常。请尝试此处描述的步骤。谢谢,这正是我想要的。尤其是当我浏览到他们的文档页面时,他们的文档页面会出现异常。。。
Image<Bgr, byte> img = bitmap.ToImage<Bgr, byte>();