This is a starters post which will guide how to configure the environment and visual studio to work with emgucv, emgu cv is a wrapper library for all the open cv functions.
What is Emgu CV ?
Before learning what is Emgu CV, one should know what is Open CV.
It stands for Open Source Computer Vision, it was designed especially for computational efficiency with strong focus on real time applications. It is written in optimized C/C++, and can take advantage of multi-core processing. In Image processing it has been a great boon for the developers.
Its is essentially a huge library of "wrapper" functions that allows calling OpenCV funtions from Visual Studio Windows Form Application. It is necessary because Visual Studio/.NET is an "interpreted" environment that cannot directly call functions written in native C/C++.
In this tutorial we will start configuring our Visual Studio and environment for developing applications using EmguCV.
Firstly we need to download some the essential tools, we will be using the most stable versions though the new versions are also available.
- Visual Studio 2010 Express Edition
- Emgu CV (version 2.4.2 is available but had various issues so I'm doing it with the most stable version found 2.3.0)
Once you have installed all this it should work fine, but one common exception found is
The type initializer for 'Emgu.CV.CvInvoke' threw an exception.
If you see this exception, do following :
- For Version 2.4+, the bundled OpenCV binary is build with Visual Studio 2010, you will needs to installed MSVCRT 10.0 SP1 x86 or MSVCRT 10.0 SP1 x64 to resolve the dependency issue.
- For Version 2.0+, the bundled OpenCV binary is build with Visual Studio 2008, you will needs to installed MSVCRT 9.0 SP1 to resolve the dependency issue.
- For Version 1.5, the bundled OpenCV pre1.1 binary is build with Visual Studio 2005, you will needs to installed MSVCRT 8.0 SP1 to resolve the dependency issue.
This is the most effective solution to the problem for the above exception, for others and detailed troubleshooting click here.
Now start the configuration part :
- We need to add a environment variable to the system variables.
Right Click My Computer>Advanced System Settings>Environment Variables
Under "System Variables" edit variable "path"
add a semicolon(;) and the path to the emgu installation directory bin folder(by default it is C:\Emgu\emgucv-windows-x86 22.214.171.1246\bin
- Now the environment is ready and we need to add the emgu custom controls to Visual Studio ToolBox
In the toolbox, right click on General tab and select "choose items"
- Select browse on bottom right corner and browse for "Emgu.CV.UI.dll" (it is located in bin folder of installation directory i.e C:\Emgu\emgucv-windows-x86 126.96.36.1996\bin)
- Now the Visual Studio will have the tools for emgu control
This is all required for setting up the environment for working with Emgu CV, in the next article we will learn how to create our first project with Emgu CV. Cheers :)