天天看點

關于emgucv的書_【Emgu】一起學EmguCV(一)配置與使用

首先先介紹一下OpenCV,OpenCV的全稱是:Open Source Computer Vision Library,OpenCV是一個基于(開源)發行的跨平台計算機視覺庫,可以運作在Linux、Windows和Mac OS作業系統上。它輕量級而且高效——由一系列 C 函數和少量 C++ 類構成,同時提供了Python、Ruby、MATLAB等語言的接口,實作了圖像處理和計算機視覺方面的很多通用算法。OpenCV 擁有包括 300 多個C函數的跨平台的中、高層 API。它不依賴于其它的外部庫——盡管也可以使用某些外部庫。

關于emgucv的書_【Emgu】一起學EmguCV(一)配置與使用

EmguCV是OpenCV的一個跨平台的.Net封裝,由于OpenCV是用C和C++編寫的,Emgu用C#對其進行封裝,允許用.Net語言來調用OpenCV函數,如C#、VB、VC++等,同時該封裝也可以被編譯到Mono平台和允許在Windows、Mac OS、Android、iPhone、iPad等多個平台上運作

特性:

Image class with Generic Color and Depth

Automatic garbage collection(自動垃圾回收)

Xml Serializable Image(用于網絡)

Image class / Direct invoke function from OpenCV(直接對OpenCV函數的invoke操作)

Generic operations on image pixel(對像素操作)

接下來看看EmguCV的使用

這裡使用的是   libemgucv-windows-universal-gpu-2.4.9.1847.exe (228.6 MB)

2、解壓或安裝完後得到下面檔案

關于emgucv的書_【Emgu】一起學EmguCV(一)配置與使用

先安裝 vcredist_x86 (如果需要開發的是64位的程式,擇安裝x64版本,我是兩個都裝)

3、進入bin/x86檔案夾

圖中框出來的是運作時所需要的依賴檔案,在開發時,需要把這些檔案複制到程式的Debug檔案夾内,不然會抛出 TypeInitializerException異常

關于emgucv的書_【Emgu】一起學EmguCV(一)配置與使用

4、有關Emgu相關的類都在bin檔案夾裡面

關于emgucv的書_【Emgu】一起學EmguCV(一)配置與使用

5、下面示範一下Hello World程式

建立一個工程,引用兩個庫

關于emgucv的書_【Emgu】一起學EmguCV(一)配置與使用

引用命名控件,記得還要把上面框出來的OpenCV依賴檔案複制到Debug目錄下

usingEmgu.CV;usingEmgu.CV.CvEnum;using Emgu.CV.Structure;

添加一個按鈕,一個PictureBox控件

private void button1_Click(objectsender, EventArgs e)

{

Image img = new Image(480, 320, new Bgr(0, 255, 0));

MCvFont f= new MCvFont(FONT.CV_FONT_HERSHEY_TRIPLEX, 1.0, 1.0);

img.Draw("hello world", ref f, new Point(10, 80), new Bgr(0, 0, 0));

pictureBox1.Image=img.ToBitmap();

}

關于emgucv的書_【Emgu】一起學EmguCV(一)配置與使用