Main Page: Difference between revisions
Line 3: | Line 3: | ||
== Advantage of Emgu CV == | == Advantage of Emgu CV == | ||
=== Cross Platform === | === Cross Platform === | ||
Unlike other wrappers such as [http://code.google.com/p/opencvdotnet/ OpenCVDotNet] or [http://www.cs.ru.ac.za/research/groups/SharperCV/ 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. | Unlike other wrappers such as [http://code.google.com/p/opencvdotnet/ OpenCVDotNet] or [http://www.cs.ru.ac.za/research/groups/SharperCV/ 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. | ||
=== Generic Support === | === Generic Support === | ||
An Image is defined by its generic parametes: color and depth. To create a 8bit unsigned Grayscale image, in Emgu CV it is done by calling | An Image is defined by its generic parametes: color and depth. To create a 8bit unsigned Grayscale image, in [[Emgu CV]] it is done by calling | ||
<source lang="csharp"> | <source lang="csharp"> | ||
Image<Gray, Byte> image = new Image<Gray, Byte>( width, height); | Image<Gray, Byte> image = new Image<Gray, Byte>( width, height); |
Revision as of 20:34, 14 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.
Generic Support
An Image is defined by its generic parametes: color and depth. To create a 8bit unsigned Grayscale image, in Emgu CV it is done by calling
Image<Gray, Byte> image = new Image<Gray, Byte>( width, height);
Not only this syntax make you aware the color and the depth of the image, it also restrict the way you use functions and capture errors in compile time. For example, the SetValue(C color, Image<Gray, Byte> mask)
function in Image<C, D> class (version >= 1.2.2.0) will only accept colors of the same type, and mask has to be an image of 8bit unsigned Grayscale. Any attemps to use a 16bit floating point image as a mask will results a compile time error!
Latest News
- 2008-03-11 Nightly Build of Emgu.CV-1.2.2.0 can be obtained here, changes in this version includes
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.- Various bug fixes
- 2008-03-11 Emgu CV 1.1.1.0 is released on 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
Equals
function, which returns true if the two images has the same depth, color and pixel values - More functions exposed from OpenCV in
Image
andCvInvoke
class - Various bug fixes
- 2008-02-22 The Emgu.CV-1.0.0.1 is released on SourceForge
- 2008-02-05 Registration of Emgu CV project on SourceForge under this page