- リアルタイムの分析:ワークアウトの品質や姿勢の修正などのフィードバックを即座に得られます。
- コスト効率:高額のコーチ料が不要になります。
- 24時間365日利用可能:いつでも継続的なサポートとフィードバックが得られます。
- パーソナライゼーション:ユーザ・プロファイルとリアルタイム・データに基づいてワークアウトのプランを調整できます。
- 自律性:クラウドへの常時接続なしで動作するため、プライバシー保護、遅延削減、信頼性向上などのメリットがもたらされます。
アプリケーションの原理
下記動画の画像は、イメージ・センサで取得されています。LCD画面に表示するための処理とともに、ニューラル・ネットワークに送信するための画像のダウンスケールが実行されています。
アプローチ
この例ではSTM32 Model zooで提供中のモデルの1つを使用しました。STのパートナーUltralyticsによるYolov8n_poseです。これは、高いフレーム・レートでキーポイントを正確に取得できる、姿勢推定アプリケーション用の最先端モデルです。
このようなモデルには、高い計算能力が必要であり、マイコンの最適の選択肢はSTM32N6です。このマイコンには、Neural-ARTアクセラレータと呼ばれるNPUが搭載されています。
このモデルをSTM32N6上に簡単に最適化して導入するために、STM32 Model zooから入手可能なスクリプトと、STM32Cube.AIコード・オプティマイザを使用しました。
これらのテクノロジーは、より広範なエッジAIソリューションの一環として開発されました。ST Edge AI Suiteの詳細は、こちらをご覧ください。
センサ
RGBイメージ・センサ
STM32 Model Zooでは、次の2種類のイメージ・センサを使用したコード例を提供しています。Sony IMX335 5Mp RGB(STM32N6570-DKに付属)と、STのVD66GY 1.5Mp RGBグローバル・シャッター(高精度の動き検出に最適)です。
データセットとモデル
データセット:内製(Coco 201 PersonをSTが変更)
モデル:Yolov8n_pose(UltralyticsがPytorchで実装、TensorFlow Liteコンバータでint8フォーマットに量子化)入力サイズ:256 x 256 x 3
結果
重みパラメータ:3.2MB
実行サイズ:1.1MB
推論処理時間:36ms
毎秒の推論回数:28
姿勢のmAP50(平均精度):51.1%
yolov8とはマルチポーズ推定用の最先端モデルです。上記以外のデータセット、モデル、解像度を使用した異なるトレードオフを実現することも可能です。特定の性能やハードウェア・リソースの制約を満たすためにAIモデルを最適化するには、これらのパラメータ間のバランスを取ることが重要です。その他のモデルについては、STM32 Model zooをご覧ください。
このユースケースは、以下のリソースを使って簡単に再現できます。
- ステップ・バイ・ステップ・チュートリアル
- Yolov8n姿勢学習済みモデル
- アプリケーション・コード例
その他のリソース:
- STM32 Model zooのインストール方法
執筆者:Vincent RICHARD | 最新更新日:2025年1月
STM32Cube.AIによる最適化
STM32Cubeの無料の拡張パッケージX-CUBE-AIを使用すると、ニューラル・ネットワークや機械学習モデルなどの学習済みAIアルゴリズムを、STM32用の最適化されたCコードに自動変換できます。
STM32N6シリーズに最適
Arm®Cortex®‑Mプロセッサをベースとする汎用32bitマイクロコントローラのSTM32ファミリは、より柔軟かつ自由なアプリケーション開発を実現します。高性能、リアルタイムの処理能力、デジタル信号処理(DSP)、低消費電力 / 低電圧動作、コネクティビティなどのさまざまな機能を集積した製品により、開発をサポートします。