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
O exemplo de código a seguir demonstra como detectar logotipos em um 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 Google Cloud CLI, configurar um projeto com
uma conta de serviço e, para conseguir um token de acesso, consulte
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 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 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.