Amazon Web Services ブログ
AWS IoT とi-PRO moduca/KVS Connectによるクラウド録画とエッジAIの活用
はじめに
IoT カメラの活用は、監視、防犯、産業機器のモニタリング、スマートシティ、リテール分析など、さまざまな分野で急速に広がっています。それに伴い、カメラ映像をクラウドや AI と連携させるための接続方式や構成も多様化しており、用途に応じた最適なアーキテクチャの選定がますます重要になっています。
近年、クラウドコンピューティングの進化やエッジ AI の普及により、映像データの処理方法にも変化が見られます。従来は、すべての映像をクラウドに送って解析するのが一般的でしたが、最近ではエッジデバイス側でリアルタイムに処理し、必要な結果だけをクラウドに送信する方式も徐々に広がりつつあります。これにより、リアルタイム性の向上、ネットワーク帯域の節約、ストレージコストの削減といったメリットが期待できます。
こうした処理方式の多様化により、カメラの接続方式やデータ処理の設計においては、単なる映像の記録・送信にとどまらず、リアルタイム性、スケーラビリティ、コスト効率、セキュリティといった複数の要素を総合的に考慮することが求められます。システム全体の価値を最大化するためには、これらの要素のバランスをとったアーキテクチャ設計が重要です。
IoT カメラと AWS IoT の接続パターン
IoT カメラのAWS IoTとの連携方法は、主に以下の図の4つのパターンが考えられます。
図1: IoT カメラと AWS IoT 連携の接続パターン
①は複数のカメラをエッジゲートウェイなどで集約する従来からの方法、②はカメラから Amazon Kinesis Video Streams へプロデューサーライブラリを使って直接接続する方法、③は①のゲートウェイをクラウドでホストし、VPNを使ってカメラに接続する方法、④はカメラでの推論結果を AWS IoT Core へ送信する方法です。ここで②と④はゲートウェイなどの中継装置を使わず、カメラ単体で実現可能なことからスモールスタートしやすく、オンサイトでのメンテナンス性が高く、コスト効率もよい方法といえます。一方で、Amazon Kinesis Video Streams プロデューサーライブラリのインストール機能やエッジ推論機能などカメラ側に高度な機能が必要になります。
i-PRO moducaと KVS Connect
i-PRO 株式会社が提供するモジュールカメラ moduca は、豊富な選択肢があるハードウェア・モジュールを自由に組み合わせ、目的や用途に応じてBTO(Build To Order)ができるカメラです。moduca ではi-PRO 株式会社が提供する AI アプリケーションやユーザが作成した任意のカスタムアプリケーションを moduca の UNIX ベースの OS 上で動作させることができます。
図2: i-PRO モジュールカメラ(moduca)
KVS Connect は富士ソフト株式会社が開発している moduca のカスタムアプリケーションで、Amazon Kinesis Video Streams プロデューサーライブラリを含めて moduca 向けにビルドされています。KVS Connect を使うとmoduca から Amazon Kinesis Video Streams へのビデオ送信を簡単に始めることができます。
ここからは moduca と KVS Connect を例に、最近広まりつつある IoT カメラと AWS IoT をゲートウェイを介さずに直接接続するパターンについて説明します。
IoT カメラから Amazon Kinesis Video Streams への直接接続
②の接続構成では AWS 上で Amazon Kinesis Video Streams のストリームを作成し、moduca に KVS Connect をインストールして設定します。さらに AWS IoT Core の認証情報プロバイダーを設定することで、KVS Connect は AWS IoT Core またはユーザーの管理する認証局が発行する X.509 クライアント証明書を使用して Amazon Kinesis Video Streams への接続を認証・認可することができます。
ユーザーは富士ソフト株式会社より KVS Connect を入手し、moduca の Web 画面からインストール・設定を行います。
図3:moduca カスタムアプリケーションの設定画面
図4:KVS Connect の設定画面
IoT カメラでのエッジ推論と推論結果の AWS IoT Core への送信
④の接続構成は moduca のカスタムアプリケーションを作成することで実現することができます。ユーザーは i-PRO 社の Development Partner Portal からダウンロードした i-PRO SDK を活用して任意のカメラアプリケーションを構築することができます。例えば Yolo8 を使った物体検知と AWS IoT Device SDK を使った MQTT による AWS IoT Core との連携により AWS IoT と連携したエッジ推論と通知を行うアプリケーションを構築することができます。
クラウド録画とエッジ AI のアーキテクチャ例
ここまで見てきた内容を考慮して、クラウド録画とエッジAIを実現するシステム全体のアーキテクチャ例を紹介します。IoT カメラ、カメラアプリケーション、AWS のマネージドサービスを組み合わせることで 、IoT カメラから直接 Amazon Kinesis Video Streams へのクラウド録画を行いながら、カメラアプリでの動体検知に基づくリアルタイムアラートや検知イベントの検索など、ユースケースに合わせたシンプルな IoT カメラソリューションを End-to-End に構築することが可能になります。さらにクラウド上で画像を Amazon Bedrock の生成 AI モデルに解析させて、画像のコンテキストを分析させるなど、高度な推論を行うアプリケーションへ発展させることも可能です。
図5:クラウド録画とエッジ AI のアーキテクチャ例
まとめ
本記事では、カメラのクラウド接続パターンの中から、特にカメラ単体で実現できる方法を2つ紹介しました。1つ目は、Amazon Kinesis Video Stream プロデューサーライブラリを利用したクラウド録画、2つ目は、カメラでの推論結果を AWS IoT Core へ送信する方法で、いずれも moduca とKVS Connect を活用した具体例をもとに解説しました。
カメラの高度な機能と AWS のマネージドサービスを活用することで、カメラの接続をシンプルに実現でき、ユーザーは映像データを活用した AI 分析や高度なソリューション開発により多くの時間を割くことが可能になります。用途に応じた最適なアーキテクチャを選択し、AWS とカメラの活用をさらに広げていく参考になればと思います。