Im folgenden Codebeispiel wird gezeigt, wie mithilfe der Video Intelligence API Personen in einer Videodatei erkannt werden.
Mit Video Intelligence können Sie das Vorhandensein eines Menschen in einer Videodatei erkennen und einzelne Personen in einem Video oder Videosegment verfolgen.
Personenerkennung anhand einer Datei in Cloud Storage
Im Folgenden wird gezeigt, wie Sie mit der Funktion zur Personenerkennung eine Annotationsanfrage an Video Intelligence senden.
REST
Anfrage zur Annotation eines Videos senden
Im Folgenden wird gezeigt, wie eine POST-Anfrage an die Methode videos:annotate
gesendet wird. In diesem Beispiel wird die Google Cloud CLI verwendet, um ein Zugriffstoken zu erstellen. Eine Anleitung zur Installation der gcloud CLI finden Sie in der Kurzanleitung zur Video Intelligence API.
Weitere Informationen finden Sie unter PersonDetectionConfig
.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- INPUT_URI: Ein Cloud Storage-Bucket, der die Datei enthält, die Sie annotieren möchten, einschließlich des Dateinamens. Muss mit
gs://
beginnen.
Beispiel:
"inputUri": "gs://cloud-samples-data/video/googlework_short.mp4"
- PROJECT_NUMBER: Die numerische Kennung für Ihr Google Cloud-Projekt
HTTP-Methode und URL:
POST https://videointelligence.googleapis.com/v1/videos:annotate
JSON-Text anfordern:
{ "inputUri": "INPUT_URI", "features": ["PERSON_DETECTION"], "videoContext": { "personDetectionConfig": { "includeBoundingBoxes": true, "includePoseLandmarks": true, "includeAttributes": true } } }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten in etwa folgende JSON-Antwort erhalten:
Wenn die Antwort erfolgreich ist, gibt die Video Intelligence API den name
für Ihren Vorgang zurück. Oben wird ein Beispiel für eine solche Antwort gezeigt, wobei:
- PROJECT_NUMBER: Die Nummer Ihres Projekts
- LOCATION_ID: Die Cloud-Region, in der die Annotation stattfinden soll. Unterstützte Cloud-Regionen sind:
us-east1
,us-west1
,europe-west1
,asia-east1
. Wenn keine Region angegeben ist, wird eine Region basierend auf dem Speicherort der Videodatei festgelegt. - OPERATION_ID: Die ID des lang andauernden Vorgangs, der für die Anfrage erstellt und in der Antwort beim Start des Vorgangs angegeben wurde, z. B.
12345...
Ruft Annotationsergebnisse ab
Um das Ergebnis des Vorgangs abzurufen, führen Sie eine GET-Anfrage mithilfe des Vorgangsaufrufs, der vom Aufruf an Videos:Annotieren zurückgegeben wurde, wie im folgenden Beispiel gezeigt.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- OPERATION_NAME: Der von der Video Intelligence API zurückgegebene Name des Vorgangs. Der Vorgangsname hat das Format
projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID
. - PROJECT_NUMBER: Die numerische Kennung für Ihr Google Cloud-Projekt
HTTP-Methode und URL:
GET https://videointelligence.googleapis.com/v1/OPERATION_NAME
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
Anmerkungen zur Szenenerkennung werden in der ListeshotAnnotations
zurückgegeben.
Hinweis: Das Feld done wird nur zurückgegeben, wenn sein Wert True ist.
Es ist nicht in Antworten enthalten, für die der Vorgang nicht abgeschlossen wurde.
Annotationsergebnisse herunterladen
Kopieren Sie die Annotation aus der Quelle in den Ziel-Bucket (siehe Dateien und Objekte kopieren)
gcloud storage cp gcs_uri gs://my-bucket
Hinweis: Wenn der Nutzer den Ausgabe-gcs-URI vom Nutzer bereitstellt, wird die Annotation in diesem gcs-uri gespeichert.
Java
Richten Sie zur Authentifizierung bei Video Intelligence die Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Node.js
Richten Sie zur Authentifizierung bei Video Intelligence die Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Python
Richten Sie zur Authentifizierung bei Video Intelligence die Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Weitere Sprachen
C#: Folgen Sie der Anleitung zur Einrichtung von C# auf der Seite der Clientbibliotheken und rufen Sie dann die Video Intelligence-Referenzdokumentation für .NET auf.
PHP: Folgen Sie der Anleitung zur Einrichtung von PHP auf der Seite der Clientbibliotheken und rufen Sie dann die Video Intelligence-Referenzdokumentation für PHP auf.
Ruby: Folgen Sie der Anleitung zur Einrichtung von Ruby auf der Seite der Clientbibliotheken und rufen Sie dann die Video Intelligence-Referenzdokumentation für Ruby auf.
Personenerkennung aus einer lokalen Datei
Im folgenden Beispiel wird die Personenerkennung verwendet, um Entitäten in einem Video aus einer Videodatei zu finden, die von Ihrem lokalen Computer hochgeladen wurde.
REST
Prozessanfrage senden
Codieren Sie den Inhalt der Videodatei als Base64-Codierung, um eine Personenerkennung für eine lokale Videodatei durchzuführen. Informationen zum Base64-Codieren des Inhalts einer Videodatei finden Sie unter Base64-Codierung. Stellen Sie dann eine POST-Anfrage an die Methode videos:annotate
. Fügen Sie den Base64-codierten Inhalt in das Feld inputContent
der Anfrage ein und geben Sie das Feature PERSON_DETECTION
an.
Das folgende Beispiel zeigt eine POST-Anfrage mit curl. In diesem Beispiel wird die Google Cloud CLI verwendet, um ein Zugriffstoken zu erstellen. Eine Anleitung zur Installation der gcloud CLI finden Sie in der Kurzanleitung zur Video Intelligence API.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- inputContent: Lokale Videodatei im Binärformat
Beispiel: "AAAAGGZ0eXBtcDQyAAAAAAGzb21tcDQyAAGVGV1vb3YAAABsbXXoZAAAAADWvhlR1r4ZQAQABX5ABCOxo AAAEAAAAAAAA4..." - PROJECT_NUMBER: Die numerische Kennung für Ihr Google Cloud-Projekt
HTTP-Methode und URL:
POST https://videointelligence.googleapis.com/v1/videos:annotate
JSON-Text anfordern:
{ "inputUri": "Local video file in binary format", "features": ["PERSON_DETECTION"], "videoContext": { "personDetectionConfig": { "includeBoundingBoxes": true, "includePoseLandmarks": true, "includeAttributes": true } } }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten in etwa folgende JSON-Antwort erhalten:
Wenn die Anfrage erfolgreich ist, startet Video Intelligence das name
für Ihren Vorgang. Das Beispiel oben zeigt eine solche Antwort, wobei project-number
die Nummer Ihres Projekts und operation-id
die ID des lang andauernden Vorgangs ist, der für die Anfrage erstellt wurde.
{
"name": "us-west1.17122464255125931980"
}
Ergebnisse abrufen
Um das Ergebnis des Vorgangs abzurufen, senden Sie eine GET-Anfrage an den Endpunkt operations
und geben Sie den Namen des Vorgangs an.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- OPERATION_NAME: Der von der Video Intelligence API zurückgegebene Name des Vorgangs. Der Vorgangsname hat das Format
projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID
. - PROJECT_NUMBER: Die numerische Kennung für Ihr Google Cloud-Projekt
HTTP-Methode und URL:
GET https://videointelligence.googleapis.com/v1/OPERATION_NAME
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
Java
Richten Sie zur Authentifizierung bei Video Intelligence die Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Node.js
Richten Sie zur Authentifizierung bei Video Intelligence die Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Python
Richten Sie zur Authentifizierung bei Video Intelligence die Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Weitere Sprachen
C#: Folgen Sie der Anleitung zur Einrichtung von C# auf der Seite der Clientbibliotheken und rufen Sie dann die Video Intelligence-Referenzdokumentation für .NET auf.
PHP: Folgen Sie der Anleitung zur Einrichtung von PHP auf der Seite der Clientbibliotheken und rufen Sie dann die Video Intelligence-Referenzdokumentation für PHP auf.
Ruby: Folgen Sie der Anleitung zur Einrichtung von Ruby auf der Seite der Clientbibliotheken und rufen Sie dann die Video Intelligence-Referenzdokumentation für Ruby auf.