树莓派安装部署OpenVINO

因为OpenVINO是英特尔基于自身硬件平台开发的一种工具套件,所以树莓派要使用OpenVINO必须配合英特尔神经网络计算棒2(NCS2)

安装openvino

1.下载树莓派OpenVINO安装包

这里使用的是2021.4版本:OpenVINO2021.4.689

下载:l_openvino_toolkit_runtime_raspbian_p_2021.4.689.tgz
下载之后通过WinSCP或Filezilla复制到树莓派

sudo mkdir -p /opt/intel/openvino_2021
sudo tar -zxvf  l_openvino_toolkit_runtime_raspbian_p_2021.4.689.tgz --strip 1 -C /opt/intel/openvino_2021

2.脚本设置

更新Cmake

sudo apt install cmake

因为openvino中有自带的opencv,如果事先opencv已经配置好,需要将openvino脚本中的opencv删掉(如果未安装opencv跳过这步)

cd /opt/intel/openvino_2021/bin
sudo cp setupvars.sh setupvars.sh.bak
sudo vi setupvars.sh

删除下面这段,保存退出:

if [ -e "$INSTALLDIR/opencv" ]; then
    if [ -f "$INSTALLDIR/opencv/setupvars.sh" ]; then
        source "$INSTALLDIR/opencv/setupvars.sh"
    else
        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

 3.设置环境变量

echo "source /opt/intel/openvino_2021/bin/setupvars.sh" >> ~/.bashrc

配置神经计算棒NCS2

1.为NCS2添加usb规则
将当前用户添加到用户组

sudo usermod -a -G users "$(whoami)"

注销重新登录使其生效

2.执行脚本

sh /opt/intel/openvino_2021/install_dependencies/install_NCS_udev_rules.sh

至此,openvino安装配置完成。

检验

检验是否安装成功

新建目录编译示例

cd ~
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS="-march=armv7-a" /opt/intel/openvino_2021/deployment_tools/inference_engine/samples/cpp
make -j4 object_detection_sample_ssd

下载open_model_zoo中人脸检测模型:open_model_zoo-2021.4.2.zip

git clone https://github.com/openvinotoolkit/open_model_zoo/tree/2021.4.2
unzip open_model_zoo-2021.4.2.zip  -d ~/build/
cd ~/build/open_model_zoo-2021.4.2/tools/downloader/
python3 downloader.py --name face-detection-adas-0001

运行示例: 

./armv7l/Release/object_detection_sample_ssd -m ~/build/open_model_zoo-2021.4.2/tools/downloader/intel/face-detection-adas-0001/FP16/face-detection-adas-0001.xml -d MYRIAD -i ../1.png

 树莓派安装部署OpenVINO_第1张图片

 树莓派安装部署OpenVINO_第2张图片

输出图片 out_0.bmp:

树莓派安装部署OpenVINO_第3张图片

需要了解的是,树莓派NCS2仅支持FP16,而树莓派的OpenVINO工具套件不包含模型优化器Model Optimizer,因此当我们要实现yolov5等网络时,我们需要在别的机器上对模型进行优化。

需要将深度学习模型转换为支持FP16的IR文件,IR文件包含一个*.xml文件用来描述网络结构,还包含一个*.bin文件用来存储网络的权重和偏置量。

你可能感兴趣的