エッジAI導入アプローチ

市中ビデオカメラへのエッジAI応用例とどの程度TOPS能力が必要かが判る記事、STM32F3マイコンの電動自転車へのAI応用記事から、MCUとMPU/SBCのエッジAI導入アプローチの違いを説明します。

ビデオカメラのエッジAI応用例

AIビジョンプロセサHailo-15によるカメラノイズ除去、鮮明化例(出典:記事)
AIビジョンプロセサHailo-15によるカメラノイズ除去、鮮明化例(出典:記事)

上図は、左側オリジナルビデオ画像を、AI Visionプロセサ:Hailo-15を使って、ノイズ除去と鮮明化、人物認識を行った例です。

この例では、低照度下で撮影した4Kビデオ画像のノイズ除去に約100ギガオペレーション/秒(GOPS)、30フレーム/秒のリアルタイムビデオストリーミングなので3 TOPS処理能力が必要です。

Hailo-15は、AI処理能力に応じて現在3製品をラインナップしており、それぞれのTOPS値が下図です。

Hailo-15ラインナップ’(出典:HAILOサイト)
Hailo-15ラインナップ’(出典:HAILOサイト)

7 TOPSのHailo-15Lでも十分なビデオカメラエッジAI処理が可能です。カメラ外付けのHailo-15は、例えば、SBC(シングルボードコンピュータ)Raspberry Pi 5と組み合わせると面白い装置が開発できると思います。

同様のビデオエッジAI処理をMCUで実現する場合は、コチラの投稿で示したCortex-M85コア搭載RA8D1があります。

電動自転車のエッジAI応用例

2024年4月3日、STマイクロは、電動自転車搭載の汎用MCU STM32F3(Cortex-M4/72MHz、Flash/128KB)へ、無償エッジAI開発ツールSTM32Cube.AIを使って、自転車タイヤの空気圧を推定、空気を入れるタイミングを示すAI機能を実装しました。

STM32F3は、上記AI機能の他にも自転車本体の電動アシスト量制御やモータ制御も行っています。つまり、空気センサなどの追加ハードウェア無しでエッジAI機能が低コストで実装できた訳です。

STM32F3へのエッジAI応用例(出典:STマイクロ)
STM32F3へのエッジAI応用例(出典:STマイクロ)

STマイクロのMCUソフトウェアは、HAL(Hardware Abstraction Layer)APIを使って開発すると、同社の異なるMCUコアでも移植性の高いソフトウェアが作れます。

最新40nmプロセス製造のSTM32F3上位機種が、汎用STM32G4(Cortex-M4/170MHz)です。STM32G4ソフトウェア開発をご検討中の方は、弊社STM32G0x(Cortex-M0+/64MHz)テンプレートをご活用ください。
また、より低価格低消費電力なSTM32C0(Cortex-M0+/48MHz)へもG0xテンプレートが適用可能です。
詳細は、info@happytech.jpへお問い合わせください。

Summary:エッジAI導入の2アプローチ

エッジAI導入の2アプローチ
エッジAI導入の2アプローチ

実際のエッジAI応用例から、MCUとMPU/SBCではエッジAI導入アプローチが異なる事を示しました。

MCUは、STM32F3例が示すように、「追加ハードウェア無し低コストAI実装アプローチ」です。STM32Cube.AIを使い、実装MCUへソフトウェアのみでAI機能追加を行います。

MPU/SBCは、外付けHailo-15H/M/Lを使ってエッジAI処理を行います。「拡張性重視のAI実装アプローチ」です。

ユーザが求めるAI機能は、今後益々増えます。エッジAI処理増加により、より高い電力効率で高性能な処理コアが求められるのは、MCUもMPU/SBCも同じです。

製品開発には、ある程度の期間が必要です。この期間中に増加するエッジAI処理増に耐えられる製品の処理コア選定は、重要検討ポイントになるでしょう。

関連投稿:MCUとMPUの違い

Afterword:ビデオエッジAI処理プロセス

ビデオエッジAI処理プロセス(出典:HAILO記事)
ビデオエッジAI処理プロセス(出典:HAILO記事)

最初の記事に、ビデオエッジAI処理プロセスが良く判る図があります。これを見ると、エッジAI処理がハードウェアの並列処理に向いていることも判ります。

ハードウェアは、製品化後、簡単に追加ができないため、どの程度の余力を製品ハードウェアに持たせるかは、コストとの兼ね合いで「永遠の課題」です。これは、ソフトウェアのみでAI機能を実装するSTM32Cube.AIでも同じです。製品実装済みMCUの余力を上回るAI機能追加はできないからです。

つまり、当面の安心をMCU開発者へ与えるには、最新MCUの製品利用がBetterということです。


AI、Security&Cloud、Ecosystem オンライン・コンファレンス

AI、Security&Cloud、Ecosystem(=開発環境)の3日間オンライン・コンファレンスと展示会が、STマイクロ主催でライブ配信されます。STM32ユーザは勿論、他社ユーザでも組込みシステム開発ヒントの可能性があります。

STM32 Innovation Day 2021 11月10日~12日(オンライン)
STM32 Innovation Day 2021 11月10日~12日(オンライン)

AI、Security&Cloud、Ecosystemプログラム概要

11月10日(水)~12日(金)の毎日13時~17時間のライブ配信で、登録すればお好きな内容のみ視聴も可能です。登録方法は、後で示します。

AI、Security&Cloud、Ecosystemのプログラム概要
AI、Security&Cloud、Ecosystemのプログラム概要

詳細プログラムは、コチラからダウンロードできます。

見どころ

10日(水)AI:STM32MCUでの組込みエッジAIデモ。

11日(木)Security&Cloud:Cortex-M33コアSTM32U5、セキュリティ・フレームワークSTM32Trust、AWSクラウド。

12日(金)Ecosystem:STM32MCU機能安全ソフトウェア・パッケージ、Azureクラウド。

13:30~14:00の各分野エキスパートによる基調講演、バーチャル・イベント会場の最新製品紹介やデモなども面白そうです。

他社ユーザの方は、利用中MCUとの差分が明確に判る絶好のチャンスです。

登録方法

事前に、コチラで仮登録し、折返しメールで10分以内に本登録します。

コンファレンス後、アンケートに回答するとMCU評価ボードなどが当選するかもしれません。

Windows 10と11、Linux Mint、IoT MCU開発

2021年10月5日(米国時間)、次期Windows 11リリース、Windows 10 21H2リリースも10月5日前後と見込まれています。2025年迄の期間で、今後のPCとIoT MCU開発環境、開発者要件を考えてみました。

PCとIoT MCU開発環境まとめ

Windows 10、Windows 11、Linux MintとIoT MCU開発環境(2025年までの範囲)
Windows 10、Windows 11、Linux MintとIoT MCU開発環境(2025年までの範囲)

Windows 10 21H2小規模更新

年2回あるWindows 10大型更新、今秋のバージョン21H2更新も小規模更新です。

20H1から4回連続の小規模更新で、バージョンサポート期間も1.5年とこれまでと同じです。Windows 10サポート終了は、延長無しの場合2025年10月14日です。

Microsoftは、Windows 10の新規開発を終息し、次期Windows 11へ注力したいハズです。これは、サポート終了2025年までは小規模更新を繰返し、PCユーザ側は、逆に安定した最新Windows 10が使えるメリットを生みます。

なおWindows 10の更新方法は、コチラの投稿記事を参考にしてください。

Windows 11へのアップグレード要件緩和は幾分発表されましたが、セキュリティTPM2.0は相変わらずで、Windows 10から従来のような安易な11アップグレートをMicrosoftは許しません。従って、11要件が現状のままなら、Windows 10 PCの使い道は2025年以降無くなる運命です。

11化できない、または、10サポート終了後のWindows 10 PCをどう運用するかは問題です。解決策は、後で示します。

Windows 11プレビュー版評価

「Windows 11 もっさり」で検索すると、多くの記事がヒットします。もちろん、Windows 11プレビュー版試用感想です。Windows 10比、動作が遅く感じる人が多いのは確かなようです。

これは、CPU能力を、従来よりもグラフィックとセキュリティへ配分した結果だと推測します。

ビジネスユースの場合、Windowsグラフィック能力が生産性を向上させることはありません(Mac PCは別です)。一方、セキュリティ能力は、重要ではあるものの、しばしば開発作業の邪魔になります。開発ツールインストールや更新時、セキュリティソフトが不要な警告を出すことを経験された方は多いでしょう。

セキュリティは、「安全側マージンを大きく保って動作」します。存在意義を示すためやむを得ないのは理解できますが、開発の邪魔になるのは間違いありません。

Windows 11は、Apple製M1チップ搭載の新Mac PC対抗手段なのか、初めから高性能グラフィックと新セキュティ対応の新しいCPUチップ利用を想定している気がします。Windows 11リリース後、製品版やプレインストールPCなどからMicrosoftの意図や本当の目的も明らかになるでしょう。

Windows 11は、年1回の大型更新と、2年間のバージョンサポート運用です。今秋リリースから1年経過後に初期トラブルを回避した大型更新バージョンがリリースされます。リリース後1年は、製品版11評価期間と考えても良さそうです。

結局、Windows 11アップグレート要件を満たすPCであっても、1年評価期間後、初期トラブル回避版でアップグレートしても遅くはないと思っています。

※「Windows 11 TPM 回避 インストール」の検索結果からTPM回避11化は可能のようです。本稿は、公式11アップグレート要件を満たすWindows 10 PCのみを対象とします。

Windows 10問題解決Linux Mint

Windows 11化できないPCの活用方法としてお勧めするのが、Linux Mintです(但し64ビットCPU必須)。その理由が下記2つです。

  1. Windowsに比べハードウェア仕様が低くてもLinux Mintは快適動作
  2. Windows GUIに慣れたユーザにはLinuxコマンド操作に違和感があるが、Linux Mintは、殆どの操作がWindowsとよく似たGUIで可能

Windows 10サポート終了まで4年あります。Linux Mint操作に慣れ、代替利用上の問題有無を評価するには、十分な期間だと思います。

マルチプラットフォームIoT MCU開発環境

IoT MCU開発環境も、Windowsのみの動作から、Windows/Mac/Linuxマルチプラットフォームへ移行しつつあります。例えば、NXP)MCUXpresso IDE、STマイクロ)STM32CubeIDE、Cypress)ModusToolboxなどは、OSが異なっても同じ動作をします。

MCUXpresso IDEやSTM32CubeIDEのLinux Mint版インストール方法は、コチラの関連投稿5章を参照してください。

個人向けWindows 365

発表済みの企業向けプラン価格よりかなり安くなることが必要ですが、個人向けWindows 365プランの価格次第では、セキュリティ/保守運用面でメリットがあるWindows 365 Cloud PCは魅力的です。

仮に、スマホと同程度、つまり月額1000円以下、5年間利用してもトータル6万円程度でWindows 365が利用できれば、個人ビジネスにも十分使えます。過剰期待かもしれませんが…。

世界的半導体不足

経年変化などを考慮し、Windows 11プレインストールPCを新規購入するのも変化への対処方法の1つです。但し、昨今の世界的な半導体不足は、PC調達価格上昇をもたらし、購入逆風の状況です。この逆風は、Windows 10サポート終了に向けて新規PC需要が高まるため、さらに強くなるハズです。

IoT MCU開発者要件

以上のような2025年までの激しいPC環境変化に対し、IoT MCU開発環境は、Windows/Mac/Linuxマルチプラットフォーム化で対応します。

IoT MCU開発者は、従来のような単純なMCU処理開発だけでなく、クラウド接続RTOS、セキュリティ、OTA(Over The Air)、エッジAIなど様々なIoT付加サービスの追加が顧客に応じて必要になります。また、これら付加サービス規模や技術背景も複雑です。

これら付加サービスは、既にLinux上で開発済みのものも多く、IoT MCU開発者は、Linux環境に慣れていくことが必要だと思います。更に、顧客毎に異なるIoT付加サービスを、ある意味ブラックボックス的に取捨選択し、従来のMCU開発へ短期で追加/削除できるテクニックを身に着けておくことも必要です。

つまり、Windows利用に慣れたIoT MCU開発者でも、Linux要素技術を持つ必要があります。

IoT MCU開発者「個人レベル」で、これらLinux技術習得やIoT MCU技術を効率的に習得する手段として本ブログ投稿や弊社マイコンテンプレートがお役に立てるように開発していきます。