Emgu学习手册
作为opencv的c#封装库。emgu可以满足基本的图像处理功能,经过测试,效果还可以,主要用于windows窗体应用程序的开发,或者wpf,你可以用来做ocr,也可以用来做人脸识别或者可以用来做定位,如果你学过opencv的话,相信你一定很容易上手。
今天奖第一步,下载emgu,注意的是,emgu不同版本的差别很大,很多函数在不同的版本都不一样,所以学习的时候要注意书本的版本和你自己的版本匹配。https://sourceforge.net/projects/emgucv/ 我的是3.0版本的。所以以后的一切都是在3.0的基础上进行。下载的时候,最好选占用内存小的那个,主要是为了以后将你做的程序移植到其他没有配置emgu环境的电脑上。安装是个傻瓜式的我就不一一细讲了,安好了以后,老样子,先在电脑的高级设置中设置环境变量中系统变量的path路径,然后在visual studio2013(我的版本)中新建windows窗体应用,然后引用emgu文件夹中的bin文件中的emgu.cv.unti和emgu.cv.ui和emgu.cv三个dll文件,引用完后,在vs工具,工具项中引入emgu.cv.ui文件,然后将三个属于emgu的控件添加到工具箱(直方图,imagebox等)至此,一切准备就绪,下边我们开始做一个demo来试试。
从工具箱中拉出一个imagebox控件放在form窗体中,再拉出一个button控件,编写button控件的click事件,添加代码如下:
string path = @"...";//找一个图片的路径放入 。
Mat scr = new Mat(path,Emgu.CV.CvEnum.LoadImageType.Grayscale);//Mat是emgu用来存储图像数据的容器,新建一个容器用来存储path路径中的图片(灰度图片)。
imagebox1.image = scr;//imagebox1是控件Name,它的image属性表示控件要显示的图像数据,即将灰度处理后的path路径图像数据再imagebox中展现出来。
现在你编译运行试试,不过一般运行后将会出现异常,是因为emgu.cv.dll初始类型问题,这个问题出现的原因是因为编译的时候找不到对应的dll文件,我们可以在vs菜单项目,找到属性,然后在弹出窗口的生成栏中,选择x64或者x86cpu,再次运行,如果我们设置了系统变量的path以及在vs中引入并且制定了优先处理的cpu类型,但是它还是无法找到,那么此时我们就只能把emgu文件夹中bin文件下的x86或者x64文件夹(取决于你电脑,x86表示32位,x64表示64位)复制到项目文件夹的bin文件中debug目录下。再次运行,应该就可以了。
emgu的学习资料有些少,祝君好运。
Emgu学习手册的更多相关文章
- Redis学习手册(目录)
为什么自己当初要选择Redis作为数据存储解决方案中的一员呢?现在能想到的原因主要有三.其一,Redis不仅性能高效,而且完全免费.其二,是基于C/C++开发的服务器,这里应该有一定的感情因素吧.最后 ...
- git学习手册
#git学习手册 git: Git是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常大的项目版本管理.[2] Git 是 Linus Torvalds 为了帮助管理 Linux内核开发而 ...
- C#学习手册
考研学子为何放弃考研?C++开发ArcGis为何无疾而终?C#为何又成为新宠?这一切得一切是人性的扭曲还是道德的败坏,敬请收看接下来的C#学习手册.ps:一天一更.拖更打死.
- SQL语句学习手册实例版
SQL语句学习手册实例版 表操作 例1 对于表的教学管理数据库中的表 STUDENTS ,可以定义如下: CREATE TABLE STUDENTS (SNO NUMERIC (6, ...
- Redis学习手册——转载
转载出处:http://www.cnblogs.com/stephen-liu74/archive/2012/04/16/2370212.html 为什么自己当初要选择Redis作为数据存储解决方案中 ...
- Emgu学习之(四)——图像阈值
http://www.cnblogs.com/CoverCat/p/5043833.html Visual Studio Community 2015 工程和代码:http://pan.baidu.c ...
- Git版本控制软件结合GitHub从入门到精通常用命令学习手册(转)
简要参考:http://www.tuicool.com/articles/mEvaq2 http://gitref.org/zh/index.html GIT 学习手册简介 本站为 Git 学习参考手 ...
- (转) 坚持完成这套学习手册,你就可以去 Google 面试了
坚持完成这套学习手册,你就可以去 Google 面试了 系统 指针 value Google 面试 阅读6138 本文为掘金投稿,译文出自:掘金翻译计划 原文地址:Google Interv ...
- Emgu学习之(二)——图像读取、显示、保存
visual Studio Community 2015 工程和源代码:http://pan.baidu.com/s/1o6u5Fdw 内容 在这篇文章中将提到以下内容: 从文件中读取图像 Image ...
随机推荐
- Backbone的一点使用心得
Backbone的其实感觉上上手很难,大概在一年前就想实践下,结果总是没有付诸行动,这次需求中狠狠心决定一定要使用一次看看,感受下. 可是第一步真的比较困难,因为直接看API好像没有感觉就在网上找实例 ...
- mysql 找回密码方法
1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库. 因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的 状态下,其他的用户也可以任意地登录 ...
- C# MVC 自定义ActionResult实现EXCEL下载
前言 在WEB中,经常要使用到将数据转换成EXCEL,并进行下载.这里整理资料并封装了一个自定义ActionResult类,便于使用.如果文章对你有帮助,请点个赞. 话不多少,这里转换EXCEL使用的 ...
- i7 4790 z97-ar ssd 固态硬盘 装机的一些经历
今天电脑终于装好了,我于七夕情人节前后的几天配了一台台式机用开发,期间遇到了一些问题与大家分享一下,希望对一些朋友有帮助. 1 买HIMD线,各个零件全部组装好后,我意识到一个问题没买HIMD线,我的 ...
- CSipSimple通话记录分组
为了便于查看通话记录,通常要对通话记录进行分组.本质上来说这没什么难度,只需要用ContentResolver去读数据库,剩下的就是策略问题.代码在com/csipsimple/ui/calllog/ ...
- liunx 下 部署并运行java项目(非web)
1. 将这三个包上传到liunx上,之后写一个run.sh 的脚本文件,然后在lib包中上传包<sunjce-provider.jar>包. 2.启动run.sh( ./run.sh st ...
- ie7 用 clearfix 清除浮动时遇到的问题
<!doctype html> <html> <head> <style> .fr{float:right;display:inline} li{bor ...
- jQuery原生框架-----------------核心框架
// 1.自调防止全局变量污染(function( window ) { var version = '1.0.0'; var document = window.document; var arr ...
- java 多线程
1.继承Thread类实现多线程继承Thread类的方法尽管被我列为一种多线程实现方式,但Thread本质上也是实现了Runnable接口的一个实例,它代表一个线程的实例,并且,启动线程的唯一方法就是 ...
- 用tcpdump分析tcp三次握手,四次挥手
1.tcpdump 简介 tcpdump是一个对网络上的数据包进行截获的包分析工具,一般linux系统以命令的形式使用 2.tcp三次握手 建立一个tcp连接会发生下面三个过程: 1.服务器必须准备好 ...