Main Page: Difference between revisions

From EMGU
Jump to navigation Jump to search
m fixed typos/grammar
Line 32: Line 32:
== 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 use unsafe code, [[Emgu CV]] is written entirely in C#. The benefit is that it can be [[Compiling_with_Monodevelop|compiled in Mono]] and therefore is able to run on any platform Mono supports, including Linux / Solaris and Mac OS X. A lot more effort has been spend to have an C# implementation since the headers has to be ported, compares with managed C++ implementation where that header files can simply be included. But it is well worth it if you see [[Emgu CV]] [[Compiling_with_Monodevelop|running on Fedora 9]]! 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 use unsafe code, [[Emgu CV]] is written entirely in C#. The benefit is that it can be [[Compiling_with_Monodevelop|compiled in Mono]] and therefore is able to run on any platform Mono supports, including Linux / Solaris and Mac OS X. A lot more effort has been spend to have an C# implementation since the headers have to be ported, compared with managed C++ implementation where header files can simply be included. But it is well worth it if you see [[Emgu CV]] [[Compiling_with_Monodevelop|running on Fedora 9]]! Plus it always gives you the comfort knowing that your code is cross-platform.


=== Cross Language and comes with example code===
=== Cross Language and comes with example code===
[[Emgu CV]] can be used from several different language, including C#, VB.NET, C++ and IronPython. On this wiki we provides [[Tutorial#Examples|examples]] for all those languages, which is available from the [[Tutorial#Examples|Examples section on Tutorial page]]. Our [http://www.emgu.com/forum Discussion Forum] is also available if you have any questions related to your favourite programming language.
[[Emgu CV]] can be used from several different languages, including C#, VB.NET, C++ and IronPython. On this wiki, we provide [[Tutorial#Examples|examples]] for all those languages, which are available from the [[Tutorial#Examples|Examples section on Tutorial page]]. Our [http://www.emgu.com/forum Discussion Forum] is also available if you have any questions related to your favourite programming language.


=== Other Advantages ===
=== Other Advantages ===
Line 47: Line 47:
== Architecture Overview ==
== Architecture Overview ==
[[Emgu CV]] has two layers of wrapper as shown below
[[Emgu CV]] has two layers of wrapper as shown below
*The basic layer ('''''layer 1''''') contains [[Tutorial#Function_Mapping_-_Emgu.CV.CvInvoke | function]], [[Tutorial#Structure_Mapping_-_Emgu.CV.Mxxx | structure]] and [[Tutorial#Enumeration_Mapping_-_Emgu.CV.CvEnum | enumeration]] mapping which directly reflect those in [[OpenCV]].
*The basic layer ('''''layer 1''''') contains [[Tutorial#Function_Mapping_-_Emgu.CV.CvInvoke | function]], [[Tutorial#Structure_Mapping_-_Emgu.CV.Mxxx | structure]] and [[Tutorial#Enumeration_Mapping_-_Emgu.CV.CvEnum | enumeration]] mappings which directly reflect those in [[OpenCV]].
*The second layer ('''''layer 2''''') contains class that mixed in [[Main_Page#Advantage_of_Emgu_CV | advatange]] from the .NET world.
*The second layer ('''''layer 2''''') contains classes that mix in [[Main_Page#Advantage_of_Emgu_CV | advantanges]] from the .NET world.


[[Image:EmguCVArchitecture.png ]]
[[Image:EmguCVArchitecture.png ]]

Revision as of 00:40, 21 March 2009

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 / Mac OS X.

Latest News

Emgu CV Compares to Other OpenCV Wrappers

Name Emgu CV OpenCVDotNet SharperCV Code Project
Cross Platform (Mono) X X X
OpenCV 1.1 X X X
Machine Learning X X X
Exception Error Handling X X X
Actively Maintained 1 X X

1 "Actively Maintained" refers to update within one year.

Advantage of Emgu CV

Cross Platform

Unlike other wrappers such as OpenCVDotNet or SharperCV which use unsafe code, Emgu CV is written entirely in C#. The benefit is that it can be compiled in Mono and therefore is able to run on any platform Mono supports, including Linux / Solaris and Mac OS X. A lot more effort has been spend to have an C# implementation since the headers have to be ported, compared with managed C++ implementation where header files can simply be included. But it is well worth it if you see Emgu CV running on Fedora 9! Plus it always gives you the comfort knowing that your code is cross-platform.

Cross Language and comes with example code

Emgu CV can be used from several different languages, including C#, VB.NET, C++ and IronPython. On this wiki, we provide examples for all those languages, which are available from the Examples section on Tutorial page. Our Discussion Forum is also available if you have any questions related to your favourite programming language.

Other Advantages

Architecture Overview

Emgu CV has two layers of wrapper as shown below