La API de Vision puede ejecutar servicios de detección (asíncronos) sin conexión y anotaciones de un gran lote de archivos de imagen con cualquier tipo de función de Vision. Por ejemplo, puedes especificar una o más funciones de la API de Vision (como TEXT_DETECTION
, LABEL_DETECTION
y LANDMARK_DETECTION
) para un solo lote de imágenes.
El resultado de una solicitud por lotes sin conexión se escribe en un archivo JSON creado en el bucket de Cloud Storage especificado.
Limitaciones
La API de Vision acepta hasta 2,000 archivos de imagen. Un lote mayor, mostrará un error.
Tipos de funciones admitidas en la actualidad
Tipo de atributo | |
---|---|
CROP_HINTS |
Determina los vértices sugeridos para una región de recorte en una imagen. |
DOCUMENT_TEXT_DETECTION |
Realiza OCR en imágenes de texto denso, como documentos (PDF o TIFF) y también en imágenes con
escritura a mano.
TEXT_DETECTION se puede usar para imágenes de texto escaso.
Tiene prioridad cuando están presentes DOCUMENT_TEXT_DETECTION y
TEXT_DETECTION .
|
FACE_DETECTION |
Detecta rostros dentro de la imagen. |
IMAGE_PROPERTIES |
Procesa un conjunto de propiedades de la imagen, como sus colores predominantes. |
LABEL_DETECTION |
Agrega etiquetas según el contenido de la imagen. |
LANDMARK_DETECTION |
Detecta puntos de referencia geográficos dentro de la imagen. |
LOGO_DETECTION |
Detecta logotipos de empresas dentro de una imagen. |
OBJECT_LOCALIZATION |
Detecta y extrae varios objetos de una imagen. |
SAFE_SEARCH_DETECTION |
Ejecuta SafeSearch para detectar contenido inseguro o no deseado. |
TEXT_DETECTION |
Realiza reconocimiento óptico de caracteres (OCR) en el texto dentro la imagen.
La detección de texto está optimizada para áreas de texto escaso dentro de una imagen más grande.
Si la imagen es un documento (PDF o TIFF) y tiene texto denso o contiene escritura a mano,
usa DOCUMENT_TEXT_DETECTION en su lugar.
|
WEB_DETECTION |
Detecta entidades temáticas como noticias, eventos o celebridades en la imagen y encuentra imágenes similares en la Web gracias a la Búsqueda de imágenes de Google. |
Código de muestra
Usa las siguientes muestras de código para ejecutar servicios de anotaciones sin conexión en un lote de archivos de imagen en Cloud Storage.
Java
Antes de probar este código de muestra, sigue las instrucciones de configuración para Java que se encuentran la Guía de inicio rápido de la API de Vision sobre cómo usar las bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Vision para Java.
Node.js
Antes de probar este código de muestra, sigue las instrucciones de configuración para Node.js que se encuentran en la Guía de inicio rápido de Vision sobre cómo usar las bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Vision para Node.js.
Para autenticarte en Vision, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Antes de probar este código de muestra, sigue las instrucciones de configuración para Python que se encuentran en la Guía de inicio rápido de Vision sobre cómo usar las bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Vision para Python.
Para autenticarte en Vision, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Respuesta
Una solicitud correcta muestra archivos JSON de respuesta en el bucket de Cloud Storage que indicaste en la muestra de código. La cantidad de respuestas por archivo JSON se determina según el batch_size
de la muestra de código.
La respuesta que se muestra es similar a las respuestas de las funciones normales de la API de Vision, según las funciones que solicites para una imagen.
Las siguientes respuestas muestran anotaciones LABEL_DETECTION
y TEXT_DETECTION
para anotaciones image1.png
, IMAGE_PROPERTIES
para anotaciones image2.jpg
y OBJECT_LOCALIZATION
para image3.jpg
.
Las respuestas también contienen un campo context
que muestra el URI del archivo.
offline_batch_output/output-1-to-2.json
{ "responses": [ { "labelAnnotations": [ { "mid": "/m/07s6nbt", "description": "Text", "score": 0.93413997, "topicality": 0.93413997 }, { "mid": "/m/0dwx7", "description": "Logo", "score": 0.8733531, "topicality": 0.8733531 }, ... { "mid": "/m/03bxgrp", "description": "Company", "score": 0.5682425, "topicality": 0.5682425 } ], "textAnnotations": [ { "locale": "en", "description": "Google\n", "boundingPoly": { "vertices": [ { "x": 72, "y": 40 }, { "x": 613, "y": 40 }, { "x": 613, "y": 233 }, { "x": 72, "y": 233 } ] } }, ... ], "blockType": "TEXT" } ] } ], "text": "Google\n" }, "context": { "uri": "gs://cloud-samples-data/vision/document_understanding/image1.png" } }, { "imagePropertiesAnnotation": { "dominantColors": { "colors": [ { "color": { "red": 229, "green": 230, "blue": 238 }, "score": 0.2744754, "pixelFraction": 0.075339235 }, ... { "color": { "red": 86, "green": 87, "blue": 95 }, "score": 0.025770646, "pixelFraction": 0.13109145 } ] } }, "cropHintsAnnotation": { "cropHints": [ { "boundingPoly": { "vertices": [ {}, { "x": 1599 }, { "x": 1599, "y": 1199 }, { "y": 1199 } ] }, "confidence": 0.79999995, "importanceFraction": 1 } ] }, "context": { "uri": "gs://cloud-samples-data/vision/document_understanding/image2.jpg" } } ] }
offline_batch_output/output-3-to-3.json
{ "responses": [ { "context": { "uri": "gs://cloud-samples-data/vision/document_understanding/image3.jpg" }, "localizedObjectAnnotations": [ { "mid": "/m/0bt9lr", "name": "Dog", "score": 0.9669734, "boundingPoly": { "normalizedVertices": [ { "x": 0.6035543, "y": 0.1357359 }, { "x": 0.98546547, "y": 0.1357359 }, { "x": 0.98546547, "y": 0.98426414 }, { "x": 0.6035543, "y": 0.98426414 } ] } }, ... { "mid": "/m/0jbk", "name": "Animal", "score": 0.58003056, "boundingPoly": { "normalizedVertices": [ { "x": 0.014534635, "y": 0.1357359 }, { "x": 0.37197515, "y": 0.1357359 }, { "x": 0.37197515, "y": 0.98426414 }, { "x": 0.014534635, "y": 0.98426414 } ] } } ] } ] }