Anmerkung für ein Lager-Asset erstellen

Media-Objekte (asset-Ressourcen) in einem Warehouse (corpus) enthalten Metadaten und annotation-Ressourcen. Diese annotation-Ressourcen stellen eine Schlüssel/Wert-Zuordnung von Inhalten in einem asset dar.

Warehouse-Asset-Annotation erstellen

Sie müssen die folgenden Schritte ausführen, bevor Sie eine Annotation für ein Asset erstellen können:

  • asset-Ressource in einem Warehouse erstellen
  • dataSchema mit demselben Schlüssel erstellen, um den Datentyp des annotation-Werts anzugeben

Einer annotation kann optional eine zeitliche Partition zugeordnet sein. Wenn eine annotation beispielsweise auf das gesamte asset angewendet wird, können Sie die zugehörige zeitliche Partition weglassen. Wenn eine annotation nur auf einen bestimmten Teil eines Video-asset angewendet wird, können Sie beim Erstellen der annotation den Zeitraum des asset angeben.

Annotation ohne zeitliche Partition erstellen

Wenn eine Annotation auf das gesamte Video-asset angewendet wird, müssen Sie keine zeitliche Partition angeben. Verwenden Sie das folgende Beispiel, um eine vom Nutzer bereitgestellte annotation für ein ganzes asset zu erstellen (kein Zeitraum für das Video angegeben).

REST

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • REGIONALIZED_ENDPOINT: Der Endpunkt kann ein Präfix enthalten, das mit der LOCATION_ID übereinstimmt, z. B. europe-west4-. Weitere Informationen zu regionalisierten Endpunkten.
  • PROJECT_NUMBER: Ihre Google Cloud Projektnummer.
  • LOCATION_ID: Die Region, in der Sie Agent Platform Vision verwenden. Beispiel: us-central1, europe-west4. Verfügbare Regionen ansehen.
  • CORPUS_ID: Die ID Ihres Ziel-Corpus.
  • ASSET_ID: Die ID Ihres Ziel-Assets.
  • ANNOTATION_ID: (Optional) Ein vom Nutzer angegebener Wert für die Annotations-ID. In dieser Anfrage wird der Wert in der Form zur Anfrage-URL hinzugefügt:
    • https://ENDPOINT/v1/[...]/corpora/CORPUS_ID/assets/ASSET_ID/annotations?annotation_id=ANNOTATION_ID

HTTP-Methode und URL:

POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID/annotations

JSON-Text der Anfrage:

{
  "user_specified_annotation":{
    "key": "camera-location",
    "value": {
      "str_value": "Sunnyvale"
    }
  }
}

Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:

curl

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID/annotations"

PowerShell

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID/annotations" | Select-Object -Expand Content

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID/annotations/ANNOTATION_ID",
  "userSpecifiedAnnotation": {
    "key": "camera-location",
    "value": {
      "strValue": "Sunnyvale"
    }
  }
}

Annotation mit zeitlicher Partition erstellen

Wenn eine Annotation nur auf einen Teil eines Video-asset angewendet wird, können Sie einen Zeitraum für den Zielvideobereich angeben. Verwenden Sie das folgende Beispiel, um eine vom Nutzer bereitgestellte annotation für einen bestimmten Zeitraum eines Video-asset mit einer zeitlichen Partition zu erstellen.

REST

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • REGIONALIZED_ENDPOINT: Der Endpunkt kann ein Präfix enthalten, das mit der LOCATION_ID übereinstimmt, z. B. europe-west4-. Weitere Informationen zu regionalisierten Endpunkten.
  • PROJECT_NUMBER: Ihre Google Cloud Projektnummer.
  • LOCATION_ID: Die Region, in der Sie Agent Platform Vision verwenden. Beispiel: us-central1, europe-west4. Verfügbare Regionen ansehen.
  • CORPUS_ID: Die ID Ihres Ziel-Corpus.
  • ASSET_ID: Die ID Ihres Ziel-Assets.
  • ANNOTATION_ID: (Optional) Ein vom Nutzer angegebener Wert für die Annotations-ID. In dieser Anfrage wird der Wert in der Form zur Anfrage-URL hinzugefügt:
    • https://ENDPOINT/v1/[...]/corpora/CORPUS_ID/assets/ASSET_ID/annotations?annotation_id=ANNOTATION_ID

HTTP-Methode und URL:

POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID/annotations

JSON-Text der Anfrage:

{
  "user_specified_annotation": {
    "key": "object-detected",
    "value": {
      "str_value": "cat"
    },
    "partition": {
      "temporal_partition": {
        "start_time": {
          "seconds": "1630464728"
        },
        "end_time": {
          "seconds": "1630464729"
        }
      }
    }
  }
}

Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:

curl

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID/annotations"

PowerShell

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID/annotations" | Select-Object -Expand Content

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID/annotations/ANNOTATION_ID",
  "userSpecifiedAnnotation": {
    "key": "object-detected",
    "value": {
      "strValue": "cat"
    },
    "partition": {
      "temporalPartition": {
        "startTime": "2022-09-14T20:33:09Z",
        "endTime": "2022-09-14T20:33:39Z"
      }
    }
  }
}

Annotation aktualisieren (keine zeitliche Partition)

REST

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • REGIONALIZED_ENDPOINT: Der Endpunkt kann ein Präfix enthalten, das mit der LOCATION_ID übereinstimmt, z. B. europe-west4-. Weitere Informationen zu regionalisierten Endpunkten.
  • PROJECT_NUMBER: Ihre Google Cloud Projektnummer.
  • LOCATION_ID: Die Region, in der Sie Agent Platform Vision verwenden. Beispiel: us-central1, europe-west4. Verfügbare Regionen ansehen.
  • CORPUS_ID: Die ID Ihres Ziel-Corpus.
  • ASSET_ID: Die ID Ihres Ziel-Assets.
  • ANNOTATION_ID: Die ID Ihrer Ziel-Annotation.

HTTP-Methode und URL:

PATCH https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID/annotations/ANNOTATION_ID

JSON-Text der Anfrage:

{
 "user_specified_annotation":{
    "key": "camera-location",
    "value": {
      "str_value": "UPDATED_FIELD_VALUE"
    }
  }
}

Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:

curl

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID/annotations/ANNOTATION_ID"

PowerShell

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID/annotations/ANNOTATION_ID" | Select-Object -Expand Content

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID/annotations/ANNOTATION_ID",
  "userSpecifiedAnnotation": {
    "key": "camera-location",
    "value": {
      "strValue": "UPDATED_FIELD_VALUE"
    }
  }
}