Computer Vision Libraries

Here is a list of useful computer vision libs. I have categorized them but keep in mind some of the libs can belong to multiple categories. The list in not complete!

General Pattern Recognition

These are general purpose libs with a variety of algorithms.

The Spider
Interface:
  • Matlab
Description from their webpage:
The spider is intended to be a complete object orientated environment for machine learning in Matlab. Aside from easy use of base learning algorithms, algorithms can be plugged together and can be compared with, e.g model selection, statistical tests and visual plots. This gives all the power of objects (reusability, plug together, share code) but also all the power of Matlab for machine learning research.

SVM

These libs specialize in SVM implementations.

SHOGUN
Interface:
  • Matlab
  • Octave
  • Python
  • R
  • C++
Description from their webpage:
The machine learning toolbox's focus is on large scale kernel methods and especially on Support Vector Machines (SVM). It provides a generic SVM object interfacing to several different SVM implementations, among them the state of the art OCAS, Liblinear, LibSVM, SVMLight, SVMLin and GPDT.
SVMLight
Interface:
  • C
  • Python
Description from their webpage:
SVMlight is an implementation of Vapnik's Support Vector Machine for the problem of pattern recognition, for the problem of regression, and for the problem of learning a ranking function. ... The algorithm has scalable memory requirements and can handle problems with many thousands of support vectors efficiently.

Feature Selection

These are general purpous libs with a variety of algorithms.

VLFeat
Interface:
  • Matlab
  • C
Description from their webpage:
The VLFeat open source library implements popular computer vision algorithms including SIFT, MSER, k-means, hierarchical k-means, agglomerative information bottleneck, and quick shift. It is written in C for efficiency and compatibility, with interfaces in MATLAB for ease of use, and detailed documentation throughout. It supports Windows, Mac OS X, and Linux.

General Purpose Computer Vision

These are some general purpous libs for processing images/videos. They have some built in algorithms as well.

Intel IPP (Integrated Performance Primitives)
Interface:
  • C
Description from their webpage:
Intel® Integrated Performance Primitives (Intel® IPP) is an extensive library of multicore-ready, highly optimized software functions for digital media and data-processing applications. Intel IPP offers thousands of optimized functions covering frequently-used fundamental algorithms. Intel IPP functions are designed to deliver performance beyond what optimized compilers alone can deliver.
OpenCV
Interface:
  • C
Description from their webpage:
OpenCV (Open Source Computer Vision) is a library of programming functions for real time computer vision.