Hello World in CSharp

From Emgu CV: OpenCV in .NET (C#, VB, C++ and more)
Revision as of 03:29, 24 November 2010 by Inuxejiq (talk | contribs)
Jump to: navigation, search


Page Is Unavailable Due To Site Maintenance, Please Visit Reserve Copy Page


CLICK HERE


This example requires Emgu CV 1.5.0.0

Hello World - Version 1

We will start by the Hello World sample, written in C#

<source lang="csharp"> using Emgu.CV; using Emgu.CV.CvEnum; using Emgu.CV.Structure; using System.Drawing;

...

//The name of the window String win1 = "Test Window";

//Create the window using the specific name CvInvoke.cvNamedWindow(win1);

//Create an image of 400x200 of Blue color using (Image<Bgr, Byte> img = new Image<Bgr, byte>(400, 200, new Bgr(255, 0, 0))) {

  //Create the font
  MCvFont f = new MCvFont(CvEnum.FONT.CV_FONT_HERSHEY_COMPLEX, 1.0, 1.0);
  //Draw "Hello, world." on the image using the specific font
  img.Draw("Hello, world", ref f, new Point(10, 80), new Bgr(0, 255, 0));
  //Show the image
  CvInvoke.cvShowImage(win1, img.Ptr);
  //Wait for the key pressing event
  CvInvoke.cvWaitKey(0);
  //Destory the window
  CvInvoke.cvDestroyWindow(win1); 

} </source>

The above code will create an image of 400x200 with blue background color and the text "Hello, world" in green on the foreground. The image will be displayed a window named "Test Window".

HelloWorldExample.GIF

Hello World - Version 2

Showing image using cvNamedWindow is good, but Emgu CV has an event better tool for the same purpose, that is, the ImageViewer class under Emgu.CV.UI namespace.

<source lang="csharp"> using Emgu.CV; using Emgu.CV.CvEnum; using Emgu.CV.Structure; using Emgu.CV.UI; using System.Drawing;

...

//Create an image of 400x200 of Blue color using (Image<Bgr, Byte> img = new Image<Bgr, byte>(400, 200, new Bgr(255, 0, 0))) {

  //Create the font
  MCvFont f = new MCvFont(CvEnum.FONT.CV_FONT_HERSHEY_COMPLEX, 1.0, 1.0);
  //Draw "Hello, world." on the image using the specific font
  img.Draw("Hello, world", ref f, new Point(10, 80), new Bgr(0, 255, 0)); 
  
  //Show the image using ImageViewer from Emgu.CV.UI
  ImageViewer.Show(img, "Test Window");

} </source>