Main Page: Difference between revisions

From EMGU
Jump to navigation Jump to search
Line 21: Line 21:


== Latest News ==
== Latest News ==
* 2008-03-26 [[Nightly Build]] of Emgu.CV-1.2.2.0 is available, changes in this version includes  
* 2008-03-22 [[Nightly Build]] of Emgu.CV-1.2.2.0 is available, changes in this version includes  
** <code>AsBitmap()</code> function added as a high performance alternative to <code>ToBitmap()</code> function
** <code>AsBitmap()</code> function added as a high performance alternative to <code>ToBitmap()</code> function
*** Note: <code>AsBitmap()</code> differs from <code>ToBitmap()</code> such that when dealing with Image&lt;Gray, Byte&gt; and Image&lt;Bgr, Byte&gt;, the image data is shared with Bitmap. Take extra caution not to use the Bitmap after the Image object is disposed
*** Note: <code>AsBitmap()</code> differs from <code>ToBitmap()</code> such that when dealing with Image&lt;Gray, Byte&gt; and Image&lt;Bgr, Byte&gt;, the image data is shared with Bitmap. Take extra caution not to use the Bitmap after the Image object is disposed
Line 37: Line 37:
*** In Moment class: GetSpatialMoment, GetCentralMoment, CvHuMoment  
*** In Moment class: GetSpatialMoment, GetCentralMoment, CvHuMoment  
** Fix a bug in Circle that prevent it from being XML serialized
** Fix a bug in Circle that prevent it from being XML serialized
* 2008-03-11 [[Emgu CV]] 1.1.1.0 is released on [https://sourceforge.net/project/showfiles.php?group_id=216500| SourceForge], changes in this version includes:
** Added support for HLS, LAB, LUV, XYZ and YCrCb color types
** Better documentation. Older Version (1.0.0.1 contains) 400+ missing xml documentation while newer version (1.1.1.0) has less than 40 missing xml documentation
** Image class now has <code>Equals</code> function, which returns true if the two images has the same depth, color and pixel values
** More functions exposed from [[OpenCV]] in <code>Image</code> and <code>CvInvoke</code> class
** Various bug fixes
* 2008-02-22 [[Emgu CV]] 1.0.0.1 is released on [https://sourceforge.net/project/showfiles.php?group_id=216500| SourceForge]

Revision as of 20:37, 27 March 2008

Emgu CV is a cross platform .Net wrapper to the Intel OpenCV image-processing library. Allowing OpenCV functions to be called from .NET compatible languages such as C#, VB, VC++, IronPython etc. The wrapper can be compiled in Mono and run on Linux / Solaris / Mac OS X.

Advantage of Emgu CV

Cross Platform

Unlike other wrappers such as OpenCVDotNet or SharperCV which are written in Managed C++, Emgu CV is written entirely in C#. The benifit is that it can be compiled on Mono and therefore is able to run on any platform Mono supports, be it Linux / Solaris or Mac OS X. I have spend a lot more effort to have an implementation in C# since the headers has to be ported, compares with managed C++ such that header files can simply be included. But it is well worth it once I see Emgu CV running on my Fedora 8! Plus it always give you the comfort knowing that your code is cross-platform.

Other Advantages

Architecture Overview

Emgu CV has two layers of wrapper as shown below

File:EmguCVArchitecture.gif

Latest News

  • 2008-03-22 Nightly Build of Emgu.CV-1.2.2.0 is available, changes in this version includes
    • AsBitmap() function added as a high performance alternative to ToBitmap() function
      • Note: AsBitmap() differs from ToBitmap() such that when dealing with Image<Gray, Byte> and Image<Bgr, Byte>, the image data is shared with Bitmap. Take extra caution not to use the Bitmap after the Image object is disposed
    • ToBitmap() is much faster when converting Grayscale to Bitmap. Format8bppIndexed with a custome Color Palette is used instead of Format24bppRgb . In terms of memcopy it only copy one third of data as compares with the old version. Thanks for the tips from Sebastian Kraemer.
    • Better performance on the Width and Height properties.
    • Example of using Emgu CV in WCF to implement web service. (Both Server and Client covered).
    • Example of Hugh Line and circle detection
    • More structure wrapped:
      • In Emgu.CV namespace: MCvHuMoments
    • More functions has been covered:
      • In CvInvoke class: cvSobel, cvLaplace, cvCmpS, cvGetSpatialMoment, cvGetCentralMoment, cvGetHuMoments, cvFindFundamentalMat, cvComputeCorrespondEpilines, cvConvertPointsHomogenius, cvMeanShift, cvCamShift, cvTrace, cvDet
      • In Array class: _SetIdentity, Trace
      • In Matrix class: Det
      • In Image class: Sobel, Laplace, Cmp function that accepts scalar, MatchTemplate
      • In Moment class: GetSpatialMoment, GetCentralMoment, CvHuMoment
    • Fix a bug in Circle that prevent it from being XML serialized