C#下的 Emgu CV


Emgu CV下載地址

http://sourceforge.net/projects/emgucv/files/

找最新的下就行了,傻瓜式安裝,選擇目錄后自動完成安裝,然后提示安裝VS2008VS2010的插件,我使用的是VS2010,然后完成操作。

Emgu CV是什么?

Emgu CV.NET平台下對OpenCV圖像處理庫的封裝,也就是.NET版。可以運行在C#VBVC++等。

安裝完成后需要設置環境變量,比如我安裝在E:/Emgu/emgucv-windows-x86 2.2.1.1150,然后再系統環境變量添加E:/Emgu/emgucv-windows-x86 2.2.1.1150/bin即可

編寫第一個小程序

VS2010中新建一個Windows應用程序

首先需要導入UI插件

在瀏覽中定位到Emgu的安裝目錄bin下,選擇Emgu.CV.UI.dll

在引用中添加dll調用,分別是Emgu.CV.dllEmgu.CV.ML.dllEmgu.CV.UI.dllEmgu.Util.dll以及ZedGraph.dll

添加完畢后放置一個Button控件和一個imagebox控件(第三張圖中導入的自定義插件),然后編寫代碼即可

代碼

[c-sharp] view plain copy
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using Emgu.CV;//PS:調用的Emgu dll
  10. using Emgu.CV.Structure;
  11. using Emgu.Util;
  12. using System.Threading;
  13. namespace Emgu1
  14. {
  15. public partial class Form1 : Form
  16. {
  17. public Form1()
  18. {
  19. InitializeComponent();
  20. }
  21. private Capture capture;
  22. private bool captureinprocess;//判斷攝像頭的狀態
  23. private void button1_Click(object sender, EventArgs e)
  24. {
  25. if (capture != null)//攝像頭不為空
  26. {
  27. if (captureinprocess)
  28. {
  29. Application.Idle -= new EventHandler(processfram);
  30. button1.Text = "Stop!";
  31. }
  32. else
  33. {
  34. Application.Idle += new EventHandler(processfram);
  35. button1.Text = "Start!";
  36. }
  37. captureinprocess = !captureinprocess;
  38. }
  39. else//攝像頭為空則通過Capture()方法調用
  40. {
  41. try
  42. {
  43. capture = new Capture();
  44. }
  45. catch (NullReferenceException excpt)
  46. {
  47. MessageBox.Show(excpt.Message);
  48. }
  49. }
  50. }
  51. private void processfram(object sender, EventArgs arg)
  52. {
  53. Image<Bgr, Byte> frame = capture.QueryFrame();
  54. imageBox1.Image = frame;
  55. }
  56. }
  57. }

總結

我剛開始研究Emgu CV,有很多很多不懂的地方,以上步驟我基本是按照網上教程一步一步做的(http://www.dotblogs.com.tw/chou/archive/2009/06/13/8812.aspx),沒有任何問題,CV中提供了眾多的借口方便調用,非常適合需要圖像處理而不精通算法的人,這里面非常值得研究,這是我發的第一篇心得,基本算是轉帖,大家見諒!歡迎一起討論


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM