C++ SDK は、Vertex AI Vision SDK の一部として利用できるツールです。C++ SDK を使用すると、Vertex AI Vision でさまざまな形式の I/O をプログラムで管理、制御、実行できます。
このページでは、C++ SDK を使用してビルドとテストを行う方法について説明します。
始める前に
- Google Cloud プロジェクトを設定する手順を完了します。
- C++ SDK を使用する前に、システム要件を確認してください。
一般公開されている GitHub リポジトリから Vertex AI Vision SDK のソースコードを取得します。
git clone https://github.com/google/visionai.git
C++ 公開 SDK は
visionai/public/streams.h
にあります。リファレンス情報については、リファレンス ドキュメントをご覧ください。必要に応じてシステム依存関係をインストールします。
ストリームを作成してデータを取り込むトピックを使用して、次のコードサンプルで使用するストリーム リソースを作成します。
プログラムのビルドとテスト
次の例は、C++ プログラミング SDK を使用して独自のプログラムを作成する方法を示しています。このサンプルでは、Packets
の送受信の例を説明することで、このプロセスを直接示します。
次の手順では、2 つの簡単なプログラムを作成する方法について説明します。最初のプログラムは一定の間隔でメッセージを送信し、2 番目のプログラムは最初のプログラムが送信したメッセージを受信します。これらのプログラムを起点として、C++ SDK を使用して独自のカスタム アプリケーションを構築できます。
ソースコード ディレクトリのルートに移動します。
ディレクトリの内容は次のようになります。
bazel BUILD CONTRIBUTING.md debian deps.bzl LICENSE README.md third_party visionai [...]
省略可: チュートリアルのソースコードの手順を確認します。
送信元のアプリ:
cat visionai/public/tutorial/sender_app.cc
レシーバー アプリ:
cat visionai/public/tutorial/receiver_app.cc
送信者と受信者のアプリを作成します。
bazel build //visionai/public/tutorial/...
ビルドが正常に機能したことを確認します。1 つのターミナルで、送信元アプリの次のコマンドを実行します。次のように置き換えます。
- PROJECT_ID: プロジェクト ID。
- LOCATION_ID: ロケーション ID。例:
us-central1
サポートされているリージョン。詳細 - STREAM_ID: クラスタで作成したストリーム ID。例:
input-1
./bazel-bin/visionai/public/tutorial/sender_app \ --service_endpoint visionai.googleapis.com \ --project_id PROJECT_ID \ --location_id LOCATION_ID \ --cluster_id application-cluster-0 \ --stream_id STREAM_ID
別のターミナルで、レシーバ アプリに対して次のコマンドを実行します。次のように置き換えます。
- PROJECT_ID: プロジェクト ID。
- LOCATION_ID: ロケーション ID。例:
us-central1
サポートされているリージョン。詳細 - STREAM_ID: クラスタで作成したストリーム ID。例:
input-1
./bazel-bin/visionai/public/tutorial/receiver_app \ --service_endpoint visionai.googleapis.com \ --project_id PROJECT_ID \ --location_id LOCATION_ID \ --cluster_id application-cluster-0 \ --stream_id STREAM_ID
次のステップ
- アプリに追加できる処理コンポーネントについては、アプリの構築をご覧ください。
- アプリの出力をデータ接続に接続する で、出力ストレージと処理オプションについて学習する。
- コンソールで倉庫データを検索する方法を確認する。