L'API Vision Product Search può rilevare e trovare i prodotti corrispondenti a un singolo prodotto in un'immagine di ricerca oppure identificare ed elencare i prodotti corrispondenti a più prodotti se sono presenti nell'immagine.
Immagini e risposta relative a un singolo prodotto
Questa immagine di ricerca contiene un solo prodotto.

gs://cloud-ai-vision-data/product-search-tutorial/images/468f782e70ba11e8941fd20059124800.jpg
La ricerca di prodotti simili con Product Search dell'API Vision restituisce una risposta che indica due riquadri di selezione nell'immagine, uno intorno al prodotto e un altro intorno all'intera immagine.
Espandi la sezione seguente per visualizzare l'intera risposta.
Riquadri di delimitazione e prodotti corrispondenti
I due prodotti (riquadri di delimitazione) seguenti nell'immagine sono specificati dai due insiemi di vertici restituiti dalla richiesta.
I prodotti corrispondenti sono elencati per ogni riquadro identificato da Vision API Product Search.

gs://cloud-samples-data/product_search/multiple_dresses.jpg
Nella risposta API, i rettangoli di selezione e i risultati dei prodotti corrispondenti
sono elencati nel campo productGroupedResults
. Sono raggruppati per prodotti
rilevati in un'immagine. Ogni voce boundingPoly
elenca la regione specificata con
vertici normalizzati (su una scala da 0 a 1, non corrispondenti ai valori
effettivi in pixel dell'immagine). Vengono quindi elencati i prodotti corrispondenti per quella regione specifica.
La seguente sezione della risposta corrisponde al riquadro di delimitazione intorno all'abito.
I prodotti corrispondenti sono elencati dopo il campo results
e sono
classificati in base al punteggio di corrispondenza in ordine decrescente. I punteggi vanno da 0 (nessuna affidabilità) a 1 (affidabilità totale).

Several matching products for the dress
L'altro boundingPoly
restituito nella risposta si trova intorno all'intera immagine.
I suoi vertici normalizzati sono elencati come:
[{},{"x": 1},{"x": 1,"y": 1},{"y": 1}]
Quando i valori delle coordinate sono 0, vengono omessi. Pertanto, il bounding poly specificato sopra corrisponde a:
[{"x": 0,"y": 0},{"x": 1, "y": 0},{"x": 1,"y": 1},{"y": 1}]
I prodotti corrispondenti vengono quindi elencati in modo simile per questo riquadro di delimitazione (l'intera immagine).
Immagini di più prodotti (rilevamento multiplo) e risposta
L'immagine di ricerca seguente contiene più prodotti.

gs://cloud-samples-data/product_search/multiple_dresses.jpg
L'utilizzo di Product Search dell'API Vision per cercare prodotti simili restituisce una risposta che identifica più riquadri di delimitazione nell'immagine, uno per l'intera immagine e tre riquadri per ciascuno dei tre vestiti.
Espandi la sezione seguente per visualizzare l'intera risposta.
Riquadri di delimitazione e prodotti corrispondenti
L'immagine seguente mostra tutti i riquadri di delimitazione identificati da Vision API Product Search in questa immagine con più prodotti.

gs://cloud-samples-data/product_search/multiple_dresses.jpg
Analogamente a un'immagine di un singolo prodotto, la risposta di un'immagine di più prodotti elenca i riquadri di delimitazione e i risultati dei prodotti corrispondenti nel campo productGroupedResults
. Ogni prodotto è identificato da un poligono di delimitazione
e le corrispondenze sono raggruppate in base a ogni prodotto rilevato.
La seguente sezione della risposta corrisponde al riquadro di delimitazione intorno all'abito centrale.
L'immagine seguente mostra alcune delle corrispondenze per l'abito centrale restituite da API Vision Product Search.

Several matching products for the middle dress
Nell'immagine sono presenti le seguenti altre caselle di selezione, ognuna con il proprio elenco di prodotti corrispondenti (non inclusi qui):
- left dress:
{"x":0.03, "y":0.07},{"x":0.29, "y":0.07},{"x":0.29, "y":0.95},{"x":0.03, "y":0.95}
- right dress:
{"x":0.63, "y":0.09},{"x":0.89, "y":0.09},{"x":0.89, "y":0.93},{"x":0.63, "y":0.93}
- intera immagine:
{},{"x": 1},{"x": 1,"y": 1},{"y": 1}
, espresso anche come:{"x": 0, "y": 0},{"x": 1,"y:0"},{"x": 1,"y": 1},{"x": 0,"y": 1}