OpenCV is a library of programming functions designed to solve
Computer Vision problems in real-time. It is a cross-platform and free for use,
which allows businesses to utilize and modify the code. OpenCV supports the deep learning
frameworks like TensorFlow, Torch/PyTorch and Caffe. It is written in C++ and
supports Windows, Linux, Android and Mac OS.
Its features
The OpenCV library has more than 2,500 optimized algorithms, which includes a vast set of
both classic and state-of-the-art Computer Vision and machine learning
algorithms. These algorithms can be used to detect and recognize faces,
identify objects, classify human actions in videos, track camera movements,
track moving objects, extract 3D models of objects, produce 3D point clouds
from stereo cameras, stitch images together to produce a high resolution image
of an entire scene, find similar images from an image database, remove red eyes
from images taken using flash, follow eye movements, recognize scenery and
establish markers to overlay it with augmented reality, etc. OpenCV has a large
user community and an estimated number of downloads exceeding 18 million. The
library is used extensively in companies, research groups and by governmental
bodies.
Languages and OS supported
OpenCV supports programming languages
C++, Android SDK, Java, Python, Matlab/Octave and C. On the other hand, it can
be run on Linux, Windows, Android,
Mac-OS, FreeBSD, NetBSD and OpenBSD operating systems.
The library has more than 2,500 optimized algorithms, which
includes a comprehensive set of both classic and state-of-the-art computer
vision and machine learning algorithms.
Widely used
The OpenCV library is used by private companies, startups and
government organisations. Its deployed uses range from stitching together
street-view images, detecting intrusions in surveillance video, helping robots
navigate and pick up objects, detection of swimming pool drowning accidents,
running interactive art, inspecting labels on products in factories, among
others.
OpenCV applications
• 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
To support some of the above areas, OpenCV includes a statistical
machine learning library that contains Boosting, 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) and Deep neural networks (DNN).
No comments:
Post a Comment