Emgu是C#中的计算机视觉库,相当于opencv用c#写了。之前一直用python 调用opencv,现在觉得语言上大同小异,掌握一个即可。
本人电脑环境windows10+VS2010
https://sourceforge.net/projects/emgucv/ 下载libemgucv-windesktop-3.2.0.2682
第一步:下载并安装,安装完成后在环境变量中的path添加E:\Emgu\emgucv-windesktop 3.2.0.2682\bin(我在用户变量和系统变量都添加了),添加完后重启电脑。
第二步:打开VS,新建一个窗体应用程序(控制台程序),在工具—选择工具箱项,添加Emgu.CV.UI.dll。然后再你的项目引用下再添加引用(ZedGraph.dll、Emgu.CV.World.dll、Emgu.CV.UI.GL.dll、Emgu.CV.UI.dll)。配置完成
第三步:此时配置完成,但是为了避免后面出现问题,将emgu安装文件下bin文件中的×64和×86文件夹拷贝到C#新建项目的bin 文件下的debug目录下。
第四步:开始你的程序之旅,在c#中写的程序几乎和python中调用opencv的写法大同小异(其中就是一个在c#控件中pictureBox显示图像的话,要将你读入的图像转为位图,Bitmap).
code
OpenFileDialog diag = new OpenFileDialog();
diag.Filter = "图片|*.jpg;*.png;*.tif";
if (diag.ShowDialog() == DialogResult.OK)
{
Mat im1 = CvInvoke.Imread(diag.FileName,0);//和python 中差不多
imageBox1.Image = im1;//如果是pictureBox,则需要将im1转为Bitmap(位图),即pictureBox1.Image=im1.Bitmap
//opencv 显示图像的形式
CvInvoke.Imshow("im1",im1);
CvInvoke.WaitKey(0)