A Video Intelligence API pode identificar entidades apresentadas em filmagens de vídeo através da funcionalidade LABEL_DETECTION. Esta funcionalidade identifica objetos, localizações, atividades, espécies de animais, produtos e muito mais.
A análise pode ser compartimentada da seguinte forma:
- Nível de frames:
as entidades são identificadas e etiquetadas em cada frame (com uma amostragem de um frame por segundo). - Nível de planos:
os planos são detetados automaticamente em todos os segmentos (ou vídeos). Em seguida, as entidades são identificadas e etiquetadas em cada tomada. - Nível do segmento:
os segmentos de um vídeo selecionados pelo utilizador podem ser especificados para análise, estipulando as compensações de tempo de início e fim para fins de anotação (consulte VideoSegment). Em seguida, as entidades são identificadas e etiquetadas em cada segmento. Se não forem especificados segmentos, todo o vídeo é tratado como um segmento.
Anote um ficheiro local
Segue-se um exemplo de como realizar a análise de vídeo para etiquetas num ficheiro local.
Procura algo mais detalhado? Consulte o nosso tutorial de Python detalhado.
REST
Envie o pedido de processamento
O exemplo seguinte mostra como enviar um pedido POST
para o método videos:annotate
. Pode configurar o
LabelDetectionMode
para anotações ao nível da cena e/ou do frame. Recomendamos que use o
SHOT_AND_FRAME_MODE
. O exemplo usa a chave de acesso para uma conta de serviço configurada para o projeto através da CLI do Google Cloud. Para ver instruções sobre como instalar a CLI Google Cloud, configurar um projeto com uma conta de serviço e obter um token de acesso, consulte o início rápido do Video Intelligence.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- BASE64_ENCODED_CONTENT: o vídeo como dados codificados em base64. Consulte as instruções sobre como converter os seus dados para base64.
- PROJECT_NUMBER: o identificador numérico do seu Google Cloud projeto
Método HTTP e URL:
POST https://videointelligence.googleapis.com/v1/videos:annotate
Corpo JSON do pedido:
{ "inputContent": "BASE64_ENCODED_CONTENT", "features": ["LABEL_DETECTION"], }
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID" }
Se o pedido for bem-sucedido, o Video Intelligence devolve o nome da sua operação.
Obtenha os resultados
Para receber os resultados do seu pedido, tem de enviar um GET
pedido para o recurso projects.locations.operations
. A imagem seguinte mostra como enviar um pedido deste tipo.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- OPERATION_NAME: o nome da operação, conforme devolvido 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 seu Google Cloud projeto
Método HTTP e URL:
GET https://videointelligence.googleapis.com/v1/OPERATION_NAME
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
Go
Java
Node.js
Python
Para mais informações sobre a instalação e a utilização da biblioteca cliente da Video Intelligence API para Python, consulte o artigo Bibliotecas cliente da Video Intelligence API.Idiomas adicionais
C#: Siga as instruções de configuração do C# na página das bibliotecas cliente e, em seguida, visite a documentação de referência da Video Intelligence API para .NET.
PHP: Siga as instruções de configuração do PHP na página das bibliotecas cliente e, em seguida, visite a documentação de referência da Video Intelligence API para PHP.
Ruby: Siga as instruções de configuração do Ruby na página das bibliotecas cliente e, em seguida, visite a documentação de referência da Video Intelligence API para Ruby.
Anotar um ficheiro no Cloud Storage
Segue-se um exemplo de como realizar a análise de vídeo para etiquetas num ficheiro localizado no Cloud Storage.
REST
Para mais informações sobre a instalação e a utilização da biblioteca cliente da Video Intelligence API para Python, consulte o artigo Bibliotecas cliente da Video Intelligence API.Envie o pedido de processamento
O exemplo seguinte mostra como enviar um pedido POST
para o método annotate
. O exemplo usa a chave de acesso para uma conta de serviço configurada para o projeto através da CLI do Google Cloud. Para ver instruções sobre como instalar a CLI Google Cloud, configurar um projeto com uma conta de serviço e obter um token de acesso, consulte o início rápido do Video Intelligence.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- INPUT_URI: um contentor do Cloud Storage que contém o ficheiro que quer anotar, incluindo o nome do ficheiro. Tem de
começar com
gs://
. - PROJECT_NUMBER: o identificador numérico do seu Google Cloud projeto
Método HTTP e URL:
POST https://videointelligence.googleapis.com/v1/videos:annotate
Corpo JSON do pedido:
{ "inputUri": "INPUT_URI", "features": ["LABEL_DETECTION"], }
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID" }
Se o pedido for bem-sucedido, a Video Intelligence devolve o nome da sua operação.
Obtenha os resultados
Para receber os resultados do seu pedido, tem de enviar um GET
pedido para o recurso projects.locations.operations
. A imagem seguinte mostra como enviar um pedido deste tipo.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- OPERATION_NAME: o nome da operação, conforme devolvido 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 seu Google Cloud projeto
Método HTTP e URL:
GET https://videointelligence.googleapis.com/v1/OPERATION_NAME
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
Transfira os resultados das anotações
Copie a anotação da origem para o contentor de destino: (consulte o artigo Copie ficheiros e objetos)
gcloud storage cp gcs_uri gs://my-bucket
Nota: se o URI do GCS de saída for fornecido pelo utilizador, a anotação é armazenada nesse URI do GCS.
Go
Java
Node.js
Python
Idiomas adicionais
C#: Siga as instruções de configuração do C# na página das bibliotecas cliente e, em seguida, visite a documentação de referência da Video Intelligence API para .NET.
PHP: Siga as instruções de configuração do PHP na página das bibliotecas cliente e, em seguida, visite a documentação de referência da Video Intelligence API para PHP.
Ruby: Siga as instruções de configuração do Ruby na página das bibliotecas cliente e, em seguida, visite a documentação de referência da Video Intelligence API para Ruby.