/ AIoT

【 Edge 】安裝 Intel OpenVINO 於 Raspberry Pi 4 的 Raspbian OS

內容

  • 學習目標
  • 前置準備作業
  • 安裝 OpenVINO
  • 測試

學習目標

  • Raspberry Pi 4Raspbian OS 安裝 OpenVINO 與測試

前置準備作業

  • 已於 Raspberry Pi 4 安裝 Raspbian Buster
  • 已設定網路連線
  • 相關設備
    • 準備一台 Raspberry Pi 4
    • 準備一條 Raspberry Pi 4 專用的電源線
    • 準備一張 Micro SD Card
    • 準備 鍵盤滑鼠
    • 準備一台 螢幕
    • 準備一條 HDMI 母Mini HDMI 公 的線
    • 準備一台 電腦 ( Windows 或 macOS )
    • 準備一支 Intel Movidius - Neural Compute Stick 2 ( NCS )

安裝 OpenVINO

Step 1. 開啟終端機

  • 點選上方的 終端機
    -----2019-12-19---2.18.02

Step 2. 開始安裝

  • 切換工作路徑 ( 請在終端機輸入下方指令 )

    cd ~/Downloads/
    

    -----2019-12-19---2.53.53

  • 建立 /opt/intel/openvino 目錄 ( 請在終端機輸入下方指令 )

    sudo mkdir -p /opt/intel/openvino
    

    -----2019-12-19---3.00.55

  • 取得 OpenVINO Toolkit ( 請在終端機輸入下方指令 )

    sudo wget https://download.01.org/opencv/2019/openvinotoolkit/R2/l_openvino_toolkit_runtime_raspbian_p_2019.2.242.tgz
    

    -----2019-12-19---2.57.52

  • 解壓縮並移動目錄位置到 /opt/intel/openvino ( 請在終端機輸入下方指令 )

    sudo tar -xf  l_openvino_toolkit_runtime_raspbian_p_2019.2.242.tgz --strip 1 -C /opt/intel/openvino
    

    -----2019-12-19---3.01.41

  • 安裝 cmake ( 請在終端機輸入下方指令 )

    sudo apt install -y cmake
    

    -----2019-12-19---3.02.19

  • 設定環境變數 ( 請在終端機輸入下方指令 )

    source /opt/intel/openvino/bin/setupvars.sh
    

    -----2019-12-19---3.03.46

  • 設定永久的環境變數 ( 請在終端機輸入下方指令 )

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

    -----2019-12-19---3.04.41

  • 將現在的使用者加入到 users 群組 ( 請在終端機輸入下方指令 )

    • 指令執行完後請重新登入
    sudo usermod -a -G users "$(whoami)"
    

    -----2019-12-19---3.05.10

  • 安裝 rules ( 請在終端機輸入下方指令 )

    sh /opt/intel/openvino/install_dependencies/install_NCS_udev_rules.sh
    

    -----2019-12-19---3.11.03

  • 建立 build 資料夾並切換目錄 ( 請在終端機輸入下方指令 )

    mkdir build && cd build
    

    -----2019-12-19---3.12.44

  • 建立 Object Detection sample ( 請在終端機輸入下方指令 )

    cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS="-march=armv7-a" /opt/intel/openvino/deployment_tools/inference_engine/samples
    

    -----2019-12-19---3.15.25

  • 編譯 Object Detection sample ( 請在終端機輸入下方指令 )

    make -j2 object_detection_sample_ssd
    

    -----2019-12-19---3.17.12
    -----2019-12-19---3.19.40

  • 取得 bin 檔 ( 請在終端機輸入下方指令 )

    wget --no-check-certificate https://download.01.org/opencv/2019/open_model_zoo/R1/models_bin/face-detection-adas-0001/FP16/face-detection-adas-0001.bin
    

    -----2019-12-19---3.20.21

  • 取得 xml 檔 ( 請在終端機輸入下方指令 )

    wget --no-check-certificate https://download.01.org/opencv/2019/open_model_zoo/R1/models_bin/face-detection-adas-0001/FP16/face-detection-adas-0001.xml
    

    -----2019-12-19---3.20.50

  • 取得測試照片 ( 請在終端機輸入下方指令 )

    wget https://i.imgur.com/7ZxCSNx.jpg -O test.jpg
    

    -----2019-12-19---3.21.16

  • 測試 ( 請在終端機輸入下方指令 )

    • 執行成功後會產生 out_0.bmp
    ./armv7l/Release/object_detection_sample_ssd -m face-detection-adas-0001.xml -d MYRIAD -i ./test.jpg
    

    -----2019-12-19---3.22.21
    -----2019-12-19---3.22.54

  • 開啟原始檔與結果檔案

    • 原始檔 ( 請在終端機輸入下方指令 )

      gpicview test.jpg
      

      -----2019-12-19---3.29.30
      -----2019-12-19---3.29.37

    • 結果檔 ( 請在終端機輸入下方指令 )

      gpicview out_0.bmp
      

      -----2019-12-19---3.27.51
      -----2019-12-19---3.27.19


Reference
GitHub
List of blogs
Archer

Archer

Having being a software engineer. Experience with Python, JavaScript, Node.js, Objective-C, Micro:bit, Raspberry Pi, AWS, Azure, IoT. ❆ [email protected] https://oranwind.org/author/archer/

Read More