1
Overview
What Is OpenCV?
OpenCV [OpenCV] is an open source (see http://opensource.org) computer vision library available from
http://opencv.org. The library is written in C and C++
1
and runs under Linux, Windows, Mac OS X, iOS,
and Android. Interfaces are available for Python, Java, Ruby, Matlab, and other languages.
OpenCV was designed for computational efficiency with a strong focus on real-time applications:
optimizations were made at all levels, from algorithms to multicore and CPU instructions. For example,
OpenCV supports optimizations for SSE, MMX, AVX, NEON, OpenMP, and TBB. If you desire further
optimization on Intel architectures [Intel] for basic image processing, you can buy Intel’s Integrated
Performance Primitives (IPP) libraries [IPP], which consist of low-level optimized routines in many
different algorithmic areas. OpenCV automatically uses the appropriate instructions from IPP at runtime.
The GPU module also provides CUDA-accelerated versions of many routines (for Nvidia GPUs) and
OpenCL-optimized ones (for generic GPUs).
One of OpenCV’s goals is to provide a simple-to-use computer vision infrastructure that helps people build
fairly sophisticated vision applications quickly. The OpenCV library contains over 500 functions that span
many areas, including factory product inspection, medical imaging, security, use