Docker* 이미지에서 Raspbian* OS용 OpenVINO™ 툴킷 설치

문서

설치 및 설정

000055220

2022-09-26

OpenVINO 툴킷의 인텔 배포 코드를 채택하고 유지하는 것이 간단합니다. 런타임(추론 엔진)을 사용하면 최적화된 네트워크를 컴파일하고 특정 장치에서 추론 작업을 관리하여 성능을 조정할 수 있습니다.

이 가이드는 사용자에게 Raspbian* OS용 OpenVINO™ 툴킷을 설치하는 Docker* 이미지를 만드는 단계를 제공합니다.

시스템 요구 사항

대상 운영 체제

  • Raspbian* 스트레치, 32비트
  • Raspbian* 버스터, 32비트

호스트 운영 체제

  • Raspbian* 스트레치, 32비트
  • Raspbian* 버스터, 32비트

하드웨어

  • ARM* ARMv7-A CPU 아키텍처가 탑재된 Raspberry Pi* 보드. 확인합니다. uname -m 반환 armv7l.
    • Raspberry Pi* 3 모델 B+
    • Raspberry Pi* 4 모델 B
  • 인텔® 뉴럴 컴퓨트 스틱 2

소프트웨어

참고

자동화된 편의 스크립트 를 사용하여 Docker*를 설치할 수 있습니다. 현재 Raspbian*용 이 툴킷을 설치하는 유일한 방법입니다. 자세한 정보를 찾아보십시오.

인텔® 뉴럴 컴퓨트 스틱 2 위한 Docker* 이미지 구축

이미지 빌드

Docker* 이미지를 구축하려면 OpenVINO™ 툴킷 설치 이미지를 만드는 데 필요한 정의된 변수와 명령이 포함된 Dockerfile을 만들어야 합니다.

다음 예제를 템플릿으로 사용하여 Dockerfile을 만듭니다.

  1. Docker* 이미지를 만들 디렉토리를 만들거나 디렉터리로 이동합니다. 이 문서는 ~/docker 디렉터리.

    mkdir ~/docker && cd ~/docker

  2. 다운로드 Dockerfile 템플릿(ZIP) 이 가이드에서 또는 아래 템플릿의 내용을 사용하여 자신의 Dockerfile을 만들 수 있습니다.

    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 "

     

     
    참고

    위의 템플릿의 DOWNLOAD_LINK 변수에서 OpenVINO™ 툴킷 패키지에 대한 직접 링크를 최신 버전으로 교체해야 합니다. Raspbian* OS 패키지(예: l_openvino_toolkit_debian9_arm_*_x86_64.tgz)에 대한 OpenVINO 툴킷 링크를 https://storage.openvinotoolkit.org 복사할 수 있습니다. 사용 가능한 최신 버전을 선택하고 URL을 마우스 오른쪽 버튼으로 클릭하고 링크 주소 복사 를 누릅니다.

  3. 인텔® Movidius™ 뉴럴 컴퓨트 스틱 또는 인텔® 뉴럴 컴퓨트 스틱 2 Docker* 이미지를 구축하려면 다음 명령을 실행합니다.

    docker build . -t

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

Docker* 이미지 실행 및 테스트

알려진 제한 사항:

  • 인텔® 뉴럴 컴퓨트 스틱 2 장치는 실행 중에 VendorID 및 DeviceID를 변경하며 매번 호스트 시스템을 새로운 장치로 찾습니다. 즉, 평소처럼 장착할 수 없습니다.
  • UDEV 이벤트는 기본적으로 컨테이너로 전달되지 않으므로 장치 재연결을 인식하지 못합니다.
  • 호스트당 하나의 장치만 지원됩니다.

벤치마크 앱 실행

응용 프로그램은 OpenVINO IR(model.xml 및 model.bin) 및 ONNX(model.onnx) 형식의 모델과 함께 작동합니다. 필요한 경우 모델을 변환해야 합니다.

  1. 다음 옵션을 사용하여 인텔® 뉴럴 컴퓨트 스틱 2 이미지를 실행합니다. 대화형 및 권한 모드에서 이 컨테이너를 실행하려면 Docker 네트워크 구성을 호스트로 활성화한 다음 모든 장치를 컨테이너에 장착합니다.

    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. 다음 명령을 사용하여 벤치마크 앱을 실행합니다. 빌드 샘플 디렉토리로 이동하십시오.

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

  3. 기본 옵션으로 벤치마킹을 실행하고 다음 명령을 모델에 대한 사양과 입력 이미지 경로와 함께 사용하십시오.

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

이 절차는 Docker* 이미지에서 Raspbian*용 OpenVINO™ 툴킷 설치 절차를 완료합니다.

참고

이는 2022.2년 OpenVINO™ 툴킷 릴리스에 적용됩니다.

 

관련 주제
Raspberry Pi*에서 열린 모델 동물원 데모 구축
Raspberry Pi*용 워크플로
기타 OpenVINO™ 툴킷 코드 샘플
OpenVINO™ 툴킷 오픈 모델 동물원
인텔® 뉴럴 컴퓨트 스틱(인텔® NCS2) 장치에 대한 네트워크 최적화
커뮤니티 포럼 및 기술 지원