RaspbianでNeural Compute Stickの環境構築
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
ソフト
SDKのインストール
既存環境を上書きする可能性が大なので、NCS用にまっさらなmicroSDを用意してゼロから環境構築をすること推奨。
まだNSCはラズパイに刺さないでおk
好みの作業用ディレクトリを作成し移動
mkdir -p ~/Workspace cd ~/Workspace
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__)'
テストプログラムの実行
NSCのSDK内にあるテスト用のサンプルプログラムの場所へ移動
cd ~/Workspace/ncsdk-1.12.00.01/examples/tensorflow/inception_v3
実行権限の付与
chmod +x run.py
NCSを接続してテストプログラムの実行
※未接続の場合はエラーが出て動かないだけです
./run.py
実行結果
おわりに
動かすまでのセットアップがかなり短いのですが、一部の作業の待ち時間が長すぎて一度コケると再検証までが長いです…
ひとまずこれでテストプログラムの実行ができたので、先人のデモなどを動かしつつ、遊んでみたいと思います。