OpenCV is a free library of algorithms for image processing and computer vision. It is written for the programming languages ​​C and C and is available as free software under the terms of the BSD license. The "CV" in the name stands for English " computer vision ". The development of the library was initiated by Intel, but is today mainly by Willow Garage.

In September 2006, Version 1.0 was released. End of September 2009 was followed by a long pause the version 2.0.0, which is called " Gold". The strength of OpenCV lies in its speed and in the large amount of algorithms from the latest research results.


The library includes, among other algorithms for face detection, 3D functionality, hair classifiers, several very fast filter (eg Sobel, Canny, Gaussian ) and functions for camera calibration.

OpenCV consists of modules for various areas of application:

  • 2D and 3D features (eg interest operator or descriptors )
  • Ego-motion estimation, see photogrammetry: Resection
  • Face Detection
  • Gesture recognition
  • Human- computer interaction (HCI )
  • Mobile robots
  • Object recognition
  • Segmentation and recognition
  • Stereoscopic vision ( stereopsis ), resulting depth images
  • Structure from motion ( SfM ), see photogrammetry
  • Optical tracking, Motion Compensation and Optical Flow
  • Kalman filter for tracking

Furthermore, OpenCV includes a library for machine learning with the following functions:

  • Boosting ( automatic classification )
  • Learning of a decision tree
  • EM algorithm ( Expectation-Maximization )
  • Nearest Neighbor Classification
  • Bayes classifier
  • Artificial neural networks
  • Random Forest
  • Support Vector Machine (SVM )