Détecter les étiquettes dans une image à l'aide de la ligne de commande
Cette page explique comment envoyer trois requêtes de détection de caractéristiques et d'annotation à l'API Vision à l'aide de l'interface REST et de la commande curl
.
L'API Vision permet d'intégrer facilement les technologies de reconnaissance visuelle de Google dans des applications de développement. Vous pouvez envoyer les données d'image et les types de fonctionnalités demandées à l'API Vision, qui enverra en retour la réponse correspondante en fonction des attributs d'image recherchés. Pour plus d'informations sur les fonctionnalités proposées, consultez la liste de toutes les fonctionnalités de l'API Vision.
Avant de commencer
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Vision API:
gcloud services enable vision.googleapis.com
-
Grant roles to your user account. Run the following command once for each of the following IAM roles:
roles/storage.objectViewer
gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
- Replace
PROJECT_ID
with your project ID. -
Replace
USER_IDENTIFIER
with the identifier for your user account. For example,user:myemail@example.com
. - Replace
ROLE
with each individual role.
- Replace
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Vision API:
gcloud services enable vision.googleapis.com
-
Grant roles to your user account. Run the following command once for each of the following IAM roles:
roles/storage.objectViewer
gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
- Replace
PROJECT_ID
with your project ID. -
Replace
USER_IDENTIFIER
with the identifier for your user account. For example,user:myemail@example.com
. - Replace
ROLE
with each individual role.
- Replace
Créer une requête d'annotation d'image
Après avoir suivi la procédure Avant de commencer, vous pouvez utiliser l'API Vision pour annoter un fichier image.
Dans cet exemple, la commande curl est utilisée pour envoyer à l'API Vision une requête portant sur l'image suivante :
URI Cloud Storage :
gs://cloud-samples-data/vision/using_curl/shanghai.jpeg
URL HTTPS :
https://console.cloud.google.com/storage/browser/cloud-samples-data/vision/using_curl/shanghai.jpeg
Créer la requête JSON
Le fichier request.json
suivant montre comment demander trois fonctionnalités images:annotate
et limiter les résultats dans la réponse.
Créez un fichier de requête JSON avec le texte suivant, puis enregistrez-le sous la forme d'un fichier texte brut nommé request.json
dans votre répertoire de travail :
request.json
{ "requests": [ { "image": { "source": { "imageUri": "gs://cloud-samples-data/vision/using_curl/shanghai.jpeg" } }, "features": [ { "type": "LABEL_DETECTION", "maxResults": 3 }, { "type": "OBJECT_LOCALIZATION", "maxResults": 1 }, { "type": "TEXT_DETECTION", "maxResults": 1, "model": "builtin/latest" } ] } ] }
Envoyer la requête
Utilisez curl et le corps du contenu de request.json
pour envoyer la requête à l'API Vision. Saisissez les lignes suivantes depuis l'invite de ligne de commande :
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "x-goog-user-project: PROJECT_ID" \ -H "Content-Type: application/json; charset=utf-8" \ https://vision.googleapis.com/v1/images:annotate -d @request.json
Interpréter la réponse
Vous devriez obtenir une réponse JSON semblable à celle présentée ci-dessous.
Dans le corps JSON de la requête, maxResults
était spécifié pour chaque type d'annotation.
Par conséquent, les résultats obtenus dans le JSON de la réponse sont les suivants :
- Trois résultats
labelAnnotations
- Un résultat
textAnnotations
(abrégé pour plus de clarté) - Un résultat
localizedObjectAnnotations
Résultats de la détection de thèmes
- Description : "People" (Personnes), score : 0,950
- Description : "Street" (Rue), score : 0,891
- Description : "Mode of transport" (Mode de transport), score : 0,890
Résultats de la détection de texte
- Texte : 牛牛面馆\n
- Sommets : (x : 159, y : 212), (x : 947, y : 212), (x : 947, y : 354), (x : 159, y : 354)
Résultats de la détection d'objets
- Nom : "Person" (Personne), score : 0,944
- Sommets normalisés : (x : 0,260, y : 0,468), (x : 0,407, y : 0,468), (x : 0,407, y : 0,895), (x : 0,260, y : 0,895)
Félicitations ! Vous avez envoyé votre première requête à l'API Vision.
Effectuer un nettoyage
Pour éviter que les ressources utilisées sur cette page ne soient facturées sur votre compte Google Cloud, supprimez le projet Google Cloud contenant les ressources.
Optional: Revoke credentials from the gcloud CLI.
gcloud auth revoke
Étape suivante
- Consultez la liste de tous les types de fonctionnalités et leur utilisation.
- Commencez à utiliser l'API Vision dans le langage de votre choix grâce à la bibliothèque cliente de l'API Vision.
- Utilisez les guides d'utilisation pour en savoir plus sur des fonctionnalités spécifiques, voir des exemples d'annotations et obtenir des annotations pour un fichier ou une image spécifique.
- En savoir plus sur l'annotation par lots des images et fichiers (PDF/TIFF/GIF).
- Parcourez une liste complète d'exemples de code de bibliothèque cliente.