La détection de contenu explicite permet de détecter le contenu réservé aux adultes dans les vidéos. Le contenu réservé aux adultes est généralement inapproprié aux moins de 18 ans et inclut, sans s'y limiter, la nudité, les activités sexuelles et la pornographie. Ce type de contenu est également détecté dans des dessins animés ou dans des animations.
La réponse comprend une valeur de probabilité compartimentée, allant de VERY_UNLIKELY
à VERY_LIKELY
.
Lorsque la fonctionnalité de détection de contenu explicite évalue une vidéo, elle le fait sur la base des images, et ne prend en compte que le contenu visuel. La partie audio de la vidéo n'est pas utilisée.
Voici un exemple d'utilisation des fonctionnalités de détection de contenu explicite sur un fichier situé dans Cloud Storage.
REST
Envoyer une requête d'annotation vidéo
Vous trouverez ci-dessous la procédure à suivre pour envoyer une requête à la méthode videos:annotate
. L'exemple utilise la Google Cloud CLI pour créer un jeton d'accès. Pour
pour installer la gcloud CLI, consultez la
Guide de démarrage rapide de l'API 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://
.
Par exemple,"inputUri": "gs://cloud-videointelligence-demo/assistant.mp4",
- PROJECT_NUMBER: identifiant numérique de votre projet Google Cloud
Méthode HTTP et URL :
POST https://videointelligence.googleapis.com/v1/videos:annotate
Corps JSON de la requête :
{ "inputUri": "INPUT_URI", "features": ["EXPLICIT_CONTENT_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 réponse aboutit, l'API Video Intelligence renvoie le name
de votre opération. Vous trouverez ci-dessous un exemple de réponse de ce type, où :
- PROJECT_NUMBER : numéro de votre projet.
- LOCATION_ID : région cloud dans laquelle l'annotation doit avoir lieu. Les régions cloud compatibles sont les suivantes :
us-east1
,us-west1
,europe-west1
etasia-east1
. Si aucune région n'est spécifiée, une région sera déterminée en fonction de l'emplacement du fichier vidéo. - OPERATION_ID : ID de l'opération de longue durée créée pour la requête, qui est fourni dans la réponse renvoyée au démarrage de l'opération, par exemple
12345...
Obtenir des résultats d'annotation
Pour récupérer le résultat de l'opération, envoyez une requête GET en utilisant le nom de l'opération renvoyé par l'appel à videos:annotate
, comme indiqué dans l'exemple suivant.
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 a été renvoyé par l'API Video Intelligence. Il est au format suivant :
projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID
. - PROJECT_NUMBER: identifiant numérique de votre projet Google Cloud
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.v1.AnnotateVideoProgress", "annotationProgress": [ { "inputUri": "/demomaker/gbikes_dinosaur.mp4", "progressPercent": 100, "startTime": "2020-03-26T00:16:35.112404Z", "updateTime": "2020-03-26T00:16:55.937889Z" } ] }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.videointelligence.v1.AnnotateVideoResponse", "annotationResults": [ { "inputUri": "/demomaker/gbikes_dinosaur.mp4", "explicitAnnotation": { "frames": [ { "timeOffset": "0.056149s", "pornographyLikelihood": "VERY_UNLIKELY" }, { "timeOffset": "1.166841s", "pornographyLikelihood": "VERY_UNLIKELY" }, ... { "timeOffset": "41.678209s", "pornographyLikelihood": "VERY_UNLIKELY" }, { "timeOffset": "42.596413s", "pornographyLikelihood": "VERY_UNLIKELY" } ] } } ] } }
shotAnnotations
.
Remarque: Le champ done n'est renvoyé que si sa valeur est True.
Il n'est pas inclus dans les réponses pour lesquelles l'opération n'est pas terminée.
Télécharger les résultats des annotations
Copiez l'annotation de la source vers le bucket de destination (consultez la page Copier des fichiers et des objets) :
gcloud storage cp gcs_uri gs://my-bucket
Remarque : Si l'URI GCS de sortie est fourni par l'utilisateur, l'annotation est stockée dans cet URI.
Go
Java
Pour vous authentifier auprès de Video Intelligence, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Node.js
Pour vous authentifier auprès de Video Intelligence, configurez les identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
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.Langues supplémentaires
C#: Veuillez suivre les Instructions de configuration de C# sur la page des bibliothèques clientes puis accédez à la page Documentation de référence de Video Intelligence pour .NET
PHP : Veuillez suivre les instructions de configuration pour PHP sur la page des bibliothèques clientes, puis consultez la documentation de référence sur Video Intelligence pour PHP.
Ruby : Veuillez suivre les instructions de configuration pour Ruby sur la page des bibliothèques clientes, puis consultez la documentation de référence sur Video Intelligence pour Ruby.