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 Funktionskonfiguration (FeatureConfig) erstellen, in der angegeben wird, welche Buckets gescannt und welche Modelle ausgeführt werden sollen. Bei der asynchronen Verarbeitung wertet Cloud Storage geeignete Objekte mit den von Ihnen ausgewählten Modellen aus und generiert strukturierte JSON-Metadaten, die als Objektkontext-Anreicherungen 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. Ein eindeutiger Kontextschlüssel mit dem Präfix google:annotation: identifiziert jede Nutzlast.

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

Gesichtserkennung

Mit dem face-detector-Modell können Sie menschliche Gesichter in gespeicherten Bildern 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 Machine-Learning-Modells, das diese Erweiterung 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 und 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 Gesichtserkennung insgesamt.
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 auf dem Bild unkenntlich gemacht wird.
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 Begrenzungs-Polygons 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 aus.
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 der obere und 1.0 der untere Rand ist.

FaceLandmark

Das Objekt FaceLandmark stellt eine bestimmte Gesichts-Landmark dar, die in einem Gesicht erkannt wurde.

Feld Typ Bereich Beschreibung
type enum Siehe Landmarkentyp. Das spezifische erkannte Gesichtsmerkmal.
position object – Das 3D-Position des Wahrzeichens.

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

Mit dem Modell object-detector können Sie mehrere unterschiedliche Objekte in einem Bild erkennen und 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 Ausführung des Modells fehlschlägt, enthält das JSON-Objekt ein error-Objekt anstelle von objectAnnotationGroup.

Feld Typ Bereich Beschreibung
modelName string – Der Name des Machine-Learning-Modells, das diese Erweiterung 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. Wird angezeigt, wenn die Ausführung des Modells 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 mit code und message. 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 Einheiten, Landschaften, Aktivitäten und Orte wie Landscape, Urban oder Night, sodass Ihre visuellen Assets durchsuchbar und katalogisierbar sind.

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 Machine-Learning-Modells, das diese Erweiterung 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. Wird angezeigt, wenn die Ausführung des Modells 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 mit code und message. 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 hochgeladene Bilder auf sensible, explizite oder unangemessene Inhalte geprüft werden. 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

Die Modellausgabe ist ein JSON-Objekt mit modelName, modelVersion und einem contentSafetyAnnotation-Objekt mit Wahrscheinlichkeitsbewertungen. Wenn die Ausführung des Modells fehlschlägt, enthält das JSON-Objekt ein error-Objekt anstelle von contentSafetyAnnotation.

Feld Typ Werte / Bereich Beschreibung
modelName string – Der Name des Machine-Learning-Modells, das diese Erweiterung 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 mit code und message. Wird nur ausgefüllt, wenn die Modellausführung fehlschlägt.

Beispielausgabe:

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

PDF-Klassifizierung

Mit dem pdf-classification-Modell können Sie PDF-Dokumente automatisch anhand ihrer textlichen und visuellen Struktur 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 Ausführung des Modells fehlschlägt, enthält das JSON-Objekt ein error-Objekt anstelle von pdfClassificationCategoryList.

Feld Typ Bereich Beschreibung
modelName string – Der Name des Machine-Learning-Modells, das diese Erweiterung 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. Wird angezeigt, wenn die Ausführung des Modells erfolgreich ist.
pdfClassificationCategoryList.categories[] array – Eine Liste der erkannten Klassifizierungskategorien.
pdfClassificationCategoryList.categories[].label string Kategorien für die PDF-Klassifizierung 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 pdf-classification-Modell weist PDF-Dokumenten standardisierte hierarchische Inhaltskategorien zu.

Kategorien sind hierarchisch strukturiert. Schrägstriche (/) trennen die Kategorieebenen. Sie beginnen mit einer breiten vertikalen Kategorie der obersten Ebene und werden dann auf bestimmte Unterkategorien eingegrenzt:

  • 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