C# 调用OpenCV一 配置VS2010+OpenCV2.4.11+Emgu CV2.4.9

来源:互联网 发布:sun官方java教程 pdf 编辑:程序博客网 时间:2024/05/29 17:31
C# 调用OpenCV

Emgu CVOpenCV的一个跨平台的.Net封装,由于OpenCV是用C和C++编写的,Emgu用C#对其进行封装,允许用.Net语言来调用OpenCV函数,如C#、VB、VC++等,同时该封装也可以被编译到Mono平台和允许在Windows、Mac OS、Android、iPhone、iPad等多个平台上运行.

Emgu CV官方下载Emgu CV http://www.emgu.com
安装包下载地址: http://sourceforge.net/projects/emgucv/

官方参考文档地址:http://www.emgu.com/wiki/files/2.4.10/document/index.html
这里使用的Emgu CV是:libemgucv-windows-universal-gpu-2.4.9.1847.exe 
VS2010已经配置OpenCV2.4.11的基础上,配置C#调用Emgu CV环境。OpenCV2.4.11安装在D:\Program File\opencv目录下。

1、Emgu CV安装包安装时,安装路径可以直接放到opencv2.4.11的目录下。


2、Emgu CV安装后

进入bin/x86文件夹是运行时所需要的依赖文件,在开发时,需要把这些文件复制到程序的Debug文件夹内,不然会抛出TypeInitializerException 异常:

有关EmguCV相关的类都在bin文件夹里面

3、新建C#测试程序
(1)新建一个C#窗体应用程序,并在Form1中添加一个按钮控件。

(2)添加引用,D:\Program File\opencv\emgucv-windows-universal-gpu 2.4.9.1847\bin目录下的:Emgu.CV.dll;Emgu.Util.dll;Emgu.CV.DebuggerVisualizers.VS2010.dll;ZedGraph.dll


emgu cv安装目录D:\Program File\opencv\emgucv-windows-universal-gpu 2.4.9.1847\bin\x86下的所需要的依赖文件,在开发时,需要把这些文件复制到程序的Debug文件夹内。

(3)添加代码:
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using Emgu.CV;  //引用添加进来的命名空间using Emgu.Util;//引用添加进来的命名空间namespace CSharp_opencv{    public partial class Form1 : Form    {        public Form1()        {            InitializeComponent();        }        private void button1_Click(object sender, EventArgs e)        {            IntPtr img = CvInvoke.cvLoadImage("E:\\图库\\abc.jpg", Emgu.CV.CvEnum.LOAD_IMAGE_TYPE.CV_LOAD_IMAGE_COLOR);            CvInvoke.cvNamedWindow("hello");            CvInvoke.cvShowImage("hello", img);            CvInvoke.cvWaitKey(0);            CvInvoke.cvReleaseImage(ref img);            CvInvoke.cvDestroyWindow("hello");        }    }}
4编译程序,运行结果如图:


0 0
原创粉丝点击