Code Samples

This toolkit features numerous code examples that help you develop and optimize computer vision and image processing pipelines for Intel® processors.

Deep Learning Inference Engine

Deliver convolutional neural network (CNN) acceleration on Intel®-based platforms. The release package includes simple console applications that demonstrate how to integrate deep learning inference into your applications. These samples are installed in the inference engine/samples directory.

Image Classification

This inference demonstration aids contemporary image classification networks like AlexNet and GoogLeNet.

Security Barrier Camera

This code sample showcases vehicle detection, vehicle attributes, and license plate recognition.

Object Detection for Single Shot Multibox Detector (SSD)

Access an inference sample for object detection networks (like a Visual Geometry Group-based SSD) on Intel processors and Intel HD Graphics.

†A deep convolutional network for object recognition that was developed and trained by the Oxford Visual Geometry Group.

Automatic Speech Recognition 

Learn how to run the speech application that demonstrates acoustic model inference based on Kaldi neural networks and speech feature vectors.


Included in the installation, these examples showcase capabilities for the Intel® Distribution of OpenVINO™ toolkit. Find them under: <install_dir>\opencv\samples\. For documentation, see the file in the Samples directory.

OpenCV Version

This application prints the OpenCV library version and build configuration.

People Detection

Learn how to use the built-in feature descriptor (a histogram of oriented gradients) to detect pedestrians.


This sample demonstrates recoloring grayscale images with DNN. For more information on the Caffe* model and .prototxt file, see GitHub*.

Custom OpenCL™ Kernel

Implement and run this kernel via the Transparency Application Programming Interface (TAPI).

Dense Optical Flow

Run a dense optical flow using TAPI with Farnebäck and TV-L1 algorithms.

Facial Recognition

Develop a detection and recognition solution using the Intel Distribution of OpenVINO toolkit with OpenCV and C++.

Introductory OpenVX*

Get highlights on the standard interoperability and heterogeneous (multidevice) execution with user nodes (kernels). All samples are included in the installation and are located under <install_dir>\openvx\samples\.

Auto Contrast

Improve the image contrast by applying a histogram equalization of the image's intensity, targeted for a CPU or GPU.

a heavily pixelated plant that demonstrates image processing

Custom Kernel

This standard uses an OpenCL program to implement and register new kernels that target the GPU.

an example of implementing an OpenVX graph

Heterogeneous Basic

See how to schedule different nodes to different compute devices, spreading work across the CPU and GPU.

Advanced OpenVX

This section requires basic OpenVX knowledge. The samples demonstrate different features, including combining them with an OpenCV program, explaining user nodes and custom kernels, and making heterogeneous computations.

video analysis that targets the CPU and GPU

Stabilize Videos

Highlight delays, user nodes, and caveats of heterogeneous execution for a video that targets only a CPU or a CPU with a GPU. You can also detect feature points based on the Harris Corner Detector algorithm and an optical flow based on the Lucas–Kanade method.

Census Transform

This application uses the advanced tiling extension for CPUs from Intel and an OpenCL kernel for GPUs. The kernel is a popular CENTRIST visual descriptor.

line art of a face that illustrates face detection

Face Detection

Cascade a classifier implemented as a user node that features heterogeneous execution run only on a CPU or a CPU with a GPU.

a motion detection application recognizing pedestrians

Motion Detection

Implement this sample with user nodes featuring heterogeneous execution that targets only a CPU or a CPU with a GPU.

an example of defocus and occlusion detection

Camera Tampering

Learn how to combine multiple algorithms as you implement a simple tampering-detection algorithm that recognizes defocus and occlusion tampering types.