はじめに
仕事の都合で、ラズパイ上で物体検出モデルを動かす必要性が出てきました
そこで、冬休みの宿題という感覚で、物体検出モデルを動かしてみた内容の覚書です
ラズパイの購入
[RSオンラインのAI set]
(https://jp.rs-online.com/web/p/processor-microcontroller-development-kits/2552222583/?intcmp=JP-WEB-_-Pi-_-Dec-18-_-ai_set)
上記サイトのAI setを購入しました
説明書的なものはなく、セッティング方法は自分でググれというスタンスのようです
なお、ラズパイのケースは別で買わないといけないのかもと買ってから思い焦りましたが、ディスプレイの基盤の上につけるので不要でした
また、有線キーボードも購入しました.
タッチパネルディスプレイとラズパイの接続
タッチパネルとラズパイを接続する手順は、以下のサイトを参考にしました。
https://raspberry-pi.ksyic.com/page/page/pgp.id/4
無事に接続が完了したところで、電源を入れてみると、タッチパネルが上下逆に映ってました。それを修正する方法については、以下のサイトを参考にしました
http://xn--r9j1d0b6i8jx814a8sl.com/raspberry-pi-3-how-to-setup/#i-5
実は、リボンケーブルなるものもこれまで触ったことがない人間です。そこで、初歩的なミスをしないように以下のサイトで取り付け方を参考にしました
https://studio.beatnix.co.jp/kids-it/hardware/raspberry_pi/7inch-touch-screen-display/
なお、上のサイトでは、ディスプレイのフレームはラズパイを取り付ける前に付けておかないとダメと書いてますが、私が購入したRSオンラインのディスプレイは、ラズパイを取り付けた後でフレームを取り付けるのが正解でした
ヒートシンクの取り付け
以下のサイトを参考にして、Wi-FiとSOCに取り付けました
https://www.kabegiwablog.com/entry/2017/08/29/222553
専用カメラモジュールの接続
ラズパイの専用カメラモジュールを取り付ける方法に関しては、以下のサイトを参考にしました
https://raspi-wannabe.com/digital-camera/
また、以下のサイトの「4.準備」に記載されたモジュールのインストール部分も参考にしました
このモジュールを入れることで、専用カメラモジュールがWEBカメラと同様の扱いになるようです(適当な認識…)
https://hakengineer.xyz/2018/03/03/post-1056/
物体検出モデル利用するための準備
Tensorflowのモデルを動かすための準備として、以下を行いました
- Tensorflow, OpenCVのインストール
- Movidius SDKのインストール
下のサイトにおけるKerasのインストール以外の記載を参考にしました
https://karaage.hatenadiary.jp/entry/2018/05/23/073000
下のサイトも参考にしました
ただ、ncappzooについては途中でエラーでつまづくので放置してます
https://kokensha.xyz/ai/how-to-run-movidius-example-code-on-raspberrypi-3b-plus/
なお、Tensorflowのインストールについては、公式チュートリアルを見ておいたほうがいいと思います
https://www.tensorflow.org/install/
物体検出モデルの実行
サンプルは以下のリポジトリを使わせていただきました
ラズパイ上にcloneし、MobileNet-SSDのサンプルを実行することができました
なお、インストールしたncsdkがv1の場合、tag v1.0を使う必要があります
私はncsdkのv1をインストールしたのに、v2版のコードをcloneしてしまい、「mvnc.SetGlobalOption」の記載がv1とv2で違うというエラーに引っかかってしまいました
追記:55,6行目のwindowWidth、windowHeightの値を変更しないと私の環境では動きませんでした.私はそれぞれ640,480に変更しました.
以上