Instale o kit de ferramentas OpenVINO™ raspbian* para o sistema operacional Raspbian* a partir de uma imagem Docker*

Documentação

Instalação e configuração

000055220

26/09/2022

A Distribuição Intel do kit de ferramentas OpenVINO torna simples adotar e manter seu código. O tempo de execução (mecanismo de inferência) permite ajustar o desempenho compilando a rede otimizada e gerenciando operações de inferência em dispositivos específicos.

Este guia fornece aos usuários etapas para criar uma imagem Docker* para instalar o kit OpenVINO™ de ferramentas para o sistema operacional Raspbian*.

Requisitos do sistema

Sistema operacional de destino

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

Sistemas operacionais host

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

Hardware

  • Placa Raspberry Pi* com arquitetura DE CPU ARM* ARMv7-A. Verifique isso uname -m Retorna armv7l.
    • Raspberry Pi* 3 modelo B+
    • Raspberry Pi* 4 modelo B
  • Stick de computação neural Intel® 2

Software

Nota

Use os scripts de conveniência automatizados para instalar o Docker*, pois esta é atualmente a única maneira de instalar este kit de ferramentas para Raspbian*. Encontre mais informações.

Construindo uma imagem do Docker* para Stick de computação neural Intel® 2

Construir imagem

Para criar uma imagem do Docker*, você precisará criar um Dockerfile que contém as variáveis e comandos definidos necessários para criar uma imagem de instalação OpenVINO™ kit de ferramentas.

Crie seu Dockerfile usando o exemplo a seguir como um modelo.

  1. Crie ou vá para um diretório onde você criará sua imagem Docker*. Este documento cria um ~/Docker Diretório.

    mkdir ~/docker && cd ~/docker

  2. Baixe o Modelo do dockerfile (ZIP) a partir deste guia ou crie seu próprio Dockerfile usando o conteúdo do modelo abaixo.

    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 "

     

     
    Nota

    Você precisará substituir o link direto para o pacote OpenVINO™ kit de ferramentas na variável DOWNLOAD_LINK no modelo acima com o da versão mais recente. Você pode copiar o link do kit de ferramentas OpenVINO para o pacote raspbian* SO (ou seja, l_openvino_toolkit_debian9_arm_*_x86_64.tgz) do https://storage.openvinotoolkit.org. Selecione a versão mais recente disponível, clique com o botão direito no URL e pressione Copiar o endereço do link.

  3. Para construir uma imagem Docker* para Intel® Movidius™ neural compute Stick ou Stick de computação neural Intel® 2, execute o seguinte comando:

    docker build . -t

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

Executando e testando uma imagem do Docker*

Limitações conhecidas:

  • O Stick de computação neural Intel® 2 muda seu VendorID e DeviceID durante a execução e cada vez procura um sistema host como um dispositivo novo. Isso significa que ele não pode ser montado como de costume.
  • Os eventos de UDEV não são encaminhados para o contêiner por padrão, portanto, ele não está ciente da reconexão do dispositivo.
  • Apenas um dispositivo é suportado por host.

Executando o aplicativo benchmark

A aplicação funciona com modelos nos formatos OpenVINO IR (model.xml e model.bin) e ONNX (model.onnx). Certifique-se de converter seus modelos, se necessário.

  1. Use a opção a seguir para executar a imagem em um Stick de computação neural Intel® 2. Para executar este contêiner no modo interativo e privilegiado, habilite a configuração de rede Docker como host e, em seguida, monte todos os dispositivos no contêiner:

    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. Use os seguintes comandos para executar o aplicativo benchmark. Vá para o diretório de amostras de compilação:

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

  3. Execute benchmarking com opções padrão, use o comando a seguir com especificações do modelo e um caminho para a imagem de entrada:

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

Isso conclui o procedimento de instalação do kit de ferramentas OpenVINO™ raspbian* a partir de uma imagem do Docker*.

Nota

Isso se aplica à versão 2022.2 do kit OpenVINO™ ferramentas.

 

Tópicos relacionados
Construindo demonstrações de zoo de modelo aberto no Raspberry Pi*
Fluxo de trabalho para Raspberry Pi*
Outras OpenVINO™ de código de kit de ferramentas
OpenVINO™ kit de ferramentas Open Model Zoo
Otimize redes para o dispositivo Intel® Neural Compute Stick (Intel® NCS2)
Fórum comunitário e suporte técnico