gosoly

ゆっくりと趣味に浸る。

RaspbianでNeural Compute Stickの環境構築

DSCF1842

Neural Compute Stick(NCS)をラズパイで試そうとした時にSDKの導入につまずいたので、その構築の備忘録。

SDKを試すために幾度となくmicroSDをフォーマットしてやり直してるので、これで大丈夫なはず…

環境

ハード

  • Raspberry Pi 3 Medel B
    • 2018-06-27-raspbian-stretch.img
  • ACアダプタ
    • 5V、3Aの物を推奨、2.5Aだと電圧低下のアラートが出ます
  • microSD 32GB
    • 極稀に相性があるらしい
  • Movidius Neural Compute Stick
    • SDK: ncsdk-1.12.00.01

ソフト

  • Python 3.5.3
    • ラズパイデフォルト
  • TensorFlow 1.9.0
  • OpenCV 3.4.2
  • その他
    • SDKの自動インストールに準ずる

SDKのインストール

既存環境を上書きする可能性が大なので、NCS用にまっさらなmicroSDを用意してゼロから環境構築をすること推奨。
まだNSCはラズパイに刺さないでおk

好みの作業用ディレクトリを作成し移動

mkdir -p ~/Workspace
cd ~/Workspace

NSCSDKを取得し展開

wget https://ncs-forum-uploads.s3.amazonaws.com/ncsdk/ncsdk-01_12_00_01-full/ncsdk-1.12.00.01.tar.gz
tar xvf ncsdk-1.12.00.01.tar.gz

展開されたディレクトリに移動

cd ncsdk-1.12.00.01

SDKのインストール(2時間以上を目安)
ヒートシンクつけたラズパイでもコアの温度が80度を超え、処理速度が低下しますので、ファンで冷やすのが吉

make install

ターミナル、またはラズパイを再起動

TensorFlowのインストール

現在だとpipから1.9.0がインストールできるようです
※こけても再度インストールを試すとうまくいく

pip3 install tensorflow

OpenCVのインストール

ビルド済みのものをインストール

wget https://github.com/mt08xx/files/raw/master/opencv-rpi/libopencv3_3.4.2-20180709.1_armhf.deb
sudo apt install -y ./libopencv3_3.4.2-20180709.1_armhf.deb

再読込

sudo ldconfig

確認

python3 -c 'import cv2; print(cv2.__version__)'

テストプログラムの実行

NSCSDK内にあるテスト用のサンプルプログラムの場所へ移動

cd ~/Workspace/ncsdk-1.12.00.01/examples/tensorflow/inception_v3

実行権限の付与

chmod +x run.py

NCSを接続してテストプログラムの実行
※未接続の場合はエラーが出て動かないだけです

./run.py

実行結果

f:id:ban367:20180813150811p:plain:w400

おわりに

動かすまでのセットアップがかなり短いのですが、一部の作業の待ち時間が長すぎて一度コケると再検証までが長いです…

ひとまずこれでテストプログラムの実行ができたので、先人のデモなどを動かしつつ、遊んでみたいと思います。