|developer||Intel , Willow Garage|
|Publishing year||June 2000|
( July 18, 2020 )
|operating system||platform independent|
|programming language||C ++|
|category||Program library for: image processing computer vision camera calibration|
OpenCV (English abbreviation for Open Computer Vision ) is a free program library with algorithms for image processing and computer vision . It is written for the programming languages C , C ++ , Python and Java and is available as free software under the terms of the BSD license . The development of the library was initiated by Intel and was maintained by Willow Garage until 2013 . After its dissolution, it was continued by Itseez , which has now been taken over by Intel.
Version 1.0 was released in September 2006. At the end of September 2009, after a long break, version 2.0.0 followed, which is called "Gold". Version 3.0, which supported OpenCL for the first time, was released at the beginning of June 2015 .
Areas of application
OpenCV consists of modules for various fields of application:
- 2D and 3D characteristics (e.g. interest operators or descriptors)
- Estimation of proper motion, see photogrammetry: reverse cut
- face recognition
- Gesture recognition
- Human-Computer Interaction (HCI)
- mobile robots
- Classification using the Viola Jones method
- Segmentation and recognition
- Stereoscopic vision (stereopsis) results in depth images
- Structure from Motion (SfM), see Computer Vision
- optical tracking, motion compensation and optical flow
- Kalman filter for tracking
OpenCV also includes a library for machine learning with the following functionality:
- Boosting (automatic classification)
- Learning a decision tree
- EM algorithm (expectation maximization)
- Nearest neighbor classification
- Bayesian classifier
- Artificial neural networks , including DNN
- Random Forest
- Support Vector Machine (SVM)
OpenCV's DNN module can read in the networks pre-trained by common deep learning frameworks and execute a forward pass on them . That is, there are values (in the visible input layer English input layer is read) of the artificial neural network and all layers of the network processed as it passes through, until it then visible on the last layer ( output layer ) to be output. Object recognition with z. B. YOLO was realized in this way. The DNN module, which has existed since OpenCV 3.1, was moved to the main repository with Release 3.3 and is therefore easier to use, i.e. without compiling the source code.
The following libraries are supported:
- Release 4.4.0 . July 18, 2020 (accessed July 19, 2020).
- Intel acquires Itseez - OpenCV library. Accessed April 27, 2018 (English).
- OpenCV 3.0 - The Transparent API and OpenCL ™ Acceleration , Harris Gasparakis, October 15, 2014
- Deep Learning in OpenCV. In: GitHub. OpenCV, January 17, 2019, accessed January 17, 2019 .
- Gary Bradski, Adrian Kaehler: Learning OpenCV Computer Vision with the OpenCV Library . O'Reilly, 2008, ISBN 978-0-596-51613-0 .