如何安装和测试EmguCv:(Asp.net+vue+nginx+EmguCv)
首先先介绍一下OpenCV,OpenCV的全称是:Open Source Computer Vision Library,OpenCV是一个基于(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。OpenCV 拥有包括 300 多个C函数的跨平台的中、高层 API。它不依赖于其它的外部库——尽管也可以使用某些外部库。
EmguCV是OpenCV的一个跨平台的.Net封装,由于OpenCV是用C和C++编写的,Emgu用C#对其进行封装,允许用.Net语言来调用OpenCV函数,如C#、VB、VC++等,同时该封装也可以被编译到Mono平台和允许在Windows、Mac OS、Android、iPhone、iPad等多个平台上运行。
下面开始介绍如何在Windows下安装EmguCv
1、下载并安装EmguCv 3.* 64位版本(本教程版本3.0.0.2157)
我们可以去官网下载最新的安装包(点击打开),下载后双击安装,建议安装到C盘,防止不必要的权限麻烦,一般来说默认安装即可,一路Next下去
2、测试Demo代码
EmguCv安装完成后会在安装路径上多很多文件,其中有一个文件是专门放VSDemo代码的,如下图
![92395b5b58530f2aa6877303971a4dc2.png](https://i-blog.csdnimg.cn/blog_migrate/76b30dd2c8e5f8fb66c2dfe891adb3bc.jpeg)
EmguCv
我们打开安装路径下的Solution,选择相应的解决方案,打开项目即可,打开后会有很多相关例子,如人脸识别、车牌识别等,我们要测试的是一个Hello World项目,如下
![ad195863a2531f379a00d29886983a09.png](https://i-blog.csdnimg.cn/blog_migrate/fcf834885f1d01ca909942d6d28ad799.jpeg)
Hello World
直接设为启动项目,然后重新生成再运行,如果看到下面代码说明EmguCv安装成功
![e94bbc1e02cdf49e5a192bd858cafaad.png](https://i-blog.csdnimg.cn/blog_migrate/b716e1c0c14e96434269521086c0f93f.jpeg)
hello world
显示出这样的效果,基本说明安装成功(不代表设置成功,后面介绍)
3、检查Demo项目的配置
如果已经迫不及待的去开发代码了,哪怕是直接复制代码,有时候会发现根本无法运行,先不急,我们去看一下Demo项目的相关配置(以HelloWorld为例)
我们右键项目,选择属性,可以看到下面的项目设置
![704d4da81a3987fb0e57718fc3fcbf08.png](https://i-blog.csdnimg.cn/blog_migrate/438a09c1281ca5463fcd5932ab998068.jpeg)
项目设置》生成
![f16ccb709fdbc245357b3c0b231699cf.png](https://i-blog.csdnimg.cn/blog_migrate/36ce3a362c9c2f6b12b861601bfdafbe.jpeg)
项目设置》应用程序
在这里我们注意到两个地方不太一样,一个是生成下面的输出不在当前项目下(一般来说,输出路径为当前项目的bin/Debug下),浏览发现输出路径是前面提到的EmguCv安装路径的bin路径(这点很重要,往往也是自己代码运行不起来的原因);第二点是发现目标框架不是我们所安装那个,而是比较低的版本,因为我们的项目默认目标框架是4.0/4.5,而它的是3.5,如果实在运行不起来可以尝试减低目标框架的版本(虽然我没试过)
4、添加环境变量
如前面介绍的输出路径,项目生成的dll在EmguCv的bin目录下,可以获取的EmguCv的全部库函数(包括openCv),如果不指定输出路径,代码运行时会报错,原因是找不到EmguCv的库函数,为了全局访问,我们要把EmguCv的bin路径添加到系统变量path上,当然还需要EmguCv的bin下的x64和x86路径(openCv)(共添加3条记录)
相信添加环境变量这种小case不用解释了,添加完成后重启电脑,让设置生效。
5、开发自己的代码(模仿HelloWorld)
完成配置后,新建一个控制台项目,然后引用相应的dll
![4195997cdf94a24b101bdd793504b7a2.png](https://i-blog.csdnimg.cn/blog_migrate/b8b097e79255cd5e72c6d77c73a9d464.jpeg)
新建项目,引入dll
然后在Main下复制HelloWorld(Demo)的代码,重新生成解决方案在运行即可(一般不再需要修改输出路径和目标框架)
![c12c681ef8f1a7b0b2eda68cdedf9e52.png](https://i-blog.csdnimg.cn/blog_migrate/75a6f1994e7f0f2594881067a911e3e1.jpeg)
Hola Msg
至此,EmguCv的安装和测试完成,后面就可以开发高级应用,如人脸识别等