次に、タッチパネル機能付きの液晶画面に、手書きされたアルファベットの軌跡のイメージをインポートし、インポートしたイメージを液晶画面に表示するためのユーザーコードを追加する。しかし、このユーザーコードの規模がかなり大きいため、別ファイルでユーザーコードを作っておき、STM32CuibeIDEのUtilityフォルダに新しいディレクトリとして追加する。フォルダへの追加は手動で行う。
ファイルを追加した後はSTM32CubeIDEのオプションでRefreshすることによって、プロジェクトに取り込まれる。
取り込んだファイルのコードをBuildするファイルに含むか否かは、「Resource Configurations」で設定する(図6)
最初に人工ニューラルネットワークモデルの学習結果の推論アルゴリズムをプロジェクトにインポートする必要がある。推論アルゴリズムは、汎用マイコンの能力では構築することができないため、PCなどで行うか、クラウドに用意されたサービスを利用して事前に準備しておく。
STM32CubeIDEに統合されているSTM32CubeMXに戻り、「Additional Software」からインポートする。最初の段階で、X-CUBE-AIプラグインを開いて、プロジェクトにSTM32Cube.AIを実装しているため、画面中央にSTMicroelectronics.X-CUBE-AIが表示される。
「Add network」をクリックし、準備してある推論アルゴリズムのファイル(xxxxxxxx.h5)を選択する(図7)
設定画面の下半分をスクロールすると、「Analyze」が現れるので、クリックして推論アルゴリズムのファイルを分析する。画面下部に分析結果が表示され、分析結果に警告メッセージが表示されなければ推論アルゴリズムをマイコンにインポートできる(図8)
コードを生成すると、推論アルゴリズムがインポートされたAIプロジェクトが生成される。最後にステップ1と同じようにmain.cの中の /* USER CODE BEGIN xxxx */〜/* USER CODE END xxxx */に推論アルゴリズムを動作させるユーザーコードを追加して完成だ。
プロジェクトを実行すると、プログラムがスタートしたことを示す「READY」の文字が液晶画面に表示される。次に、アルファベットの文字を手書きすると、その軌跡が液晶画面に表示される。その後、手書きされたアルファベットの文字のサムネイル、認識文字、確率および演算時間が画面左上に表示される(図9)
Copyright © ITmedia, Inc. All Rights Reserved.