- Représentation JSON
- FaceAnnotation
- Landmark
- Type
- Position
- Likelihood
- EntityAnnotation
- LocationInfo
- Property
- LocalizedObjectAnnotation
- CustomEntityAnnotation
- TextAnnotation
- Page
- TextProperty
- DetectedLanguage
- DetectedBreak
- BreakType
- Block
- Paragraph
- Word
- Symbol
- BlockType
- Table
- TableRow
- TableCell
- KeyValuePair
- SafeSearchAnnotation
- ImageProperties
- DominantColorsAnnotation
- ColorInfo
- Color
- CropHintsAnnotation
- CropHint
- WebDetection
- WebEntity
- WebImage
- WebPage
- WebLabel
- ProductSearchResults
- Result
- GroupedResult
- ObjectAnnotation
- ImageAnnotationContext
- ImageQuality
- QualityOptimizationResult
- LocalizedBarcodeAnnotation
Réponse à une requête d'annotation d'images.
| Représentation JSON | |
|---|---|
{ "faceAnnotations": [ { object( |
|
| Champs | |
|---|---|
faceAnnotations[] |
Si ce champ est présent, la détection de visages a bien été effectuée. |
landmarkAnnotations[] |
Si ce champ est présent, la détection de points de repère a bien été effectuée. |
logoAnnotations[] |
Si ce champ est présent, la détection de logos a bien été effectuée. |
labelAnnotations[] |
Si ce champ est présent, la détection de thèmes a bien été effectuée. |
localizedObjectAnnotations[] |
Si ce champ est présent, la détection d'objets localisés a bien été effectuée. Les données sont triées par ordre de score de confiance décroissant. |
customLabelAnnotations[] |
Si ce champ est présent, l'annotation personnalisée a bien été effectuée. |
textAnnotations[] |
Si ce champ est présent, la détection de texte (OCR) a bien été effectuée. |
fullTextAnnotation |
Si ce champ est présent, la détection de texte (OCR) ou du texte d'un document (OCR) a bien été effectuée. Cette annotation fournit la hiérarchie structurelle du texte détecté par l'OCR. |
safeSearchAnnotation |
Si ce champ est présent, l'annotation de recherche sécurisée a bien été effectuée. |
imagePropertiesAnnotation |
Si ce champ est présent, les propriétés de l'image ont bien été extraites. |
cropHintsAnnotation |
Si ce champ est présent, les suggestions de cadrage ont bien été effectuées. |
webDetection |
Si ce champ est présent, la détection Web a bien été effectuée. |
productSearchResults |
Si ce champ est présent, la recherche de produits a bien été effectuée. |
error |
Si ce champ est défini, il présente le message d'erreur associé à l'opération. Notez que les annotations d'images préremplies sont assurément correctes, même lorsque |
context |
Si ce champ est présent, des informations contextuelles sont nécessaires pour comprendre d'où provient cette image. |
imageQualityAnnotation |
Si ce champ est présent, le calcul de qualité d'image a bien été effectué. |
objectAttributeAnnotations[] |
Si ce champ est présent, le calcul des attributs d'objets a bien été effectué. La valeur des attributs sera renseignée dans EntityAnnotation.properties. Exemple : objectAttributeAnnotations { properties { name: "color" value: "blue" confidence: 0.1 } properties { name: "color" value: "white" confidence: 0.2 } properties { name: "material" value: "silk" confidence: 0.3 } } |
qualityOptimizationResult |
Si ce champ est présent, l'optimisation de la qualité d'image a bien été effectuée. |
localizedBarcodeAnnotations[] |
Si ce champ est présent, la détection de codes-barres localisés a bien été effectuée. |
FaceAnnotation
Objet d'annotation de visage contenant les résultats de la détection de visages.
| Représentation JSON | |
|---|---|
{ "boundingPoly": { object( |
|
| Champs | |
|---|---|
boundingPoly |
Polygone de délimitation autour du visage. Les coordonnées du cadre de délimitation sont à l'échelle de l'image d'origine. Le cadre de délimitation est agencé de manière à encadrer le visage conformément aux attentes humaines. Il s'appuie sur les résultats des points de repère. Il est possible qu'une ou plusieurs coordonnées x et/ou y ne soient pas générées dans le champ |
fdBoundingPoly |
Le polygone de délimitation
(détection de visages). |
landmarks[] |
Points de repère détectés sur le visage. |
rollAngle |
Angle de rotation, indiquant la rotation du visage (sens des aiguilles d'une montre ou sens inverse) par rapport à l'alignement vertical de l'image sur l'axe perpendiculaire du visage. Plage [-180,180]. |
panAngle |
Angle de lacet, indiquant l'angle vers la gauche/droite vers lequel pointe le visage par rapport à l'axe vertical perpendiculaire de l'image. Plage [-180,180]. |
tiltAngle |
Angle d'inclinaison, indiquant l'angle vers le haut/bas vers lequel pointe le visage par rapport à l'axe horizontal de l'image. Plage [-180,180]. |
detectionConfidence |
Niveau de confiance de la détection. Plage [0, 1]. |
landmarkingConfidence |
Niveau de confiance des points de repère du visage. Plage [0, 1]. |
joyLikelihood |
Probabilité de joie. |
sorrowLikelihood |
Probabilité de tristesse. |
angerLikelihood |
Probabilité de colère. |
surpriseLikelihood |
Probabilité de surprise. |
underExposedLikelihood |
Probabilité de sous-exposition. |
blurredLikelihood |
Probabilité de flou. |
headwearLikelihood |
Probabilité de port d'accessoires. |
Landmark
Point de repère spécifique au visage (par exemple, une caractéristique du visage).
| Représentation JSON | |
|---|---|
{ "type": enum( |
|
| Champs | |
|---|---|
type |
Type de point de repère du visage. |
position |
Position du point de repère du visage. |
Type
Type de point de repère (caractéristique). La gauche et la droite sont définies du point de vue de l'observateur de l'image, sans tenir compte des projections miroir classiques des photos. Ainsi, LEFT_EYE correspond généralement à l'œil droit de la personne.
| Énumérations | |
|---|---|
UNKNOWN_LANDMARK |
Point de repère de visage inconnu détecté. Ne doit pas être rempli. |
LEFT_EYE |
Œil gauche. |
RIGHT_EYE |
Œil droit. |
LEFT_OF_LEFT_EYEBROW |
Côté gauche du sourcil gauche. |
RIGHT_OF_LEFT_EYEBROW |
Côté droit du sourcil gauche. |
LEFT_OF_RIGHT_EYEBROW |
Côté gauche du sourcil droit. |
RIGHT_OF_RIGHT_EYEBROW |
Côté droit du sourcil droit. |
MIDPOINT_BETWEEN_EYES |
Point médian entre les yeux. |
NOSE_TIP |
Bout du nez. |
UPPER_LIP |
Lèvre supérieure. |
LOWER_LIP |
Lèvre inférieure. |
MOUTH_LEFT |
Côté gauche de la bouche. |
MOUTH_RIGHT |
Côté droit de la bouche. |
MOUTH_CENTER |
Centre de la bouche. |
NOSE_BOTTOM_RIGHT |
Nez, en bas à droite. |
NOSE_BOTTOM_LEFT |
Nez, en bas à gauche. |
NOSE_BOTTOM_CENTER |
Nez, en bas au centre. |
LEFT_EYE_TOP_BOUNDARY |
Œil gauche, limite supérieure. |
LEFT_EYE_RIGHT_CORNER |
Œil gauche, coin droit. |
LEFT_EYE_BOTTOM_BOUNDARY |
Œil gauche, limite inférieure. |
LEFT_EYE_LEFT_CORNER |
Œil gauche, coin gauche. |
RIGHT_EYE_TOP_BOUNDARY |
Œil droit, limite supérieure. |
RIGHT_EYE_RIGHT_CORNER |
Œil droit, coin droit. |
RIGHT_EYE_BOTTOM_BOUNDARY |
Œil droit, limite inférieure. |
RIGHT_EYE_LEFT_CORNER |
Œil droit, coin gauche. |
LEFT_EYEBROW_UPPER_MIDPOINT |
Sourcil gauche, point médian supérieur. |
RIGHT_EYEBROW_UPPER_MIDPOINT |
Sourcil droit, point médian supérieur. |
LEFT_EAR_TRAGION |
Tragus de l'oreille gauche. |
RIGHT_EAR_TRAGION |
Tragus de l'oreille droite. |
LEFT_EYE_PUPIL |
Pupille de l'œil gauche. |
RIGHT_EYE_PUPIL |
Pupille de l'œil droit. |
FOREHEAD_GLABELLA |
Glabelle. |
CHIN_GNATHION |
Gnathion du menton. |
CHIN_LEFT_GONION |
Gonion à gauche du menton. |
CHIN_RIGHT_GONION |
Gonion à droite du menton. |
Position
Position en 3D dans l'image, servant principalement pour les points de repère de la détection de visages. Une position valide doit contenir des coordonnées x et y. Les coordonnées de position sont à la même échelle que l'image d'origine.
| Représentation JSON | |
|---|---|
{ "x": number, "y": number, "z": number } |
|
| Champs | |
|---|---|
x |
Coordonnées X. |
y |
Coordonnées Y. |
z |
Coordonnées Z (ou profondeur). |
Likelihood
Représentation divisée en buckets selon le degré de probabilité, ce qui permet d'offrir aux clients des résultats très stables entre les mises à niveau de modèles.
| Énumérations | |
|---|---|
UNKNOWN |
Probabilité inconnue. |
VERY_UNLIKELY |
Il est très peu probable que l'image appartienne au secteur spécifié. |
UNLIKELY |
Il est peu probable que l'image appartienne au secteur spécifié. |
POSSIBLE |
Il est possible que l'image appartienne au secteur spécifié. |
LIKELY |
Il est probable que l'image appartienne au secteur spécifié. |
VERY_LIKELY |
Il est très probable que l'image appartienne au secteur spécifié. |
EntityAnnotation
Ensemble des caractéristiques d'entités détectées.
| Représentation JSON | |
|---|---|
{ "mid": string, "locale": string, "description": string, "score": number, "confidence": number, "topicality": number, "boundingPoly": { object( |
|
| Champs | |
|---|---|
mid |
ID d'entité opaque. Certains identifiants sont disponibles dans l'API Google Knowledge Graph Search. |
locale |
Code de langue des paramètres régionaux dans lequel la |
description |
Description textuelle de l'entité, exprimée dans sa langue |
score |
Score global du résultat. Plage [0, 1]. |
confidence |
Obsolète. Utilisez plutôt |
topicality |
Pertinence de l'étiquette ICA (Image Content Annotation) par rapport à l'image. Par exemple, la pertinence de l'entité "tour" est probablement plus élevée pour une image sur laquelle la "Tour Eiffel" a été détectée que pour une image contenant un imposant bâtiment à distance, même si la probabilité pour qu'une tour soit présente sur chaque image peut être identique. Plage [0, 1]. |
boundingPoly |
Zone de l'image à laquelle appartient cette entité. Champ non généré pour les fonctionnalités |
locations[] |
Informations sur l'emplacement de l'entité détectée. Plusieurs éléments |
properties[] |
Certaines entités peuvent inclure des champs |
LocationInfo
Informations sur l'emplacement de l'entité détectée.
| Représentation JSON | |
|---|---|
{
"latLng": {
object( |
|
| Champs | |
|---|---|
latLng |
Coordonnées de latitude et de longitude de l'emplacement. |
Property
Une Property est constituée d'une paire nom/valeur fournie par l'utilisateur.
| Représentation JSON | |
|---|---|
{ "name": string, "value": string, "uint64Value": string, "confidence": number, "mid": string } |
|
| Champs | |
|---|---|
name |
Nom de la propriété. |
value |
Valeur de la propriété. |
uint64Value |
Valeur des propriétés numériques. |
confidence |
Valeur comprise dans la plage [0..1]. Niveau de confiance de cette valeur de propriété. |
mid |
ID de valeur de propriété opaque. Certains identifiants sont disponibles dans l'API Google Knowledge Graph Search. Voici un exemple de propriété pour un blouson bleu : Property { name: 'color' value: 'blue' mid: '/m/01g5v' // For color blue } |
LocalizedObjectAnnotation
Ensemble d'objets détectés avec des cadres de délimitation.
| Représentation JSON | |
|---|---|
{
"mid": string,
"languageCode": string,
"name": string,
"score": number,
"boundingPoly": {
object( |
|
| Champs | |
|---|---|
mid |
ID d'objet conforme au champ "mid" d'EntityAnnotation. |
languageCode |
Le code de langue BCP-47 ("en-US" ou "sr-Latn", par exemple). Pour en savoir plus, consultez http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
name |
Nom d'objet, exprimé dans la langue correspondant au |
score |
Score du résultat. Plage [0, 1]. |
boundingPoly |
Zone de l'image à laquelle appartient cet objet. Ces informations doivent être renseignées. |
CustomEntityAnnotation
Une propriété CustomEntityAnnotation contient des annotations prédites à l'aide de modèles personnalisés Vision.
| Représentation JSON | |
|---|---|
{ "model": string, "label": string, "score": number } |
|
| Champs | |
|---|---|
model |
Identifie le modèle personnalisé utilisé pour créer cette annotation. Le format du nom du modèle est l'URL de ressource du mode personnalisé qui a été interrogé : |
label |
Étiquette prédite par le modèle personnalisé. |
score |
Score de confiance de l'étiquette donné par le modèle personnalisé. |
TextAnnotation
TextAnnotation contient une représentation structurée du texte extrait par l'OCR. La hiérarchie d'une structure de texte extraite par l'OCR se présente comme suit : TextAnnotation -> Page -> Block -> Paragraph -> Word -> Symbol (Page -> Bloc -> Paragraphe -> Mot -> Symbole). Chaque composant structurel, à partir de la page, peut également posséder ses propres propriétés. Les propriétés décrivent les langues détectées, les sauts, etc. Pour en savoir plus, consultez la définition du message TextAnnotation.TextProperty ci-dessous.
| Représentation JSON | |
|---|---|
{
"pages": [
{
object( |
|
| Champs | |
|---|---|
pages[] |
Liste des pages détectées par l'OCR. |
text |
Texte UTF-8 détecté sur les pages. |
Page
Page détectée par l'OCR.
| Représentation JSON | |
|---|---|
{ "property": { object( |
|
| Champs | |
|---|---|
property |
Informations supplémentaires détectées sur la page. |
width |
Largeur de la page. Pour les PDF, l'unité est le point. Pour les images (y compris au format TIFF), l'unité est exprimée en pixels. |
height |
Hauteur de la page. Pour les PDF, l'unité est le point. Pour les images (y compris au format TIFF), l'unité est exprimée en pixels. |
blocks[] |
Liste de blocs de texte, d'images, etc., sur la page. |
confidence |
Niveau de confiance des résultats de l'OCR sur la page. Plage [0, 1]. |
mergedText |
Ensemble du texte UTF-8 détecté sur cette page. Par défaut, ce champ n'est pas renvoyé, sauf indication contraire dans TextDetectionParams.page_filter. |
TextProperty
Informations supplémentaires détectées dans le composant structurel.
| Représentation JSON | |
|---|---|
{ "detectedLanguages": [ { object( |
|
| Champs | |
|---|---|
detectedLanguages[] |
Liste des langues détectées avec indice de confiance. |
detectedBreak |
Début ou fin d'un segment de texte détecté. |
DetectedLanguage
Langue détectée pour un composant structurel.
| Représentation JSON | |
|---|---|
{ "languageCode": string, "confidence": number } |
|
| Champs | |
|---|---|
languageCode |
Le code de langue BCP-47 ("en-US" ou "sr-Latn", par exemple). Pour en savoir plus, consultez http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
confidence |
Niveau de confiance concernant la langue détectée. Plage [0, 1]. |
DetectedBreak
Début ou fin détectés d'un composant structurel.
| Représentation JSON | |
|---|---|
{
"type": enum( |
|
| Champs | |
|---|---|
type |
Type de saut détecté. |
isPrefix |
La valeur est "true" si le saut est ajouté au début de l'élément. |
BreakType
Énumération indiquant le type de saut détecté. Nouvelle ligne, espace, etc.
| Énumérations | |
|---|---|
UNKNOWN |
Type d'étiquette de saut inconnu. |
SPACE |
Espace standard. |
SURE_SPACE |
Espace sûr (très large). |
EOL_SURE_SPACE |
Saut de ligne. |
HYPHEN |
Césure qui n'est pas présente dans le texte. Ce champ ne peut pas être utilisé avec SPACE, LEADER_SPACE ni LINE_BREAK. |
LINE_BREAK |
Saut de ligne qui termine un paragraphe. |
Block
Élément logique sur la page.
| Représentation JSON | |
|---|---|
{ "property": { object( |
|
| Champs | |
|---|---|
property |
Informations supplémentaires détectées pour le bloc. |
boundingBox |
Cadre de délimitation du bloc. Les sommets sont présentés dans l'ordre suivant : en haut à gauche, en haut à droite, en bas à droite et en bas à gauche. Lorsqu'une rotation du cadre de délimitation est détectée, elle est représentée autour de l'angle supérieur gauche en suivant l'ordre naturel de lecture du texte. Exemple :
L'ordre des sommets est toujours (0, 1, 2, 3). |
paragraphs[] |
Liste des paragraphes du bloc (s'il est de type texte). |
blockType |
Type de bloc détecté (texte, image, etc.) pour le bloc. |
confidence |
Niveau de confiance des résultats de l'OCR dans le bloc. Plage [0, 1]. |
table |
Table détectée pour le type de bloc TABLE. Par défaut, ce champ n'est pas renvoyé, sauf s'il est activé via TextDetectionParams.table_detection_options. Les |
keyValuePair |
Paire détectée pour le type de bloc KEY_VALUE_PAIR. Par défaut, ce champ n'est pas renvoyé, sauf si DocumentType est spécifié. |
mergedText |
Ensemble du texte UTF-8 détecté dans ce bloc. Par défaut, ce champ n'est pas renvoyé, sauf indication contraire dans TextDetectionParams.block_filter. |
Paragraph
Unité structurelle de texte représentant un certain nombre de mots dans un ordre particulier.
| Représentation JSON | |
|---|---|
{ "property": { object( |
|
| Champs | |
|---|---|
property |
Informations supplémentaires détectées pour le paragraphe. |
boundingBox |
Cadre de délimitation du paragraphe. Les sommets sont présentés dans l'ordre suivant : en haut à gauche, en haut à droite, en bas à droite et en bas à gauche. Lorsqu'une rotation du cadre de délimitation est détectée, elle est représentée autour de l'angle supérieur gauche en suivant l'ordre naturel de lecture du texte. Par exemple : * lorsque le texte est horizontal, il peut se présenter sous la forme suivante : 0----1 | | 3----2 * lorsqu'il a été pivoté de 180 degrés autour de l'angle supérieur gauche, il se présente sous la forme suivante : 2----3 | | 1----0 et l'ordre des sommets est toujours (0, 1, 2, 3). |
words[] |
Liste des mots du paragraphe. |
confidence |
Niveau de confiance des résultats de l'OCR pour le paragraphe. Plage [0, 1]. |
mergedText |
Ensemble du texte UTF-8 détecté dans ce paragraphe. Par défaut, ce champ n'est pas renvoyé, sauf indication contraire dans TextDetectionParams.paragraph_filter. |
Éléments textuels
Représentation d'un mot.
| Représentation JSON | |
|---|---|
{ "property": { object( |
|
| Champs | |
|---|---|
property |
Informations supplémentaires détectées pour le mot. |
boundingBox |
Cadre de délimitation du mot. Les sommets sont présentés dans l'ordre suivant : en haut à gauche, en haut à droite, en bas à droite et en bas à gauche. Lorsqu'une rotation du cadre de délimitation est détectée, elle est représentée autour de l'angle supérieur gauche en suivant l'ordre naturel de lecture du texte. Par exemple : * lorsque le texte est horizontal, il peut se présenter sous la forme suivante : 0----1 | | 3----2 * lorsqu'il a été pivoté de 180 degrés autour de l'angle supérieur gauche, il se présente sous la forme suivante : 2----3 | | 1----0 et l'ordre des sommets est toujours (0, 1, 2, 3). |
symbols[] |
Liste de symboles dans le mot. L'ordre des symboles suit l'ordre naturel de lecture. |
confidence |
Niveau de confiance des résultats de l'OCR pour le mot. Plage [0, 1]. |
mergedText |
Ensemble du texte UTF-8 détecté dans ce mot. Par défaut, ce champ n'est pas renvoyé, sauf indication contraire dans TextDetectionParams.word_filter. |
Symbole
Représentation d'un seul symbole.
| Représentation JSON | |
|---|---|
{ "property": { object( |
|
| Champs | |
|---|---|
property |
Informations supplémentaires détectées pour le symbole. |
boundingBox |
Cadre de délimitation du symbole. Les sommets sont présentés dans l'ordre suivant : en haut à gauche, en haut à droite, en bas à droite et en bas à gauche. Lorsqu'une rotation du cadre de délimitation est détectée, elle est représentée autour de l'angle supérieur gauche en suivant l'ordre naturel de lecture du texte. Par exemple : * lorsque le texte est horizontal, il peut se présenter sous la forme suivante : 0----1 | | 3----2 * lorsqu'il a été pivoté de 180 degrés autour de l'angle supérieur gauche, il se présente sous la forme suivante : 2----3 | | 1----0 et l'ordre des sommets est toujours (0, 1, 2, 3). |
text |
Représentation actuelle du symbole en UTF-8. |
confidence |
Niveau de confiance des résultats de l'OCR pour le symbole. Plage [0, 1]. |
BlockType
Type de bloc (texte, image, etc.) tel qu'identifié par l'OCR.
| Énumérations | |
|---|---|
UNKNOWN |
Type de bloc inconnu. |
TEXT |
Bloc de texte standard. |
TABLE |
Bloc de tableau. |
PICTURE |
Bloc d'image. |
RULER |
Zone de ligne horizontale/verticale. |
BARCODE |
Bloc de code-barres. |
KEY_VALUE_PAIR |
Bloc de paires clé-valeur. |
Table
Représentation de la table semblable à la structure de table HTML.
| Représentation JSON | |
|---|---|
{ "headerRows": [ { object( |
|
| Champs | |
|---|---|
headerRows[] |
Lignes d'en-tête de la table |
bodyRows[] |
Lignes de corps de la table |
Ligne de tableau
Ligne de cellules de la table.
| Représentation JSON | |
|---|---|
{
"cells": [
{
object( |
|
| Champs | |
|---|---|
cells[] |
Cellules qui composent cette ligne. |
TableCell
Représentation de la cellule dans les tables.
| Représentation JSON | |
|---|---|
{
"rowSpan": number,
"colSpan": number,
"textBlock": {
object( |
|
| Champs | |
|---|---|
rowSpan |
Nombre de lignes couvertes par la cellule. |
colSpan |
Nombre de colonnes couvertes par la cellule. |
textBlock |
Bloc de texte de cette cellule contenant le cadre de délimitation normalisé de la cellule et les structures plus profondes d'une cellule, le cas échéant. |
text |
Valeur textuelle fusionnée de cette cellule, en omettant les informations structurelles plus profondes, contrairement à |
KeyValuePair
Fichier Proto pour une paire clé-valeur.
| Représentation JSON | |
|---|---|
{ "key": string, "keyBlock": { object( |
|
| Champs | |
|---|---|
key |
Valeur de la chaîne de clé. |
keyBlock |
Bloc de clé de la paire contenant le cadre de délimitation normalisé et le texte de la clé. |
valueBlock |
Bloc de valeur de la paire contenant le cadre de délimitation normalisé et le texte de la valeur, y compris les structures potentiellement plus profondes dans le texte de la valeur. |
valueType |
Type de la valeur. Les chaînes valides sont les suivantes : "generic" : pour du texte générique mappé sur une valeur. "number" : pour les types numériques. "id" : pour les identifiants génériques. "currency" : pour les valeurs de devise. "date" : pour les dates. "time" : pour les valeurs de temps et de durée. "date_range" : pour les plages de dates. "address" : pour les valeurs d'adresse (peuvent être longues). "person" : pour les noms de personnes ou d'autres identifiants personnels. "phone" : pour les numéros de téléphone. |
normalizedKey |
(Facultatif) Texte de clé normalisé si le texte est courant et classé. Par exemple, "TOTAL DUE" (Total dû) est normalisé en "Total amount" (Montant total). |
SafeSearchAnnotation
Ensemble de caractéristiques liées à l'image, calculées à l'aide de méthodes de vision par ordinateur sur des domaines de recherche sécurisée (par exemple, contenu réservé aux adultes, spoofing, images médicales, violence).
| Représentation JSON | |
|---|---|
{ "adult": enum( |
|
| Champs | |
|---|---|
adult |
Représente la probabilité que l'image comporte du contenu réservé aux adultes. Le contenu réservé aux adultes peut comporter des éléments tels que des scènes de nudité, des images ou des dessins animés pornographiques, ou des activités à caractère sexuel. |
spoof |
Probabilité de spoofing. Probabilité qu'une modification ait été apportée à la version canonique de l'image pour la rendre amusante ou choquante. |
medical |
Probabilité de présence d'images médicales. |
violence |
Probabilité que l'image comprenne du contenu violent. |
racy |
Probabilité que l'image de la requête comporte du contenu pour adultes. Le contenu pour adultes peut inclure, mais sans s'y limiter, des tenues courtes ou transparentes, des scènes de nudité habilement dissimulée, des poses obscènes ou provocantes, ou des gros plans de zones intimes du corps. |
ImageProperties
Stocke les propriétés de l'image, telles que les couleurs dominantes.
| Représentation JSON | |
|---|---|
{
"dominantColors": {
object( |
|
| Champs | |
|---|---|
dominantColors |
Si ce champ est présent, les couleurs dominantes ont bien été identifiées. |
DominantColorsAnnotation
Ensemble de couleurs dominantes et scores correspondants.
| Représentation JSON | |
|---|---|
{
"colors": [
{
object( |
|
| Champs | |
|---|---|
colors[] |
Valeurs des couleurs RVB avec leur score et leur fraction en pixels. |
ColorInfo
Les informations associées aux couleurs incluent les canaux RVB, les scores et la fraction de l'image sur laquelle la couleur est présente.
| Représentation JSON | |
|---|---|
{
"color": {
object( |
|
| Champs | |
|---|---|
color |
Composants RVB de la couleur. |
score |
Score de la couleur spécifique à l'image. Valeur comprise dans la plage [0, 1]. |
pixelFraction |
Fraction de pixels sur laquelle la couleur est présente. Valeur comprise dans la plage [0, 1]. |
Color
Représente une couleur dans l'espace colorimétrique RVBA. Cette représentation privilégie la simplicité de conversion des représentations de couleurs en différents langages à la compacité. Par exemple, les champs de cette représentation peuvent très simplement être fournis au constructeur de "java.awt.Color" en langage Java, tout comme à la méthode "+colorWithRed:Green:blue:alpha" d'UIColor dans iOS. Avec un minimum de travail, vous pouvez aussi facilement les mettre en forme dans une chaîne CSS "rgba()" en JavaScript.
Remarque : Ce fichier Proto ne contient pas d'informations sur l'espace colorimétrique absolu à utiliser pour interpréter la valeur RVB (par exemple : sRVB, Adobe RVB, DCI-P3 et BT.2020). Par défaut, les applications DEVRAIENT partir du principe qu'il s'agit de l'espace colorimétrique sRVB.
Exemple (Java) :
import com.google.type.Color;
// ...
public static java.awt.Color fromProto(Color protocolor) {
float alpha = protocolor.hasAlpha()
? protocolor.getAlpha().getValue()
: 1.0;
return new java.awt.Color(
protocolor.getRed(),
protocolor.getGreen(),
protocolor.getBlue(),
alpha);
}
public static Color toProto(java.awt.Color color) {
float red = (float) color.getRed();
float green = (float) color.getGreen();
float blue = (float) color.getBlue();
float denominator = 255.0;
Color.Builder resultBuilder =
Color
.newBuilder()
.setRed(red / denominator)
.setGreen(green / denominator)
.setBlue(blue / denominator);
int alpha = color.getAlpha();
if (alpha != 255) {
result.setAlpha(
FloatValue
.newBuilder()
.setValue(((float) alpha) / denominator)
.build());
}
return resultBuilder.build();
}
// ...
Exemple (iOS/Obj-C) :
// ...
static UIColor* fromProto(Color* protocolor) {
float red = [protocolor red];
float green = [protocolor green];
float blue = [protocolor blue];
FloatValue* alpha_wrapper = [protocolor alpha];
float alpha = 1.0;
if (alpha_wrapper != nil) {
alpha = [alpha_wrapper value];
}
return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];
}
static Color* toProto(UIColor* color) {
CGFloat red, green, blue, alpha;
if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) {
return nil;
}
Color* result = [[Color alloc] init];
[result setRed:red];
[result setGreen:green];
[result setBlue:blue];
if (alpha <= 0.9999) {
[result setAlpha:floatWrapperWithValue(alpha)];
}
[result autorelease];
return result;
}
// ...
Exemple (JavaScript) :
// ...
var protoToCssColor = function(rgb_color) {
var redFrac = rgb_color.red || 0.0;
var greenFrac = rgb_color.green || 0.0;
var blueFrac = rgb_color.blue || 0.0;
var red = Math.floor(redFrac * 255);
var green = Math.floor(greenFrac * 255);
var blue = Math.floor(blueFrac * 255);
if (!('alpha' in rgb_color)) {
return rgbToCssColor_(red, green, blue);
}
var alphaFrac = rgb_color.alpha.value || 0.0;
var rgbParams = [red, green, blue].join(',');
return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');
};
var rgbToCssColor_ = function(red, green, blue) {
var rgbNumber = new Number((red << 16) | (green << 8) | blue);
var hexString = rgbNumber.toString(16);
var missingZeros = 6 - hexString.length;
var resultBuilder = ['#'];
for (var i = 0; i < missingZeros; i++) {
resultBuilder.push('0');
}
resultBuilder.push(hexString);
return resultBuilder.join('');
};
// ...
| Représentation JSON | |
|---|---|
{ "red": number, "green": number, "blue": number, "alpha": number } |
|
| Champs | |
|---|---|
red |
Quantité de rouge dans la couleur en tant que valeur dans l'intervalle [0, 1]. |
green |
Quantité de vert dans la couleur en tant que valeur dans l'intervalle [0, 1]. |
blue |
Quantité de bleu dans la couleur en tant que valeur dans l'intervalle [0, 1]. |
alpha |
Fraction de cette couleur à appliquer au pixel. En d'autres termes, la couleur finale du pixel est définie par l'équation : couleur de pixel = alpha * (cette couleur) + (1,0 - alpha) * (couleur de fond) Cela signifie qu'une valeur de 1,0 correspond à une couleur opaque, tandis qu'une valeur de 0,0 correspond à une couleur totalement transparente. Un message wrapper est utilisé à la place d'une simple valeur scalaire flottante pour permettre de faire la distinction entre une valeur par défaut et la valeur vide. En cas d'omission, cet objet de couleur doit être affiché en tant que couleur opaque (comme si la valeur alpha avait été explicitement fournie avec une valeur de 1,0). |
CropHintsAnnotation
Ensemble de suggestions de cadrage permettant de générer des cadrages lors de la diffusion d'images.
| Représentation JSON | |
|---|---|
{
"cropHints": [
{
object( |
|
| Champs | |
|---|---|
cropHints[] |
Résultats de la suggestion de cadrage. |
CropHint
Suggestion de cadrage unique permettant de générer un cadrage lors de la diffusion d'une image.
| Représentation JSON | |
|---|---|
{
"boundingPoly": {
object( |
|
| Champs | |
|---|---|
boundingPoly |
Polygone de délimitation de la zone cadrée. Les coordonnées du cadre de délimitation sont à l'échelle de l'image d'origine. |
confidence |
Niveau de confiance concernant l'importance de la zone. Plage [0, 1]. |
importanceFraction |
Fraction d'importance de la région par rapport à l'image d'origine. |
WebDetection
Informations utiles sur une image provenant d'Internet.
| Représentation JSON | |
|---|---|
{ "webEntities": [ { object( |
|
| Champs | |
|---|---|
webEntities[] |
Entités issues d'images similaires sur Internet. |
fullMatchingImages[] |
Images identiques provenant d'Internet. Peut inclure des copies redimensionnées de l'image de la requête. |
partialMatchingImages[] |
Images à correspondance partielle provenant d'Internet. Ces images sont suffisamment similaires pour partager certaines caractéristiques clés. Par exemple, une image d'origine peut avoir une correspondance partielle si elle est associée à une zone de recadrage. |
pagesWithMatchingImages[] |
Pages Web contenant les images correspondantes issues d'Internet. |
visuallySimilarImages[] |
Résultats d'images visuellement similaires. |
bestGuessLabels[] |
Meilleure estimation du service par rapport au thème de l'image de la requête. Elle est déduite à partir d'images similaires sur le Web ouvert. |
WebEntity
Entité extraite d'images similaires sur Internet.
| Représentation JSON | |
|---|---|
{ "entityId": string, "score": number, "description": string } |
|
| Champs | |
|---|---|
entityId |
ID d'entité opaque. |
score |
Score de pertinence global de l'entité. Non normalisé et non comparable entre différentes requêtes d'images. |
description |
Description canonique de l'entité en anglais. |
WebImage
Métadonnées des images en ligne.
| Représentation JSON | |
|---|---|
{ "url": string, "score": number } |
|
| Champs | |
|---|---|
url |
URL de l'image du résultat. |
score |
(Obsolète) Score de pertinence global de l'image. |
WebPage
Métadonnées des pages Web.
| Représentation JSON | |
|---|---|
{ "url": string, "score": number, "pageTitle": string, "fullMatchingImages": [ { object( |
|
| Champs | |
|---|---|
url |
URL de la page Web de résultat. |
score |
(Obsolète) Score de pertinence global de la page Web. |
pageTitle |
Le titre de la page Web peut contenir des balises HTML. |
fullMatchingImages[] |
Images identiques sur la page. Peut inclure des copies redimensionnées de l'image de la requête. |
partialMatchingImages[] |
Images à correspondance partielle sur la page. Ces images sont suffisamment similaires pour partager certaines caractéristiques clés. Par exemple, une image d'origine peut avoir une correspondance partielle si elle est associée à une zone de recadrage. |
WebLabel
Étiquette permettant de fournir des métadonnées supplémentaires pour la détection Web.
| Représentation JSON | |
|---|---|
{ "label": string, "languageCode": string } |
|
| Champs | |
|---|---|
label |
Étiquette pour les métadonnées supplémentaires. |
languageCode |
Le code de langue BCP-47 pour |
ProductSearchResults
Résultats d'une requête de recherche de produits.
| Représentation JSON | |
|---|---|
{ "indexTime": string, "results": [ { object( |
|
| Champs | |
|---|---|
indexTime |
Code temporel de l'index ayant fourni les résultats. Les modifications apportées après cette date ne sont pas reflétées dans les résultats actuels. Code temporel au format RFC3339 UTC "Zulu", précis à la nanoseconde près. Exemple : |
results[] |
Liste des résultats, un pour chaque correspondance de produit. |
productGroupedResults[] |
Liste des résultats regroupés par produits détectés dans l'image de la requête. Chaque entrée correspond à un polygone de délimitation dans l'image de la requête et contient les produits correspondants spécifiques à cette région. Il peut y avoir des correspondances de produits en double si vous regroupez tous les résultats par produit. |
Result
Informations sur un produit.
| Représentation JSON | |
|---|---|
{
"product": {
object( |
|
| Champs | |
|---|---|
product |
Le Product. |
score |
Niveau de confiance de la correspondance, compris entre 0 (aucune confiance) et 1 (confiance totale). |
image |
Nom de ressource de l'image à partir du produit qui correspond le mieux à la requête. |
GroupedResult
Informations sur des produits semblables à un seul produit dans une image de requête.
| Représentation JSON | |
|---|---|
{ "boundingPoly": { object( |
|
| Champs | |
|---|---|
boundingPoly |
Polygone de délimitation autour du produit détecté dans l'image de la requête. |
results[] |
Liste des résultats, un pour chaque correspondance de produit. |
objectAnnotations[] |
Liste des prédictions génériques pour l'objet dans le cadre de délimitation. |
ObjectAnnotation
Prédiction pour laquelle l'objet du cadre de délimitation est destiné.
| Représentation JSON | |
|---|---|
{ "mid": string, "languageCode": string, "name": string, "score": number } |
|
| Champs | |
|---|---|
mid |
ID d'objet conforme au champ "mid" d'EntityAnnotation. |
languageCode |
Le code de langue BCP-47 ("en-US" ou "sr-Latn", par exemple). Pour en savoir plus, consultez http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
name |
Nom d'objet, exprimé dans la langue correspondant au |
score |
Score du résultat. Plage [0, 1]. |
ImageAnnotationContext
Si une image a été générée à partir d'un fichier (PDF, par exemple), ce message fournit des informations sur la source de cette image.
| Représentation JSON | |
|---|---|
{ "uri": string, "pageNumber": number } |
|
| Champs | |
|---|---|
uri |
URI du fichier permettant de générer l'image. |
pageNumber |
Si le fichier est au format PDF ou TIFF, ce champ indique le numéro de page dans le fichier utilisé pour générer l'image. |
ImageQuality
Enregistre les scores de qualité des images, qui peuvent être des qualités esthétiques ou techniques.
| Représentation JSON | |
|---|---|
{ "qualityScore": number } |
|
| Champs | |
|---|---|
qualityScore |
Score représentant la qualité mathématique ou technique de l'image. Le score est compris dans la plage [0, 1]. Plus la valeur est élevée, plus les photos sont de qualité professionnelle. La valeur 0 signifie que l'image semble être de très mauvaise qualité, la valeur 1 signifie qu'elle est de très haute qualité. |
QualityOptimizationResult
Enregistre les octets d'images optimisées.
| Représentation JSON | |
|---|---|
{
"qualityOptimizationType": enum( |
|
| Champs | |
|---|---|
qualityOptimizationType |
Type d'optimisation requis. |
image |
Octets d'images optimisées. Chaîne encodée en base64. |
mimeType |
Type MIME de l'image de sortie. |
LocalizedBarcodeAnnotation
Ensemble de codes-barres détectés avec des cadres de délimitation.
| Représentation JSON | |
|---|---|
{
"format": string,
"valueFormat": string,
"value": string,
"confidence": number,
"boundingPoly": {
object( |
|
| Champs | |
|---|---|
format |
Le format du code-barres décrit le format. Les formats compatibles sont les suivants : CODE_128 : type de code 128. CODE_39 : type de code 39. CODE_93 : type de code 93. CODABAR : type Codabar. DATA_MATRIX : type de matrice de données 2D. ITF : type ITF. EAN_13 : type EAN-13. EAN_8 : type EAN-8. QRCODE : type code QR 2D. UPC_A : type UPC-A. UPC_E : type UPC-E. PDF417 : type PDF417. AZTEC : type de code Aztec 2D. DATABAR : type de code GS1 DataBar. |
valueFormat |
Le format de la valeur du code-barres décrit le format de la valeur encodée en code-barres. Les formats de valeurs acceptés sont les suivants : CONTACT_INFO: coordonnées. EMAIL : adresse e-mail. ISBN : identifiant ISBN. PHONE : numéro de téléphone. PRODUCT : produit. SMS : SMS. TEXT : chaîne de texte. URL : adresse URL. WIFI : informations sur le Wi-Fi. GEO : géolocalisation (longitude et latitude). CALENDAR_EVENT : événement d'agenda. DRIVER_LICENSE : permis de conduire. |
value |
Valeur de code-barres correspondant à la valeur ASCII capturée dans le code-barres. Les codes-barres peuvent encoder des valeurs structurées, par exemple "MEBKM:TITLE:Google;URL:https://www.google.com;;". |
confidence |
Niveau de confiance du résultat. Plage [0, 1]. |
boundingPoly |
Région de l'image à laquelle appartient ce code-barres. Ces informations doivent être renseignées. |