i.MX RT1050は、業界初のクロスオーバープロセッサであり、アプリケーションプロセッサの高性能および高レベルの統合と、マイクロコントローラの使いやすさとリアルタイム機能を兼ね備えています。i.MX RT1050は、Arm Cortex-M7コアで600MHzで動作するため、浮動小数点演算や行列演算などの複雑なコンピューティングを行う能力が確実に備わっています。一般的なMCUでは、これらの複雑な操作を克服するのは難しいです。
このデモでは、PXP(ピクセルパイプライン)、CSI(CMOSセンサーインターフェース)、eLCDIF(拡張LCDインターフェース)により、カメラディスプレイシステムを簡単に構築できます
図1 i.MX RTシリーズ
このデモでは、PXP(ピクセルパイプライン)、CSI(CMOSセンサーインターフェース)、eLCDIF(拡張LCDインターフェース)により、カメラディスプレイシステムを簡単に構築できます
図2 i.MX RT1050のブロック図
機械学習(ML)は、帯域幅の制約、遅延、信頼性、セキュリティなど、さまざまな理由でエッジに移行しています。人々は、スマートスピーカーの音声認識や監視カメラの顔検出など、より高度なサービスを提供するために、組み込みデバイスにエッジコンピューティング機能を持たせたいと考えています。
図3 理由
畳み込みニューラルネットワーク(CNN)は、画像認識と画像分類を行う主要な方法の1つです。CNN は、共有重みアーキテクチャと翻訳不変性特性に基づいて、最小限の前処理を必要とする多層認識のバリエーションを使用します。
図4 典型的な深層ニューラルネットワークの構造
上記は、左側に入力された元の画像と、それが各レイヤーを進行して右側に確率を計算する方法を示す例です。
図5 MIMXRT1050 EVKボード
注: これら 2 つのデモ プロジェクトはどちらも SDK ライブラリからのものです
図6は、組み込みプラットフォームにニューロネットワークモードを展開する手順を示しています。cmsis_nn_cifar10デモプロジェクトでは、3畳み込み層の量子化パラメータが提供されているため、この実装では、これらのパラメータを直接使用し、ところで、このモデルの精度を評価するための入力ラウンドとしてテストセットからランダムに100枚の画像を選択します。そして、数回のテストを通じて、下の図に示すように、モデルの精度は約65%であることがわかりました。
図6 ニューロネットワークモードの展開
図7 cmsis_nn_cifar10デモプロジェクトの テスト結果
CIFAR-10データセットは、MLおよびコンピュータービジョンアルゴリズムのトレーニングに一般的に使用される画像のコレクションであり、10クラスの60000 32x32カラー画像で構成され、クラスごとに6000の画像(「飛行機」、「自動車」、「鳥」、「猫」、「鹿」、「犬」、「カエル」、「馬」、 "ship", "truck")。50000 個のトレーニング画像と 10000 個のテスト画像があります。
POR の後、システム クロック、ピン マルチプレクサ、カメラ、CSI、PXP、LCD、EMWin など、さまざまなコンポーネントが初期化されます。その後、制御GUIがLCDに表示され、再生ボタンを押すとLCDにカメラのビデオが表示されます。カメラウィンドウにオブジェクトが入ると、キャプチャボタンを押して表示を一時停止し、モデルを実行してオブジェクトを特定できます。図8は、このデモのソフトウェア構造を示しています。
図8 組み込みプラットフォームソフトウェアの構造
3つの図はテスト結果を示しています。
図9
図10
図11
Pytorch フレームワークを使用して、オブジェクト認識の使用に適した、より複雑な畳み込みネットワークをトレーニングします。