In dieser Anleitung erfahren Sie, wie Sie mit dem Python SDK Gesichter in Videos unkenntlich machen. Im Beispiel werden Videodateien aus einem Cloud Storage-Bucket unkenntlich gemacht und unkenntlich gemachte Videoausgaben generiert. Diese Ausgabevideos werden im selben Cloud Storage-Bucket wie die Quellvideos gespeichert.
Ziele
In dieser Anleitung wird Folgendes beschrieben:
- Cloud Storage-Bucket erstellen
- Lokale Videodatei in den Bucket hochladen
- Anfrage mit dem Python SDK senden
- Unkenntlich gemachte Ausgabevideos ansehen
Kosten
In diesem Dokument verwenden Sie die folgenden kostenpflichtigen Komponenten von Google Cloud:
- Vertex AI Vision (Models - Person / face blur)
- Cloud Storage
Mit dem Preisrechner können Sie eine Kostenschätzung für Ihre voraussichtliche Nutzung vornehmen.
Verwenden Sie den Preisrechner.
Nach Abschluss der in diesem Dokument beschriebenen Aufgaben können Sie weitere Kosten vermeiden, indem Sie die erstellten Ressourcen löschen. Weitere Informationen finden Sie unter Bereinigen.
Hinweis
- Melden Sie sich in Ihrem Google Cloud Konto an. Wenn Sie noch nicht mit Google Cloudvertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
-
Installieren Sie die Google Cloud CLI.
-
Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.
-
Führen Sie den folgenden Befehl aus, um die gcloud CLI zu initialisieren:
gcloud init -
Erstellen oder wählen Sie ein Google Cloud Projekt aus.
Erforderliche Rollen zum Auswählen oder Erstellen eines Projekts
- Projekt auswählen: Für die Auswahl eines Projekts ist keine bestimmte IAM-Rolle erforderlich. Sie können ein beliebiges Projekt auswählen, für das Ihnen eine Rolle zugewiesen wurde.
-
Projekt erstellen: Zum Erstellen eines Projekts benötigen Sie die Rolle „Projektersteller“
(
roles/resourcemanager.projectCreator), die dieresourcemanager.projects.createBerechtigung enthält. Rollen zuweisen.
-
Projekt erstellen: Google Cloud
gcloud projects create PROJECT_ID
Ersetzen Sie
PROJECT_IDdurch einen Namen für das Google Cloud Projekt, das Sie erstellen. -
Wählen Sie das Google Cloud Projekt aus, das Sie erstellt haben:
gcloud config set project PROJECT_ID
Ersetzen Sie
PROJECT_IDdurch Ihren Google Cloud Projektnamen.
-
Prüfen Sie, ob die Abrechnung für Ihr Google Cloud Projekt aktiviert ist.
Aktivieren Sie die Vertex AI Vision API und die Cloud Storage API:
Erforderliche Rollen zum Aktivieren von APIs
Zum Aktivieren von APIs benötigen Sie die IAM-Rolle „Service Usage-Administrator“ (
roles/serviceusage.serviceUsageAdmin) mit derserviceusage.services.enableBerechtigung. Rollen zuweisen.gcloud services enable visionai.googleapis.com
storage.googleapis.com -
Wenn Sie eine lokale Shell verwenden, erstellen Sie lokale Anmeldedaten zur Authentifizierung für Ihr Nutzerkonto:
gcloud auth application-default login
Wenn Sie Cloud Shell verwenden, ist dies nicht erforderlich.
Wenn ein Authentifizierungsfehler zurückgegeben wird und Sie einen externen Identitätsanbieter (IdP) verwenden, prüfen Sie, ob Sie sich mit Ihrer föderierten Identität in der gcloud CLI angemeldet haben.
-
Weisen Sie Ihrem Nutzerkonto Rollen zu. Führen Sie den folgenden Befehl für jede der folgenden IAM-Rollen einmal aus:
roles/visionai.editor, roles/storage.objectAdmingcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
Ersetzen Sie Folgendes:
PROJECT_ID: Ihre Projekt-ID.USER_IDENTIFIER: Die Kennung für Ihr Nutzerkonto. Beispiel:myemail@example.com.ROLE: Die IAM-Rolle, die Sie Ihrem Nutzerkonto zuweisen.
-
Installieren Sie die Google Cloud CLI.
-
Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.
-
Führen Sie den folgenden Befehl aus, um die gcloud CLI zu initialisieren:
gcloud init -
Erstellen oder wählen Sie ein Google Cloud Projekt aus.
Erforderliche Rollen zum Auswählen oder Erstellen eines Projekts
- Projekt auswählen: Für die Auswahl eines Projekts ist keine bestimmte IAM-Rolle erforderlich. Sie können ein beliebiges Projekt auswählen, für das Ihnen eine Rolle zugewiesen wurde.
-
Projekt erstellen: Zum Erstellen eines Projekts benötigen Sie die Rolle „Projektersteller“
(
roles/resourcemanager.projectCreator), die dieresourcemanager.projects.createBerechtigung enthält. Rollen zuweisen.
-
Projekt erstellen: Google Cloud
gcloud projects create PROJECT_ID
Ersetzen Sie
PROJECT_IDdurch einen Namen für das Google Cloud Projekt, das Sie erstellen. -
Wählen Sie das Google Cloud Projekt aus, das Sie erstellt haben:
gcloud config set project PROJECT_ID
Ersetzen Sie
PROJECT_IDdurch Ihren Google Cloud Projektnamen.
-
Prüfen Sie, ob die Abrechnung für Ihr Google Cloud Projekt aktiviert ist.
Aktivieren Sie die Vertex AI Vision API und die Cloud Storage API:
Erforderliche Rollen zum Aktivieren von APIs
Zum Aktivieren von APIs benötigen Sie die IAM-Rolle „Service Usage-Administrator“ (
roles/serviceusage.serviceUsageAdmin) mit derserviceusage.services.enableBerechtigung. Rollen zuweisen.gcloud services enable visionai.googleapis.com
storage.googleapis.com -
Wenn Sie eine lokale Shell verwenden, erstellen Sie lokale Anmeldedaten zur Authentifizierung für Ihr Nutzerkonto:
gcloud auth application-default login
Wenn Sie Cloud Shell verwenden, ist dies nicht erforderlich.
Wenn ein Authentifizierungsfehler zurückgegeben wird und Sie einen externen Identitätsanbieter (IdP) verwenden, prüfen Sie, ob Sie sich mit Ihrer föderierten Identität in der gcloud CLI angemeldet haben.
-
Weisen Sie Ihrem Nutzerkonto Rollen zu. Führen Sie den folgenden Befehl für jede der folgenden IAM-Rollen einmal aus:
roles/visionai.editor, roles/storage.objectAdmingcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
Ersetzen Sie Folgendes:
PROJECT_ID: Ihre Projekt-ID.USER_IDENTIFIER: Die Kennung für Ihr Nutzerkonto. Beispiel:myemail@example.com.ROLE: Die IAM-Rolle, die Sie Ihrem Nutzerkonto zuweisen.
- Rufen Sie den Quellcode des Vertex AI Vision SDK ab:
git clone https://github.com/google/visionai.git
Die Python-Beispiele befinden sich im
visionai/python/example/Verzeichnis. - Rufen Sie das Python SDK ab:
wget https://github.com/google/visionai/releases/download/v0.0.5/visionai-0.0.5-py3-none-any.whl
Eingabedateien zu Cloud Storage hinzufügen
Bevor Sie eine Anfrage mit dem Python SDK senden können, erstellen Sie einen Cloud Storage-Bucket und laden Sie ein lokales Video als Eingabe hoch.
Erstellen Sie einen Cloud Storage-Bucket:
gcloud storage buckets create gs://BUCKET_NAMELaden Sie eine lokale Videodatei in den neuen Bucket hoch:
gcloud storage cp LOCAL_FILE gs://BUCKET_NAME
Abhängigkeiten installieren und Anfrage senden
Nachdem Sie Ihren Cloud Storage-Bucket für Eingabe- und Ausgabevideos erstellt und ein lokales Video hinzugefügt haben, installieren Sie die erforderlichen Abhängigkeiten und senden Sie Ihre Anfrage.
Optional. Richten Sie Ihre virtuelle Umgebung ein:
Wenn
virtualenvnicht installiert ist, installieren Sie es:sudo apt-get install python3-venvErstellen Sie eine neue virtuelle Umgebung:
python3 -m venv vaivenvAktivieren Sie Ihre virtuelle Umgebung:
source vaivenv/bin/activate
Installieren Sie die Abhängigkeiten:
pip3 install visionai-0.0.5-py3-none-any.whl pip3 install google-cloud-storageSenden Sie Ihre Anfrage mit dem Python SDK.
Ersetzen Sie die folgenden Variablen:
- PROJECT_ID: Ihre Google Cloud Projekt-ID.
- LOCATION_ID: Ihre Standort-ID. Beispiel:
us-central1. Weitere Informationen. Unterstützte Regionen. - BUCKET_NAME: Der von Ihnen erstellte Cloud Storage-Bucket.
python3 visionai/python/example/blur_gcs_video.py \ --project_id=PROJECT_ID –cluster_id=application-cluster-0 \ –location_id=LOCATION_ID –bucket_name=BUCKET_NAMEDie Ausgabe sollte in etwa so aussehen:
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! ```
Ausgabe prüfen
Nachdem Ihr Video verarbeitet wurde, können Sie die Ausgabe in Ihrem Cloud Storage-Bucket prüfen. Die generierten unkenntlich gemachten Videodateien befinden sich im selben Cloud Storage-Bucket wie das Quellvideo.
Listen Sie alle Objekte in Ihrem Bucket mit dem
gcloud storage lsBefehl auf:gcloud storage ls gs://bucketDie Quelldateien und Ausgabedateien sollten in etwa so aussehen:
test1.mp4 test2.mp4 test1_deid_output.mp4 test2_deid_output.mp4Optional. Laden Sie die Ausgabedateien mit dem
gcloud storage cpBefehl lokal herunter und sehen Sie sich die unkenntlich gemachten Videos an:gcloud storage cp gs://BUCKET_NAME/FILE_NAME .
Bereinigen
Damit Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen nicht in Rechnung gestellt werden, löschen Sie entweder das Projekt, das die Ressourcen enthält, oder Sie behalten das Projekt und löschen die einzelnen Ressourcen.
Nächste Schritte
- Weitere Informationen zum Modell zur Unkenntlichmachung von Personen
- Referenzarchitekturen, Diagramme und Best Practices zu Google Cloud kennenlernen. Weitere Informationen zu Cloud Architecture Center