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 degli 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 dell'immagine di tuo interesse. Per saperne di più sui tipi di funzionalità offerti, consulta l'elenco di tutte le funzionalità dell'API Vision.

Prima di iniziare

  1. Accedi al tuo Google Cloud account. 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 senza costi per l'esecuzione, il test e il deployment dei workload.
  2. Installa Google Cloud CLI.

  3. Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.

  4. Per inizializzare gcloud CLI, esegui questo comando:

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

    Ruoli richiesti per selezionare o creare un progetto

    • Seleziona un progetto: la selezione di un progetto non richiede un ruolo IAM specifico: puoi selezionare qualsiasi progetto su cui ti è stato concesso un ruolo.
    • Crea un progetto: per creare un progetto, devi disporre del ruolo Autore progetto (roles/resourcemanager.projectCreator), che contiene l' resourcemanager.projects.create autorizzazione. Scopri come concedere i ruoli.
    • Crea un Google Cloud progetto:

      gcloud projects create PROJECT_ID

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

    • Seleziona il Google Cloud progetto che hai creato:

      gcloud config set project PROJECT_ID

      Sostituisci PROJECT_ID con il nome del Google Cloud progetto.

  6. Verifica che la fatturazione sia abilitata per il tuo Google Cloud progetto.

  7. Abilita l'API Vision:

    Ruoli richiesti per abilitare le API

    Per abilitare le API, devi disporre del ruolo IAM Amministratore utilizzo servizi (roles/serviceusage.serviceUsageAdmin), che contiene l' serviceusage.services.enable autorizzazione. Scopri come concedere i ruoli.

    gcloud services enable vision.googleapis.com
  8. Concedi i ruoli al tuo account utente. Esegui il seguente comando una volta per ciascuno dei seguenti ruoli IAM: roles/storage.objectViewer

    gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE

    Sostituisci quanto segue:

    • PROJECT_ID: il tuo ID progetto.
    • USER_IDENTIFIER: l'identificatore del tuo account utente. Ad esempio, myemail@example.com.
    • ROLE: il ruolo IAM che concedi al tuo account utente.
  9. Installa Google Cloud CLI.

  10. Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.

  11. Per inizializzare gcloud CLI, esegui questo comando:

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

    Ruoli richiesti per selezionare o creare un progetto

    • Seleziona un progetto: la selezione di un progetto non richiede un ruolo IAM specifico: puoi selezionare qualsiasi progetto su cui ti è stato concesso un ruolo.
    • Crea un progetto: per creare un progetto, devi disporre del ruolo Autore progetto (roles/resourcemanager.projectCreator), che contiene l' resourcemanager.projects.create autorizzazione. Scopri come concedere i ruoli.
    • Crea un Google Cloud progetto:

      gcloud projects create PROJECT_ID

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

    • Seleziona il Google Cloud progetto che hai creato:

      gcloud config set project PROJECT_ID

      Sostituisci PROJECT_ID con il nome del Google Cloud progetto.

  13. Verifica che la fatturazione sia abilitata per il tuo Google Cloud progetto.

  14. Abilita l'API Vision:

    Ruoli richiesti per abilitare le API

    Per abilitare le API, devi disporre del ruolo IAM Amministratore utilizzo servizi (roles/serviceusage.serviceUsageAdmin), che contiene l' serviceusage.services.enable autorizzazione. Scopri come concedere i ruoli.

    gcloud services enable vision.googleapis.com
  15. Concedi i ruoli al tuo account utente. Esegui il seguente comando una volta per ciascuno dei seguenti ruoli IAM: roles/storage.objectViewer

    gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE

    Sostituisci quanto segue:

    • PROJECT_ID: il tuo ID progetto.
    • USER_IDENTIFIER: l'identificatore del tuo account utente. Ad esempio, myemail@example.com.
    • ROLE: il ruolo IAM che concedi al tuo account utente.

Invia una richiesta di annotazione di immagine

Dopo aver completato i passaggi della sezione 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 file JSON di richiesta

Il seguente file request.json mostra come richiedere tre images:annotate funzionalità 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 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

Utilizza curl e i contenuti 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, nella risposta JSON 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

  • 牛牛面馆
  • 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 degli oggetti.
Credito immagine: Steve Long su Unsplash (annotazioni aggiunte).

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

Libera spazio

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

(Facoltativo) Revoca le credenziali da gcloud CLI.

gcloud auth revoke

Passaggi successivi

  • Consulta un elenco di tutti i tipi di funzionalità e dei relativi utilizzi.
  • Inizia a utilizzare l'API Vision nella lingua di tua scelta utilizzando una libreria client dell'API Vision.
  • Utilizza le guide pratiche per scoprire di più su funzionalità specifiche , visualizzare annotazioni di esempio e ottenere annotazioni per un singolo file o immagine.
  • Scopri di più sull'annotazione batch di immagini e file (PDF/TIFF/GIF).
  • Sfoglia un elenco completo di esempi di codice della libreria client .