Reconocer celebridades

En esta página, se describe cómo reconocer a las celebridades en un video con la API de Video Intelligence.

La API de Video Intelligence puede inspeccionar tu contenido de video para detectar rostros humanos que aparecen en el segmento de video o video de entrada. Cuando reconoce un rostro, la API de Video Intelligence puede compararlo con una colección de celebridades recopiladas por Google.

Si se encuentra una coincidencia, la API de Video Intelligence proporciona el ID de máquina (MID) del Gráfico de conocimiento, el nombre de la celebridad y un cuadro de límite que indica dónde aparece el rostro en el video.

Solicita acceso a la función

Esta función se diseñó para que la usen las empresas de medios de comunicación y entretenimiento o socios aprobados que trabajan con contenido multimedia profesional. Para solicita acceso a la API, envía este formulario con información sobre tu empresa y tu caso de uso.

Reconoce a una celebridad en un video

En las siguientes muestras de código se demuestra cómo reconocer el rostro de una celebridad en un video. La muestra usa el campo opcional outputUri en la solicitud para especificar una ubicación para los resultados de la anotación.

REST

Envía la solicitud

A continuación, se muestra cómo enviar una solicitud POST al método annotate. 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 instrucciones para instalar Google Cloud CLI, configurar un proyecto con un servicio 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 la ubicación de Cloud Storage del archivo de video que deseas anotar.
  • OUTPUT_URI: Es la ubicación de Cloud Storage en la que quieres que se guarden los resultados.
  • PROJECT_NUMBER: El identificador numérico de tu proyecto de Google Cloud

Método HTTP y URL:

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

Cuerpo JSON de la solicitud:

{
  "inputUri": "gs://INPUT_URI",
  "outputUri": "gs://OUTPUT_URI",
  "features": ["CELEBRITY_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 solicitud es exitosa, Video Intelligence muestra el nombre de tu operación.

Obtén los resultados

Para obtener los resultados de tu solicitud, debes enviar una solicitud GET al recurso projects.operations. A continuación, se muestra cómo enviar una solicitud de este tipo.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • OPERATION_NAME: Es el campo name que muestra la llamada a la API de Video Intelligence. Este es un valor en el formato:
    projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID,
    donde:
    • PROJECT_NUMBER es el número. de tu proyecto de Google Cloud,
    • LOCATION_ID es la región en la nube en la que se realizó la anotación (por ejemplo: us-east1, us-west1, europe-west1 o asia-east1).
    • OPERATION_ID es el ID de la operación de larga duración.

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:

{
  "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": [
      {
        ...
      }
    ]
  }
}

El resultado de la anotación del video debería ser similar al siguiente ejemplo.


{
  "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/var>"
          },
          "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": {...}
      } ]
    }
    ...
}

Solicita la exclusión de celebridades

Si eres una celebridad y deseas que no se te incluya en esta función para la API de Cloud Vision o Video Intelligence, envía este formulario.

Denuncia el uso inadecuado

Si sospechas que la función de reconocimiento de celebridades de la API de Video Intelligence se está usando de manera incorrecta, infórmanos mediante este formulario.