L'API Video Intelligence peut identifier des entités affichées dans des séquences vidéo à l'aide de la fonctionnalité LABEL_DETECTION. Cette fonctionnalité identifie les objets, les lieux, les activités, les espèces animales, les produits, etc.
L'analyse peut être compartimentée comme suit :
- Niveau du cadre :
les entités sont identifiées et étiquetées dans chaque image (avec un échantillonnage d'une image par seconde). - Niveau de prise de vue :
Des prises de vue sont automatiquement détectées dans chaque segment (ou vidéo). Les entités sont alors identifiées et libellées dans chaque plan. - Niveau du segment :
l'utilisateur peut sélectionner des segments d'une vidéo et les spécifier pour l'analyse en indiquant les horodatages de début et de fin à prendre en compte pour l'annotation (voir le type VideoSegment). Les entités sont alors identifiées et libellées dans chaque segment. Si aucun segment n'est spécifié, l'intégralité de la vidéo est traitée comme un segment unique.
Annoter un fichier local
Voici un exemple d'analyse de thèmes au sein d'un fichier vidéo local.
Vous souhaitez obtenir une analyse plus approfondie ? Consultez le tutoriel détaillé en Python.
API REST et ligne de commande
Envoyer la requête de processus
Vous trouverez ci-dessous la procédure à suivre pour envoyer une requête POST
à la méthode videos:annotate
. Vous pouvez configurer le LabelDetectionMode
sur annotations au niveau du plan et/ou du cadre. Nous vous recommandons d'utiliser SHOT_AND_FRAME_MODE
. Cet exemple fait intervenir le jeton d'accès associé à un compte de service configuré pour le projet à l'aide du SDK Cloud. Pour obtenir des instructions sur l'installation du SDK Cloud, 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 requête ci-dessous, effectuez les remplacements suivants :
- base64-encoded-content : votre vidéo sous forme de données encodées en base64 Consultez les instructions concernant la conversion des données en base64.
Méthode HTTP et URL :
POST https://videointelligence.googleapis.com/v1/videos:annotate
Corps JSON de la requête :
{ "inputContent": "base64-encoded-content", "features": ["LABEL_DETECTION"], }
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 requête, vous devez envoyer une requête GET
à la ressource projects.locations.operations
. Vous trouverez ci-dessous la procédure à suivre pour envoyer une requête de ce type.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- operation-name : nom de l'opération tel qu'il est renvoyé par l'API Video Intelligence. Il est au format suivant :
projects/project-number/locations/location-id/operations/operation-id
.
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 :
C#
Go
Java
Node.js
Python
Pour en savoir plus sur l'installation et l'utilisation de la bibliothèque cliente de l'API Cloud Video Intelligence pour Python, reportez-vous aux bibliothèques clientes de l'API Cloud Video Intelligence.PHP
Ruby
Annoter un fichier dans Cloud Storage
Voici un exemple d'analyse de thèmes sur un fichier vidéo situé sur Cloud Storage.
API REST et ligne de commande
Envoyer la requête de processus
Vous trouverez ci-dessous la procédure à suivre pour envoyer une requête POST
à la méthode annotate
. Cet exemple fait intervenir le jeton d'accès associé à un compte de service configuré pour le projet à l'aide du SDK Cloud. Pour obtenir des instructions sur l'installation du SDK Cloud, 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 requête ci-dessous, effectuez les remplacements suivants :
- input-uri : bucket Cloud Storage contenant le fichier que vous souhaitez annoter, y compris son nom. Doit commencer par
gs://
.
Méthode HTTP et URL :
POST https://videointelligence.googleapis.com/v1/videos:annotate
Corps JSON de la requête :
{ "inputUri": "input-uri", "features": ["LABEL_DETECTION"], }
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 requête, vous devez envoyer une requête GET
à la ressource projects.locations.operations
. Vous trouverez ci-dessous la procédure à suivre pour envoyer une requête de ce type.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- operation-name : nom de l'opération tel qu'il est renvoyé par l'API Video Intelligence. Il est au format suivant :
projects/project-number/locations/location-id/operations/operation-id
.
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 :
Télécharger les résultats d'annotation
Copiez l'annotation de la source dans le bucket de destination (consultez la section Copier des fichiers et des objets).
gsutil cp gcs_uri gs://my-bucket
Remarque: Si l'URI de sortie gcs de sortie est fourni par l'utilisateur, l'annotation est stockée dans cet URI gcs.