Agent Platform Vision は、動画 データの取り込み、分析、 保存に使用できる AI を活用したプラットフォームです。Agent Platform Vision を使用すると、AI アプリケーションを構築してデプロイできます。Agent Platform Vision の他の プロダクト コンポーネントとの統合を活用することで、エンドツーエンドの Agent Platform Vision ソリューションを構築できます。
Agent Platform Vision プラットフォームを使用してソリューションの実装を開始するには、次の Agent Platform Vision のコンセプトとコンポーネントを確認してください。
ストリーム: ソリューションの動画ストリーミング レイヤを表します。ストリーム ソースは、ライブ動画(IP カメラなど)または動画ファイル(MP4 ファイルなど)にできます。
アプリケーション: ストリームと AI プロセッサ間の接続を有効にして、動画に対して ML オペレーションを実行します。たとえば、カメラ ストリームを、カメラの前を通過する人数をカウントする AI モデルに接続できます。
メディア ウェアハウス: ストリームによって取り込まれた動画を Google Cloud ストレージに保存します。この宛先にデータを保存すると、取り込まれたストリームのデータで使用される AI プロセッサから分析出力とメタデータをクエリできます。
目標
このチュートリアルでは、次の方法を説明します。
- データ入力ストリーム リソースを作成する。
- このストリーム リソースへの動画データのストリーミングを開始する。
- 空のアプリケーションを作成する。
- ノードをアプリケーションに追加して、データのストリーミング、データの変更、データの保存を行う。
- アプリをデプロイして使用できるようにする。
- コンソールで処理されたデータ出力を表示する。 Google Cloud
このチュートリアルを開始する前に、Agent Platform Vision アプリにデータを送信するためのストリーミング動画リソースが必要です。このリソースは、ローカル動画または RTSP フィードのいずれかになります。この動画データには、サンプルアプリでぼかし処理できる人間の顔が含まれている必要があります。
費用
このドキュメントでは、課金対象である次のコンポーネントを使用します。 Google Cloud
- Agent Platform Vision (Streams - Data ingested, Streams - Data consumed, Models - Person / face blur, Warehouse - Video storage)
料金計算ツールを使うと、予想使用量に基づいて費用の見積もりを生成できます。
このドキュメントに記載されているタスクの完了後、作成したリソースを削除すると、それ以上の請求は発生しません。詳細については、クリーンアップをご覧ください。
始める前に
- ストリーミング動画ソースのロケーション(ローカル
(
./sample_video.mp4など)またはライブ RTSP フィードの IP アドレス(rtsp://192.168.1.180:540など))を取得します。ストリーム リソースを作成した後、ストリームへのデータの取り込みを開始するには、 この情報が必要です。 - アカウントにログインします Google Cloud を初めて使用する場合は、 アカウントを作成して、実際のシナリオで Google プロダクトのパフォーマンスを評価してください。 Google Cloud新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Vision AI API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
Create a service account:
-
Ensure that you have the Create Service Accounts IAM role
(
roles/iam.serviceAccountCreator) and the Project IAM Admin role (roles/resourcemanager.projectIamAdmin). Learn how to grant roles. -
In the Google Cloud console, go to the Create service account page.
Go to Create service account - Select your project.
-
In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.
In the Service account description field, enter a description. For example,
Service account for quickstart. - Click Create and continue.
-
Grant the Vision AI > Vision AI Editor role to the service account.
To grant the role, find the Select a role list, then select Vision AI > Vision AI Editor.
- Click Continue.
-
Click Done to finish creating the service account.
Do not close your browser window. You will use it in the next step.
-
Ensure that you have the Create Service Accounts IAM role
(
-
Create a service account key:
- In the Google Cloud console, click the email address for the service account that you created.
- Click Keys.
- Click Add key, and then click Create new key.
- Click Create. A JSON key file is downloaded to your computer.
- Click Close.
-
Set the environment variable
GOOGLE_APPLICATION_CREDENTIALSto the path of the JSON file that contains your credentials. This variable applies only to your current shell session, so if you open a new session, set the variable again. -
Google Cloud CLI をインストールします。
-
外部 ID プロバイダ(IdP)を使用している場合は、まず連携 ID を使用して gcloud CLI にログインする必要があります。
-
gcloud CLI を初期化するには、次のコマンドを実行します:
gcloud init -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Vision AI API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
Create a service account:
-
Ensure that you have the Create Service Accounts IAM role
(
roles/iam.serviceAccountCreator) and the Project IAM Admin role (roles/resourcemanager.projectIamAdmin). Learn how to grant roles. -
In the Google Cloud console, go to the Create service account page.
Go to Create service account - Select your project.
-
In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.
In the Service account description field, enter a description. For example,
Service account for quickstart. - Click Create and continue.
-
Grant the Vision AI > Vision AI Editor role to the service account.
To grant the role, find the Select a role list, then select Vision AI > Vision AI Editor.
- Click Continue.
-
Click Done to finish creating the service account.
Do not close your browser window. You will use it in the next step.
-
Ensure that you have the Create Service Accounts IAM role
(
-
Create a service account key:
- In the Google Cloud console, click the email address for the service account that you created.
- Click Keys.
- Click Add key, and then click Create new key.
- Click Create. A JSON key file is downloaded to your computer.
- Click Close.
-
Set the environment variable
GOOGLE_APPLICATION_CREDENTIALSto the path of the JSON file that contains your credentials. This variable applies only to your current shell session, so if you open a new session, set the variable again. -
Google Cloud CLI をインストールします。
-
外部 ID プロバイダ(IdP)を使用している場合は、まず連携 ID を使用して gcloud CLI にログインする必要があります。
-
gcloud CLI を初期化するには、次のコマンドを実行します:
gcloud init vaictlツールをインストールしてストリームに取り込む (OS: Debian GNU/Linux、CPU アーキテクチャ: x86_64):- 必要なパッケージをダウンロードします。
wget https://github.com/google/visionai/releases/download/v0.0.5/visionai_0.0-5_amd64.deb
- パッケージをダウンロードしたら、ファイルをダウンロードしたディレクトリで次のコマンドを実行します。
sudo apt install ./visionai_0.0-5_amd64.deb
- インストールを確認します。
vaictl --help
- 必要なパッケージをダウンロードします。
ストリームの作成
ストリーミング動画分析アプリを作成するには、まずストリーム リソースを作成して登録する必要があります。ユーザーから動画データを受信するリソースとして、Agent Platform Vision を使用して構築するシナリオではストリームが必要です。コンソール
コンソールで新しいストリームを作成する手順は次のとおりです。 Google Cloud
Agent Platform Vision ダッシュボードの [ストリーム] タブを開きます。
[**登録**] をクリックします。
ストリーム名として「
input-stream」と入力し、ストリームを作成するリージョンを選択します。[登録] をクリックして、1 つ以上のストリームを作成します。
ストリームに動画を取り込む
ストリーム リソースを作成したら、vaictl コマンドライン ツールを使用して、動画データをストリームに送信できます。
IP カメラ
ライブ IP カメラを使用してテストする場合は、カメラの IP アドレスを取得する必要があります。リクエストには、この情報を他の変数の置き換えとともに指定する必要があります。
- PROJECT_ID: 実際の Google Cloud プロジェクト ID。
- LOCATION_ID: 地域 ID。例:
us-central1。詳細については、 クラウドのロケーションをご覧ください。 - RTSP_ADDRESS: リアルタイム ストリーミング
プロトコル(RTSP)フィードのアドレス。例:
rtsp://192.168.1.180:540.
このコマンドは、RTSP フィードをストリームに送信します。このコマンドは、RTSP フィードに直接アクセスできるネットワークで実行する必要があります。
vaictl -p PROJECT_ID \
-l LOCATION_ID \
-c application-cluster-0 \
--service-endpoint visionai.googleapis.com \
send rtsp to streams input-stream --rtsp-uri RTSP_ADDRESS
コマンドが正常に実行されると、次の出力が表示されます。
[...] Waiting for long running operation projects/your-project/locations/us-central1/operations/operation-1651364156981-5dde82db7e4a9-dfb17ca5-1051eb20 ⠙ I20220430 21:16:28.024988 211449 gstvaisink.cc:417] cluster-id=application-cluster-0 I20220430 21:16:28.025032 211449 gstvaisink.cc:418] cluster-endpoint=c8khq35ftg78mn61ef50.us-central1.visionai.goog I20220430 21:16:28.025040 211449 gstvaisink.cc:419] event-id=ev-1651364114183255223 I20220430 21:16:28.025048 211449 gstvaisink.cc:420] stream-id=input-stream I20220430 21:16:28.025053 211449 gstvaisink.cc:421] series-id=ev-1651364114183255223--input-stream I20220430 21:16:28.025060 211449 gstvaisink.cc:422] Sending data
ローカル動画ファイル
ライブ動画 フィードの代わりに、動画ファイルデータをストリームに送信することもできます。このオプションは、IP カメラにアクセスできない場合に便利です。
このオプションの違いは、vaictl コマンド
パラメータのみです。IP カメラ情報を渡す代わりに、
ローカル動画ファイルのパスを渡します。次の変数を置き換えます。
- PROJECT_ID: 実際の Google Cloud プロジェクト ID。
- LOCATION_ID: 地域 ID。例:
us-central1。詳細. - LOCAL_FILE.EXT: ローカル動画ファイルのファイル名。
例:
my-video.mp4。 --loopフラグ: 省略可。ストリーミングをシミュレートするためにファイルデータをループします。
このコマンドは、動画ファイルをストリームにストリーミングします。`
--loop` フラグを使用すると、コマンドを停止するまで動画がストリームにループされます。
vaictl -p PROJECT_ID \
-l LOCATION_ID \
-c application-cluster-0 \
--service-endpoint visionai.googleapis.com \
send video-file to streams 'input-stream' --file-path LOCAL_FILE.EXT --loop
vaictl 取り込みオペレーションの開始から、ダッシュボードに動画が表示されるまで、約 100 秒かかることがあります。
ストリームの取り込みが完了すると、Agent Platform Vision ダッシュボードの [ストリーム] タブで input-stream ストリームを選択して、動画フィードを確認できます。
顔のぼかしアプリを作成する
ストリームを作成してストリームにデータを取り込んだら、Agent Platform Vision アプリを作成してデータを処理します。 アプリは、次のものを接続する自動パイプラインと考えることができます。
- データの取り込み: 動画フィードがストリームに取り込まれます。
- データ分析: 取り込み後に AI モデルを追加できます。取り込まれた動画情報に対して、任意のコンピュータ ビジョン オペレーションを実行できます。
- データ ストレージ: 動画フィードの 2 つのバージョン(元のストリームと AI モデルで処理されたストリーム)をメディア ウェアハウスに保存できます。
コンソールでは、アプリはグラフとして表されます。 Google Cloud また、Agent Platform Vision では、アプリグラフに少なくとも 2 つのノード(動画ソースノード(ストリーム)と少なくとも 1 つのノード(処理モデルまたは出力先))が必要です。
空のアプリケーションを作成する
アプリグラフにデータを入力する前に、まず空のアプリを作成する必要があります。コンソール
コンソールでアプリを作成します。 Google Cloud
Agent Platform Vision ダッシュボードの [アプリケーション] タブを開きます。
[Create] ボタンをクリックします。
アプリ名として「
person-blur-app」と入力し、リージョンを選択します。[作成] をクリックします。
アプリ コンポーネント ノードを追加する
空のアプリケーションを作成したら、次の 3 つのノードをアプリグラフに追加できます。
- 取り込みノード: すでにデータを取り込んでいるストリーム リソース。
- 処理ノード: 取り込まれたデータに対して動作する人物のぼかしモデル。
- ストレージ ノード: 処理された動画を保存し、 メタデータ ストアとしても機能するメディア ウェアハウス。ウェアハウスでは、取り込まれた動画データに関する分析情報を 生成できるほか、AI モデルによって推測された情報も 保存されます。
コンソール
コンソールでアプリにコンポーネント ノードを追加します。
Agent Platform Vision ダッシュボードの [アプリケーション] タブを開きます。
person-blur-app行で、 [View graph] を選択します。処理パイプラインのグラフ表示が表示されます。
データの取り込みノードを追加する
入力ストリーム ノードを追加するには、サイドメニューの [コネクタ] セクションで [ストリーム] オプションを選択します。
表示される [**ストリーム**] メニューの [**ソース**] セクションで、 [**ストリームを追加**] を選択します。
In the [Add streams] menu, choose [Select from existing streams] and select
person-blur-appfrom the list of stream resources.![UI の [ストリームを追加] メニュー](https://docs.cloud.google.com/static/vision-ai/docs/images/add-input-stream.png?authuser=50&hl=ja)
ストリームをアプリグラフに追加するには、[ストリームを追加] をクリックします。
データ処理ノードを追加する
人物のぼかしモデル ノードを追加するには、サイドメニューの [一般的なプロセッサ] セクションで [人物のぼかし] オプションを選択します。
表示される [人物のぼかし] オプション メニューで、 [Full occlusion] を選択したままにして、 [Blur faces only] オプションを有効にします。

データ ストレージ ノードを追加する
出力先(ストレージ)ノードを追加するには、サイドメニューの [コネクタ] セクションで [Agent Platform Vision のメディア ウェアハウス] オプションを選択します。
[Agent Platform Vision のメディア ウェアハウス] メニューで、[ウェアハウスを接続] をクリックします。
[ウェアハウスを接続] メニューで、 [新しい ウェアハウスを作成] を選択します。ウェアハウスに「
person-blur-app」という名前を付け、TTL の期間を 14 日のままにします。ウェアハウスを追加するには、[作成] をクリックします。

アプリケーションをデプロイする
必要なコンポーネントをすべて含むエンドツーエンドのアプリを構築したら、アプリを使用する最後の手順として、アプリをデプロイします。コンソール
Agent Platform Vision ダッシュボードの [アプリケーション] タブを開きます。
リストで
person-blur-appアプリの横にある [グラフを表示] を選択します。アプリケーション グラフ ビルダー ページで、 [Deploy] ボタンをクリックします。
次の確認ダイアログで、[デプロイ] を選択します。
デプロイ オペレーションが完了するまでに数分かかることがあります。デプロイが完了すると、ノードの横に緑色のチェックマークが表示されます。
処理された出力データを表示する
コンソール
Agent Platform Vision ダッシュボードの [ウェアハウス] タブを開きます。
リストで
person-blur-output-storageウェアハウスを見つけて、 [アセットを表示] をクリックします。
クリーンアップ
このチュートリアルで使用したリソースについて、Google Cloud アカウントに課金されないようにするには、リソースを含むプロジェクトを削除するか、プロジェクトを維持して個々のリソースを削除します。
プロジェクトを削除する
- コンソールで [**リソースの管理**] ページに移動します。 Google Cloud
- プロジェクト リストで、削除するプロジェクトを選択し、[削除] をクリックします。
- ダイアログでプロジェクト ID を入力し、 [Shut down] をクリックしてプロジェクトを削除します。
リソースを個別に削除する
ウェアハウスを削除する
- コンソールで、 [**ウェアハウス**] ページに移動します。 Google Cloud
-
`` ウェアハウスを探します。
person-blur-output-storage - ウェアハウスを削除するには、 [Actions] をクリックし、[Delete warehouse] をクリックして、指示に沿って操作します。
ストリームを削除する
- コンソールで、 [ストリーム] ページに移動します。 Google Cloud
-
`` ストリームを探します。
input-stream - ストリームを削除するには、 [アクション] をクリックし、[ストリームを削除] をクリックして、指示に沿って操作します。
アプリを削除する
- コンソールで、 [アプリケーション] ページに移動します。 Google Cloud
-
アプリを探します。
person-blur-app削除するアプリのチェックボックスを選択します。 - アプリを削除するには、 [アクション] をクリックし、[アプリケーションを削除] をクリックして、指示に沿って操作します。
次のステップ
- 詳しくは、 責任ある AI への取り組みをご覧ください。
- アプリの構築でアプリに追加できる他のコンポーネントについて確認する。 アプリの構築。
- アプリの出力をデータ接続に接続する で、その他の出力ストレージと処理オプションについて学習する。
- コンソールで ウェアハウス データを検索する方法を確認する。
- Google Cloud に関するリファレンス アーキテクチャ、図、ベスト プラクティスを確認する。 Cloud アーキテクチャ センターをご覧ください。