Rotular imagens usando a API AutoML Vision Edge

Este guia de início rápido aborda os seguintes processos:

  • Usar o AutoML Vision Object Detection para criar seu conjunto de dados, treinar um modelo personalizado do AutoML Vision Edge e fazer uma previsão.
  • Exportar e usar o modelo do AutoML Vision Edge.

Neste guia de início rápido, você usa a interface do usuário (IU) para interagir com a API AutoML Vision e exportar o modelo do AutoML Vision Edge.

Antes de começar

Antes de usar o AutoML Vision Object Detection, crie um projeto do Google Cloud (nunca usado com outro produto do AutoML) e ative o AutoML Vision Object Detection para esse projeto.

  1. Faça login na sua conta do Google Cloud. Se você começou a usar o Google Cloud agora, crie uma conta para avaliar o desempenho de nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
  2. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  3. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  4. Ative as APIs Cloud AutoML and Storage.

    Ative as APIs

  5. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  6. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  7. Ative as APIs Cloud AutoML and Storage.

    Ative as APIs

Requisitos da versão Beta

  1. Esse recurso Beta exige que você use us-central1 como a região especificada.

Como preparar um conjunto de dados

Neste guia de início rápido, você usa um conjunto de dados criado no Open Images Dataset V4 (em inglês). Esse conjunto de dados "Saladas" está disponível ao público em gs://cloud-ml-data/img/openimage/csv/salads_ml_use.csv.

O formato CSV é o seguinte:

TRAINING,gs://cloud-ml-data/img/openimage/3/2520/3916261642_0a504acd60_o.jpg,Salad,0.0,0.0954,,,0.977,0.957,,
VALIDATION,gs://cloud-ml-data/img/openimage/3/2520/3916261642_0a504acd60_o.jpg,Seafood,0.0154,0.1538,,,1.0,0.802,,
TEST,gs://cloud-ml-data/img/openimage/3/2520/3916261642_0a504acd60_o.jpg,Tomato,0.0,0.655,,,0.231,0.839,,
Exemplo de imagem do conjunto de dados
3916261642_0a504acd60_o.jpg

Cada linha corresponde a um objeto localizado em uma imagem maior. Cada objeto é designado especificamente como dados de teste, treinamento ou validação. As três linhas incluídas nesta página indicam três objetos diferentes localizados na mesma imagem disponível em gs://cloud-ml-data/img/openimage/3/2520/3916261642_0a504acd60_o.jpg. Cada linha tem um rótulo diferente: Salad, Seafood e Tomato, além de outras linhas com rótulos Baked goods ou Cheese.

As caixas delimitadoras são especificadas em cada imagem usando os vértices superior à esquerda e inferior à direita:

  • (0,0) corresponde ao vértice superior à esquerda.
  • (1,1) corresponde ao vértice inferior à direita.

Na primeira linha mostrada acima, as coordenadas (x, y) do vértice superior à esquerda do objeto com o rótulo Salad são (0.0,0.0954). Já as coordenadas do vértice inferior à direita do objeto são (0.977,0.957).

Para informações mais detalhadas sobre como formatar o arquivo CSV e os requisitos mínimos para criar um conjunto de dados válido, consulte Como preparar os dados de treinamento.


Criar seu conjunto de dados

  1. Abra a IU do AutoML Vision Object Detection e selecione seu projeto na lista suspensa na barra de título.

    Na primeira vez que você abrir a IU do AutoML Vision Object Detection, você precisará Ativar a API AutoML se isso ainda não tiver sido feito.

  2. Selecione Primeiros passos na janela pop-up quando solicitado.

    Selecionar a opção de primeiros passos

  3. Você será direcionado para a página da lista de conjuntos de dados. Crie um novo conjunto de dados selecionando Novo conjunto de dados.

    Selecionar Criar novo conjunto de dados

    Insira um nome exclusivo para o conjunto de dados.

    Selecionar Criar novo nome do conjunto de dados

  4. Insira a localização dos dados de treinamento a serem importados na janela seguinte.

    Na caixa de texto Selecionar um arquivo CSV no Cloud Storage, digite o caminho para o arquivo CSV de exemplo (o prefixo gs:// é adicionado automaticamente):

    cloud-ml-data/img/openimage/csv/salads_ml_use.csv

    Como alternativa, vocêé possível selecionar Procurar e navegar até o arquivo CSV em um dos seus buckets do Google Cloud Storage.

    Este guia de início rápido usa dados de amostra testados em um bucket público do Google Cloud Storage. Os dados de treinamento são imagens JPG de amostra anotadas com a caixa delimitadora e o rótulo dos objetos que você quer que o modelo aprenda a identificar. Para importar os dados de treinamento para o conjunto de dados, use um arquivo CSV que aponte para os arquivos de imagem (JPEG, PNG, GIF, BMP ou ICO). Além disso, consulte Como preparar seus dados de treinamento para informações sobre o formato e as especificações da imagem.

    Como criar uma imagem CSV de upload do conjunto de dados
  5. Selecione Importar.

    Seu conjunto de dados mostrará um status de Running:importing images enquanto suas imagens estiverem sendo importadas. Esse processo leva apenas alguns minutos.

Quando seus dados de treinamento tiverem sido importados com êxito, a coluna Status informará Success:Creating dataset e a IU mostrará o ID gerado para o conjunto de dados, usado ao fazer chamadas de API AutoML, bem como o número de itens importados.

Como listar a imagem do conjunto de dados

Se houver problemas na importação de imagens, você verá Warning: Importing images como status. Selecione o nome do conjunto de dados e Detalhes para ver os erros com importação de uma imagem específica.

Importar imagem de erro

treine o modelo

  1. Depois que o conjunto de dados tiver sido criado e processado, selecione a guia Treinar para iniciar o treinamento do modelo.

    selecionar guia Treinar

  2. Selecione Iniciar treinamento para continuar.

    Treinar nova opção de modelo

    Essa opção abrirá uma janela lateral com opções de treinamento.

  3. Na seção de treinamento Definir seu modelo, altere o nome do modelo e selecione Edge como o tipo de modelo. Depois de escolher treinar um modelo do Edge, selecione Continuar.

    Imagem do botão de opção de treinamento do modelo do Edge

  4. Na seção seguinte, Otimizar modelo para, selecione a opção padrão, Melhores resultados. Depois de selecionar os critérios de otimização, selecione Continuar.

    Imagem do botão de opção de melhor compensação

  5. Na seção seguinte, Definir um orçamento de hora de uso do nó, escolha o orçamento recomendado (24).

    definir a seção de orçamento do nó

  6. Selecione Iniciar treinamento para começar o treinamento do modelo.

    O treinamento é iniciado para seu modelo e deve levar cerca de uma hora. O treinamento pode ser interrompido antes da hora de uso do nó selecionada. O serviço enviará um e-mail para você assim que o treinamento for concluído ou se ocorrer algum erro.

Quando o treinamento estiver concluído, você poderá consultar as métricas de avaliação, bem como testar e usar o modelo.

Selecione a guia Avaliar para ver mais detalhes sobre as pontuações F1, Precisão e Recall.

Selecione um rótulo individual em Filtrar rótulos para ver mais detalhes sobre verdadeiros positivos, falsos negativos e falsos positivos.

Fazer uma previsão

Após a conclusão do treinamento, seu modelo precisará ser implantado manualmente antes de poder ser usado para fazer previsões on-line.

Selecione a guia Testar e usar para implantar (e remover a implantação do) seu modelo. A página Testar e usar também apresenta instruções sobre como enviar uma imagem ao seu modelo para uma previsão. Veja exemplos em Como anotar imagens.

Exportar e usar o modelo Edge

A etapa final para usar um modelo do AutoML Vision Edge é exportar (otimizar e fazer o download) e usar seu modelo.

Há várias maneiras de exportar e usar seus modelos para previsão em dispositivos Edge.

Neste guia de início rápido, você usará o Tensorflow Lite (TF Lite) como exemplo. Os modelos TF Lite são fáceis de usar e têm um amplo conjunto de casos de uso.

  1. Em Usar seu modelo, selecione a opção TF Lite.

    Exportar modelo do TF Lite

  2. Na janela lateral que é aberta, indique um local do Google Cloud Storage para o modelo exportado.

    Depois de informar um local de armazenamento, selecione Exportar para exportar um pacote do TF Lite para o bucket de armazenamento do Cloud Storage. O processo de exportação normal leva vários minutos.

    Escolha um local de armazenamento para a imagem de modelo exportada

  3. Depois que a exportação for concluída, selecione o link Abrir no Google Cloud Storage para acessar a pasta de destino do Google Cloud Storage no console do Google Cloud Platform.

No local de destino do Google Cloud Storage, você encontrará uma pasta com carimbo de data e hora e formato de modelo, que conterá os seguintes arquivos:

  • Um arquivo tflite (model.tflite)
  • Um arquivo de dicionário (dict.txt)
  • Um arquivo de metadados (tflite_metadata.json)

Limpar

Para evitar cobranças na conta do Google Cloud pelos recursos usados nesta página, siga estas etapas.

A seguir

Com esses arquivos, você segue tutoriais para usar em dispositivos Android, dispositivos iOS ou Raspberry Pi 3.

Outras opções para usar o modelo:

  • Também é possível exportar o modelo como TensorFlow SavedModel e usá-lo com um contêiner Docker na guia Contêiner. Saiba como exportar para um contêiner no tutorial do contêiner
  • É possível exportar o modelo para execução no Edge TPU na guia Dispositivos Edge. Siga esta documentação oficial do Edge TPU para usar o modelo.