views:

758

answers:

6

Which free/open source machine/computer vision libraries do exist?

I'm aware of OpenCV and VxL, what else is available?

+4  A: 

What language are you using? VLFeat seems like a pretty good one for C++ (and actively maintained), though I haven't actually used it. I'm mainly familiar with SIFT - there's a number of implementations listed at the bottom of the Wikipedia article.

Noldorin
This question is language agnostic. I assume that C++ will cover most.
Harriv
+2  A: 

RoboRealm compiled a huge list of vision software.

This older question mentions lots of libraries.

rics
A: 

If you need only motion detection, you could get away with Motion

pklausner
That's nice, but I'm looking for more complete libraries.
Harriv
+3  A: 

libCVD http://savannah.nongnu.org/projects/libcvd

Cambridge Video Dynamics - Library for images, video capture, display, computer vision and more. Integrates well with TooN for a linear algebra framework. Language: C++

This is actively developed, and has a lot of useful features and algorithms, and generally those guys make things to work very fast.

It is LGPL.

It is possible to compile it on Win, Linux and MacOS X.

There is also an intention to provide port for Python with this one, to allow to prototype Computer Vision algorithms with Python and SciPy very fast (i am not sure at which stage it is now, but there was a paper about it in a Python conference.)

If you are trying to do anything in real-time you should seriously consider libCVD.

For example, PTAM (Parallel Tracking And Mapping) framework by Georg Klein uses this library.

Denis C
+1  A: 

My university works with IceWing a rapid prototyping for vision tasks that is used to add tasks make chains out of them and have a GUI for seeing the results etc. The library is widely used for vision related tasks in all the robots that are developed in Bielefeld

You can find the library here

Janusz
+1  A: 

If you are programing C++ you could check out CImg. While it may not be the most optimized library out there I have found it to be user friendly. It's also neat that it does not force you to deploy additional dlls.

Andreas