Friday, June 24, 2016

What and Why OpenCV

OpenCV [OpenCV] is an open source computer vision library mainly focusing on real-time computer vision, developed by Intel Russia research center in Nizhny Novgorod, and now supported by Willow Garage and Itseez. 

It provides C++, C, Python and Java interfaces and supports a wide range of operating system such as Windows, Linux, Mac OS, iOS and Android

OpenCV was designed for computational efficiency and with a strong focus on real-time applications. 

Written in optimized C/C++, the library can take advantage of multi-core processing by using Intel © Threading Building Blocks (TBB). 

Enabled with OpenCL, it can take advantage of the hardware acceleration of the underlying heterogeneous compute platform.
We are already aware of a popular OpenCV application such as Google Street View heavily using camera calibration and image stitching techniques. It also uses in other area as follows:

OpenCV's application areas :
  • 2D and 3D feature toolkits
  • Egomotion estimation
  • Facial recognition system
  • Gesture recognition
  • Human–computer interaction (HCI)
  • Mobile robotics
  • Motion understanding
  • Object identification
  • Segmentation and recognition
  • Stereopsis stereo vision: depth perception from 2 cameras
  • Structure from motion (SFM)
  • Motion tracking
  • Augmented reality
  • Safety monitoring
  • Biomedical analysis
  • Unmanned flying vehicles
To support some of the above areas, OpenCV includes a statistical machine learning library that contains: 
  • Boosting (meta-algorithm) 
  • Decision tree learning 
  • Gradient boosting trees 
  • Expectation-maximization algorithm 
  • k-nearest neighbor algorithm 
  • Naive Bayes classifier 
  • Artificial neural networks 
  • Random forest 
  • Support vector machine (SVM)


No comments:

Post a Comment