Unterstützte Modelle und Schemas

Wenn Sie Objektkontext-Anreicherungen konfigurieren, wählen Sie aus, welche Machine-Learning-Modelle Ihre gespeicherten Objekte analysieren sollen. Jedes Modell wertet geeignete Bilder oder PDF-Dokumente aus und hängt strukturierte Metadaten direkt an Ihre Cloud Storage-Objekte an.

Auf dieser Seite werden die einzelnen unterstützten Modelle, die jeweiligen Teilnahmevoraussetzungen und das Ausgabeschema beschrieben, damit Sie Anreicherungsmetadaten in BigQuery oder über eine API parsen und abfragen können.

Beziehung zwischen Modellen und Objektkontext-Anreicherungen

Sie aktivieren Modelle, indem Sie eine Featurekonfiguration (FeatureConfig) erstellen, in der angegeben wird, welche Buckets gescannt und welche Modelle ausgeführt werden sollen. Während der asynchronen Verarbeitung wertet Cloud Storage geeignete Objekte mithilfe der von Ihnen ausgewählten Modelle aus und generiert strukturierte JSON-Metadaten, die als Objektkontext-Anreicherung bezeichnet werden.

Jedes Modell erzeugt eine dedizierte JSON-Nutzlast, die Cloud Storage direkt als von Google verwalteten Objektkontext unter dem Attribut contexts.custom an das Objekt anhängt. Jede Nutzlast wird durch einen eindeutigen Kontextschlüssel mit dem Präfix google:annotation: identifiziert.

Je nach Workflow können Sie diese Metadaten auf zwei Arten nutzen:

  • Einzelne Objekte prüfen: Rufen Sie Anreicherungen für ein bestimmtes Objekt mithilfe von Objekt-APIs ab, z. B. mit der Methode viewFullContext (Vorschau).
  • Umfangreiche Analysen: Fragen Sie angereicherte Metadaten für alle Objekte in einem Bucket mithilfe von Storage Insights-Datasets und Standard-SQL in BigQuery ab.

Gesichtserkennung

Verwenden Sie das Modell face-detector, um menschliche Gesichter in gespeicherten Bildern zu erkennen. Das Modell erkennt Begrenzungspolygone für ganze Köpfe und einzelne Gesichter und lokalisiert 36 Gesichtsmerkmale wie Augen, Nase und Mund. Außerdem werden die Winkel der Kopfausrichtung wie Rollen, Schwenken und Neigen berechnet und die Wahrscheinlichkeit von emotionalen Ausdrücken bewertet.

Modelldetails

  • Modellname: face-detector
  • Kontextschlüssel: google:annotation:face-detector-v1
  • Zulässige Objekte: Bildobjekte mit einer Größe von maximal 20 MiB und einem unterstützten Content-Type-Wert von BMP, GIF, ICO, JPEG, PNG, TIFF oder WEBP.

Ausgabeschema

Die Modellausgabe ist ein JSON-Objekt mit modelName, modelVersion und einem faceAnnotationGroup mit einem Array von faceAnnotations. Wenn die Modellausführung fehlschlägt, enthält das JSON-Objekt ein error-Objekt anstelle von faceAnnotationGroup.

Feld Typ Bereich Beschreibung
modelName string – Der Name des Modells für maschinelles Lernen, das diese Anreicherung generiert hat.
modelVersion string – Die Version des Machine-Learning-Modells, mit dem diese Anreicherung generiert wurde.
faceAnnotationGroup object – Containerobjekt der obersten Ebene für Anreicherungen der Gesichtserkennung. Vorhanden, wenn die Modellausführung erfolgreich ist.
faceAnnotationGroup.faceAnnotations[] array – Eine Liste der im Bild erkannten Gesichter.
faceAnnotationGroup.faceAnnotations[].boundingPoly object – Der BoundingPoly, der den gesamten Kopf und das Gesicht umschließt, skaliert auf die ursprünglichen Bildabmessungen.
faceAnnotationGroup.faceAnnotations[].faceDetectionBoundingPoly object – Die BoundingPoly für die Gesichtserkennung. Enger als boundingPoly, umschließt nur die Haut und sichtbare Gesichtszüge.
faceAnnotationGroup.faceAnnotations[].landmarks[] array – Eine Liste der erkannten FaceLandmark-Objekte, die bestimmte Gesichtsmerkmale darstellen.
faceAnnotationGroup.faceAnnotations[].rollAngle number -180 bis 180 Drehung des Zifferblatts im oder gegen den Uhrzeigersinn in Grad.
faceAnnotationGroup.faceAnnotations[].panAngle number -180 bis 180 Horizontaler Winkel, in dem das Gesicht nach links oder rechts zeigt, in Grad.
faceAnnotationGroup.faceAnnotations[].tiltAngle number -180 bis 180 Vertikaler Neigungswinkel, in dem das Gesicht nach oben oder unten zeigt, in Grad.
faceAnnotationGroup.faceAnnotations[].detectionConfidence number 0 bis 1 (0% bis 100%) Konfidenzwert für die gesamte Gesichtserkennung.
faceAnnotationGroup.faceAnnotations[].landmarkingConfidence number 0 bis 1 (0% bis 100%) Konfidenzwert für die Positionierung von Gesichtsmerkmalen.
faceAnnotationGroup.faceAnnotations[].joyProbability number 0 bis 1 (0% bis 100%) Wahrscheinlichkeit, dass das Gesicht Freude ausdrückt.
faceAnnotationGroup.faceAnnotations[].sorrowProbability number 0 bis 1 (0% bis 100%) Wahrscheinlichkeit, dass das Gesicht Trauer ausdrückt.
faceAnnotationGroup.faceAnnotations[].angerProbability number 0 bis 1 (0% bis 100%) Wahrscheinlichkeit, dass das Gesicht Wut ausdrückt.
faceAnnotationGroup.faceAnnotations[].surpriseProbability number 0 bis 1 (0% bis 100%) Wahrscheinlichkeit, dass das Gesicht Überraschung ausdrückt.
faceAnnotationGroup.faceAnnotations[].underExposedProbability number 0 bis 1 (0% bis 100%) Wahrscheinlichkeit, dass das Gesicht im Bild unterbelichtet ist.
faceAnnotationGroup.faceAnnotations[].blurredProbability number 0 bis 1 (0% bis 100%) Wahrscheinlichkeit, dass das Gesicht im Bild unscharf ist.
faceAnnotationGroup.faceAnnotations[].headwearProbability number 0 bis 1 (0% bis 100%) Wahrscheinlichkeit, dass die Person eine Kopfbedeckung wie einen Hut oder eine Mütze trägt.
error object – Ein google.rpc.Status-Objekt, das code und message enthält. Wird nur ausgefüllt, wenn die Modellausführung fehlschlägt.

BoundingPoly

Das Objekt BoundingPoly stellt ein Begrenzungspolygon dar, das ein erkanntes Bildmerkmal umschließt.

Feld Typ Bereich Beschreibung
vertices[] array – Koordinaten des Begrenzungspolygons mit absoluten Pixel-Vertex-Objekten.
normalizedVertices[] array – Koordinaten des Begrenzungspolygons mit relativen NormalizedVertex-Objekten, skaliert von 0 bis 1.

Vertex

Das Vertex-Objekt stellt einen 2D-Koordinatenpunkt dar, der auf die ursprünglichen Bildabmessungen skaliert ist.

Feld Typ Bereich Beschreibung
x integer 0 oder höher Horizontale X-Koordinate in Pixeln vom linken Rand.
y integer 0 oder höher Vertikale Y-Koordinate in Pixeln von der Oberkante.

NormalizedVertex

Das NormalizedVertex-Objekt stellt einen 2D-Koordinatenpunkt dar, der als Verhältnis zu den ursprünglichen Bildabmessungen ausgedrückt wird.

Feld Typ Bereich Beschreibung
x number 0 bis 1 Horizontale X-Koordinate relativ zur Bildbreite, wobei 0.0 der linke Rand und 1.0 der rechte Rand ist.
y number 0 bis 1 Vertikale Y-Koordinate relativ zur Bildhöhe, wobei 0.0 die obere Kante und 1.0 die untere Kante ist.

FaceLandmark

Das Objekt FaceLandmark stellt eine bestimmte markante Stelle dar, die in einem Gesicht erkannt wurde.

Feld Typ Bereich Beschreibung
type enum Siehe Landmarkentyp. Das spezifische erkannte Gesichtsmerkmal.
position object – Die 3D-Position der Sehenswürdigkeit.

Markierungstyp

Das Modell erkennt 36 spezifische Gesichtsmerkmale:

  • TYPE_UNSPECIFIED
  • LEFT_EYE
  • RIGHT_EYE
  • LEFT_OF_LEFT_EYEBROW
  • RIGHT_OF_LEFT_EYEBROW
  • LEFT_OF_RIGHT_EYEBROW
  • RIGHT_OF_RIGHT_EYEBROW
  • MIDPOINT_BETWEEN_EYES
  • NOSE_TIP
  • UPPER_LIP
  • LOWER_LIP
  • MOUTH_LEFT
  • MOUTH_RIGHT
  • MOUTH_CENTER
  • NOSE_BOTTOM_RIGHT
  • NOSE_BOTTOM_LEFT
  • NOSE_BOTTOM_CENTER
  • LEFT_EYE_TOP_BOUNDARY
  • LEFT_EYE_RIGHT_CORNER
  • LEFT_EYE_BOTTOM_BOUNDARY
  • LEFT_EYE_LEFT_CORNER
  • RIGHT_EYE_TOP_BOUNDARY
  • RIGHT_EYE_RIGHT_CORNER
  • RIGHT_EYE_BOTTOM_BOUNDARY
  • RIGHT_EYE_LEFT_CORNER
  • LEFT_EYEBROW_UPPER_MIDPOINT
  • RIGHT_EYEBROW_UPPER_MIDPOINT
  • LEFT_EAR_TRAGION
  • RIGHT_EAR_TRAGION
  • LEFT_EYE_PUPIL
  • RIGHT_EYE_PUPIL
  • FOREHEAD_GLABELLA
  • CHIN_GNATHION
  • CHIN_LEFT_GONION
  • CHIN_RIGHT_GONION
  • LEFT_CHEEK_CENTER
  • RIGHT_CHEEK_CENTER

Position

Das Position-Objekt stellt die 3D-Koordinaten eines Gesichtsmerkmals dar.

Feld Typ Bereich Beschreibung
x number – Horizontale X-Koordinate.
y number – Vertikale Y-Koordinate.
z number – Tiefenkoordinate relativ zur Gesichtsebene, wobei kleinere Werte näher an der Kamera sind.

Beispielausgabe:

{
  "modelName": "face-detector",
  "modelVersion": "v1",
  "faceAnnotationGroup": {
    "faceAnnotations": [
      {
        "boundingPoly": {
          "vertices": [
            { "x": 1079, "y": 148 },
            { "x": 2152, "y": 148 },
            { "x": 2152, "y": 1396 },
            { "x": 1079, "y": 1396 }
          ],
          "normalizedVertices": [
            { "x": 0.35, "y": 0.12 },
            { "x": 0.70, "y": 0.12 },
            { "x": 0.70, "y": 0.95 },
            { "x": 0.35, "y": 0.95 }
          ]
        },
        "faceDetectionBoundingPoly": {
          "vertices": [
            { "x": 1190, "y": 427 },
            { "x": 2037, "y": 427 },
            { "x": 2037, "y": 1285 },
            { "x": 1190, "y": 1285 }
          ]
        },
        "landmarks": [
          {
            "type": "LEFT_EYE",
            "position": { "x": 1368.8, "y": 737.6, "z": 0.0016 }
          },
          {
            "type": "RIGHT_EYE",
            "position": { "x": 1659.2, "y": 755.1, "z": -116.4 }
          }
        ],
        "rollAngle": 1.959,
        "panAngle": -21.954,
        "tiltAngle": -2.267,
        "detectionConfidence": 0.98,
        "landmarkingConfidence": 0.61,
        "joyProbability": 0.18,
        "headwearProbability": 0.80
      }
    ]
  }
}

Objekterkennung

Verwenden Sie das Modell object-detector, um mehrere unterschiedliche Objekte in einem Bild zu erkennen und zu verfolgen. Für jedes identifizierte Objekt liefert das Modell einen Entitätsnamen, eine Knowledge Graph-Entitäts-ID (knowledgeGraphId), einen Konfidenzwert und Begrenzungskoordinaten.

Modelldetails

  • Modellname: object-detector
  • Kontextschlüssel: google:annotation:object-detector-v1
  • Zulässige Objekte: Bildobjekte mit einer Größe von maximal 20 MiB und einem unterstützten Content-Type-Wert von BMP, GIF, ICO, JPEG, PNG, TIFF oder WEBP.

Ausgabeschema

Das Modell gibt ein JSON-Objekt mit modelName, modelVersion und einem objectAnnotationGroup mit einem Array von objectAnnotations aus. Wenn die Modellausführung fehlschlägt, enthält das JSON-Objekt ein error-Objekt anstelle von objectAnnotationGroup.

Feld Typ Bereich Beschreibung
modelName string – Der Name des Modells für maschinelles Lernen, das diese Anreicherung generiert hat.
modelVersion string – Die Version des Machine-Learning-Modells, mit dem diese Anreicherung generiert wurde.
objectAnnotationGroup object – Containerobjekt der obersten Ebene für Anreicherungen zur Objekterkennung. Vorhanden, wenn die Modellausführung erfolgreich ist.
objectAnnotationGroup.objectAnnotations[] array – Eine Liste der im Bild erkannten Objekte.
objectAnnotationGroup.objectAnnotations[].knowledgeGraphId string – Die Google Knowledge Graph-Entitäts-ID für das erkannte Objekt.
objectAnnotationGroup.objectAnnotations[].name string – Der Name oder das Label des erkannten Objekts, z. B. "Person" oder "Chair".
objectAnnotationGroup.objectAnnotations[].score number 0 bis 1 (0% bis 100%) Konfidenzwert für die Objekterkennung.
objectAnnotationGroup.objectAnnotations[].boundingPoly object – Der BoundingPoly um das Objekt, der Pixelkoordinaten (vertices) und normalisierte Koordinaten (normalizedVertices) enthält.
error object – Ein google.rpc.Status-Objekt, das code und message enthält. Wird nur ausgefüllt, wenn die Modellausführung fehlschlägt.

Beispielausgabe:

{
  "modelName": "object-detector",
  "modelVersion": "v1",
  "objectAnnotationGroup": {
    "objectAnnotations": [
      {
        "knowledgeGraphId": "/m/01g317",
        "name": "Person",
        "score": 0.89,
        "boundingPoly": {
          "normalizedVertices": [
            { "x": 0.1, "y": 0.15 },
            { "x": 0.2, "y": 0.15 },
            { "x": 0.2, "y": 0.3 },
            { "x": 0.1, "y": 0.3 }
          ]
        }
      }
    ]
  }
}

Allgemeine Bildbeschriftung

Verwenden Sie das Modell label-detector, um beschreibende Labels, Keywords und allgemeine semantische Kategorien für Bilder zu generieren. Das Modell identifiziert allgemeine Entitäten, Landschaften, Aktivitäten und Orte wie Landscape, Urban oder Night, sodass Ihre visuellen Assets durchsuchbar und katalogisierbar werden.

Modelldetails

  • Modellname: label-detector
  • Kontextschlüssel: google:annotation:label-detector-v1
  • Zulässige Objekte: Bildobjekte mit einer Größe von maximal 20 MiB und einem unterstützten Content-Type-Wert von BMP, GIF, ICO, JPEG, PNG, TIFF oder WEBP.

Ausgabeschema

Die Modellausgabe ist ein JSON-Objekt mit modelName, modelVersion und einem labelAnnotationGroup mit einem Array von labelAnnotations. Wenn die Modellausführung fehlschlägt, enthält das JSON-Objekt ein error-Objekt anstelle von labelAnnotationGroup.

Feld Typ Bereich Beschreibung
modelName string – Der Name des Modells für maschinelles Lernen, das diese Anreicherung generiert hat.
modelVersion string – Die Version des Machine-Learning-Modells, mit dem diese Anreicherung generiert wurde.
labelAnnotationGroup object – Containerobjekt der obersten Ebene für Anreicherungen von Bildlabels. Vorhanden, wenn die Modellausführung erfolgreich ist.
labelAnnotationGroup.labelAnnotations[] array – Eine Liste der erkannten Labels und Kategorien.
labelAnnotationGroup.labelAnnotations[].knowledgeGraphId string – Die Google Knowledge Graph-Entitäts-ID für das Label.
labelAnnotationGroup.labelAnnotations[].description string – Textbeschreibung oder Labelname für die erkannte Entität.
labelAnnotationGroup.labelAnnotations[].score number 0 bis 1 (0% bis 100%) Konfidenzwert für das Label.
labelAnnotationGroup.labelAnnotations[].topicality number 0 bis 1 (0% bis 100%) Relevanz des Labels für das Hauptmotiv des Bildes, wobei höhere Werte auf eine größere Bedeutung hinweisen.
error object – Ein google.rpc.Status-Objekt, das code und message enthält. Wird nur ausgefüllt, wenn die Modellausführung fehlschlägt.

Beispielausgabe:

{
  "modelName": "label-detector",
  "modelVersion": "v1",
  "labelAnnotationGroup": {
    "labelAnnotations": [
      {
        "knowledgeGraphId": "/m/01d74z",
        "description": "Night",
        "score": 0.92,
        "topicality": 0.19
      }
    ]
  }
}

Erkennung expliziter Inhalte

Mit dem Modell content-safety können Sie hochgeladene Bilder auf sensible, explizite oder unangemessene Inhalte prüfen. Das Modell bewertet Bilder anhand der Google-Sicherheitsrichtlinien. Es wird die Wahrscheinlichkeit von nicht jugendfreien, gewaltverherrlichenden und anderen sensiblen Inhalten bewertet, um Sie bei der Automatisierung von Workflows zur Inhaltsmoderation zu unterstützen.

Modelldetails

  • Modellname: content-safety
  • Kontextschlüssel: google:annotation:content-safety-v1
  • Zulässige Objekte: Bildobjekte mit einer Größe von maximal 20 MiB und einem unterstützten Content-Type-Wert von BMP, GIF, ICO, JPEG, PNG, TIFF oder WEBP.

Ausgabeschema

Das Modell gibt ein JSON-Objekt aus, das modelName, modelVersion und ein contentSafetyAnnotation-Objekt mit Wahrscheinlichkeitsbewertungen enthält. Wenn die Modellausführung fehlschlägt, enthält das JSON-Objekt ein error-Objekt anstelle von contentSafetyAnnotation.

Feld Typ Werte / Bereich Beschreibung
modelName string – Der Name des Modells für maschinelles Lernen, das diese Anreicherung generiert hat.
modelVersion string – Die Version des Machine-Learning-Modells, mit dem diese Anreicherung generiert wurde.
contentSafetyAnnotation object – Containerobjekt auf oberster Ebene für Ergebnisse der Inhaltsanalyse. Vorhanden, wenn die Modellausführung erfolgreich ist.
contentSafetyAnnotation.adultContentLikelihood string VERY_UNLIKELY: UNLIKELY, POSSIBLE, LIKELY, VERY_LIKELY Wahrscheinlichkeit, dass das Bild Inhalte nur für Erwachsene enthält.
contentSafetyAnnotation.violentContentLikelihood string VERY_UNLIKELY: UNLIKELY, POSSIBLE, LIKELY, VERY_LIKELY Wahrscheinlichkeit, dass das Bild Gewalt darstellt.
error object – Ein google.rpc.Status-Objekt, das code und message enthält. Wird nur ausgefüllt, wenn die Modellausführung fehlschlägt.

Beispielausgabe:

{
  "modelName": "content-safety",
  "modelVersion": "v1",
  "contentSafetyAnnotation": {
    "adultContentLikelihood": "VERY_UNLIKELY",
    "violentContentLikelihood": "UNLIKELY"
  }
}

PDF-Klassifizierung

Verwenden Sie das Modell pdf-classification, um PDF-Dokumente automatisch anhand ihrer Text- und visuellen Struktur zu kategorisieren. Das Modell weist standardisierte hierarchische Kategorien für Unternehmen, Branchen und Themen zu. Diese Kategorien helfen Ihnen, große Dokumentensammlungen zu organisieren, das Abrufen von generativer KI zu fundieren und Dokumente an nachgelagerte Workflows weiterzuleiten.

Modelldetails

  • Modellname: pdf-classification
  • Kontextschlüssel: google:annotation:pdf-classification-v1
  • Zulässige Objekte: PDF-Dokumentobjekte mit einer Größe von maximal 20 MiB und einem Content-Type-Wert von application/pdf.

Ausgabeschema

Die Modellausgabe ist ein JSON-Objekt, das modelName, modelVersion und ein pdfClassificationCategoryList mit einem Array klassifizierter categories enthält. Wenn die Modellausführung fehlschlägt, enthält das JSON-Objekt ein error-Objekt anstelle von pdfClassificationCategoryList.

Feld Typ Bereich Beschreibung
modelName string – Der Name des Modells für maschinelles Lernen, das diese Anreicherung generiert hat.
modelVersion string – Die Version des Machine-Learning-Modells, mit dem diese Anreicherung generiert wurde.
pdfClassificationCategoryList object – Containerobjekt der obersten Ebene für PDF-Klassifizierungsergebnisse. Vorhanden, wenn die Modellausführung erfolgreich ist.
pdfClassificationCategoryList.categories[] array – Eine Liste der erkannten Klassifizierungskategorien.
pdfClassificationCategoryList.categories[].label string PDF-Klassifizierungskategorien Der hierarchische Kategoriepfad, z. B. "/Finance/Accounting & Auditing/Tax Preparation & Planning".
pdfClassificationCategoryList.categories[].score number 0 bis 1 (0% bis 100%) Konfidenzwert für die zugewiesene Kategorie.
error object – Ein google.rpc.Status-Objekt, das code und message enthält. Wird nur ausgefüllt, wenn die Modellausführung fehlschlägt.

Unterstützte Kategorien

Das Modell pdf-classification weist PDF-Dokumenten standardisierte hierarchische Inhaltskategorien zu.

Kategorien sind hierarchisch strukturiert. Schrägstriche (/) trennen die Kategorieebenen. Sie beginnen mit einer allgemeinen vertikalen Kategorie auf oberster Ebene und werden dann in spezifische Unterkategorien unterteilt:

  • Top-Level-Branchen: Allgemeine Themenbereiche wie /Finance, /Law & Government oder /Computers & Electronics.
  • Unterkategorien: Bestimmte Themen innerhalb einer Branche, z. B. /Finance/Accounting & Auditing/Tax Preparation & Planning.
  • /Other-Unterkategorien: Kategorien für Inhalte, die der übergeordneten Kategorie entsprechen, aber nicht in eine bestimmte untergeordnete Kategorie passen.

Wenn ein Dokument mehrere unterschiedliche Themen behandelt, kann das Modell einem einzelnen PDF-Objekt mehrere Kategorien mit hoher Konfidenz zuweisen.

Kategorien der obersten Ebene

Das Modell klassifiziert PDF-Dokumente in 27 Kategorien der obersten Ebene:

  • /Adult
  • /Arts & Entertainment
  • /Autos & Vehicles
  • /Beauty & Fitness
  • /Books & Literature
  • /Business & Industrial
  • /Computers & Electronics
  • /Finance
  • /Food & Drink
  • /Games
  • /Health
  • /Hobbies & Leisure
  • /Home & Garden
  • /Internet & Telecom
  • /Jobs & Education
  • /Law & Government
  • /News
  • /Online Communities
  • /People & Society
  • /Pets & Animals
  • /Real Estate
  • /Reference
  • /Science
  • /Sensitive Subjects
  • /Shopping
  • /Sports
  • /Travel & Transportation

Unterkategorien folgen dem hierarchischen Pfad /Top-Level-Vertical/Subcategory mit optionalen tieferen Ebenen unter diesen Kategorien der obersten Ebene. Eine vollständige Liste aller unterstützten Kategoriepfade finden Sie unter PDF-Klassifizierungskategorien.

Beispielausgabe:

{
  "modelName": "pdf-classification",
  "modelVersion": "v1",
  "pdfClassificationCategoryList": {
    "categories": [
      {
        "label": "/Finance/Accounting & Auditing/Tax Preparation & Planning",
        "score": 0.85
      },
      {
        "label": "/Business & Industrial/Printing & Publishing/Document & Printing Services",
        "score": 0.25
      }
    ]
  }
}

Nächste Schritte