A API Video Intelligence pode detectar, rastrear e reconhecer a presença de mais de 100.000 marcas e logotipos no conteúdo de vídeo.
Esta página descreve como reconhecer um logotipo em um vídeo usando a API Video Intelligence.
Anotar um vídeo no Cloud Storage
O exemplo de código a seguir demonstra como detectar logotipos em um vídeo no Cloud Storage.
REST
Enviar a solicitação de processo
Para realizar a anotação em um arquivo de vídeo local, codifique em base64 o conteúdo do arquivo de vídeo. Inclua o conteúdo codificado em base64 no campo inputContent
da solicitação. Para informações sobre como codificar o conteúdo de um arquivo de vídeo em base64, consulte Codificação em Base64.
Veja a seguir como enviar uma solicitação POST
para o método videos:annotate
.
O exemplo usa o token de acesso de uma conta de serviço configurada para o projeto
usando a Google Cloud CLI. Para instruções sobre como instalar a Google Cloud CLI,
a configuração de um projeto com uma conta
conta e obter um token de acesso, consulte a
Guia de início rápido do Video Intelligence.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- INPUT_URI: um bucket do Cloud Storage que contém o arquivo que você quer anotar, incluindo o nome do arquivo. É necessário começar com
gs://
.
Por exemplo:
"inputUri": "gs://cloud-videointelligence-demo/assistant.mp4",
- PROJECT_NUMBER: o identificador numérico do projeto do Google Cloud
Método HTTP e URL:
POST https://videointelligence.googleapis.com/v1/videos:annotate
Corpo JSON da solicitação:
{ "inputUri":"INPUT_URI", "features": ["LOGO_RECOGNITION"] }
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID" }
Se a resposta for bem-sucedida, a API Video Intelligence retornará o name
para sua operação. O exemplo acima mostra um exemplo dessa resposta, em que project-number
é o número do projeto e operation-id
é o ID da operação de longa duração criado para a solicitação.
- PROJECT_NUMBER: o número do seu projeto
- LOCATION_ID: a região do Cloud em que a anotação deve ocorrer. As regiões de nuvem compatíveis são:
us-east1
,us-west1
,europe-west1
easia-east1
. Se nenhuma região for especificada, uma região será determinada com base na localização do arquivo de vídeo. - OPERATION_ID: o ID da operação de longa duração criada para a solicitação e fornecida na resposta quando você iniciou a operação. Por exemplo,
12345...
Ver os resultados
Para receber os resultados da solicitação, envie uma solicitação GET
usando o nome da operação retornado da chamada para videos:annotate
, conforme mostrado no exemplo a seguir.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- OPERATION_NAME: o nome da operação, conforme retornado pela API Video Intelligence. O nome da operação tem o formato
projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID
. - PROJECT_NUMBER: o identificador numérico do projeto do Google Cloud
Método HTTP e URL:
GET https://videointelligence.googleapis.com/v1/OPERATION_NAME
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
Fazer o download dos resultados da anotação
Copie a anotação da origem e a cole no bucket de destino: consulte Copiar arquivos e objetos
gcloud storage cp gcs_uri gs://my-bucket
Observação: se o URI de saída do GCS for fornecido pelo usuário, a anotação será armazenada nesse URI.
Go
Para autenticar no Video Intelligence, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Java
Para autenticar no Video Intelligence, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Node.js
Para autenticar no Video Intelligence, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Python
Para autenticar no Video Intelligence, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Outras linguagens
C#: Siga as Instruções de configuração do C# na página de bibliotecas de cliente e acesse a Documentação de referência do Video Intelligence para .NET.
PHP Siga as Instruções de configuração para PHP na página de bibliotecas de cliente e acesse a Documentação de referência do Video Intelligence para PHP.
Ruby: Siga as Instruções de configuração do Ruby na página de bibliotecas de cliente e acesse a Documentação de referência do Video Intelligence para Ruby.
Anotar um vídeo local
Confira na amostra de código a seguir como detectar logotipos em um arquivo de vídeo local.
REST
Enviar solicitação de anotação de vídeo
Para realizar a anotação em um arquivo de vídeo local, codifique em base64 o conteúdo do arquivo de vídeo.
Inclua o conteúdo codificado em base64 no campo inputContent
da solicitação.
Para informações sobre como codificar o conteúdo de um arquivo de vídeo em base64, consulte Codificação em Base64.
Veja a seguir como enviar uma solicitação POST para o método videos:annotate
.
Nele, é usado o token de acesso de uma conta de serviço configurada para o projeto com a Google Cloud CLI.
Para instruções sobre como instalar a CLI do Google Cloud, configurar um projeto com
uma conta de serviço e conseguir um token de acesso, consulte o
Guia de início rápido da API Video Intelligence.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- "inputContent": BASE64_ENCODED_CONTENT
Por exemplo:
"UklGRg41AwBBVkkgTElTVAwBAABoZHJsYXZpaDgAAAA1ggAAxPMBAAAAAAAQCAA..."
- LANGUAGE_CODE: [opcional] consulte idiomas compatíveis
- PROJECT_NUMBER: o identificador numérico do seu projeto do Google Cloud
Método HTTP e URL:
POST https://videointelligence.googleapis.com/v1/videos:annotate
Corpo JSON da solicitação:
{ "inputContent": "BASE64_ENCODED_CONTENT", "features": ["LOGO_RECOGNITION"], "videoContext": { } }
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID" }
Se a resposta for bem-sucedida, a API Video Intelligence retornará o name
para sua operação. O exemplo acima mostra um exemplo dessa resposta, em que project-number
é o nome do projeto e operation-id
é o ID da operação de longa duração criado para a solicitação.
- OPERATION_ID: fornecido na resposta quando você iniciou a operação, por exemplo,
12345...
.
Ver os resultados de anotação
Para recuperar o resultado da operação, faça uma solicitação GET usando o nome da operação retornado da chamada para videos:annotate, conforme mostrado no exemplo a seguir.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_NUMBER: o identificador numérico do projeto do Google Cloud
Método HTTP e URL:
GET https://videointelligence.googleapis.com/v1/OPERATION_NAME
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
As anotações de detecção de texto são retornadas como uma lista de textAnnotations
.
Observação: o campo done é retornado somente quando o valor dele é True.
Ele não é incluído nas respostas de uma operação não concluída.
Go
Para autenticar no Video Intelligence, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Java
Para autenticar no Video Intelligence, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Node.js
Para autenticar no Video Intelligence, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Python
Para autenticar no Video Intelligence, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Outras linguagens
C#: Siga as Instruções de configuração do C# na página das bibliotecas de cliente e acesse a Documentação de referência do Video Intelligence para .NET.
PHP Siga as Instruções de configuração para PHP na página de bibliotecas de cliente e acesse a Documentação de referência do Video Intelligence para PHP.
Ruby: Siga as Instruções de configuração do Ruby na página de bibliotecas de cliente e acesse a Documentação de referência do Video Intelligence para Ruby.