Reconnaître les célébrités

Cette page explique comment reconnaître des célébrités dans une vidéo à l'aide de l'API Video Intelligence.

L'API Video Intelligence peut inspecter votre contenu vidéo pour détecter et suivre les visages qui apparaissent dans la vidéo d'entrée ou le segment vidéo. Lorsqu'elle reconnaît un visage, l'API Video Intelligence peut le comparer à une collection d'images de célébrités rassemblée par Google.

Si une correspondance est trouvée, l'API Video Intelligence fournit l'identifiant de machine Knowledge Graph (MID) et le nom de la célébrité, ainsi qu'un cadre de délimitation indiquant où le visage apparaît dans la vidéo.

Demander l'accès à cette fonctionnalité

Cette fonctionnalité est destinée aux entreprises du secteur du multimédia et du divertissement ou aux partenaires agréés qui utilisent du contenu multimédia produit par des professionnels. Pour demander l'accès à l'API, veuillez nous envoyer ce formulaire contenant des informations sur votre entreprise et votre cas d'utilisation.

Reconnaître une célébrité dans une vidéo

Les exemples de code suivants montrent comment reconnaître le visage d'une célébrité dans une vidéo. L'exemple utilise le champ facultatif outputUri de la requête pour spécifier un emplacement pour les résultats d'annotation.

REST

Envoyer la requête

Vous trouverez ci-dessous la procédure à suivre pour envoyer une requête POST à la méthode annotate. L'exemple fait intervenir le jeton d'accès associé à un compte de service configuré pour le projet à l'aide de la Google Cloud CLI. Pour obtenir des instructions sur l'installation de la Google Cloud CLI, la configuration d'un projet avec un compte de service et l'obtention d'un jeton d'accès, consultez le guide de démarrage rapide de Video Intelligence.

Avant d'utiliser les données de la requête, effectuez les remplacements suivants:

  • INPUT_URI: emplacement Cloud Storage du fichier vidéo que vous souhaitez annoter.
  • OUTPUT_URI: emplacement Cloud Storage où vous souhaitez enregistrer les résultats.
  • PROJECT_NUMBER: identifiant numérique de votre projet Google Cloud

Méthode HTTP et URL :

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

Corps JSON de la requête :

{
  "inputUri": "gs://INPUT_URI",
  "outputUri": "gs://OUTPUT_URI",
  "features": ["CELEBRITY_RECOGNITION"]
}

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :


{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID"
}

Si la requête aboutit, Video Intelligence renvoie le nom de votre opération.

Obtenir les résultats

Pour obtenir les résultats de votre demande, vous devez envoyer une requête GET à la ressource projects.operations. Vous trouverez ci-dessous la procédure à suivre pour envoyer une requête de ce type.

Avant d'utiliser les données de la requête, effectuez les remplacements suivants:

  • OPERATION_NAME : le champ name renvoyé par l'appel à l'API Video Intelligence. Il s'agit d'une valeur au format suivant :
    projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID,
    où :
    • PROJECT_NUMBER est le numéro de votre projet Google Cloud.
    • LOCATION_ID est la région cloud où l'annotation a eu lieu (par exemple : us-east1, us-west1, europe-west1, asia-east1).
    • OPERATION_ID est l'ID de l'opération de longue durée.

Méthode HTTP et URL :

GET https://videointelligence.googleapis.com/v1/OPERATION_NAME

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

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

Le résultat de l'annotation de la vidéo doit ressembler à l'exemple suivant.


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

Demander la désactivation des célébrités

Si vous êtes une célébrité et que vous ne souhaitez pas participer à cette fonctionnalité de l'API Cloud Vision ou Video Intelligence, veuillez envoyer ce formulaire.

Signaler un usage abusif

Si vous pensez que la fonctionnalité d'identification de célébrités de l'API Video Intelligence est utilisée de manière abusive, veuillez nous en informer à l'aide de ce formulaire.