La fonctionnalité Détection SafeSearch détecte les contenus explicites, tels que ceux réservés aux adultes ou les images violentes. Cette fonctionnalité utilise cinq catégories (adult
, spoof
, medical
, violence
et racy
) et renvoie la probabilité que chacune d'elle soit présente dans une image donnée. Pour en savoir plus sur ces champs, consultez la page SafeSearchAnnotation.
Requêtes de détection SafeSearch
Configurer votre authentification et votre projet GCP
Détection de contenu explicite sur une image locale
L'API Vision peut détecter des caractéristiques sur un fichier image local en envoyant le contenu de ce fichier sous la forme d'une chaîne encodée en base64 dans le corps de la requête.
API REST et ligne de commande
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- base64-encoded-image : représentation en base64 (chaîne ASCII) de vos données d'image binaires. Cette chaîne doit ressembler à la chaîne suivante :
/9j/4QAYRXhpZgAA...9tAVx/zDQDlGxn//2Q==
Méthode HTTP et URL :
POST https://vision.googleapis.com/v1/images:annotate
Corps JSON de la requête :
{ "requests": [ { "image": { "content": "base64-encoded-image" }, "features": [ { "type": "SAFE_SEARCH_DETECTION" }, ] } ] }
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
.Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
curl -X POST \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
https://vision.googleapis.com/v1/images:annotate
PowerShell
.Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://vision.googleapis.com/v1/images:annotate" | Select-Object -Expand Content
Vous devriez recevoir une réponse JSON de ce type :
{ "responses": [ { "safeSearchAnnotation": { "adult": "UNLIKELY", "spoof": "VERY_UNLIKELY", "medical": "VERY_UNLIKELY", "violence": "LIKELY", "racy": "POSSIBLE" } } ] }
C#
Avant d'essayer cet exemple, suivez les instructions de configuration pour C# dans le guide de démarrage rapide de Vision à l'aide des bibliothèques clientes. Pour plus d'informations, consultez la documentation de référence de l'API Cloud Vision en langage C#.
Go
Avant d'essayer cet exemple, suivez les instructions de configuration pour Go du guide de démarrage rapide de Vision à l'aide des bibliothèques clientes. Pour plus d'informations, consultez la documentation de référence de l'API Cloud Vision en langage Go.
Java
Avant d'essayer cet exemple, suivez les instructions de configuration pour Java du guide de démarrage rapide de Vision à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Cloud Vision en langage Java.
Node.js
Avant d'essayer cet exemple, suivez les instructions de configuration pour Node.js du guide de démarrage rapide de Vision à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Cloud Vision en langage Node.js.
PHP
Avant d'essayer cet exemple, suivez les instructions de configuration pour PHP du guide de démarrage rapide de Vision à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Cloud Vision en langage PHP.
Python
Avant d'essayer cet exemple, suivez les instructions de configuration pour Python du guide de démarrage rapide de Vision à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Cloud Vision en langage Python.
Ruby
Avant d'essayer cet exemple, suivez les instructions de configuration pour Ruby du guide de démarrage rapide de Vision à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Cloud Vision en langage Ruby.
Détection de contenu explicite sur une image distante
Pour votre commodité, l APIAPI Vision peut exécuter la détection de caractéristiques directement sur un fichier image situé dans Google Cloud Storage ou sur le Web, sans qu'il soit nécessaire d'envoyer le contenu de ce fichier dans le corps de la requête.
API REST et ligne de commande
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- cloud-storage-image-uri : chemin d'accès à un fichier image valide dans un bucket Cloud Storage. Il faut au minimum disposer des droits en lecture sur le fichier.
Exemple :
gs://my-storage-bucket/img/image1.png
Méthode HTTP et URL :
POST https://vision.googleapis.com/v1/images:annotate
Corps JSON de la requête :
{ "requests": [ { "image": { "source": { "imageUri": "cloud-storage-image-uri" } }, "features": [ { "type": "SAFE_SEARCH_DETECTION" } ] } ] }
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
.Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
curl -X POST \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
https://vision.googleapis.com/v1/images:annotate
PowerShell
.Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://vision.googleapis.com/v1/images:annotate" | Select-Object -Expand Content
Vous devriez recevoir une réponse JSON de ce type :
{ "responses": [ { "safeSearchAnnotation": { "adult": "UNLIKELY", "spoof": "VERY_UNLIKELY", "medical": "VERY_UNLIKELY", "violence": "LIKELY", "racy": "POSSIBLE" } } ] }
C#
Avant d'essayer cet exemple, suivez les instructions de configuration pour C# dans le guide de démarrage rapide de Vision à l'aide des bibliothèques clientes. Pour plus d'informations, consultez la documentation de référence de l'API Cloud Vision en langage C#.
Go
Avant d'essayer cet exemple, suivez les instructions de configuration pour Go du guide de démarrage rapide de Vision à l'aide des bibliothèques clientes. Pour plus d'informations, consultez la documentation de référence de l'API Cloud Vision en langage Go.
Java
Avant d'essayer cet exemple, suivez les instructions de configuration pour Java du guide de démarrage rapide de Vision à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Cloud Vision en langage Java.
Node.js
Avant d'essayer cet exemple, suivez les instructions de configuration pour Node.js du guide de démarrage rapide de Vision à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Cloud Vision en langage Node.js.
PHP
Avant d'essayer cet exemple, suivez les instructions de configuration pour PHP du guide de démarrage rapide de Vision à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Cloud Vision en langage PHP.
Python
Avant d'essayer cet exemple, suivez les instructions de configuration pour Python du guide de démarrage rapide de Vision à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Cloud Vision en langage Python.
Ruby
Avant d'essayer cet exemple, suivez les instructions de configuration pour Ruby du guide de démarrage rapide de Vision à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Cloud Vision en langage Ruby.
gcloud
Pour effectuer une détection SafeSearch, utilisez la commande gcloud ml vision detect-safe-search
comme indiqué dans l'exemple suivant :
gcloud ml vision detect-safe-search gs://my_bucket/input_file