TPTブログ

テックポート株式会社のブログです。 技術情報や製品・サービス情報、 また未経験社員がデータサイエンティストを 目指す奮闘記など、更新していきます。

M5StackUnitV2で自作モデルを動かす!

こんにちは。えーちゃんです!
このたびついに、M5StackUnitV2で自作モデルを動かせるようになりました!!
私がこのブログを引き継いでからようやくAIの話をするのです。

UnitV2とは?

M5Stack社から発売された小型のAIカメラモジュールです。大きさは消しゴムよりひとまわり大きいくらいです。
M5Stackに接続できるため、UnitV2のカメラに人が映ったら、M5Stackで部屋の明かりを制御してつける。なんてことが可能です。
M5Stack(Core2)とケーブルでつないだだけで起動電力が足りるのも素晴らしいところです。
https://docs.m5stack.com/en/unit/unitv2

自作モデルを動かす

UnitV2にはビルトイン機能として、高機能なwebアプリと、AIモデルが入っています。
UnitV2は内部でLinuxが動くPCなので、オリジナルの自作モデルを動かすことも可能です。
今回はレゴブロックのカニの人形を検知するモデルを作って動かしました。

こちらが推論結果です。ビルトイン機能のモデルでは検出できないカニを検出しています。

情報も少なく、私自身の知識も少ないのでここまで来るのが非常に大変でした。
UnitV2用の開発環境を作ったり、C++でAIモデルを動かすコードを書いたり・・・
M5Stack社の公式のモデル学習用サービスがあるのですが、私はうまく使いこなせませんでした。

皆様もUnitV2で自作モデルを動かせるよう、開発環境とサンプルコードをgithubにて公開予定です。
準備が出来次第お知らせします。

使いこなすために必要な知識の概要も数回に分けて解説できればと思います。
以下のような構成予定です。

①UnitV2開発環境を作ろう
②クロスコンパイルをしてみよう
③nanodetをc++で動かそう
④自作モデルを作ろう
⑤自作モデルをc++で動かそう

UnitV2を使用するにあたり、以下の記事は大変参考になりました。
ししかわさんの記事がなければ実装はできませんでした。この場を借りてお礼を申し上げます。
M5Stack UnitV2でロボットを動かす(導入):ししかわの二足ロボ研修 Part.3 | アールティ ヒューマノイドロボットブログ