Créer un backend de recherche d'images de produits avec l'API Vision Search

1. Avant de commencer

25939f5a13eeb3c3.png

Dans le parcours d'apprentissage de la recherche d'images de produits, vous avez appris à appeler un backend de recherche de produits doté de l'API Vision pour des produits visuellement similaires dans un catalogue de produits.

Dans cet atelier de programmation, vous allez apprendre à créer un backend similaire avec votre catalogue de produits.

Points abordés

  • Créer un backend de recherche de produits avec l'API Vision
  • Configurer une clé API pour accéder à l'API Vision depuis des applications mobiles

Prérequis

  • Un compte Google Cloud avec la facturation activée (il peut s'agir d'un compte d'essai gratuit)

2. À propos de la recherche de produits avec l'API Vision

La recherche de produits de l'API Vision est une fonctionnalité de Google Cloud qui permet aux marchands de créer des produits, chacun contenant des images de référence qui décrivent visuellement le produit sous différents angles. Les revendeurs peuvent ensuite ajouter ces produits à des ensembles de produits. Actuellement, la recherche de produits de l'API Vision accepte les catégories de produits suivantes: articles ménagers, vêtements, jouets, produits emballés et articles généraux.

Lorsque les utilisateurs interrogent l'ensemble de produits avec leurs propres images, la recherche de produits de l'API Vision applique le machine learning pour comparer le produit dans l'image de la requête de l'utilisateur avec les images de l'ensemble de produits du marchand, puis renvoie une liste classée de résultats visuellement et sémantiquement similaires.

3. Créer le backend avec Google Cloud

Avant dans le parcours de formation sur la recherche d'images de produits, vous avez utilisé un backend de démonstration de recherche de produits conçu avec la recherche de produits de l'API Vision. Pour créer le même backend sur votre compte Google Cloud, procédez comme suit:

Une fois le tutoriel terminé, passez à l'étape suivante pour configurer une clé API afin d'appeler le backend à partir de vos applications mobiles.

4. Configurer la clé API

Dans le guide de démarrage rapide de la fonctionnalité de recherche de produits de l'API Vision, vous avez créé un backend de recherche de produits pouvant prendre une image de la requête et renvoyer des produits visuellement similaires. Pour appeler l'API Product Search à partir d'une application mobile, vous devez configurer une clé API, puis limiter l'accès à la clé API à vos propres applications mobiles afin d'éviter toute utilisation non autorisée.

Créer une clé API

  1. Accédez à Cloud Console > API et services > Identifiants. Vous pouvez également cliquer sur your URL (URL) et sélectionner le projet que vous avez utilisé dans le guide de démarrage rapide.
  2. Sélectionnez Créer des identifiants > Clé API. Cette boîte de dialogue s'affiche si votre clé API a bien été créée:

D0bc04782a41a698.png

Notez cette clé API. Vous l'utiliserez plus tard dans cet atelier de programmation.

Restreindre l'accès à la clé API

Lorsque l'invite ci-dessus s'affiche, sélectionnez Restreindre la clé.

Pour appliquer ces restrictions, suivez les instructions à l'écran:

  • Restrictions relatives aux applications > Applications Android
  • Restrictions d'API > Restreindre la clé > API Cloud Vision

5. Télécharger et exécuter l'application mobile

Vous pouvez télécharger l'application Android que vous avez créée antérieure à l'aide du backend de recherche de produits de démonstration et la remplacer par le nouveau backend que vous venez de créer.

Télécharger le code

Cliquez sur le lien ci-dessous pour télécharger l'ensemble du code de cet atelier de programmation :

Décompressez le fichier ZIP téléchargé. Cela permet de décompresser un dossier racine (odml-pathway-codelabs) avec toutes les ressources dont vous avez besoin. Pour cet atelier de programmation, vous n'aurez besoin que des sources dans le sous-répertoire product-search/codelab2/android/final.

L'application utilise l'API de détection et de suivi des objets ML Kit, ainsi qu'un backend de recherche de démonstration basé sur la recherche de produits de l'API Vision pour permettre aux utilisateurs de prendre un rechercher des produits visuellement similaires dans le catalogue de produits de démonstration.

Importer l'application dans Android Studio

Commencez par importer l'application starter dans Android Studio.

Accédez à Android Studio, sélectionnez Import Project (Gradle, Eclipse ADT, etc.) (Importer un projet (Gradle, Eclipse ADT, etc.)), puis sélectionnez le dossier product-search/codelab2/android/final dans le code source que vous avez téléchargé précédemment.

7c0f27882a2696ac.png

Exécuter l'application de départ

Maintenant que vous avez importé le projet dans Android Studio, vous êtes prêt à exécuter l'application.

Connectez votre appareil Android via USB à votre hôte ou démarrez l'émulateur Android Studio,puis cliquez sur Run (execute.png) (Exécuter) dans la barre d'outils Android Studio.

(Si ce bouton est désactivé, veillez à n'importer que la version finale/app/build.gradle, et pas l'intégralité du dépôt.)

L'application devrait maintenant se lancer sur votre appareil Android. Elle fonctionne déjà, mais elle utilise le backend de recherche de produits demo que Google a déployé pour vous.

Vous allez ensuite mettre à jour l'application pour qu'elle utilise le backend que vous avez créé précédemment dans cet atelier de programmation.

6. Mettre à jour les points de terminaison de l'API

Modifier les configurations d'API

Accédez à la classe ProductSearchAPIClient. Les configurations du backend de recherche de produits s'affichent déjà. Commentez les configurations du backend de démonstration:

// 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"

Remplacez-les ensuite par votre configuration:

// 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 est le point de terminaison de l'API Cloud Vision.
  • VISION_API_KEY est la clé API que vous avez créée précédemment dans cet atelier de programmation.
  • VISION_API_PROJECT_ID , VISION_API_LOCATION_ID , VISION_API_PRODUCT_SET_ID est la valeur que vous avez utilisée dans le guide de démarrage rapide pour la recherche de produits dans l'API Vision dans cet atelier de programmation.

Exécuter le code

Cliquez sur Run (Exécuter) (execute.png) dans la barre d'outils d'Android Studio. Une fois l'application chargée, appuyez sur les images prédéfinies souhaitées, sélectionnez un objet détecté, appuyez sur le bouton Rechercher pour afficher les résultats de recherche. L'application utilise maintenant le backend de recherche de produits que vous venez de créer.

25939f5a13eeb3c3.png

7. Félicitations !

Vous avez appris à créer un backend de recherche de produits à l'aide de la recherche de produits de l'API Vision.

Vous avez terminé la configuration.

Points abordés

  • Créer un backend de recherche de produits à l'aide de votre catalogue de produits et de la recherche de produits de l'API Vision
  • Configurer la clé API pour appeler le backend de recherche de produits à partir d'une application mobile
  • Appeler le backend depuis une application mobile

Étapes suivantes

  • Regardez cette vidéo sur la création d'un dressage intelligent avec la recherche de produits de l'API Vision.
  • Consultez le parcours de formation sur la recherche de produits sur l'appareil pour découvrir toutes les étapes nécessaires à la création d'une recherche de produits.
  • Appliquez ce que vous avez appris dans votre propre application

En savoir plus