La API Video Intelligence puede identificar las entidades que aparecen en las grabaciones de vídeo mediante la función LABEL_DETECTION. Esta función identifica objetos, ubicaciones, actividades, especies de animales, productos y más.
El análisis se puede compartimentar de la siguiente manera:
- Nivel de fotograma:
las entidades se identifican y etiquetan en cada fotograma (con un muestreo de un fotograma por segundo). - Nivel de toma:
las tomas se detectan automáticamente en cada segmento (o vídeo). A continuación, se identifican y etiquetan las entidades en cada toma. - Nivel de segmento:
se pueden especificar segmentos de un vídeo seleccionados por el usuario para analizarlos. Para ello, se deben estipular los desplazamientos de tiempo de inicio y de finalización con fines de anotación (consulta VideoSegment). A continuación, se identifican y etiquetan las entidades en cada segmento. Si no se especifica ningún segmento, se considera que todo el vídeo es un segmento.
Anotar un archivo local
Este es un ejemplo de análisis de vídeos para detectar etiquetas en un archivo local.
¿Buscas información más detallada? Consulta nuestro tutorial detallado sobre Python.
REST
Enviar la solicitud de proceso
A continuación, se muestra cómo enviar una solicitud POST
al método videos:annotate
. Puedes configurar la
LabelDetectionMode
para que se muestren anotaciones a nivel de toma o de fotograma. Te recomendamos que uses SHOT_AND_FRAME_MODE
. En el ejemplo se usa el token de acceso de una cuenta de servicio configurada para el proyecto con la CLI de Google Cloud. Para obtener instrucciones sobre cómo instalar la CLI de Google Cloud, configurar un proyecto con una cuenta de servicio y obtener un token de acceso, consulta el inicio rápido de Video Intelligence.
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- BASE64_ENCODED_CONTENT: tu vídeo como datos codificados en Base64. Consulta las instrucciones para convertir tus datos a base64.
- PROJECT_NUMBER: identificador numérico de tu Google Cloud proyecto
Método HTTP y URL:
POST https://videointelligence.googleapis.com/v1/videos:annotate
Cuerpo JSON de la solicitud:
{ "inputContent": "BASE64_ENCODED_CONTENT", "features": ["LABEL_DETECTION"], }
Para enviar tu solicitud, despliega una de estas opciones:
Deberías recibir una respuesta JSON similar a la siguiente:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID" }
Si la solicitud se realiza correctamente, Video Intelligence devuelve el nombre de la operación.
Obtener los resultados
Para obtener los resultados de tu solicitud, debes enviar una GET
solicitud al recurso projects.locations.operations
. A continuación, se muestra cómo enviar una solicitud de este tipo.
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- OPERATION_NAME: el nombre de la operación devuelto por la API Video Intelligence. El nombre de la operación tiene el formato
projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID
- PROJECT_NUMBER: identificador numérico de tu Google Cloud proyecto
Método HTTP y URL:
GET https://videointelligence.googleapis.com/v1/OPERATION_NAME
Para enviar tu solicitud, despliega una de estas opciones:
Deberías recibir una respuesta JSON similar a la siguiente:
Go
Java
Node.js
Python
Para obtener más información sobre cómo instalar y usar la biblioteca de cliente de la API Video Intelligence para Python, consulta Bibliotecas de cliente de la API Video Intelligence.Idiomas adicionales
C#: Sigue las instrucciones de configuración de C# en la página de bibliotecas de cliente y, a continuación, consulta la documentación de referencia de Video Intelligence para .NET.
PHP Sigue las instrucciones de configuración de PHP en la página de bibliotecas de cliente y, a continuación, consulta la documentación de referencia de Video Intelligence para PHP.
Ruby: Sigue las instrucciones de configuración de Ruby en la página de bibliotecas de cliente y, a continuación, consulta la documentación de referencia de Video Intelligence para Ruby.
Anotar un archivo de Cloud Storage
A continuación, se muestra un ejemplo de cómo realizar un análisis de vídeo para detectar etiquetas en un archivo ubicado en Cloud Storage.
REST
Para obtener más información sobre cómo instalar y usar la biblioteca de cliente de la API Video Intelligence para Python, consulta Bibliotecas de cliente de la API Video Intelligence.Enviar la solicitud de proceso
A continuación, se muestra cómo enviar una solicitud POST
al método annotate
. En el ejemplo se usa el token de acceso de una cuenta de servicio configurada para el proyecto con la CLI de Google Cloud. Para obtener instrucciones sobre cómo instalar la CLI de Google Cloud, configurar un proyecto con una cuenta de servicio y obtener un token de acceso, consulta el inicio rápido de Video Intelligence.
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- INPUT_URI: un segmento de Cloud Storage que contiene
el archivo que quieres anotar, incluido el nombre del archivo. Debe
empezar por
gs://
. - PROJECT_NUMBER: identificador numérico de tu Google Cloud proyecto
Método HTTP y URL:
POST https://videointelligence.googleapis.com/v1/videos:annotate
Cuerpo JSON de la solicitud:
{ "inputUri": "INPUT_URI", "features": ["LABEL_DETECTION"], }
Para enviar tu solicitud, despliega una de estas opciones:
Deberías recibir una respuesta JSON similar a la siguiente:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID" }
Si la solicitud se realiza correctamente, Video Intelligence devuelve el nombre de tu operación.
Obtener los resultados
Para obtener los resultados de tu solicitud, debes enviar una GET
solicitud al recurso projects.locations.operations
. A continuación, se muestra cómo enviar una solicitud de este tipo.
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- OPERATION_NAME: el nombre de la operación devuelto por la API Video Intelligence. El nombre de la operación tiene el formato
projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID
- PROJECT_NUMBER: identificador numérico de tu Google Cloud proyecto
Método HTTP y URL:
GET https://videointelligence.googleapis.com/v1/OPERATION_NAME
Para enviar tu solicitud, despliega una de estas opciones:
Deberías recibir una respuesta JSON similar a la siguiente:
Descargar resultados de anotación
Copia la anotación del segmento de origen al de destino (consulta Copiar archivos y objetos).
gcloud storage cp gcs_uri gs://my-bucket
Nota: Si el usuario proporciona el URI de GCS de salida, la anotación se almacenará en ese URI.
Go
Java
Node.js
Python
Idiomas adicionales
C#: Sigue las instrucciones de configuración de C# en la página de bibliotecas de cliente y, a continuación, consulta la documentación de referencia de Video Intelligence para .NET.
PHP Sigue las instrucciones de configuración de PHP en la página de bibliotecas de cliente y, a continuación, consulta la documentación de referencia de Video Intelligence para PHP.
Ruby: Sigue las instrucciones de configuración de Ruby en la página de bibliotecas de cliente y, a continuación, consulta la documentación de referencia de Video Intelligence para Ruby.