このチュートリアルでは、Python SDK を使用して動画内の顔をぼかす方法について説明します。この例では、Cloud Storage バケットの動画ファイルをぼかし、ぼかし動画の出力を生成します。これらの出力動画は、ソース動画と同じ Cloud Storage バケットに保存されます。
入力ファイルを Cloud Storage に追加する
Python SDK を使用してリクエストを送信する前に、Cloud Storage バケットを作成し、入力として使用するローカル動画をアップロードします。
Cloud Storage バケットを作成します。
gcloud storage buckets create gs://BUCKET_NAME
ローカル動画ファイルを新しいバケットにアップロードします。
gcloud storage cp LOCAL_FILE gs://BUCKET_NAME
依存関係をインストールしてリクエストを送信する
入力動画と出力動画用の Cloud Storage バケットを作成してローカル動画を追加したら、必要な依存関係をインストールしてリクエストを送信します。
省略可。仮想環境を設定します。
インストールされていない場合は、
virtualenv
をインストールします。sudo apt-get install python3-venv
新しい仮想環境を作成します。
python3 -m venv vaivenv
仮想環境を有効にします。
source vaivenv/bin/activate
依存関係をインストールします。
pip3 install visionai-0.0.5-py3-none-any.whl pip3 install google-cloud-storage
Python SDK を使用してリクエストを送信します。
次の変数を置き換えます。
- PROJECT_ID: 実際の Google Cloud プロジェクト ID。
- LOCATION_ID: ロケーション ID。例:
us-central1
詳細サポートされているリージョン。 - BUCKET_NAME: 作成した Cloud Storage バケット。
python3 visionai/python/example/blur_gcs_video.py \ --project_id=PROJECT_ID –cluster_id=application-cluster-0 \ –location_id=LOCATION_ID –bucket_name=BUCKET_NAME
出力は次のようになります。
Listing mp4 files... test1.mp4 test2.mp4 Creating deid processes... process vnluvxgl is created process rvrdoucx is created Waiting for processes to finish... process vnluvxgl state is COMPLETED process rvrdoucx state is COMPLETED All processes have finished, please check the GCS bucket! ```
出力を確認する
動画の処理が完了したら、Cloud Storage バケットで出力を確認できます。生成されたぼかし動画ファイルは、ソース動画と同じ Cloud Storage バケットに保存されます。
gcloud storage ls
コマンドを使用して、バケット内のすべてのオブジェクトを一覧表示します。gcloud storage ls gs://bucket
ソースファイルと出力ファイルは次のようになります。
test1.mp4 test2.mp4 test1_deid_output.mp4 test2_deid_output.mp4
省略可。
gcloud storage cp
コマンドを使用して出力ファイルをローカルにダウンロードし、ぼかし処理された動画を表示します。gcloud storage cp gs://BUCKET_NAME/FILE_NAME .