Crie um back-end de pesquisa de imagens de produtos com a Pesquisa de produtos da API Vision

1. Antes de começar

25939f5a13eeb3c3.png

No programa de aprendizado sobre pesquisa de imagens de produtos, você aprendeu a chamar um back-end de pesquisa de produtos criado com a Pesquisa de produtos da API Vision para encontrar itens visualmente semelhantes em um catálogo.

Neste codelab, você vai aprender a criar um back-end semelhante, mas com seu catálogo de produtos.

O que você vai aprender

  • Como criar um back-end de pesquisa de produtos com a Pesquisa de produtos da API Vision
  • Como configurar uma chave de API para acessar a API Vision em apps para dispositivos móveis

O que é necessário

  • Uma conta do Google Cloud com o faturamento ativado (pode ser uma conta de teste sem custo financeiro)

2. Sobre a Pesquisa de produtos da API Vision

A Pesquisa de produtos da API Vision é um recurso do Google Cloud que permite que os varejistas criem produtos, cada um contendo imagens de referência que descrevem visualmente o produto a partir de um conjunto de pontos de vista. Os varejistas podem adicionar esses produtos aos conjuntos de produtos. No momento, a pesquisa de produtos da API Vision é compatível com as seguintes categorias: utilidades domésticas, vestuário, brinquedos, produtos embalados e produtos em geral.

Quando os usuários consultam o conjunto de produtos com suas próprias imagens, a pesquisa de produtos da API Vision aplica o machine learning para comparar o produto na imagem de consulta do usuário com as imagens no conjunto de produtos do varejista e retornar uma lista classificada de resultados visual e semanticamente similares.

3. Criar o back-end com o Google Cloud

Anteriormente no programa de aprendizado sobre pesquisa de imagens de produtos, você usou um back-end de pesquisa de produtos de demonstração criado com a Pesquisa de produtos da API Vision. Crie o mesmo back-end na sua conta do Google Cloud seguindo este tutorial:

Depois de concluir o tutorial, siga as etapas abaixo para configurar uma chave de API e chamar o back-end dos seus apps para dispositivos móveis.

4. Configurar chave de API

No guia de início rápido da Pesquisa de produtos da API Vision, você criou um back-end de pesquisa de produtos que pode receber uma imagem de consulta e retornar produtos visualmente semelhantes. Para chamar a API Product Search de um app para dispositivos móveis, você precisa configurar uma chave de API e restringir o acesso dela aos seus próprios apps para evitar o uso não autorizado.

crie uma chave de API

  1. Acesse Console do Cloud > APIs e serviços > Credenciais. Você também pode clicar neste URL e selecionar o projeto usado no guia de início rápido da Pesquisa de produtos.
  2. Selecione Criar credenciais > Chave de API. Esta caixa de diálogo vai aparecer se a chave de API tiver sido criada com sucesso:

d0bc04782a41a698.png

Anote essa chave de API. Você vai usá-lo mais tarde neste codelab.

Restringir o acesso à chave de API

Quando a solicitação acima aparecer, selecione Restringir chave.

Siga as instruções na tela para aplicar estas restrições:

  • Restrições de aplicativos > Apps Android
  • Restrições de API > Restringir chave > API Cloud Vision

5. Baixar e executar o app para dispositivos móveis

Você pode baixar o app Android criado antes que usava o back-end de pesquisa de produtos de demonstração e mudar para usar o novo back-end que você acabou de criar.

Fazer o download do código

Clique no link abaixo para fazer o download de todo o código para este codelab:

Descompacte o arquivo ZIP transferido por download. Isso descompactará uma pasta raiz (odml-pathway-codelabs) com todos os recursos necessários. Neste codelab, você só vai precisar das fontes no subdiretório product-search/codelab2/android/final.

O app usa a API Object Detection and Tracking do ML Kit e um back-end de pesquisa de produtos de demonstração criado com a Pesquisa de produtos da API Vision para permitir que os usuários tirem uma foto e pesquisem produtos visualmente semelhantes no catálogo de produtos de demonstração.

Importar o app para o Android Studio

Comece importando o app inicial para o Android Studio.

No Android Studio, selecione Import Project (Gradle, Eclipse ADT, etc.) e escolha a pasta product-search/codelab2/android/final no código-fonte que você baixou anteriormente.

7c0f27882a2698ac.png

Executar o app inicial

Agora que você importou o projeto para o Android Studio, está tudo pronto para executar o app pela primeira vez.

Conecte o dispositivo Android via USB ao host ou inicie o emulador do Android Studio e clique em Executar ( execute.png) na barra de ferramentas do Android Studio.

Se esse botão estiver desativado, importe apenas final/app/build.gradle, não o repositório inteiro.

O app será iniciado no seu dispositivo Android. Ele já está funcionando, mas usa o back-end de pesquisa de produtos demo que o Google implantou para você.

Em seguida, você vai atualizar o app para usar o back-end criado anteriormente neste codelab.

6. Atualizar os endpoints da API

Mudar as configurações da API

Acesse a classe ProductSearchAPIClient e confira as configurações do back-end de pesquisa de produtos já definidas. Comente as configurações do back-end de demonstração:

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

Em seguida, substitua-os pela sua configuração:

// 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 é o endpoint da API Cloud Vision.
  • VISION_API_KEY é a chave de API que você criou anteriormente neste codelab.
  • VISION_API_PROJECT_ID, VISION_API_LOCATION_ID e VISION_API_PRODUCT_SET_ID são os valores usados no guia de início rápido da pesquisa de produtos da API Vision no início deste codelab.

Executar

Agora clique em Executar ( execute.png) na barra de ferramentas do Android Studio. Depois que o app carregar, toque em qualquer uma das imagens predefinidas, selecione um objeto detectado e toque no botão Pesquisar para ver os resultados da pesquisa. O app agora está usando o back-end de pesquisa de produtos que você acabou de criar.

25939f5a13eeb3c3.png

7. Parabéns!

Você aprendeu a criar um back-end de pesquisa de produtos usando a Pesquisa de produtos da API Vision.

Isso é tudo o que você precisa para começar a usar.

O que vimos

  • Como criar um back-end de pesquisa de produtos usando seu catálogo de produtos e a Pesquisa de produtos da API Vision
  • Como configurar a chave de API para chamar o back-end de pesquisa de produtos em um app para dispositivos móveis
  • Como chamar o back-end de um app para dispositivos móveis

Próximas etapas

  • Assista este vídeo sobre como usar a Pesquisa de produtos da API Vision para criar um guarda-roupa inteligente
  • Confira a rota de aprendizado de ML no dispositivo da Pesquisa de produtos para saber todas as etapas necessárias para criar uma pesquisa de produtos.
  • Aplicar o que você aprendeu no seu próprio app

Saiba mais