openvino/docs/OV_Runtime_UG/Samples_Overview.md

14 KiB
Raw Blame History

OpenVINO Samples

@sphinxdirective

.. _code samples:

.. toctree:: :maxdepth: 1 :hidden:

Get Started with C++ Samples <openvino_docs_get_started_get_started_demos> openvino_inference_engine_samples_classification_sample_async_README openvino_inference_engine_ie_bridges_python_sample_classification_sample_async_README openvino_inference_engine_samples_hello_classification_README openvino_inference_engine_ie_bridges_c_samples_hello_classification_README openvino_inference_engine_ie_bridges_python_sample_hello_classification_README openvino_inference_engine_samples_hello_reshape_ssd_README openvino_inference_engine_ie_bridges_python_sample_hello_reshape_ssd_README openvino_inference_engine_samples_hello_nv12_input_classification_README openvino_inference_engine_ie_bridges_c_samples_hello_nv12_input_classification_README openvino_inference_engine_samples_hello_query_device_README openvino_inference_engine_ie_bridges_python_sample_hello_query_device_README openvino_inference_engine_samples_model_creation_sample_README openvino_inference_engine_ie_bridges_python_sample_model_creation_sample_README openvino_inference_engine_samples_speech_sample_README openvino_inference_engine_ie_bridges_python_sample_speech_sample_README openvino_inference_engine_samples_benchmark_app_README openvino_inference_engine_tools_benchmark_tool_README

@endsphinxdirective

The OpenVINO samples are simple console applications that show how to utilize specific OpenVINO API capabilities within an application. They can assist in executing specific tasks, such as loading a model, running inference, querying specific device capabilities, etc.

During installation of OpenVINO™ Runtime, sample applications for С, C++ and Python are created in the following directories:

  • <INSTALL_DIR>/samples/c
  • <INSTALL_DIR>/samples/cpp
  • <INSTALL_DIR>/samples/python

The applications include:

Keep in mind that the Python version of the benchmark tool is currently available only through the OpenVINO Development Tools installation. It is not created in the samples directory but can be launched with the following command:

benchmark_app -m <model> -i <input> -d <device>

For more information, see the Benchmark Python Tool documentation.

NOTE: All C++ samples support input paths that contain only ASCII characters, except for the Hello Classification Sample (it supports Unicode).

Media Files Available for Samples

To run the sample applications, use images and videos available online in the test data storage.

Samples that Support Pre-Trained Models

To run the sample, use [public](@ref omz_models_group_public) or [Intel's](@ref omz_models_group_intel) pre-trained models from Open Model Zoo. The models can be downloaded using [Model Downloader](@ref omz_tools_downloader).

Build the Sample Applications

Build the Sample Applications on Linux

The supported Linux build environment includes

  • Ubuntu 18.04 LTS 64-bit or Ubuntu 20.04 LTS 64-bit,
  • GCC 7.5.0 (for Ubuntu 18.04) or GCC 9.3.0 (for Ubuntu 20.04),
  • CMake version 3.10 or higher.

NOTE: For building samples from the open source version of OpenVINO™ toolkit, see the build instructions on GitHub.

To build the C or C++ sample applications for Linux, go to the <INSTALL_DIR>/samples/c or <INSTALL_DIR>/samples/cpp directory, respectively, and run the build_samples.sh script:

build_samples.sh

Once the build has been completed, sample binaries will be in the following folders:

  • C samples - ~/inference_engine_c_samples_build/intel64/Release
  • C++ samples - ~/inference_engine_cpp_samples_build/intel64/Release

Also, sample applications can be built manually:

NOTE: If you have installed the product as a root user, switch to root mode (sudo -i) before you continue.

  1. Navigate to a directory that you have write access to and create a samples build directory. This example uses a directory named build:
mkdir build

NOTE: If you run the Image Classification verification script during the installation, the C++ samples build directory is created in your home directory - ~/inference_engine_cpp_samples_build/.

  1. Go to the newly created directory:
cd build
  1. Run CMake to generate the Make files for release or debug configuration. For example, for C++ samples:
  • For release configuration:
cmake -DCMAKE_BUILD_TYPE=Release <INSTALL_DIR>/samples/cpp
  • For debug configuration:
cmake -DCMAKE_BUILD_TYPE=Debug <INSTALL_DIR>/samples/cpp
  1. Run make to build the samples:
make

The sample application binaries can be found in:

  • For release configuration - <path_to_build_directory>/intel64/Release/
  • For debug configuration - <path_to_build_directory>/intel64/Debug/

Build the Sample Applications on Microsoft Windows

The recommended Windows build environment is the following:

  • Microsoft Windows 10
  • Microsoft Visual Studio 2019
  • CMake version 3.10 or higher

NOTE: Microsoft Visual Studio 2019 requires installation of CMake 3.14 or higher.

To build C or C++ sample applications on Windows, go to the <INSTALL_DIR>\samples\c or <INSTALL_DIR>\samples\cpp directory, respectively, and run the build_samples_msvc.bat batch file:

build_samples_msvc.bat

By default, the script automatically detects the highest Microsoft Visual Studio version installed on the machine and uses it to create and build a solution for a sample code.

Once the build has been completed, sample binaries will be in the following folders:

  • C samples - C:\Users\<user>\Documents\Intel\OpenVINO\inference_engine_c_samples_build\intel64\Release
  • C++ samples - C:\Users\<user>\Documents\Intel\OpenVINO\inference_engine_cpp_samples_build\intel64\Release

A generated solution can also be built manually. For example, to build C++ sample binaries in Debug configuration, run the suitable version of the Microsoft Visual Studio and open the generated solution file from the C:\Users\<user>\Documents\Intel\OpenVINO\inference_engine_cpp_samples_build\Samples.sln directory.

Build the Sample Applications on macOS*

The officially supported macOS build environment is the following:

  • macOS 10.15 64-bit or higher
  • Clang compiler from Xcode 10.1 or higher
  • CMake version 3.13 or higher

NOTE: To learn how to build samples from the open-source version of OpenVINO™ toolkit, see the build instructions on GitHub.

To build C or C++ sample applications for macOS, go to the <INSTALL_DIR>/samples/c or <INSTALL_DIR>/samples/cpp directory, respectively, and run the build_samples.sh script:

build_samples.sh

Once the build has been completed, sample binaries will be in the following folders:

  • C samples - ~/inference_engine_c_samples_build/intel64/Release
  • C++ samples - ~/inference_engine_cpp_samples_build/intel64/Release

The sample applications can also be built manually:

NOTE: If you have installed the product as a root user, switch to root mode (sudo -i) before you continue.

NOTE: Before proceeding, make sure that you have OpenVINO environment set correctly. This can be done manually by

cd <INSTALL_DIR>/
source setupvars.sh
  1. Navigate to a directory that you have write access to and create a samples build directory. This example uses a directory named build:
mkdir build

NOTE: If you ran the Image Classification verification script during the installation, the C++ samples build directory was already created in your home directory: ~/inference_engine_cpp_samples_build/

  1. Go to the newly created directory:
cd build
  1. Run CMake to generate the Make files for release or debug configuration. For example, for C++ samples:
  • For release configuration:
cmake -DCMAKE_BUILD_TYPE=Release <INSTALL_DIR>/samples/cpp
  • For debug configuration:
cmake -DCMAKE_BUILD_TYPE=Debug <INSTALL_DIR>/samples/cpp
  1. Run make to build the samples:
make

The sample application binaries can be find in:

  • For release configuration - <path_to_build_directory>/intel64/Release/
  • For debug configuration - <path_to_build_directory>/intel64/Debug/

Get Ready for Running the Sample Applications

Get Ready for Running the Sample Applications on Linux

Before running compiled binary files, check if your application can find the OpenVINO Runtime libraries. Run the setupvars script to set all necessary environment variables:

source <INSTALL_DIR>/setupvars.sh

Optional: The OpenVINO environment variables are removed when you close the shell. Optionally, you can permanently set the environment variables as follows:

  1. Open the .bashrc file in <user_home_directory>:
vi <user_home_directory>/.bashrc
  1. Append the file with the following command-line:
source /opt/intel/openvino_2022/setupvars.sh
  1. Press the Esc key, type :wq and press the Enter key to save and close the file.
  2. To test change, open a new terminal. You will see [setupvars.sh] OpenVINO environment initialized.

Sample applications are ready to start. To learn how to run a particular sample, go to the documentation by clicking the name of a chosen sample from the list above.

Get Ready for Running the Sample Applications on Windows

Before running compiled binary files, check if your application can find the OpenVINO Runtime libraries. Use the setupvars script, which sets all necessary environment variables:

<INSTALL_DIR>\setupvars.bat

To debug or run the samples on Windows in Microsoft Visual Studio, make sure you have properly configured Debugging environment settings for the Debug and Release configurations. Set correct paths to the OpenCV libraries, and debug and release versions of the OpenVINO Runtime libraries. For example, for the Debug configuration, go to Configuration Properties of the project, then select the Debugging category and set the PATH variable in the Environment field to the following:

PATH=<INSTALL_DIR>\runtime\bin;%PATH%

where <INSTALL_DIR> is the installation directory of OpenVINO toolkit.

You are ready to run sample applications. To learn how to run a particular sample, read the sample documentation by clicking the sample name in the samples list above.

Additional Resources