Computer Vision Library

Posted on

Problem :

What is the best .net computer vision libraries anybody has used recently for different shape detection and bar code reading including reading pdf417? Most libraries have image processing capabilities similar to those found in Gimp and Photoshop, but not computer vision capabilities. Currently we are looking at a combination of Aforge and LEAD tools; anybody know of better alternatives or one library that could do what these two libraries could combined?

Solution :

A friend of mine has used (a C# wrapper for OpenCV) for his Master’s thesis (which was about hand gesture recognition) and found it very well developed and easy to use.

I found EmguCV and AForge handy.

EmguCV is the .NET ported version of OpenCV, actively maintained (using the latest OpenCV at the time i checked)

AForge used to be my personal favorite, it’s developed ground up by Andrew Kirillov (sadly he announced the end of free public support on April 2012). Well documented and very intuitive.

I will add my little answer. For computer vision project in .net I usually use OpenCVSharp. It’s OpenCV wrapper which complex wrap opencv function and it’s under BSD 3-Clause License. It has a wide use and is usually sufficient in projects.

Another usefull tool is ImageMagic which has .NET interface. In computer vision I use this tool to make operation on single frame.

There is hardly such a thing as a “best” library for the tasks. If you look at the major players, you will notice that there are some industrial ones, which give you quick and professional support, and a number of open source solutions where you’re largely on your own.

It depends largely on how much time you got to fix potential shortcomings, i.e. what your time to money ratio is.

If you’re an industrial user, commercial solutions are offered by e.g. Stemmer Imaging, Dalsa, MVTec or Cognex. The first supplier supports .NET from the beginning and the latter ones offer them too for some years now (to my knowledge).

If you prefer the open source approach, an OpenCV derivate/wrapper might be your best bet.

For barcode reader my first suggestion is ZBar in C++ with this wrapper in C#, second one is ZXing in C++ and ZXing.Net is its C# porting.

For starting project in Computer Vision, most widely used and powerfull library is OpenCv that works in C/C++ but there are some wrapper in C# like AForge and EmguCv.
Second choice for CV is C# Dlib wrapper DlibDotNet.
There is also SimpleCv easy to use but for python.

Leave a Reply

Your email address will not be published. Required fields are marked *