スマート・シティ

交通標識の分類

STM32H7マイクロコントローラ上で動作する画像分類モデルにより、交通標識を分類する。

交通標識の分類
GitHubにアクセス ビデオ・チュートリアルを視聴する

スマート・シティ

STM32Cube.AI

画像分類

画像

GitHubにアクセス ビデオ・チュートリアルを視聴する
AIによる交通標識の識別は、安全の向上、運転エクスペリエンスの強化、効率改善を実現し、ドライバや都市インフラ管理者に大きなメリットをもたらします。 高度なアルゴリズムを使用すれば、システムが交通標識をリアルタイムで正確に検出、識別できます。このシステムにより、ドライバや都市インフラ管理者は制限速度、交通信号、道路標識マッピングに関するタイムリーで正確な情報を得られます。
これは人間のミスや注意散漫によって発生する事故のリスクを軽減し、すべての人々にとって道路がより安全な場所になります。 このテクノロジーを運輸システムや交通監視システムに組み込めば、効率向上と渋滞緩和のメリットも得られます。

アプローチ

このユースケースは、道路標識を分類するドイツの交通標識データセットに基づいています。 このソリューションでは、公開データセットで学習済みで、STM32上で動作し、非常に高い精度が得られるモデルを提案します。
これらのモデルの学習には、STM32 Model Zooで提供されているPythonスクリプトを使用しました(詳細は、STの「トレーニングに関するチュートリアル」をご覧ください)。

ここでは、STM32 Model Zooのプロジェクトを設定した後、データセットをダウンロードし、適切な構造で配置しました。 次にyamlファイルを更新しました。このファイルは次の設定によりトレーニングを構成するために使用します。

全般
project_name(プロジェクト名)traffic_sign
データセット
name(データセット名)traffic
class_names(クラス名)[‘0001’, ‘0002’, …, ‘0042’]
training_path(トレーニング・パス)datasets/train
validation_path(検証パス)
test_path(テスト・パス)datasets/test

これらの設定は、ユースケースに応じてご自由に調整いただけます。
後は、"train.py"スクリプトを実行するだけです。


STM32 Model Zooには、独自のデータでモデルをトレーニングおよび再トレーニングするときに必要なものが、すべて揃っています。 モデルは、リポジトリで提供中のPythonスクリプトによってSTM32H747ディスカバリ・キットに簡単に導入できます(詳細は、STの「導入に関するチュートリアル」をお読みください)。
これらの手順の詳細は、STの入門ビデオで、すべて解説しています。

センサ

画像:カメラ・モジュール・バンドルリファレンス・ボード:B-CAMS-OMV

データ

データセットThe German Traffic Sign Recognition Benchmark(ドイツの交通標識識別ベンチマーク)」*
データ・フォーマット:データセットは、交通標識の43のクラスに分類された、50,000以上のRGB画像から構成されます。

結果

STM32 Model zooには、複数の画像分類モデルが含まれるため、プロジェクトに最適のモデルを選択できます。
ここでは、同じユースケースに対して2つの異なるモデルをトレーニングしました。両者は性能およびメモリ使用量が異なります。
モデルMobileNetV2 alpha 0.35
入力サイズ:128 x 128 x 3
量子化されたモデルのメモリ使用量:
使用RAM(合計):272KB
  • RAM(有効化):224KB
  • RAM(実行時):48KB

使用Flashメモリ(合計):563KB
  • Flashメモリ重み:454KB
  • Flashメモリのコード推定サイズ:109KB

精度:
浮動小数点モデル:99.87%
量子化モデル:99.57%
性能(高性能マイコンSTM32H747 @ 400MHz使用時)
推論時間:101ms
フレーム・レート:9.9fps
モデル FDMobileNet
入力サイズ:128 x 128 x 3
量子化されたモデルのメモリ使用量:
使用RAM(合計):65KB
  • RAM(有効化):51KB
  • RAM(実行時):14KB

使用Flashメモリ(合計):192KB
  • Flashメモリ重み:137KB
  • Flashメモリのコード推定サイズ:55KB

精度:
浮動小数点モデル:99.78%
量子化モデル:99.51%
性能(高性能マイコンSTM32H747 @ 400MHz使用時)
推論時間:20.04ms
フレーム・レート:49.9fps
量子化されたMobiNetV2モデルの混同行列

* Stallkamp, J., Schlipsing, M., Salmen, J., & Igel, C. (2012). Man vs. computer: Benchmarking machine learning algorithms for traffic sign recognition. Neural networks, 32, 323-332.

モデル・リポジトリ

STエッジAIモデル動物園

モデル・リポジトリ

コード最適化ツール

STM32Cube.AI

コード最適化ツール

対応製品

STM32H7シリーズ

対応製品

リソース

モデル・リポジトリ STエッジAIモデル動物園

リファレンスAIモデル群は、付属の実装スクリプトを使用してSTの機器上で動作するよう最適化されています。Model zooはAIの機能を組込みアプリケーションへ追加するための価値あるリソースです。

モデル・リポジトリ STエッジAIモデル動物園

コード最適化ツール STM32Cube.AI

無償のSTM32Cube拡張パッケージX-CUBE-AIにより、ニューラル・ネットワークや機械学習モデルといった学習済みAIアルゴリズムを、STM32に最適化されたCコードへ自動変換できます。

コード最適化ツール STM32Cube.AI

対応製品 STM32H7シリーズ

Arm® Cortex®-Mベース32bitマイコンのSTM32ファミリは、マイコン・ユーザに高いレベルの自由を提供します。完全統合性および開発の容易さを維持しながら、高性能、リアルタイム性能、豊富な機能、デジタル信号処理、低消費電力 / 低電圧駆動、およびコネクティビティを兼ね備えた製品を提供します。

対応製品 STM32H7シリーズ

おすすめ情報:

スマート・シティ | 産業機器

直流アーク放電検出

組込みAIでアーク放電検出メカニズムを構築

スマート・シティ | 産業機器

アフターマーケット・ワイヤレス検針器

メータにアフターマーケット・ワイヤレス低消費電力検針器を装備

スマート・シティ | スマート・オフィス | スマート・ホーム

人検出 / 人数カウント・ソリューション

マイクロプロセッサを使用して最適化された8fpsで動作するコンピュータ・ビジョン。