raspi4B + cameraで画像認識してみる
Raspberry Pi 4Bの入手
カメラモジュールの入手
カメラモジュールは、ソニー製にしました。
LABISTS Raspberry Pi カメラモジュール V2 ソニーIMX219PQ CMOS画像センサ 8メガピクセル 4B、3B+、3B、2Bに対応可能
そのほかに必要なもの
そのほかに以下が必要です。家にあったものを使いました。
ラズパイの組み立て
箱を開けるとクイックスタートガイドが付いていて、特に問題なく組み立てが完成しました。ざっくりと以下のような作業です。ドライバーも入っていました。
- ヒートシンクの貼り付け
- Raspiをケースにねじ止め
- ファンをケースにねじ止め
- ファンのケーブルをGPIO端子に接続
- ケースの蓋をする
4.のファン接続は、低冷却モードの3Vと高冷却モードの5Vがあります。とりあえず3Vの方に接続。
あとは、USBマウスとキーボード、ディスプレイをつなげて設置完了です。
ちなみに、カメラモジュールを接続する場合は、2.の前にやっておくことをオススメします。
ラズパイの初期設定
電源を入れると、ファンが「ジーーー」と聞こえるか聞こえないかぐらいの音で回り始めました。
最初は英語のまま、いくつか初期設定をします。
最後にソフトウェアアップデートのダウンロードが始まり、待つこと1時間以上!
ようやく完了して再起動すると、日本語バージョンのOSになりました。
カメラモジュールの接続
カメラ関係は、以下のサイトを参考にしました。
カメラモジュールをつけてみます。
ケーブルの端子への差し込み方も参考になりました。基板をケースにねじ止めする前にケーブルを差し込んでおくべきでした。指が入らず、ボールペンで端子の端っこを持ち上げることになってしまった。
また、ケーブルがケースに収まりにくくて若干苦労しました。
ファンと反対側に折り曲げて、USBやEtherのコネクタの上部にケーブルが来るようにして、最後は無理やり蓋をした感じです。
カメラ有効の設定
ケースに収まり、Raspiを起動。Raspiの設定アプリから、カメラを「有効」にします。
カメラの動作確認(記念撮影)
そして、コマンドラインから「vcgencmd get_camera」と入力して実行します。
supported=1 detected=1
と表示され、無事カメラが認識されたようです。
次に、「sudo raspistill -o image.jpg」と入力して実行すると、画面上にカメラ映像が表示されて5秒後に消えました。
フォルダの/home/piの直下に、image.jpgが保存されていて、ファイルを開くと、自分の横顔が写っている!
画像認識
以下のサイトを参考に、ソフトウェアのインストールと実行をしました。
上記サイトに記載されていたそのままを実行しました。
$ git clone https://github.com/karaage0703/raspberry-pi-setup
$ cd raspberry-pi-setup && ./setup-ai.sh
15分ぐらいで インストールが完了。
そして、物体検出。
$ cd && git clone https://github.com/karaage0703/object_detection_tools $ cd ~/object_detection_tools/models $ ./get_ssdlite_mobilenet_v2_coco_model.sh $ cd ~/object_detection_tools $ python3 scripts/object_detection.py -l='models/coco-labels-paper.txt' -m='models/ssdlite_mobilenet_v2_coco_2018_05_09/frozen_inference_graph.pb' -d='raspi_cam'
無事にカメラが起動して、自分が写り、「Person 70.3%」とか表示されました!
こんなに簡単に物体検出までできて、感謝感謝です。