ESP32S3 Xiao Sense
これがターゲットになるSeeed Studio XIAO ESP32S3 Senseになります。プロセッサーは240MHzの2Coreで、Wi-FiとBLEをサポートしていて、バッテリーチャージもサポートしています。また、メモリーは8MBのPSRAM、8MBのオンボードフラッシュ、SDカードスロットで、カメラはoV2640 カメラセンサー 1600*1200が付属しています。開発環境はArduino IDEになります。
開発環境
Tensorflow Liteを動かすためには、開発環境であるArduino IDEを開いてESP32S3 XiaoにTensorflow Liteをインストールします。Arduino IDEを開いたら、ライブラリーマネージャーを開いて、EloquentTinyML 2.4.4 をインストールします。
動作確認
動作確認のためにSineExampleをスケッチ例のEloquentTinyML → 2.4 → SineExampleを開いてコンパイル&書き込みをしてみたところ、動かない!?
で、調べたところArduino IDEの最新バージョン(2.1.1)では動かないことがわかりました。ネットで詳しく調べると1.8.19で動くらしいことがわかったので、1.8.19でスケッチを書き込んだところうまく動いた。
こんな感じでシリアルモニターにTinyMLの結果を表示してくれました。
結果
次に、PersonDetectionを動かすために、ESP32S3 XIAOのカメラを動かすスケッチ例のtake_photos_commandを参考にしてPersonDetectionをESP32S3 XIAOでも動くように改良して、結果をDisplayに表示できるようにしたものが次の例になります。
動かした結果が以下のようになります。