Condividi tramite


Riconoscimento dei prodotti di uno scaffale (anteprima): analizzare le immagini di scaffali usando un modello con training preliminare

Importante

Questa funzionalità è ora deprecata. Il 31 marzo 2025, l'API di anteprima Analisi immagini di Intelligenza artificiale di Azure 4.0 personalizzata, rilevamento oggetti personalizzati e api di anteprima del riconoscimento del prodotto verrà ritirata. Dopo questa data, le chiamate API a questi servizi avranno esito negativo.

Per mantenere il funzionamento dei modelli, passare a Visione personalizzata di Azure AI, ora disponibile a livello generale. Visione personalizzata offre funzionalità simili a quelle in fase di ritiro.

Il modo più rapido per iniziare a usare il riconoscimento dei prodotti consiste nell'usare i modelli di IA pre-training predefiniti. Con l’API di riconoscimento dei prodotti è possibile caricare l’immagine di uno scaffale e ottenere le posizioni dei prodotti e gli spazi vuoti.

Foto di uno scaffale di vendita al dettaglio con prodotti e spazi vuoti evidenziati con rettangoli.

Nota

I marchi mostrati nelle immagini non sono associati a Microsoft, né indicano alcuna forma di approvazione di Microsoft o prodotti Microsoft da parte dei proprietari dei marchi o approvazione dei proprietari dei marchi o dei loro prodotti da parte di Microsoft.

Prerequisiti

  • Una sottoscrizione di Azure: creare un account gratuitamente
  • Dopo aver creato la sottoscrizione di Azure, creare una risorsa di Visione nel portale di Azure. Deve essere distribuito in un’area di Azure supportata (vedere disponibilità di area). Al termine della distribuzione, fare clic su Vai alla risorsa.
    • Sarà necessaria la chiave e l’endpoint della risorsa creata per connettere l’applicazione al servizio Visione di Azure AI. La chiave e l'endpoint verranno incollati nel codice seguente più avanti nella guida.
  • Una risorsa di Archiviazione di Azure con un contenitore di archiviazione BLOB. Creane uno
  • cURL installato. In alternativa, è possibile usare una piattaforma REST diversa, ad esempio Swagger o l’estensione client REST per VS Code.
  • Immagine dello scaffale. È possibile scaricare l'immagine campione o usare immagini personalizzate. La dimensione massima del file per immagine è 20 MB.

Analizzare le immagini degli scaffali

Per analizzare un'immagine di scaffale, seguire questa procedura:

  1. Caricare l'immagine da analizzare nel contenitore di archiviazione BLOB e ottenere l'URL assoluto.

  2. Copiare il comando curl seguente in un editor di testo.

    curl -X PUT -H "Ocp-Apim-Subscription-Key: <subscriptionKey>" -H "Content-Type: application/json" "<endpoint>/computervision/productrecognition/ms-pretrained-product-detection/runs/<your_run_name>?api-version=2023-04-01-preview" -d "{
        'url':'<your_url_string>'
    }"
    
  3. Apportare le modifiche seguenti al comando, dove necessario:

    1. Sostituire <subscriptionKey> con la chiave della risorsa di Visione.
    2. Sostituire <endpoint> con l’endpoint della risorsa di Visione. Ad esempio: https://YourResourceName.cognitiveservices.azure.com.
    3. Sostituire <your_run_name> con il nome univoco dell’esecuzione del test per la coda di attività. Si tratta di un nome asincrono della coda di attività dell’API per poter recuperare la risposta API in un secondo momento. Ad esempio, .../runs/test1?api-version...
    4. Sostituire il contenuto <your_url_string> con l'URL BLOB dell'immagine
  4. Aprire una finestra del prompt dei comandi.

  5. Incollare il comando curl modificato dall'editor di testo nella finestra del prompt dei comandi e quindi eseguire il comando.

Esaminare i risultati

Una risposta con esito positivo viene restituita in JSON. I risultati dell’API di riconoscimento dei prodotti vengono restituiti in un campo JSON ProductRecognitionResultApiModel:

"ProductRecognitionResultApiModel": {
  "description": "Results from the product understanding operation.",
  "required": [
    "gaps",
    "imageMetadata",
    "products"
  ],
  "type": "object",
  "properties": {
    "imageMetadata": {
      "$ref": "#/definitions/ImageMetadataApiModel"
    },
    "products": {
      "description": "Products detected in the image.",
      "type": "array",
      "items": {
        "$ref": "#/definitions/DetectedObject"
      }
    },
    "gaps": {
      "description": "Gaps detected in the image.",
      "type": "array",
      "items": {
        "$ref": "#/definitions/DetectedObject"
      }
    }
  }
}

Vedere le sezioni seguenti per le definizioni di ogni campo JSON.

Modello dell’API dei risultati di riconoscimento dei prodotti

Risultati dell’operazione di riconoscimento dei prodotti.

Nome Tipo Descrizione Richiesto
imageMetadata ImageMetadataApiModel Informazioni sui metadati dell'immagine, ad esempio altezza, larghezza e formato.
products DetectedObject Prodotti rilevati nell'immagine.
gaps DetectedObject Gap rilevati nell'immagine.

Modello API Image Metadata

Informazioni sui metadati dell'immagine, ad esempio altezza, larghezza e formato.

Nome Tipo Descrizione Richiesto
width integer Larghezza dell'immagine in pixel.
height integer Altezza dell'immagine in pixel.

Modello dell'API Object rilevata

Descrive un oggetto rilevato in un'immagine.

Nome Tipo Descrizione Richiesto
id string ID dell'oggetto rilevato. No
boundingBox BoundingBox Rettangolo di selezione per un'area all'interno di un'immagine.
tags TagsApiModel Attendibilità di classificazione dell'oggetto rilevato.

Modello API Bounding Box

Rettangolo di selezione per un'area all'interno di un'immagine.

Nome Tipo Descrizione Richiesto
x integer Coordinata sinistra del punto superiore sinistro dell'area, in pixel.
y integer Coordinata superiore del punto superiore sinistro dell'area, in pixel.
w integer Larghezza misurata dal punto superiore sinistro dell'area, in pixel.
h integer Altezza misurata dal punto superiore sinistro dell'area, in pixel.

Modello dell’API dei tag di immagine

Descrive l'attendibilità della classificazione delle immagini di un'etichetta.

Nome Tipo Descrizione Richiesto
confidence float Attendibilità della stima della classificazione.
name string Etichetta della stima della classificazione.

Passaggi successivi

In questa guida si è appreso come eseguire una chiamata di analisi di base usando l’API REST di riconoscimento dei prodotti con training preliminare. Di seguito viene descritto come usare un modello di riconoscimento del prodotto personalizzato per soddisfare meglio le esigenze aziendali.