ハードウェアからサーバ・アプリまでワンストップで開発

MaixGoで顔認識

エッジAIを使ってみる

MaxiGoとは
Sipeed社が販売しているAIマイコンシリーズ(Maix)の一つで、AIの実行できるモジュールと、カメラ、タッチパネル液晶、スピーカー、リチウム電池等がセットになったキットです。

MaixGo

購入先:Sipeed MAIX GO Suit (MAIX GO + 2.8 inch LCD + ov2640 with M12 lens)

概要

AI(人工知能)と呼ばれるものには様々な種類がありますが、このモジュールはその中でも「畳み込みニューラルネットワーク(CNN)」の実行を得意とするチップが搭載されています。 「畳み込みニューラル・ネットワーク(CNN)」は画像処理に強く、具体的には手書き数字の認識であったり、物体認識、顔認識といった処理ができます。 他にも音声認識も対応しており、サポートするハードウェアが搭載されているようです。

物体認識

これらの機能と、インタフェースを介した周辺機器等と組み合わせて、認識した顔をトラッキングするといったこともできます。

AIと周辺機器を組み合わせてフェイストラッキング

公式ドキュメントではこのほかにも使用例の動画を公開しています。

https://maixpy.sipeed.com/zh/what_maix_do.html

さわってみる

販売元のSipeed社のブログから顔認識のサンプルのプログラムを実行してみます。

サンプルの内容

このサンプルでは、搭載されたカメラに映った画像から、人間の顔を検知し、検知した顔の特徴をとらえます。  MaixGoには本体にスイッチがあり、スイッチをトリガーに検知した顔の特徴を保存します。以後、カメラに保存した顔の特徴を持った人間の顔が検知されると登録された顔であることを画面に表示します。

実行

MaixGoと手元のPCをUSBで接続して、セットアップします。プログラムはMaixPyIDE上で実行しました。

MaixPyIDE上で実行した状態

プログラム実行中はMaixGoの液晶にも映像と判定結果が表示されます。

MaixGo上で実行した状態

顔の特徴の登録から、識別まで遅延は感じられません。
また、セットアップ後の処理自体は端末で完結しているため、ネットがない環境でも動かせるのは用途によっては便利そうです。 このサンプルプログラムは100行程度で、これを改造するだけでも、出退勤記録ぐらいはできるんじゃないかと思います。 その場合、この端末ではそれほどデータはため込めないので別の場所に保存するようにしておきたいですが、あいにく今回使用したMaixGoに搭載されたWiFiモジュールは日本では法的に使ってはいけないので、その点別途考えないといけないのが少し惜しいところです。

参考

Sipeed公式ブログ: https://blog.sipeed.com/p/1338.html#more-1338

Sipeed公式ドキュメント: https://maixpy.sipeed.com/

最後に

弊社ではハードも組み合わせた総合的なシステムの開発を行っております。
画像認識については、過去に「汎用USBカメラを使った画像認識システム」の実績もあります。
お役に立てそうなことがありましたら、お問い合わせまでご連絡ください。

最近のエントリー

現在の営業品目(2)

現在の営業品目(1)

SPDX License Listをデータ化した

Orange Pi5でC3TR-Adapterを試す

CasaOS上で会計システム「Hieronymus」を動かす

会計システム「Hieronymus」v1.0.0 リリースしました

CasaOSでファイル同期アプリSyncthingをセットアップする

第11回 Freshmeat

オープンソースノーコード「Activepieces」でワークフローを作る

RaspberryPiにパーソナルクラウドOS「CasaOS」を導入する

sequelize-cliでdb:migrateすると「SyntaxError: Unexpected token ':'」が出る

LED行燈の試作(2)

CMSの社内向けサービスのリニューアル

LED行燈の試作(1)

エントリを書くこと

お手軽ポップコーン

VR徘徊(5) StereoPi V1でROSを動かす

VR徘徊(4) StereoPi Ver 1でUbuntu 22.04を動かす

新しいおもちゃ

執筆進捗