Crea un backend di ricerca immagini dei prodotti con Product Search dell'API Vision

1. Prima di iniziare

25939f5a13eeb3c3.png

Nella fase precedente del percorso di apprendimento sulla ricerca di immagini dei prodotti, hai imparato a chiamare un backend di ricerca prodotto con l'API Vision Product Search per prodotti visivamente simili presenti in un catalogo dei prodotti.

In questo codelab, imparerai a creare un backend simile, ma con il tuo catalogo dei prodotti.

Cosa imparerai a fare:

  • Come creare un backend di ricerca prodotti con Product Search dell'API Vision
  • Come configurare le chiavi API per accedere all'API Vision dalle app per dispositivi mobili

Che cosa ti serve

  • Un account Google Cloud con la fatturazione abilitata (può essere un account di prova senza costi)

2. Informazioni sull'API Vision Product Search

Product Search dell'API Vision è una funzionalità di Google Cloud che consente ai rivenditori di creare prodotti, ciascuno contenente immagini di riferimento che descrivono visivamente il prodotto da un insieme di punti di vista. I rivenditori possono quindi aggiungere questi prodotti ai set di prodotti. Attualmente l'API Vision Product Search supporta le seguenti categorie di prodotti: articoli per la casa, abbigliamento, giocattoli, beni di largo consumo e generali.

Quando gli utenti interrogano il set di prodotti con le proprie immagini, Product Search dell'API Vision applica il machine learning per confrontare il prodotto nell'immagine della query dell'utente con le immagini nel set di prodotti del rivenditore e restituisce un elenco di risultati visivamente e semanticamente simili.

3. Crea il backend con Google Cloud

Prima del percorso di apprendimento sulla ricerca dei prodotti, utilizzavi un backend per la ricerca dei prodotti dimostrativo creato con Product Search dell'API Vision. Crea lo stesso backend sul tuo account Google Cloud seguendo questo tutorial:

Una volta completato il tutorial, continua con i passaggi seguenti per configurare una chiave API per chiamare il backend dalle tue app per dispositivi mobili.

4. Configura chiave API

Nella guida rapida di Product Search dell'API Vision, hai creato un backend per la ricerca di prodotti in grado di acquisire un'immagine di query e restituire prodotti visivamente simili. Per chiamare l'API Product Search da un'app per dispositivi mobili, devi configurare una chiave API e quindi limitare l'accesso alla chiave stessa alle tue app per dispositivi mobili, al fine di evitare l'uso non autorizzato.

Crea una chiave API

  1. Vai a Cloud Console > API e servizi > Credenziali. Puoi anche fare clic su questo URL e selezionare il progetto che hai utilizzato nella guida rapida di Product Search.
  2. Seleziona Create Credentials > Chiave API. Questa finestra di dialogo viene visualizzata se la chiave API è stata creata:

d0bc04782a41a698.png

Prendi nota di questa chiave API. La utilizzerai più tardi in questo codelab.

Limita l'accesso alla chiave API

Quando viene visualizzato il messaggio riportato sopra, seleziona Limita chiave.

Segui le istruzioni sullo schermo per applicare queste restrizioni:

  • Restrizioni delle app &g; App Android
  • Restrizioni API > Limita chiave > API Cloud Vision

5. Scarica ed esegui l'app per dispositivi mobili

Puoi scaricare l'app per Android che hai creato in precedenza che utilizzava il backend di ricerca dei prodotti dimostrativi e cambiarla per utilizzare il nuovo backend che hai appena creato.

Scarica il codice

Fai clic sul seguente link per scaricare tutto il codice di questo codelab:

Apri il file ZIP scaricato. Verrà decompressa una cartella root (odml-pathway-codelabs) con tutte le risorse necessarie. Per questo codelab, avrai bisogno solo delle origini nella sottodirectory product-search/codelab2/android/final.

L'app utilizza l'API ML Kit Object Detection and Tracking e un backend di ricerca prodotti demo creato con Vision API Product Search per consentire agli utenti di scattare una foto e cercare prodotti visivamente simili nel catalogo dei prodotti demo.

Importare l'app in Android Studio

Inizia importando l'app starter in Android Studio.

Apri Android Studio, seleziona Import Project (Gradle, Eclipse ADT, etc.) e scegli la cartella product-search/codelab2/android/final dal codice sorgente scaricato in precedenza.

7c0f27882a2698ac.png

Esegui l'app iniziale

Ora che hai importato il progetto in Android Studio, puoi eseguire l'app per la prima volta.

Collega il dispositivo Android tramite USB all'host o Avvia l'emulatore Android Studio, quindi fai clic su Esegui (esegui.png) nella barra degli strumenti di Android Studio.

(Se questo pulsante non è attivo, assicurati di importare solo final/app/build.gradle, non l'intero repository.)

Ora l'app dovrebbe essere stata avviata sul tuo dispositivo Android. Questo sistema funziona già, ma utilizza il backend di ricerca dei prodotti demo di cui Google ha eseguito il deployment.

Dopodiché dovrai aggiornare l'app in modo che utilizzi il backend creato in precedenza in questo codelab.

6. Aggiorna gli endpoint API

Modificare le configurazioni dell'API

Vai alla classe ProductSearchAPIClient e vedrai le configurazioni del backend di ricerca prodotti già definite. Commenta le configurazioni del backend demo:

// Define the product search backend
// Option 1: Use the demo project that we have already deployed for you
// const val VISION_API_URL =
    "https://us-central1-odml-codelabs.cloudfunctions.net/productSearch"
// const val VISION_API_KEY = ""
// const val VISION_API_PROJECT_ID = "odml-codelabs"
// const val VISION_API_LOCATION_ID = "us-east1"
// const val VISION_API_PRODUCT_SET_ID = "product_set0"

Quindi sostituiscili con la tua configurazione:

// Option 2: Go through the Vision API Product Search quickstart and deploy to your project.
// Fill in the const below with your project info.
const val VISION_API_URL = "https://vision.googleapis.com/v1"
const val VISION_API_KEY = "YOUR_API_KEY"
const val VISION_API_PROJECT_ID = "YOUR_PROJECT_ID"
const val VISION_API_LOCATION_ID = "YOUR_LOCATION_ID"
const val VISION_API_PRODUCT_SET_ID = "YOUR_PRODUCT_SET_ID"
  • VISION_API_URL è l'endpoint API dell'API Cloud Vision.
  • VISION_API_KEY è la chiave API creata in precedenza in questo codelab.
  • VISION_API_PROJECT_ID e VISION_API_LOCATION_ID, VISION_API_PRODUCT_SET_ID è il valore utilizzato nella guida rapida di Product Search dell'API Vision in precedenza in questo codelab.

Esegui

Ora fai clic su Esegui ( esegui.png) nella barra degli strumenti di Android Studio. Quando l'app si carica, tocca le immagini preimpostate, seleziona un oggetto rilevato e tocca il pulsante Cerca per vedere i risultati di ricerca. L'app ora utilizza il backend di ricerca dei prodotti che hai appena creato.

25939f5a13eeb3c3.png

7. Complimenti!

Hai imparato a creare un backend di ricerca prodotti utilizzando Product Search dell'API Vision.

È tutto ciò che ti serve per iniziare a lavorare.

Cosa abbiamo trattato

  • Come creare il backend di ricerca dei prodotti utilizzando il catalogo dei prodotti e la Product Search dell'API Vision
  • Come configurare le chiavi API per chiamare il backend di Product Search da un'app per dispositivi mobili
  • Come chiamare il backend da un'app per dispositivi mobili

Passaggi successivi

  • Guarda questo video su come utilizzare Product Search dell'API Vision per creare un armadio intelligente
  • Dai un'occhiata al percorso di apprendimento sul machine learning sul dispositivo di Product Search per scoprire tutti i passaggi necessari per creare una ricerca dei prodotti
  • Applica ciò che hai imparato nella tua app

Scopri di più