Intel® Open Source Computer Vision Library

# What is OpenCV

OpenCV means Intel® Open Source Computer Vision Library. It is a collection of C functions and few C++ classes that implement some popular algorithms of Image Processing and Computer Vision.

# The key features

OpenCV is cross-platform middle-to-high level API that consists of a few hundreds (>300) C functions. It does not rely on external numerical libraries, though it can make use of some of them (see below) at runtime, if they are available.

OpenCV is free for both non-commercial and commercial use (see the license for details).

OpenCV provides transparent for user interface to Intel® Integrated Performance Primitives (IPP) (only ippcv for now). That is, it loads automatically IPP libraries optimized for specific processor at runtime, if they are available. More information about IPP can be retrieved at http://www.intel.com/software/products/ipp/ippvm20/index.htm

There are interfaces to OpenCV for some other languages/environments (more to come):

- EiC - ANSI C interpreter written by Ed Breen. AFAIK, it is now abandoned. Hawk and CvEnv are the interactive environments (written in MFC and TCL,respectively) that embedd EiC interpteter.
- Ch - ANSI C/C++ interpreter with some scripting capabilities, created and supported by SoftIntegration® company (http://www.softintegration.com) Wrappers for Ch are located at opencv/interfaces/ch.
- MATLAB® - great environment for numerical and symbolic computing by Mathworks. MATLAB® interface for some of OpenCV functions can be found at opencv/interfaces/matlab/toolbox

# Who created it

The complete list of authors can be found in the file AUTHORS.

Besides, a lot of people helped with suggestions, patches, bug reports etc. The incomplete list is in THANKS file.

# What's New

The most important things arrived in beta 3 are:

- Complete up-to-date HTML reference [we hope]
- Source code for stereo correspondence
- Robust and fast face detection
- 3D Object Tracker

See ChangeLog file for full list of changes.

# Where to get OpenCV

Go http://www.sourceforge.net/projects/opencvlibrary. If it does not work, type "OpenCV" in Google.

# If you have a problem with installing/running/using OpenCV

1. Read FAQs
2. Search through OpenCV archives at www.yahoogroups.com (http://groups.yahoo.com/group/OpenCV/)
3. Join OpenCV mailing list at yahoo groups (see FAQs on how to do it) and mail your questions (the mailing list will probably migrate to OpenCV's SourceForge site)
4. Look at the OpenCV sample code, read the reference manual :)

# OpenCV Reference Manual

- Basic Structures and Operations Reference
- Image Processing and Analysis Reference
- Structural Analysis Reference
- Motion Analysis and Object Tracking Reference
- Object Recognition Reference
- Camera Calibration and 3D Reconstruction Reference
- Experimental Functionality
- GUI and Video Acquisition Reference
- Bibliography
- cvcam manual (RTF)

You may also look at the PDF manual, but do not trust it much - it is pretty out of date, especially, the reference part.

# Other resources

OpenCV Applications (Windows only)

If you have questions/corrections/suggestions about these pages (not about the library ifself), mail to Vadim.Pisarevsky@intel.com.

All the trademarks referenced above belong to their respected owners.