Rilevare le etichette in un'immagine utilizzando la riga di comando

Questa pagina mostra come inviare tre richieste di rilevamento e annotazione delle funzionalità all'API Vision utilizzando l'interfaccia REST e il comando curl.

L'API Vision consente di integrare facilmente le tecnologie di riconoscimento visivo di Google nelle applicazioni per sviluppatori. Puoi inviare i dati delle immagini e i tipi di funzionalità desiderati all'API Vision, che restituisce una risposta corrispondente in base agli attributi delle immagini che ti interessano. Per ulteriori informazioni sui tipi di funzionalità offerti, consulta l'elenco di tutte le funzionalità dell'API Vision.

Prima di iniziare

  1. Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
  2. Installa Google Cloud CLI.
  3. Per initialize gcloud CLI, esegui questo comando:

    gcloud init
  4. Crea o seleziona un progetto Google Cloud.

    • Crea un progetto Google Cloud:

      gcloud projects create PROJECT_ID

      Sostituisci PROJECT_ID con un nome per il progetto Google Cloud che stai creando.

    • Seleziona il progetto Google Cloud che hai creato:

      gcloud config set project PROJECT_ID

      Sostituisci PROJECT_ID con il nome del tuo progetto Google Cloud.

  5. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  6. Attiva Vision API.

    gcloud services enable vision.googleapis.com
  7. Concedi i ruoli al tuo Account Google. Esegui questo comando una volta per ciascuno dei seguenti ruoli IAM: roles/storage.objectViewer

    gcloud projects add-iam-policy-binding PROJECT_ID --member="user:EMAIL_ADDRESS" --role=ROLE
    • Sostituisci PROJECT_ID con l'ID progetto.
    • Sostituisci EMAIL_ADDRESS con il tuo indirizzo email.
    • Sostituisci ROLE con ogni singolo ruolo.
  8. Installa Google Cloud CLI.
  9. Per initialize gcloud CLI, esegui questo comando:

    gcloud init
  10. Crea o seleziona un progetto Google Cloud.

    • Crea un progetto Google Cloud:

      gcloud projects create PROJECT_ID

      Sostituisci PROJECT_ID con un nome per il progetto Google Cloud che stai creando.

    • Seleziona il progetto Google Cloud che hai creato:

      gcloud config set project PROJECT_ID

      Sostituisci PROJECT_ID con il nome del tuo progetto Google Cloud.

  11. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  12. Attiva Vision API.

    gcloud services enable vision.googleapis.com
  13. Concedi i ruoli al tuo Account Google. Esegui questo comando una volta per ciascuno dei seguenti ruoli IAM: roles/storage.objectViewer

    gcloud projects add-iam-policy-binding PROJECT_ID --member="user:EMAIL_ADDRESS" --role=ROLE
    • Sostituisci PROJECT_ID con l'ID progetto.
    • Sostituisci EMAIL_ADDRESS con il tuo indirizzo email.
    • Sostituisci ROLE con ogni singolo ruolo.

Invia una richiesta di annotazione di immagine

Dopo aver completato i passaggi Prima di iniziare, puoi utilizzare l'API Vision per annotare un file immagine.

In questo esempio utilizzi curl per inviare una richiesta all'API Vision utilizzando la seguente immagine:

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

Immagine di una strada di Shanghai.
Credito immagine: Steve Long su Unsplash.

Crea il JSON della richiesta

Il seguente file request.json mostra come richiedere tre funzionalità images:annotate e limitare i risultati nella risposta.

Crea il file di richiesta JSON con il testo seguente e salvalo come file di testo normale request.json nella tua directory di lavoro:

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"
        }
      ]
    }
  ]
}

Invia la richiesta

Devi usare curl e il contenuto del corpo di request.json per inviare la richiesta all'API Vision. Inserisci quanto segue nella riga di comando:

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

Interpreta la risposta

Dovresti visualizzare una risposta JSON simile a quella riportata di seguito.

Il corpo JSON della richiesta ha specificato maxResults per ogni tipo di annotazione. Di conseguenza, nel JSON della risposta vedrai quanto segue:

Risultati del rilevamento etichette

  1. descrizione: "Persone", punteggio: 0,950
  2. descrizione: "Strada", punteggio: 0,891
  3. descrizione: "Mezzo di trasporto", punteggio: 0,890
Immagine di una strada di Shanghai contenente i risultati del rilevamento etichette.
Credito immagine: Steve Long su Unsplash (annotazioni aggiunte).

Risultati del rilevamento testo

  • testo: 牛牛面馆\n
  • vertici: (x: 159, y: 212), (x: 947, y: 212), (x: 947, y: 354), (x: 159, y: 354)
Immagine di una strada di Shanghai contenente i risultati del rilevamento del testo.
Credito immagine: Steve Long su Unsplash (annotazioni aggiunte).

Risultati del rilevamento oggetti

  • nome: "Persona", punteggio: 0,944
  • vertici normalizzati: (x: 0,260, y: 0,468), (x: 0,407, y: 0,468), (x: 0,407, y: 0,895), (x: 0,260, y: 0,895)
Immagine di una strada di Shanghai contenente i risultati del rilevamento di oggetti.
Credito immagine: Steve Long su Unsplash (annotazioni aggiunte).

Complimenti! Hai inviato la tua prima richiesta all'API Vision.

Esegui la pulizia

Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questa pagina, elimina il progetto Google Cloud con le risorse.

Facoltativo: revoca le credenziali dallgcloud CLI.

gcloud auth revoke

Passaggi successivi

  • Consulta l'elenco di tutti i tipi di funzionalità e dei relativi utilizzi.
  • Inizia a utilizzare l'API Vision nella lingua che preferisci utilizzando una libreria client dell'API Vision.
  • Utilizza le guide illustrative per saperne di più su funzionalità specifiche, visualizzare annotazioni di esempio e ottenere annotazioni per un singolo file o un'immagine singola.
  • Scopri di più sulle annotazioni batch di immagine e file (PDF/TIFF/GIF).
  • Sfoglia un elenco completo di esempi di codice di librerie client.