前言
本人是一名非标电气工程师,从事非标自动化上位机软件的开发工作,近期有意系统学习一下图像处理知识。因对C#比较熟悉,不想从头学习C++和Python,又不想使用商用的Halcon和VisionPro,经过再三考量,决定使用EmguCV作为入门学习。 本系列将以日本人写的OpenCV的100问为例,逐一用EmguCV实现。
一、EmguCV下载与安装
在网站找到对应的版本进行下载即可https://sourceforge.net/projects/emgucv/ ,如下图,博主使用是4.5.3版本,点击链接下载即可(该网站下载链接不太稳定,如需要可从博主迅雷云盘下载该版本:https://pan.xunlei.com/s/VMo45QvIewdvdLovzemhM5weA1 提取码:wxfs)
下载完成后,直接双击运行,选择路径进行解压即可。 注:EmguCV的4.5.3版本无需像网上其他人讲的需要配置环境变量等步骤,只需正常解压即可。下一节将介绍如何引用动态库
二、搭建项目运行环境
环境配置 WIN10 + VS2019 + EmguCV4.5.3 1.创建项目 用VS2019 创建 控制台应用程序(.NET Framework) 2.添加DLL引用 找到EmguCV的安装路径,添加在libs文件夹中的如下三个动态库 3.添加共享项目 右键解决方案,选择添加→现有项目,找到\Emgu.CV.Runtime\Windows\Emgu.CV.Runtime.Windows.shproj,选择添加 添加完成后,会出现如下图标
在EmguCV_Hello World项目引用中添加共享项目引用 4.修改项目属性 重要!!!!! 很多新人朋友在运行时会报错,提示加载不正确的程序格式,需要将该处默认的首选32位的勾选去掉
三、Emgu版的Hello World
本示例还需要用的system.Drawing,所以在复制以下代码后,还需要添加引用
using Emgu.CV;
using Emgu.CV.CvEnum;
using Emgu.CV.Structure;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace EmguCV_Hello_World
{
class Program
{
static void Main(string[] args)
{
String win1 = "Test Window";
CvInvoke.NamedWindow(win1);
Mat img = new Mat(200, 500, DepthType.Cv8U, 3);
img.SetTo(new Bgr(255, 0, 0).MCvScalar);
CvInvoke.PutText(img, "Hello, world", new System.Drawing.Point(10, 80), FontFace.HersheyComplex, 2.0, new Bgr(0, 255, 255).MCvScalar, 4);
CvInvoke.Imshow(win1, img);
CvInvoke.WaitKey(0);
CvInvoke.DestroyWindow(win1);
}
}
}
运行如下
恭喜你,已经可以正常运行EmguCV,接下来和我一同学习EmguCV的图像处理知识吧!
|