基本的な開発の流れ

Armadillo Base OS上でのアプリケーション開発の大まかな流れについては、図2.1「Armadillo Base OS上でのアプリケーション開発の流れ」に示した通りです。

Armadilloを用いた開発は、作業用PC(またはArmadillo向けの開発環境が揃った仮想マシンであるATDE)内でアプリケーションの開発を行い、Armadilloへデプロイする方法と、Armadillo内で開発を行う2パターンがあります。 どちらの手法でも問題ありませんが、本ドキュメントでは基本的に作業用PC内にATDEを立ち上げ、その中で開発を行っていきます。 ATDEを用いた開発時のイメージを図4.1「開発時のイメージ」に示します。

Armadillo Base OSにおいて、ユーザーアプリケーションはpodmanコンテナ上で動作させることを前提としています。 Armadillo上でpodmanコンテナを構築して、そのコンテナ内に開発したアプリケーションが動作する環境を整えることでアプリケーションを実行することができるため、使用時にArmadillo Base OSをあまり意識する必要はありません。

./images/document-overview-std-dev.png

図4.1 開発時のイメージ


各手順について詳細は6章サンプルアプリケーションの作成内で説明します。

4.1. 機械学習を用いたアプリケーションの開発の流れ ./images/ML_icon.png

図2.1「Armadillo Base OS上でのアプリケーション開発の流れ」に示しているように、今回作成するような機械学習を用いたアプリケーション開発においては、仕様検討までは機械学習を用いないアプリケーションと同様の手順ですが、実現したいことに合わせた推論モデルを生成する手順が別途必要になります。

今回は既存の物体検出モデルをベースに転移学習するため、以下のような手順となっています。 あくまでも一例ですので、実現したいことによって手順は異なることに注意してください。

  1. 教師データの元となる画像を準備
  2. アノテーションして教師データを作成
  3. 学習
  4. TFLite形式への変換
  5. ソフトウェア開発(以降は機械学習を用いないアプリケーションと同様)

各手順についての詳細は「推論モデルの作成 ./images/ML_icon.pngで説明します。