La API de Video Intelligence puede detectar, seguir y reconocer la presencia de más de 100,000 marcas y logotipos en el contenido de video.
Esta página describe cómo reconocer un logotipo en un video utilizando el API de Video Intelligence.
Anota un video en Cloud Storage
La siguiente muestra de código demuestra cómo detectar logotipos en un video en Cloud Storage.
REST
Envía la solicitud de proceso
Para realizar una anotación en un archivo de video local, codifica el contenido del archivo de video en base64. Incluye el contenido codificado en Base64 en el campo inputContent
de la solicitud. Para obtener información sobre cómo codificar en Base64 el contenido de un archivo de video, consulta Codificación en Base64.
A continuación, se muestra cómo enviar una solicitud POST
al método videos:annotate
.
En el ejemplo, se usa el token de acceso correspondiente a una cuenta de servicio configurada para el proyecto
con Google Cloud CLI. Para obtener instrucciones sobre cómo instalar Google Cloud CLI,
la configuración de un proyecto con una cuenta
y obtener un token de acceso, consulta la
Guía de inicio rápido de Video Intelligence.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- INPUT_URI: Es el bucket de Cloud Storage que contiene el archivo que deseas anotar, incluido el nombre del archivo. Debe comenzar con
gs://
.
Por ejemplo:"inputUri": "gs://cloud-videointelligence-demo/assistant.mp4",
- PROJECT_NUMBER: Es el identificador numérico del proyecto de Google Cloud.
Método HTTP y URL:
POST https://videointelligence.googleapis.com/v1/videos:annotate
Cuerpo JSON de la solicitud:
{ "inputUri":"INPUT_URI", "features": ["LOGO_RECOGNITION"] }
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID" }
Si la respuesta es correcta, la API de Video Intelligence muestra name
para tu operación. A continuación, se muestra un ejemplo de la respuesta, en la que project-number
es el número de tu proyecto y operation-id
es el ID de la operación de larga duración creada para la solicitud.
- PROJECT_NUMBER: Es el número de tu proyecto.
- LOCATION_ID: Es la región de Cloud en la que se debe realizar la anotación. Las regiones en la nube compatibles son:
us-east1
,us-west1
,europe-west1
,asia-east1
. Si no se especifica ninguna región, se determinará una región en función de la ubicación del archivo de video. - OPERATION_ID: Es el ID de la operación de larga duración creada para la solicitud y proporcionada en la respuesta cuando iniciaste la operación, por ejemplo
12345...
.
Obtén los resultados
Para obtener los resultados de tu solicitud, envía una solicitud GET
mediante el elemento
nombre de la operación que muestra la llamada a videos:annotate
, como se muestra en el siguiente ejemplo.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- OPERATION_NAME: Es el nombre de la operación que muestra la API de Video Intelligence. El nombre de la operación tiene el formato
projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID
. - PROJECT_NUMBER: Es el identificador numérico del proyecto de Google Cloud.
Método HTTP y URL:
GET https://videointelligence.googleapis.com/v1/OPERATION_NAME
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
Cómo descargar resultados de anotaciones
Copia la anotación del origen al bucket de destino (consulta Copia archivos y objetos).
gcloud storage cp gcs_uri gs://my-bucket
Nota: Si el usuario proporciona el resultado de gcs uri, la anotación se almacena en ese gcs URI.
Go
Para autenticarte en Video Intelligence, 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.
Java
Para autenticarte en Video Intelligence, 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.
Node.js
Para autenticarte en Video Intelligence, 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
Para autenticarte en Video Intelligence, 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.
Idiomas adicionales
C# Sigue las Instrucciones de configuración de C# en la página de bibliotecas cliente y, luego, visita Documentación de referencia de Video Intelligence para .NET
PHP: Sigue las Instrucciones de configuración de PHP en la página de bibliotecas cliente y, luego, visita Documentación de referencia de Video Intelligence para PHP
Ruby: Sigue las Instrucciones de configuración de Ruby en la página de bibliotecas cliente y, luego, visita Documentación de referencia de Video Intelligence para Ruby.
Anota un video local
En la siguiente muestra de código, se indica cómo detectar logotipos en un video local .
REST
Envía una solicitud de anotación de video
Para realizar una anotación en un archivo de video local, asegúrate de codificar el contenido del archivo de video en Base64.
Incluye el contenido codificado en Base64 en el campo inputContent
de la solicitud.
Para obtener información sobre cómo codificar en Base64 el contenido de un archivo de video, consulta Codificación en Base64.
A continuación, se muestra cómo enviar una solicitud videos:annotate
al método .
En el ejemplo, se usa el token de acceso correspondiente a la configuración de una cuenta de servicio para el proyecto con Google Cloud CLI.
Para obtener instrucciones sobre cómo instalar Google Cloud CLI, configura un proyecto con
una cuenta de servicio y obtener un token de acceso, consulta la
Guía de inicio rápido de la API de Video Intelligence
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- "inputContent": BASE64_ENCODED_CONTENT
Por ejemplo:"UklGRg41AwBBVkkgTElTVAwBAABoZHJsYXZpaDgAAAA1ggAAxPMBAAAAAAAQCAA..."
- LANGUAGE_CODE: Consulta los idiomas compatibles (Opcional)
- PROJECT_NUMBER: Es el identificador numérico del proyecto de Google Cloud.
Método HTTP y URL:
POST https://videointelligence.googleapis.com/v1/videos:annotate
Cuerpo JSON de la solicitud:
{ "inputContent": "BASE64_ENCODED_CONTENT", "features": ["LOGO_RECOGNITION"], "videoContext": { } }
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID" }
Si la respuesta es correcta, la API de Video Intelligence muestra name
para tu operación. A continuación, se muestra un ejemplo de la respuesta, en la que project-number
es el número de tu proyecto y operation-id
es el ID de la operación de larga duración creada para la solicitud.
- OPERATION_ID: se proporciona en la respuesta cuando iniciaste la operación, por ejemplo
12345...
Obtén resultados de anotaciones
Para recuperar el resultado de la operación, realiza una solicitud GET con el nombre de la operación que se muestra en la llamada a videos:annotate, como se muestra en el siguiente ejemplo.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- PROJECT_NUMBER: Es el identificador numérico del proyecto de Google Cloud.
Método HTTP y URL:
GET https://videointelligence.googleapis.com/v1/OPERATION_NAME
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
Las anotaciones de detección de texto se muestran como una lista textAnnotations
.
Nota: El campo done se muestra solo cuando su valor es True.
No se incluye en las respuestas para las que no se completó la operación.
Go
Para autenticarte en Video Intelligence, 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.
Java
Para autenticarte en Video Intelligence, 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.
Node.js
Para autenticarte en Video Intelligence, 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
Para autenticarte en Video Intelligence, 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.
Idiomas adicionales
C# Sigue las Instrucciones de configuración de C# en la página de bibliotecas cliente y, luego, visita Documentación de referencia de Video Intelligence para .NET
PHP: Sigue las Instrucciones de configuración de PHP en la página de bibliotecas cliente y, luego, visita Documentación de referencia de Video Intelligence para PHP
Ruby: Sigue las Instrucciones de configuración de Ruby en la página de bibliotecas cliente y, luego, visita Documentación de referencia de Video Intelligence para Ruby.