見出し画像

【エッジAIデバイスで画像認識】AITRIOSに対応したデバイスで、画像認識の推論を実行して推論結果のデータを取得してみた!

皆さんこんにちは、痛快技術株式会社の上田哲弘です。
AI技術が進化し、IoT(モノのインターネット)を利用したスマートなソリューションが注目されています。今回は、ソニーセミコンダクタソリューションズが提供するエッジAIプラットフォーム『AITRIOS』を活用し、画像認識の推論をデバイス側で実行する方法を紹介します。

読んだ記事:
あらゆる人がイメージセンサーを活用できる世界をつくる

上記のAITRIOSの記事を読むと、敷居が高いのかと思っていたIoTデバイスを活用するための技術を容易に使えるぽいのです!
これは、面白そうと思い触ってみました


そもそもAITRIOS(アイトリオス)って何?

AITRIOS(アイトリオス)とは、ソニーセミコンダクタソリューションズ株式会社が展開する新たなエッジAIセンシングプラットフォーム。

1.AITRIOSの全体像

AITRIOS とそれに対応したデバイス(カメラ)を活用すると、 クラウドに送信せずにAITRIOSに対応したデバイス(カメラ)側で、 画像認識の推論を実行して推論結果のデータを得られるようになります。

AITIRIOS公式サイトから出典

2.何が嬉しいの?

現在では、画像認識の推論を実行するには、一般的には画像を撮影し、その画像をクラウドに送信し、クラウド上で推論を実行することが中心です。

AITRIOS とそれに対応したデバイス(カメラ)を活用すると、
クラウドに送信せずともエッジ側で画像認識の推論を実行して
推論結果を得られる。
しかも、
AITRIOS に対応したデバイス(カメラ)では画像ファイルではなく
画像認識の推論結果のデータにして出力されます!

手元にデバイスが届きました

AITRIOS(アイトリオス)に対応したデバイス : AIH-IVRW2 が手元に届きました!
対応デバイス : AIH-IVRW2 

手に収まる小ささなデバイス AIH-IVRW2

利用するための準備

デバイスを Console に登録する作業を行います。

大きな流れを明記してみました。
この準備が、慣れたら早いかもですが少し時間がかかりました。

1.デバイスの登録

  1. AITRIOS Portal に接続し、Console を開く

  2. Enroll device よりデバイス登録用の QR コードを生成する

  3. 生成した QR コードをデバイスに読み込ませる

AITRIOS Portal

2.デバイスのファームウェア更新

デバイスの安定性が高まるため、必ずこのタイミングで実施

ここまでのデバイスに関して、詳しくは下記の「デバイス設定ガイド」のマニュアルを確認してください。

【公式】デバイス設定ガイド


3.認識させたいモノの写真を学習させAIモデル作成

AIモデル作成用画像として、15枚以上の画像の準備をしてモデルに登録をしていきます。

【公式】AIモデルの作成とデプロイ

4.AI モデルの出力をメタデータに加工したりするカメラ内で動作するプログラム、Edge App を入手

ここでは、推論実行時のパラメータを指定する Command ParameterというJSONfファイル を作成し、それをConsoleに登録する必要があります

【公式】エッジデバイスのCommand Parameterファイル管理

また、Object Detection 用のEdge Appの準備が必要になります。
Object Detection 用のサンプルアプリケーションは AITRIOS Developer Site 上に公開されています。こちらからダウンロードし、インポートする形になります。

【公式】サンプルアプリケーション
【公式】Edge Applicationの管理

5.AIモデル、EdgeAppのデプロイ、Command Parameter のデバイスとの紐づけ

作成した
・AIモデル
・Edge App
・Command Parameter
をデバイスにデプロイし紐づけしていきます

エッジデバイスへのCommand Parameterファイル適用
Deploy to device

1.デプロイ用の Config を作成する
2.Config を利用して、デバイスに AI モデルをデプロイする
3. Console に登録した Edge App をデプロイする
4. Console に登録した Command Parameter をデバイスと紐づける

Command Parameter Fileのデバイスを紐づけ

6.撮影 & 推論

Consoleからデバイスを選択し、Settings - Inference Control エリアの
「Get Inference Data」をONにすると、エッジデバイスの推論が開始されます。

「Get Inference Data」をON

【公式】エッジデバイス操作 (推論開始、再起動、リセット)

推論実行まで行い感じたこと

ここまでまず準備して感じたことは、このAITRIOSのブラウザを使わずに自前のWEBアプリから操作ができるといいのにな・・・

今回、開発することが決まりました!

AITRIOS ConsoleのUIを使うのではなく、自作のWEB画面からAITIRIOS(アイトリオス)でデプロイしたデバイスの起動などを簡単に行いたい
理由としては、今後開発に組みこむことへの第一歩になるのではと思ったからです。

完成イメージ構成図

開発する大きな流れ

  1. WebPageにて推論開始/推論停止というボタンをクリックするとWebAPIを飛び出す

  2. WebAPI経由で、AITRIOSに準備されているConsole Rest APIへPOST

  3. 推論開始のAPIが実行

  4. ローカル環境のIPアドレス先のMeta/Imageに保存される

これを実行していく内容を次回から開発し説明していきます!

まとめ

今回、初めてこういったAITRIOSのプラットフォームとデバイスを触ってみました。まずは、入口の環境整備でしたが、不安で触ってみたのですが
思っているより手軽にできました。

個人的にはすごく楽しく推論開始ができた時にはワクワクしました。
ここから、実際にハックしていくのですが楽しくそして新しい刺激が生まれる開発になりました。

次回、「【AITRIOS開発】Console Rest APIに接続してデバイスを操作し、HTTP Serverへデータを転送してみる」です

著者 : 上田 哲弘 (痛快技術株式会社)
中学生の時に「時代の寵児」と話題になったホリエモンに憧れIT業界に興味を持つ。その後、WEB開発を学びWEBディレクションを経験するが、より開発をしたく再度エンジニアとして粉骨砕身で挑んでいる。


痛快技術株式会社について

痛快技術株式会社 : https://www.tsu-x.com/

当社は、技術の力で社会の問題を解決することを目的として設立されました。私たちは、技術の楽しさを広め、社会のニーズに合わせた製品を開発し、幸せな未来を実現することを使命としています。

痛快技術ではAIの技術やを使った開発を行っております。
他の記事も読んでください!


この記事が気に入ったらサポートをしてみませんか?