Dopo aver creato (addestrato) un modello e averne eseguito il deployment, puoi effettuare richieste di previsione online (o sincrone).
Esempio di previsione online (individuale)
Dopo aver eseguito il deployment del modello addestrato, puoi richiedere una previsione per un'immagine utilizzando il metodo predict oppure utilizzare l'interfaccia utente per ottenere annotazioni di previsione. Il metodo predict
applica le etichette ai riquadri di delimitazione degli oggetti
nell'immagine.
Durante il deployment del modello vengono addebitati dei costi. Dopo aver effettuato previsioni con il modello addestrato, puoi undeploy del modello se non vuoi più incorrere in costi di utilizzo dell'hosting del modello.
UI web
Apri l'interfaccia utente per il rilevamento di oggetti AutoML Vision e fai clic sulla scheda Modelli (con l'icona a forma di lampadina) nella barra di navigazione a sinistra per visualizzare i modelli disponibili.
Per visualizzare i modelli di un progetto diverso, seleziona il progetto dall'elenco a discesa in alto a destra della barra del titolo.
Fai clic sulla riga corrispondente al modello che vuoi utilizzare per etichettare le immagini.
Se non hai ancora eseguito il deployment del modello, eseguine il deployment selezionando Esegui il deployment del modello.
Per utilizzare le previsioni online, devi eseguire il deployment del modello. Il deployment del modello comporta dei costi. Per ulteriori informazioni, consulta la pagina dei prezzi.
Fai clic sulla scheda Testa e utilizza appena sotto la barra del titolo.
Fai clic su Carica immagini per caricare le immagini da etichettare.
REST
Per testare la previsione, devi prima eseguire il deployment del modello ospitato nel cloud.
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
- project-id: l'ID del tuo progetto Google Cloud.
- model-id: l'ID del modello, dalla
risposta al momento della creazione del modello. L'ID è l'ultimo elemento del nome del modello.
Ad esempio:
- nome modello:
projects/project-id/locations/location-id/models/IOD4412217016962778756
- ID modello:
IOD4412217016962778756
- nome modello:
- base64-encoded-image: la rappresentazione
base64 (stringa ASCII) dei dati dell'immagine binaria. Questa stringa dovrebbe essere simile alla seguente stringa:
/9j/4QAYRXhpZgAA...9tAVx/zDQDlGxn//2Q==
. Consulta l'argomento Codifica base64 per ulteriori informazioni.
Considerazioni specifiche sul campo:
scoreThreshold
: un valore compreso tra 0 e 1. Verranno visualizzati solo i valori con soglie di punteggio almeno con questo valore. Il valore predefinito è 0,5.maxBoundingBoxCount
: il numero massimo (limite superiore) di riquadri di delimitazione da restituire in una risposta. Il valore predefinito è 100 e il massimo è 500. Questo valore è soggetto a vincoli delle risorse e potrebbe essere limitato dal server.
Metodo HTTP e URL:
POST https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models/MODEL_ID:predict
Corpo JSON della richiesta:
{ "payload": { "image": { "imageBytes": "BASE64_ENCODED_IMAGE" } }, "params": { "scoreThreshold": "0.5", "maxBoundingBoxCount": "100" } }
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Salva il corpo della richiesta in un file denominato request.json
ed esegui questo 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" \
-d @request.json \
"https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models/MODEL_ID:predict"
PowerShell
Salva il corpo della richiesta in un file denominato request.json
ed esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models/MODEL_ID:predict" | Select-Object -Expand Content
L'output viene restituito in formato JSON. Le previsioni del modello di rilevamento di oggetti AutoML Vision sono contenute nel campo payload
:
boundingBox
di un oggetto è specificato da vertici opposti diagonalmente.displayName
è l'etichetta dell'oggetto prevista dal modello di rilevamento di oggetti AutoML Vision.score
rappresenta un livello di confidenza che l'etichetta specificata si applica all'immagine. Varia da0
(nessuna confidenza) a1
(con confidenza alta).
{ "payload": [ { "imageObjectDetection": { "boundingBox": { "normalizedVertices": [ { "x": 0.034553755, "y": 0.015524037 }, { "x": 0.941527, "y": 0.9912563 } ] }, "score": 0.9997793 }, "displayName": "Salad" }, { "imageObjectDetection": { "boundingBox": { "normalizedVertices": [ { "x": 0.11737197, "y": 0.7098793 }, { "x": 0.510878, "y": 0.87987 } ] }, "score": 0.63219965 }, "displayName": "Tomato" } ] }
Go
Prima di provare questo esempio, segui le istruzioni di configurazione per la lingua in questione nella pagina Librerie client.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione per la lingua in questione nella pagina Librerie client.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione per la lingua in questione nella pagina Librerie client.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione per la lingua in questione nella pagina Librerie client.
Linguaggi aggiuntivi
C#: segui le istruzioni di configurazione di C# nella pagina delle librerie client e poi visita la documentazione di riferimento sul rilevamento di oggetti AutoML Vision per .NET.
PHP: segui le istruzioni per la configurazione di PHP nella pagina delle librerie client e poi consulta la documentazione di riferimento sul rilevamento di oggetti AutoML Vision per PHP.
Ruby: segui le istruzioni di configurazione di Ruby nella pagina delle librerie client e poi visita la documentazione di riferimento di AutoML Vision per il rilevamento di oggetti per Ruby.