Mit dem Objekt-Tracking können in einem Eingabevideo Objekte erkannt werden. Um eine Objekt-Tracking-Anfrage zu stellen, rufen Sie die Methode annotate
auf und geben Sie OBJECT_TRACKING
im Feld features
an.
Bei Entitäten und räumlichen Standorten, die in einem Video oder Videosegmenten erkannt wurden, wird in der Objekt-Tracking-Anfrage das Video mit den entsprechenden Labels für diese Entitäten und räumlichen Standorte gekennzeichnet. Zum Beispiel können für ein Video von Fahrzeugen, die über eine Ampel fahren, Labels wie „Auto“, „LKW“, „Fahrrad“, „Reifen“, „Ampel“, „Fenster“ usw. erzeugt werden. Jedes Label kann mehrere Begrenzungsrahmen enthalten, wobei jedem Begrenzungsrahmen ein Zeitsegment mit einem Zeitstempel zugeordnet ist, der die Versatzzeit vom Beginn des Videos angibt. Die Anmerkung enthält außerdem zusätzliche Elementinformationen wie eine Element-ID, mit der Sie weitere Informationen zu diesem Element in der Google Knowledge Graph Search API finden können.
Objekt-Tracking und Labelerkennung im Vergleich
Objekt-Tracking unterscheidet sich von der Labelerkennung darin, dass die Labelerkennung Labels ohne Begrenzungsrahmen bereitstellt, während das Objekt-Tracking die Labels der einzelnen Objekte in einem bestimmten Video zusammen mit dem jeder Objektinstanz zu jedem Zeitpunkt bereitstellt.
Mehrere Instanzen desselben Objekttyps werden verschiedenen Instanzen der Nachricht ObjectTrackingAnnotation
zugewiesen, bei denen alle Vorkommen eines bestimmten Objekt-Tracks in einer eigenen Instanz von ObjectTrackingAnnotation
gespeichert sind. Wenn beispielsweise in einem Video ein rotes Auto und ein blaues Auto fünf Sekunden lang angezeigt werden, sollte die Tracking-Anfrage zwei Instanzen von ObjectTrackingAnnotation
zurückgeben. Die erste Instanz enthält die Standorte der beiden Fahrzeuge, z. B. das rote Auto, während die zweite die Standorte des anderen Autos enthält.
Objekt-Tracking für ein Video in Cloud Storage anfordern
Die folgenden Beispiele zeigen Objekt-Tracking für eine Datei in Cloud Storage.
REST
Prozessanfrage senden
Im Folgenden wird gezeigt, wie eine POST
-Anfrage an die Methode annotate
gesendet wird.
In diesem Beispiel wird das Zugriffstoken für ein Dienstkonto verwendet, das für das Projekt eingerichtet wurde.
mit der Google Cloud CLI. Eine Anleitung zum Installieren der Google Cloud CLI
Einrichten eines Projekts mit einem Dienst
und zum Abrufen eines Zugriffstokens
Kurzanleitung zu Video Intelligence
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- INPUT_URI: STORAGE_URI
Beispiel:
"inputUri": "gs://cloud-videointelligence-demo/assistant.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": "STORAGE_URI", "features": ["OBJECT_TRACKING"] }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten in etwa folgende JSON-Antwort erhalten:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID" }
Wenn die Anfrage erfolgreich ist, gibt die Video Intelligence API den name
Ihres Vorgangs zurück. 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.
Ergebnisse abrufen
Senden Sie eine GET
mit dem vom Aufruf an videos:annotate
zurückgegebenen Vorgangsnamen, wie im folgenden Beispiel gezeigt, um die Ergebnisse Ihrer Anfrage zu erhalten.
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:
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.
Go
Java
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
Weitere Sprachen
C# Bitte folgen Sie der Anleitung für die Einrichtung von C# auf der Seite „Clientbibliotheken“ und rufen Sie dann die Video Intelligence-Referenzdokumentation für .NET
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 Bitte folgen Sie der Anleitung für die Einrichtung von Ruby auf der Seite „Clientbibliotheken“ und rufen Sie dann die Video Intelligence-Referenzdokumentation für Ruby
Objekt-Tracking für Video aus einer lokalen Datei anfordern
Die folgenden Beispiele zeigen Objekt-Tracking für eine lokal gespeicherte Datei.
REST
Prozessanfrage senden
Wenn Sie in einer lokalen Videodatei Anmerkungen erstellen möchten, codieren Sie den Inhalt der Videodatei mit Base64.
Fügen Sie den Base64-codierten Inhalt in das Feld inputContent
der Anfrage ein.
Informationen zum Base64-Codieren des Inhalts einer Videodatei finden Sie unter Base64-Codierung.
Im Folgenden wird gezeigt, wie eine POST
-Anfrage an die Methode videos:annotate
gesendet wird. Im Beispiel wird das Zugriffstoken für ein Dienstkonto verwendet, das mit der Google Cloud CLI für das Projekt eingerichtet wurde. Für
Anleitung zum Installieren der Google Cloud CLI, Einrichten eines Projekts mit einem Dienst
und zum Abrufen eines Zugriffstokens
Kurzanleitung zu Video Intelligence
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- inputContent: BASE64_ENCODED_CONTENT
Beispiel:"UklGRg41AwBBVkkgTElTVAwBAABoZHJsYXZpaDgAAAA1ggAAxPMBAAAAAAAQCAA..."
- 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:
{ "inputContent": "BASE64_ENCODED_CONTENT", "features": ["OBJECT_TRACKING"] }
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 folgende Beispiel 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.
Ergebnisse abrufen
Senden Sie eine GET
mit dem vom Aufruf an videos:annotate
zurückgegebenen Vorgangsnamen, wie im folgenden Beispiel gezeigt, um die Ergebnisse Ihrer Anfrage zu erhalten.
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:
Go
Java
Node.js
Richten Sie Standardanmeldedaten für Anwendungen ein, um sich bei Video Intelligence zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Python
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: Bitte folgen Sie der Anleitung zur Einrichtung von PHP auf der Seite „Clientbibliotheken“ und rufen Sie dann die Video Intelligence-Referenzdokumentation für PHP
Ruby Bitte folgen Sie der Anleitung für die Einrichtung von Ruby auf der Seite „Clientbibliotheken“ und rufen Sie dann die Video Intelligence-Referenzdokumentation für Ruby