Como reconhecer celebridades

Esta página descreve como reconhecer celebridades em um vídeo usando a API Video Intelligence.

A API Video Intelligence pode inspecionar o conteúdo de vídeo para detectar e rastrear rostos humanos que aparecem no vídeo de entrada ou no segmento. Quando reconhece um rosto, a API Video Intelligence pode comparar o rosto com uma coleção de celebridades coletadas pelo Google.

Se uma correspondência for encontrada, a API Video Intelligence fornecerá o ID de máquina do mapa de informações (MID, na sigla em inglês) e o nome da celebridade e uma caixa delimitadora que indica onde o rosto aparece no vídeo.

Solicitar acesso ao recurso

Este recurso destina-se ao uso por empresas de mídia e entretenimento ou por parceiros aprovados que envolve conteúdo de mídia produzido profissionalmente. Para solicitar acesso à API, envie este formulário com informações sobre sua empresa e caso de uso.

Reconhecer uma celebridade em um vídeo

Os exemplos de código a seguir demonstram como reconhecer o rosto de uma celebridade em um vídeo. A amostra usa o campo opcional outputUri na solicitação para especificar um local para os resultados da anotação.

REST e LINHA DE CMD

Enviar a solicitação

Veja a seguir como enviar uma solicitação POST para o método annotate. O exemplo utiliza o token de acesso para uma conta de serviço configurada para o projeto com o SDK do Cloud. Consulte o Guia de início rápido da Video Intelligence para instruções de como instalar o SDK do Cloud, configurar um projeto com uma conta de serviço e conseguir um token de acesso.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • input-uri: o local do Cloud Storage do arquivo de vídeo que você quer anotar.
  • output-uri: o local do Cloud Storage em que você quer salvar os resultados.

Método HTTP e URL:

POST https://videointelligence.googleapis.com/v1p3beta1/videos:annotate

Corpo JSON da solicitação:

{
  "inputUri": "gs://input-uri",
  "outputUri": "gs://output-uri",
  "features": ["CELEBRITY_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 solicitação for bem-sucedida, a Video Intelligence retornará o nome da operação.

Ver os resultados

Para receber os resultados da solicitação, envie uma solicitação GET para o recurso projects.operations. Veja a seguir como enviar essa solicitação.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • operation-name: o campo name retornado da chamada para a API Video Intelligence. Este é um valor no formato:
    projects/project-number/locations/location-id/operations/operation-id,
    em que:
    • project-number é o número do seu projeto do Google Cloud;
    • location-id é a região da nuvem em que a anotação ocorreu (por exemplo: us-east1, us-west1, europe-west1, asia-east1);
    • operation-id é o ID da operação de longa duração.

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:

{
  "name": "projects/project-number/locations/location-id/operations/operation-id",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.videointelligence.v1p3beta1.AnnotateVideoProgress",
    "annotationProgress": [
      {
        "inputUri": "input-uri",
        "progressPercent": 100,
        "startTime": "2020-05-12T19:36:09.110351Z",
        "updateTime": "2020-05-12T19:36:17.519069Z"
      }
    ]
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.videointelligence.v1p3beta1.AnnotateVideoResponse",
    "annotationResults": [
      {
        ...
      }
    ]
  }
}

A saída da anotação do vídeo deve ser semelhante ao exemplo a seguir.


{
  "annotationResults": [ {
    "inputUri": "input-uri,
    "segment": {
      "startTimeOffset": {

      },
      "endTimeOffset": {
        "seconds": 19,
        "nanos": 519500000
      }
    },
    "celebrityRecognitionAnnotations": {
      "celebrityTracks": [ {
        "celebrities": [...],
        "faceTrack": {...}
      }, {
        "celebrities": [ {
          "celebrity": {
            "name": "video-intelligence/celebrity-mid",
            "displayName": "celebrity-name"
          },
          "confidence": 0.81873637
        } ],
        "faceTrack": {
          "segment": {
            "startTimeOffset": {
              "seconds": 1,
              "nanos": 459791000
            },
            "endTimeOffset": {
              "seconds": 3,
              "nanos": 712041000
            }
          },
          "timestampedObjects": [ {
            "normalizedBoundingBox": {...},
            "timeOffset": {...}
          }, {
            "normalizedBoundingBox": {
              "left": 0.38046876,
              "top": 0.26249999,
              "right": 0.60312498,
              "bottom": 0.72361112
            },
            "timeOffset": {
              "seconds": 1,
              "nanos": 459791000
            }
          }, {
            "normalizedBoundingBox": {...},
            "timeOffset": {...}
          }]
        }
      }, {
        "celebrities": [...],
        "faceTrack": {...}
      } ]
    }
    ...
}

Solicitar desativação de celebridade

Se você é uma celebridade e não quer ser incluído neste recurso para o Cloud Vision ou para a API Video Intelligence, envie este formulário.

Denunciar uso indevido

Se você suspeitar que o recurso de reconhecimento de celebridade da API Video Intelligence está sendo usado de maneira inadequada, informe-nos por meio deste formulário (em inglês).