Skip to content

Latest commit

History

History
138 lines (94 loc) 路 3.08 KB

README.md

File metadata and controls

138 lines (94 loc) 路 3.08 KB

NanoDet OpenVINO Demo

This fold provides NanoDet inference code using Intel's OpenVINO Toolkit. Most of the implements in this fold are same as demo_ncnn.

Install OpenVINO Toolkit

Go to OpenVINO HomePage

Download a suitable version and install.

Follow the official Get Started Guides: https://docs.openvinotoolkit.org/latest/get_started_guides.html

Set the Environment Variables

Windows:

Run this command in cmd. (Every time before using OpenVINO)

<INSTSLL_DIR>\openvino_2021\bin\setupvars.bat

Or set the system environment variables once for all:

Name Value
INTEL_OPENVINO_DIR <INSTSLL_DIR>\openvino_2021
INTEL_CVSDK_DIR %INTEL_OPENVINO_DIR%
InferenceEngine_DIR %INTEL_OPENVINO_DIR%\deployment_tools\inference_engine\share
HDDL_INSTALL_DIR %INTEL_OPENVINO_DIR%\deployment_tools\inference_engine\external\hddl
ngraph_DIR %INTEL_OPENVINO_DIR%\deployment_tools\ngraph\cmake

And add this to Path

%INTEL_OPENVINO_DIR%\deployment_tools\inference_engine\bin\intel64\Debug;%INTEL_OPENVINO_DIR%\deployment_tools\inference_engine\bin\intel64\Release;%HDDL_INSTALL_DIR%\bin;%INTEL_OPENVINO_DIR%\deployment_tools\inference_engine\external\tbb\bin;%INTEL_OPENVINO_DIR%\deployment_tools\ngraph\lib

Linux

Run this command in shell. (Every time before using OpenVINO)

source /opt/intel/openvino_2021/bin/setupvars.sh

Or edit .bashrc

vi ~/.bashrc

Add this line to the end of the file

source /opt/intel/openvino_2021/bin/setupvars.sh

Convert model

  1. Export ONNX model

    python ./tools/export_onnx.py --cfg_path ${CONFIG_PATH} --model_path ${PYTORCH_MODEL_PATH}
  2. Use onnx-simplifier to simplify it

    python -m onnxsim ${INPUT_ONNX_MODEL} ${OUTPUT_ONNX_MODEL}
  3. Convert to OpenVINO

    cd <INSTSLL_DIR>/openvino_2021/deployment_tools/model_optimizer

    Install requirements for convert tool

    sudo ./install_prerequisites/install_prerequisites_onnx.sh

    Then convert model. Notice: mean_values and scale_values should be the same with your training settings in YAML config file.

    python3 mo_onnx.py --input_model <ONNX_MODEL> --mean_values [103.53,116.28,123.675] --scale_values [57.375,57.12,58.395]

Build

Windows

<OPENVINO_INSTSLL_DIR>\openvino_2021\bin\setupvars.bat
mkdir -p build
cd build
cmake ..
msbuild nanodet_demo.vcxproj /p:configuration=release /p:platform=x64

Linux

source /opt/intel/openvino_2021/bin/setupvars.sh
mkdir build
cd build
cmake ..
make

Run demo

First, move nanodet openvino model files to the demo's folder. Then run these commands:

Webcam

nanodet_demo 0 0

Inference images

nanodet_demo 1 IMAGE_FOLDER/*.jpg

Inference video

nanodet_demo 2 VIDEO_PATH

Benchmark

nanodet_demo 3 0