Search
Support & Downloads
All of Support
This Category
Software Products
Intel® Integrated Performance Primitives (Intel® IPP)
Open Source Computer Vision Library (OpenCV) FAQ


How is Intel IPP different from OpenCV?
In addition to computer vision, Intel IPP provides high performance low-level routines for audio, video, imaging, cryptography, speech recognition, signal processing and codecs. These functions are designed maximize application performance on Intel® processor-based workstations and servers.


Which Intel IPP functions are used in OpenCV?
The OpenCV library is an open source library of computer vision functions. OpenCV functions are implemented in two ways: with or without Intel IPP function calls. In the first case, customers need to have the Intel IPP binaries installed in order to take advantage of the Intel IPP optimizations. In the second case, all the functionality is implemented in the OpenCV open source code.


How can I make OpenCV automatically call Intel IPP functions at run-time?
OpenCV provides a transparent user interface to the Intel IPP by automatically loading the Intel IPP libraries at runtime if they are available. You do not need to program or link with the Intel IPP libraries. For more details on Intel IPP and OpenCV usage, please refer to the Intel Technology Journal article Learning-Based Computer Vision.


How do I use both Intel IPP and OpenCV functions in my application?
The OpenCV source code contains examples of how Intel IPP functions are used. Intel IPP performs operations directly on image buffers so you would need to pass pointers to those buffers to the Intel IPP along with corresponding information about the buffers such as image width and height. The Intel IPP and OpenCV function calls can be easily mixed in the same application. Here is an example:

// Let A, B and C be single-channel 8-bit images.
IplImage *A, *B, *C;
// Compute C = (A+B)/2 using an Intel IPP function call
IppiSize size = { A->width, A->height };
ippiAdd_8u_C1RSfs( (Ipp8u*)A->imageData, A->widthStep, (Ipp8u*)B->imageData, B->widthStep, (Ipp8u*)C >imageData, C->widthStep, size, 1 );
For more information, please check the OpenCV project page


What new functions have been added to the Intel IPP computer vision domain (ippCV)?
In addition to performance improvements, more than 100 functions have been added to the Intel IPP computer vision domain:
  • 16u data support for existing functions (arithmetic, statistical, Canny and Distance Transform)
  • Camera distortion correction (undistortion, generate matrices for ippi Remap function)
  • General pyramids (arbitrary rate and kernel are supported)
  • Optical Flow (pyramidal Lucas-Kanade algorithm, copy with subpixel precision)
  • Haar Classifier support (apply classifier, integral image, stddev for rectangle)
In addition, a computer vision sample for Face Detection is available for Windows*.


How do I get support for the OpenCV library?
Please check the OpenCV FAQ for answers to common questions as well as information on where to submit bug reports. Please submit OpenCV questions to the newsgroup.


How do I submit requests for computer vision functions to be supported in the Intel IPP?
Please submit your Intel IPP feature requests and problem reports to Intel® Premier Support.



How do I migrate from OpenCV to Intel IPP?
A substantial part of OpenCV functionality contains Intel IPP support. Almost all OpenCV functions that have Intel IPP support can be easily changed to direct Intel IPP function calls. You can check this by looking at the OpenCV source code. However, some OpenCV functions have no Intel IPP support; these mainly consist of functions that use complicated structures. There are two ways to get help in migrating these more complicated functions:
  1. Submit an issue to Intel Premier Support where support engineers can help you with Intel IPP function usage.
  2. Start a discussion thread in the Intel IPP User Forum and get help from Intel IPP engineers and the developer community.

You can also refer to the Intel IPP Face Detection sample code, which illustrates how to use Intel IPP to apply a classifier using Haar-like features in face detection algorithm in a Windows* application.

   This link will take you off of the Intel Web site. Intel does not control the content of the destination Web Site.

This applies to:
Intel® Integrated Performance Primitives (Intel® IPP) for Linux*
Intel® Integrated Performance Primitives (Intel® IPP) for Windows*

Solution ID: CS-010656
Date Created: 28-Apr-2004
Last Modified: 23-Aug-2007
Back to Top