导航

C#调用OpenCV(一) 配置VS+OpenCV+Emgu cv

Posted on 2011-12-21 10:05  寒宵飞飞  阅读(4256)  评论(0编辑  收藏  举报

VS版本:VS2008

开发语言:C#

opencv版本:OpenCV-2.1.0-win32-vs2008

Emgu cv版本:libemgucv-windows-x86-2.3.0.1416(Emgu cv是OpenCV 跨平台的C#封装包,主要是为了方便在C#里使用 OpenCV 的库函数)

 

 

安装步骤:

1. 安装opencv-2.1.0-win32-vs2008,假设安装目录为c:\opencv2.1。安装过程中注意选择添加环境变量,把“add it to your Current User PATH “前的复选框勾上。

2. 安装Emgu cv,安装路径可以直接放到opencv2.1的目录下。

3. 建立一个C# winform程序,添加引用->浏览->Emgu cv安装目录\bin:引用Emgu.CV,Emgu.Util,Emgu.CV.DebuggerVisualizers.VS2008,ZedGraph。

项目代码中添加

using Emgu.CV;
using Emgu.Util;

 

4. 添加一个按钮button1

 private void button1_Click(object sender, EventArgs e)
{
     CvInvoke.cvNamedWindow("Hello");
     IntPtr img = CvInvoke.cvLoadImage("G:/LENA.bmp", Emgu.CV.CvEnum.LOAD_IMAGE_TYPE.CV_LOAD_IMAGE_ANYCOLOR);
     CvInvoke.cvShowImage("Hello", img);
     CvInvoke.cvWaitKey(0);
     CvInvoke.cvReleaseImage(ref img);
     CvInvoke.cvDestroyWindow("Hello");
}

5. 将Emgu cv安装目录\bin下的的所有dll文件考到项目路径\bin\Debug目录下

6. 运行项目文件,单击button,可以显示G盘下的LENA图像文件。

 

 

 

 备注:如果不进行第5步,会提示未处理 System.TypeInitializationException “Emgu.CV.CvInvoke”的类型初始值设定项引发异常错误;

          或者参考http://blog.csdn.net/converse0525/article/details/5556061,将Emgu cv安装目录\bin下的所有DLL文件拷贝到OpenCV安装目录下的Bin文件夹里。