Technology & Research
Visual Interactivity: Open Source Computer Vision Library
Goal

Open Source Computer Vision Library

The ultimate goal of this project is to enable a viable market in consumer computer vision. To do this, we provide a common low level infrastructure for both academic and commercial uses in the form of an optimized open source computer vision library (OpenCV). This is "non-infectious" open source that may be incorporated in other's code without the requirement that the other's code become open source itself. OpenCV is oriented towards real time (frame-rate) computer vision, hence contributed code that is accepted into OpenCV will become a candidate for optimization across Intel's processor product lines. OpenCV will have a simple C interface to avoid learning curves. Intel and others may then "wrap" the library in C++ objects, COM objects, filters etc., for other uses. We feel that a supported, active open source computer vision library will further our ultimate goal because:
OpenCV will facilitate sharing between researchers by providing a common underlying code substrate to run on.
OpenCV will facilitate learning via documented algorithms available in C source code.
OpenCV will facilitate use of computer vision by providing a large set of assembly optimized algorithms, free for use.
Packaged, optimized functions will facilitate computer vision's use in other industries such as games, security, tele-conferencing and toys.

A committee of academic experts will help determine what functions are accepted into OpenCV. Our intent is forOpenCV to become a true, community supported open source library, with the added benefit of having the routines assembly optimized using Intel's resources. Our intent is to support WinXX and Linux* operating systems.

Example Functions
Below are a few selected example functions and demos that will ship with OpenCV.

Automatic Camera Calibration:
The user waves a checkerboard image in front of the camera. The user waves a checkerboard image in front of the camera.
This is tracked to turn the distorted image. This is tracked to turn the distorted image.
Into a rectified image. Into a rectified image.

Tracking:
Several different tracking methods are implemented, for example. Several different tracking methods are implemented, for example.
Lucas-Kanade optical flow in pyramid for long range tracking. Lucas-Kanade optical flow in pyramid for long range tracking.
Motion templates for motion gradients. Motion templates for motion gradients.
Color based object tracking-face tracking. Color based object tracking—face tracking.

All information provided related to future Intel products and plans is preliminary and subject to change at any time, without notice.
Research Focus Areas
Related Links
Back to Top