Installez le kit d’outils OpenVINO™ pour le système d’exploitation Raspbian* à partir d’une image Docker*

Documentation

Installation et configuration

000055220

26/09/2022

L’Distribution Intel du kit d'outils OpenVINO simplifie l’adoption et la préservation de votre code. Le moteur d’exécution (moteur d’inférence) vous permet de régler les performances en compilant le réseau optimisé et en gérant les opérations d’inférence sur des périphériques spécifiques.

Ce guide fournit aux utilisateurs les étapes de création d’une image Docker* pour installer le kit d’outils OpenVINO™ pour le système d’exploitation Raspbian*.

Configuration système requise

Système d’exploitation cible

  • Raspbian* Stretch, 32 bits
  • Buster Raspbian*, 32 bits

Systèmes d’exploitation hôtes

  • Raspbian* Stretch, 32 bits
  • Buster Raspbian*, 32 bits

Matériel

  • Carte Raspberry Pi* avec architecture processeur ARM* ARMv7-A. Vérifiez que uname -m Retourne armv7l.
    • Raspberry Pi* 3 Modèle B+
    • Raspberry Pi* 4 Modèle B
  • Stick de calcul neuronal Intel® 2

Logiciel

Note

Utilisez les scripts de commodité automatisés pour installer Docker*, car c’est actuellement le seul moyen d’installer ce kit d’outils pour Raspbian*. Trouvez plus d’informations.

Créer une image Docker* pour Stick de calcul neuronal Intel® 2

Image de construction

Pour créer une image Docker*, vous devrez créer un fichier Dockerfile contenant les variables et commandes définies nécessaires pour créer une image d’installation du kit d’outils OpenVINO™.

Créez votre fichier Dockerfile à l’aide de l’exemple suivant comme modèle.

  1. Créez ou accédez à un répertoire dans lequel vous créerez votre image Docker*. Ce document crée une ~/Docker Répertoire.

    mkdir ~/docker && cd ~/docker

  2. Téléchargez le Modèle Dockerfile (ZIP) à partir de ce guide ou créez votre propre Fichier Dockerfile à l’aide du contenu du modèle ci-dessous.

    vi Dockerfile

    FROM balenalib/raspberrypi3:buster

    ARG DOWNLOAD_LINK=https://github.com/openvinotoolkit/openvino/releases/download/2022.2.0/l_openvino_toolkit_debian9_arm_2022.2.0.7713.af16ea1d79a_x86_64.tgz
    ARG INSTALL_DIR=/opt/intel/openvino
    ARG BIN_FILE=https://storage.openvinotoolkit.org/repositories/open_model_zoo/2022.1/models_bin/3/person-vehicle-bike-detection-crossroad-0078/FP16/person-vehicle-bike-detection-crossroad-0078.bin
    ARG WEIGHTS_FILE=https://storage.openvinotoolkit.org/repositories/open_model_zoo/2022.1/models_bin/3/person-vehicle-bike-detection-crossroad-0078/FP16/person-vehicle-bike-detection-crossroad-0078.xml
    ARG IMAGE_FILE=https://cdn.pixabay.com/photo/2018/07/06/00/33/person-3519503_960_720.jpg

    RUN apt-get --allow-unauthenticated upgrade
    RUN apt-get update && apt-get install -y --no-install-recommends \
       apt-utils \
       automake \
       cmake \
       cpio \
       gcc \
       g++ \
       libatlas-base-dev \
       libstdc++6 \
       libtool \
       libusb-1.0.0-dev \
       lsb-release \
       make \
       python3-pip \
       python3-numpy \
       python3-scipy \
       libgtk-3-0 \
       pkg-config \
       libavcodec-dev \
       libavformat-dev \
       libswscale-dev \
       sudo \
       udev \
       unzip \
       vim \
       git \
       wget && \
       rm -rf /var/lib/apt/lists/*
    RUN mkdir -p $INSTALL_DIR && cd $INSTALL_DIR && \
       wget -c $DOWNLOAD_LINK && \
       tar xf l_openvino_toolkit_debian9_arm*.tgz --strip 1 -C $INSTALL_DIR
    # add USB rules
    RUN sudo usermod -a -G users "$(whoami)"
    # build Object Detection sample
    RUN /bin/bash -c "source $INSTALL_DIR/setupvars.sh && \
       cd $INSTALL_DIR/install_dependencies && \
       sh install_NCS_udev_rules.sh"
    RUN echo "source /opt/intel/openvino/setupvars.sh" >> ~/.bashrc && \
       mkdir /root/Downloads && \
       cd $INSTALL_DIR/samples/c/ && \
       /bin/bash -c "source $INSTALL_DIR/setupvars.sh && \
       ./build_samples.sh && \
       cd $INSTALL_DIR/samples/cpp/ && \
       ./build_samples.sh && \
       wget --no-check-certificate $BIN_FILE -O /root/Downloads/person-vehicle-bike-detection-crossroad-0078.bin && \
       wget --no-check-certificate $WEIGHTS_FILE -O /root/Downloads/person-vehicle-bike-detection-crossroad-0078.xml && \
       wget --no-check-certificate $IMAGE_FILE -O /root/Downloads/walk.jpg "

     

     
    Note

    Vous devrez remplacer le lien direct vers le package de kit d’outils OpenVINO™ dans la variable DOWNLOAD_LINK du modèle ci-dessus par celui de la dernière version. Vous pouvez copier le lien du kit d’outils OpenVINO pour le package du système d’exploitation Raspbian* (c’est-à-dire l_openvino_toolkit_debian9_arm_*_x86_64.tgz) depuis https://storage.openvinotoolkit.org. Sélectionnez la dernière version disponible, cliquez avec le bouton droit sur l’URL et appuyez sur l’adresse de lien Copy.

  3. Pour créer une image Docker* pour Intel® Movidius™ stick de calcul neuronal ou Stick de calcul neuronal Intel® 2, exécutez la commande suivante :

    docker build . -t

    (for example, docker build . -t openvino-rpi)

Exécuter et tester une image Docker*

Limitations connues :

  • Le périphérique Stick de calcul neuronal Intel® 2 modifie son VendorID et DeviceID pendant l’exécution et chaque fois recherche un système hôte comme un tout nouveau périphérique. Cela signifie qu’il ne peut pas être monté comme d’habitude.
  • Les événements UDEV ne sont pas transmis au conteneur par défaut, et il n’est donc pas au courant de la reconnection du périphérique.
  • Un seul périphérique est pris en charge par hôte.

Exécuter une application de banc d’essai

L’application fonctionne avec les modèles aux formats OpenVINO IR (model.xml et model.bin) et ONNX (model.onnx). Veillez à convertir vos modèles si nécessaire.

  1. Utilisez l’option suivante pour exécuter l’image sur un Stick de calcul neuronal Intel® 2. Pour exécuter ce conteneur en mode interactif et privilégié, activez la configuration du réseau Docker en tant qu’hôte, puis montez tous les périphériques dans le conteneur :

    docker run -it --privileged -v /dev:/dev --network=host /bin/bash

    (for example, docker run -it --privileged -v /dev:/dev --network=host openvino-rpi /bin/bash)

  2. Utilisez les commandes suivantes pour exécuter l’application benchmark. Accédez au répertoire des échantillons de construction :

    cd /root/inference_engine_._samples_build/armv7l/Release/

  3. Exécutez des bancs d’essai avec des options par défaut, utilisez la commande suivante avec les spécifications du modèle et un chemin vers l’image d’entrée :

    ./benchmark_app -m ~/Downloads/person-vehicle-bike-detection-crossroad-0078.xml -i ~/Downloads/walk.jpg -d MYRIAD

Cela termine la procédure d’installation du kit d’outils OpenVINO™ pour Raspbian* à partir d’une image Docker*.

Note

Cela s’applique à la version 2022.2 du kit d’outils OpenVINO™.

 

Rubriques connexes
Créer des démos de Zoo Open Model sur Raspberry Pi*
Flux de travail pour Raspberry Pi*
Autres exemples de code de kit d’outils OpenVINO™
zoo Open Model OpenVINO™ kit d’outils
Optimiser les réseaux pour le stick de calcul neuronal Intel® (Intel® NCS2)
Forum de la communauté et assistance technique