赞
踩
本文标题是实现自己的第一个样例,这是了解学习openvino工具的第一步,自己编写的样例能跑起来,那么后面的学习和调试就方便了很多。
那么首先,不管自己写一个怎样的样例,一定要把它添加进cmake工程中,以保证自己写的代码在openvino的代码环境下可以成功编译出二进制。
接下来的操作主要是讲一下如何构建openvino官方自带的用例:
cmake --install . --prefix <INSTALLDIR>
if [ -e "$INSTALLDIR/opencv" ]; then
if [ -f "$INSTALLDIR/opencv/setupvars.sh" ]; then
echo "directly source opencv shell env....."
echo "$INSTALLDIR"
source "$INSTALLDIR/opencv/setupvars.sh"
else
echo "manually export opencv env"
export OpenCV_DIR="$INSTALLDIR/opencv/share/OpenCV"
export LD_LIBRARY_PATH="$INSTALLDIR/opencv/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
export LD_LIBRARY_PATH="$INSTALLDIR/opencv/share/OpenCV/3rdparty/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
fi
fi
进而在自己的setupvar.sh中添加了如下命令,每次source环境变量配置脚本时都可以自动配置opencv环境变量:
export OpenCV_DIR=/opt/intel/openvino_2021/opencv/cmake
export LD_LIBRARY_PATH=/opt/intel/openvino_2021/opencv/lib:$LD_LIBRARY_PATH
source setupvars.sh
mkdir build && cd build
cmake ../samples/cpp
make -j8
至此,在你刚刚创建的build目录下,就生成了openvino所有的自带样例。样例的可执行程序就在build目录下的intel64目录下,执行如下命令就可以看到成功运行了一个样例:
cd $INSTALL_DIR
cd build/intel64
./classification_sample_async -i /opt/intel/openvino_2021/deployment_tools/demo/car.png -m ~/openvino_models/ir/public/squeezenet1.1/FP16/squeezenet1.1.xml -d CPU
当然,执行前不要忘记source环境变量。
上一节主要在讲构建已有的官方用例。
这一节讲一下把自己的用例添加到样例工程中运行。
假设现在你有一个基于openvino的推理程序,包含了: main.cpp和infer.h,
那么你只需要再写一个CMakeLists.txt,包含一下内容:
ie_add_sample(NAME test
SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/main.cpp"
HEADERS "${CMAKE_CURRENT_SOURCE_DIR}/infer.h"
DEPENDENCIES format_reader ie_samples_utils)
然后将上面一共三个文件放到一个目录,如起名叫my_sample, 再将my_sample目录放到安装目录下的samples/cpp下,接着执行上一节讲的官方用例构建。就可以把自己的用例一起构建了。构建出的二进制,同样在 intel64目录下。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。