Share via


Azure IoT Edge ビジョン AI のユーザー インターフェイスとシナリオ

Azure IoT Edge ビジョン AI シリーズのこの最後の記事では、ユーザーがモノのインターネット (IoT) と人工知能 (AI) の各ソリューションを操作する方法について説明します。 また、この記事では、IoT Edge ビジョン AI シナリオの 2 つの例も示しています。

ユーザー インターフェイス

ユーザーは、ユーザー インターフェイス (UI) を使用してコンピューター システムと対話します。 UI の要件は、全体的な目標によって異なります。 通常、IoT システムには次の 4 種類の UI があります。

  • "管理者 UI" では、デバイス プロビジョニング、デバイスとソリューションの構成、ユーザー管理にフル アクセスできます。 これらの機能は、1 つのソリューションの一部、または個別のソリューションにすることができます。
  • "オペレーター" UI は、デバイス管理、アラート監視、構成など、ソリューションの運用コンポーネントにアクセスできるようにします。
  • "コンシューマー" UI は、コンシューマー向けのソリューションのみに適用されます。 この UI はオペレーターのインターフェイスに似ていますが、ユーザーが所有するデバイスに制限されます。
  • "分析"UI は、テレメトリ視覚化やその他のデータ分析を提供する対話型のダッシュボードです。

テクノロジの選択

IoT Edge ビジョン AI システム用のユーザー インターフェイスの作成に使用できるサービスとソフトウェアの一部を次に示します。

  • Azure App Service は、開発者が Web アプリやモバイル アプリをすばやく構築、デプロイ、スケーリングするためのプラットフォームです。 App Service は、.NET、.NET Core、Node.js、Java、PHP、Ruby、Python などのフレームワークをサポートします。 アプリは、コンテナー内に配置することも、サポートされている任意のオペレーティング システム、モバイル デバイス、または IoT Edge ハードウェアで実行することもできます。 フル マネージド App Service プラットフォームは、エンタープライズ レベルのパフォーマンス、セキュリティ、コンプライアンスの要件を満たしています。

  • Azure SignalR Service は、リアルタイムのデータ通信とレポート作成機能をアプリに追加します。リアルタイム通信に関する詳細な専門知識は必要ありません。 SignalR Service は、多くの Azure サービスと簡単に統合します。

  • Azure Maps は、IoT 視覚化とコンピューター ビジョン プロジェクトのためのテクノロジです。 Azure Maps を使用すると、シンプルで安全な地理空間サービス、API、SDK を利用して、位置情報認識の Web およびモバイル アプリを作成できます。 Azure Maps には、世界中のテクノロジ パートナーからの位置情報インテリジェンスが組み込まれています。 地理空間データに基づいてシームレスなエクスペリエンスを実現できます。

  • Microsoft Entra ID は、アプリとユーザー インターフェイスを保護するためにシングル サインオンと多要素認証を提供します。

  • Power BI は 1 組の分析サービス、アプリ、コネクタで、データをカスタマイズ可能な対話型の視覚化とダッシュボードに変換します。 Power BI は、マネージド サービスまたはセルフホステッド パッケージとして利用でき、多くの一般的なデータベース システムやデータ サービスに接続します。 Power BI Embedded を使用すると、顧客向けのレポートとダッシュボードを作成し、自分のアプリとしてブランド化できます。 Power BI は、分析の監視、管理、および展開を自動化することで、開発者のリソースを節約できます。

ユーザー シナリオ 1: 品質管理

Contoso Boards は、コンピューターで使用されている高品質の回路基板を生産しています。 この会社の主力製品はマザーボードです。

Contoso Boards では、ボード上のチップの配置に関する問題が増加していました。 調査により、回路ボードが組み立てラインに正しく配置されていないことが確認されました。 Contoso Boards では、回路ボードの正しい位置を特定し、検査する方法が必要でした。

Contoso Boards のデータ サイエンティストは TensorFlow に精通していたため、主な ML モデル構造として TensorFlow の使用を継続したいと考えていました。 また、Contoso Boards では、マザーボードを製造する複数の組み立てラインの管理を一元化する必要もありました。

Contoso Boards のソリューションでは、エッジ検出に焦点を当てています。

カメラ

このワークロードをサポートするのは、以下のカメラの選択肢でした。

  • カメラの配置: カメラは、真上 90 度の角度で、パーツから約 16 インチにあります。
  • カメラの種類: コンベア システムの動きは比較的遅いため、このソリューションでは、グローバル シャッターを備えたエリア スキャン カメラを使用できます。
  • フレーム レート: このユース ケースでは、カメラは 1 秒あたり約 30 フレームをキャプチャします。
  • 解像度: 必要な解像度の数式は Res=(object size) / (details to capture) です。 この数式に基づいて、Res=16"/8" では、x に 2 メガピクセル (MP)、y に 4MP が得られるため、Contoso Boards には、4MP の解像度が可能なカメラが必要です。
  • センサーの種類: ターゲットは高速移動せず、エッジ検出のみが必要であるため、CMOS センサーが十分に機能します。
  • 照明: このソリューションでは、白拡散フィルター付きのバックライトを使用します。 この照明では、パーツはほぼ黒になり、エッジ検出にはハイコントラストになります。
  • カラー: モノクロで、AI 検出モデルで最も鮮明なエッジになります。

次の図は、このシナリオでカメラがキャプチャする内容を示しています。

この IoT Edge シナリオでカメラがキャプチャする内容を示す画像。

ハードウェアの高速化

ワークロード、TensorFlow の使用、複数の組み立てラインでの使用に基づくと、GPU ベースのハードウェアがハードウェアの高速化に最適な選択肢です。

ML モデル

データ サイエンティストは、TensorFlow に最も精通しているため、ONNX やその他の ML フレームワークを学習するとモデルの開発が遅くなります。 Azure Stack Edge は、すべての組み立てラインに対して一元管理されたエッジ ソリューションを提供します。

ユーザーシナリオ 2: 安全性

Contoso Shipping では、搬出口での歩行者事故が数件発生しました。 事故のほとんどは、トラックが搬出口から発車するときに、トラックの前を歩いている荷下ろし作業者をドライバーが見逃したことによって発生しました。 Contoso Shipping には、人間に注意して監視し、移動の方向を予測し、衝突の可能性をドライバーに警告するビジョン AI ソリューションが必要でした。

Contoso Shipping のデータ サイエンティストの多くは、OpenVINO に精通しているため、今後のハードウェアでこのソリューション モデルを再利用したいと考えていました。 また、このソリューションでは、電力効率をサポートし、使用するカメラ数を可能な限り最小にすることも必要でした。 最後に、Contoso Shipping は、ソリューションを更新するためにリモート管理することも必要でした。

カメラ

このソリューションでは、11 台のモノクロ、10MP CMOS カメラを使用します。これには、IPX67 ハウジングまたはウェザー ボックスを搭載し、トラックから 100 フィート離れた 17 フィートの柱に取り付けられます。 以下のセクションでは、Contoso Shipping でこれらの仕様が決定された方法について説明します。

カメラの配置

カメラは、トラックの前面から 100 フィート離れている必要がありました。 カメラのフォーカスは、トラック前面の前後 10 フィートにして、20 フィートの焦点深度を得る必要がありました。 地域の都市計画法により、監視カメラの高さが 20 フィートに制限されていました。

次の図は、このシナリオのカメラの配置を示しています。

IoT Edge ビジョン AI シナリオのカメラ配置の図。

解像度と視野

このソリューションでは、フレーム内の人物の検出に十分なだけの詳細情報をキャプチャする必要があります。 1 フィートあたりのピクセル数 (PPF) は、顔認識に必要な 80 PPF ではなく、約 15-20 にすることができます。

視野 (FOV) の数式は FOV=(horizontal resolution) / (PPF) です。 解像度については、カメラではユース ケースに適したセンサーを使用する必要があります。

このソリューションでは、16 フィートの FOV を可能にするカメラ レンズを使用します。 前の数式を使用すると、16 フィートの FOV によって、必要な 15-20 PPF の範囲内にある約 17.5 PPF が得られます。 この FOV は、ソリューションで、約 5184 ピクセルの水平解像度がある 10MP カメラを使用する必要があることを意味します。

カメラは 16 フィートのパスをとらえることができるので、165 フィート長の搬出口を 16 フィートの FOV で除算すると、10.3125 台のカメラになります。 したがって、このソリューションでは、11 台の 5184 水平ピクセルまたは 10MP のカメラが必要です。

センサーの種類

カメラは屋外にあるため、センサーの種類で "ブルーム" は使用できません。 ブルームは、光がセンサーに当たり、センサーに過負荷がかかり、過剰露出やホワイトアウトが生じる原因になります。 ここでは CMOS センサーを選択します。

カラーと照明

Contoso Shipping は年中無休で稼働しているため、夜間担当者も保護する必要があります。 モノクロはカラーよりも良好に低照度の条件でも動作します。 この場合、カラー情報は必要ありません。 モノクロ センサーの方が低コストでもあります。

ML モデル

データ サイエンティストは OpenVINO に精通しているため、このソリューションでは ONNX でデータ モデルを構築します。

ハードウェアの高速化

カメラからサーバーまでの距離は、ギガビット イーサネットまたは USB 接続には遠くすぎますが、大型のメッシュ Wi-Fi ネットワークがあります。 ハードウェアは Wi-fi 経由で接続し、使用する電力をできるだけ少なくする必要があります。

これらの要件に基づいて、このソリューションでは FPGA プロセッサを使用します。 このソリューションでは、ASIC プロセッサを使用することもできますが、専用の ASIC チップは将来の使いやすさの要件を満たしていません。

共同作成者

この記事は、Microsoft によって保守されています。 当初の寄稿者は以下のとおりです。

プリンシパル作成者:

パブリックでない LinkedIn プロファイルを表示するには、LinkedIn にサインインします。

次のステップ

この一連の記事では、Azure IoT Edge を使用してビジョン AI ワークロードを構築する方法について説明しました。 このシリーズの他の記事は次のとおりです。

CNS、ビジョン AI、Azure Machine Learning、Azure IoT Edge の詳細については、次のドキュメントを参照してください。

Azure IoT を使用するコンピューター ビジョンのアーキテクチャ、例、およびアイデアについて詳しくは、次の記事を参照してください。