Classificar imagens
Este tutorial mostra como criar o projeto e os conjuntos de dados para um modelo que classifica objetos, cenas e conceitos encontrados em uma imagem. O modelo classifica a imagem inteira. Por exemplo, seguindo este tutorial, é possível treinar um modelo para reconhecer locais domésticos, como uma sala de estar ou cozinha. O tutorial também mostra como usar o modelo para analisar imagens.
Antes de iniciar o tutorial, recomendamos que você leia Noções básicas do Amazon Rekognition Custom Labels.
Neste tutorial, conjuntos de dados de treinamento de teste são criados ao fazer upload de imagens do seu computador local. Posteriormente, você atribui rótulos em nível de imagem às imagens em seus conjuntos de dados de treinamento e teste.
O modelo que você cria classifica as imagens como pertencentes ao conjunto de rótulos em nível de imagem que você atribui às imagens do conjunto de dados de treinamento. Por exemplo, se o conjunto de rótulos em nível de imagem em seu conjunto de dados de treinamento for kitchen
, living_room
, patio
e backyard
, o modelo possivelmente poderá encontrar todos esses rótulos em nível de imagem em uma única imagem.
nota
É possível criar modelos para diferentes propósitos, como descobrir a localização dos objetos em uma imagem. Para ter mais informações, consulte Decida o tipo do seu modelo.
Etapa 1: colete suas imagens
São necessários dois conjuntos de imagens. Um conjunto para adicionar ao seu conjunto de dados de treinamento. Outro conjunto para adicionar ao seu conjunto de dados de teste. As imagens devem representar os objetos, cenas e conceitos que você deseja que seu modelo classifique. As imagens devem estar no formato PNG ou JPEG. Para ter mais informações, consulte Como preparar imagens.
Devem haver pelo menos 10 imagens para seu conjunto de dados de treinamento e 10 imagens para seu conjunto de dados de teste.
Se ainda não tiver imagens, use as imagens do projeto de classificação de exemplo Cômodos. Depois de criar o projeto, as imagens de treinamento e teste estão nos seguintes locais de bucket do Amazon S3:
Imagens de treinamento:
s3://custom-labels-console-
region
-numbers
/assets/rooms_version number
_test_dataset/Imagens de teste:
s3://custom-labels-console-
region
-numbers
/assets/rooms_version number
_test_dataset/
region
é a região da AWS na qual você está usando o console do Amazon Rekognition Custom Labels. numbers
é um valor que o console atribui ao nome do bucket. Version number
é o número da versão do projeto de exemplo, começando em 1.
O procedimento a seguir armazena imagens do projeto Cômodos em pastas locais em seu computador chamadas training
e test
.
Para baixar os arquivos de imagem do projeto de exemplo Cômodos
Crie o projeto Cômodos. Para ter mais informações, consulte Etapa 1: escolha um projeto de exemplo.
No prompt de comando, insira o comando a seguir para baixar as imagens de treinamento.
aws s3 cp s3://custom-labels-console-
region
-numbers
/assets/rooms_version number
_training_dataset/ training --recursiveNo prompt de recomendação, insira o comando a seguir para baixar as imagens de teste.
aws s3 cp s3://custom-labels-console-
region
-numbers
/assets/rooms_version number
_test_dataset/ test --recursiveMova duas das imagens da pasta de treinamento para uma pasta separada de sua escolha. As imagens serão usadas para testar seu modelo treinado em Etapa 9: analise uma imagem com seu modelo.
Etapa 2: decida suas classes
Faça uma lista das classes que deseja que o modelo encontre. Por exemplo, se você estiver treinando um modelo para reconhecer cômodos em uma casa, é possível classificar a imagem a seguir como living_room
.
Cada classe é mapeada para um rótulo em nível de imagem. Posteriormente, você atribui rótulos em nível de imagem às imagens em seus conjuntos de dados de treinamento e teste.
Se estiver usando as imagens do projeto de exemplo Cômodos, os rótulos em nível de imagem são quintal, banheiro, quarto, armário, caminho_de_entrada, planta_baixa, jardim_da_frente, cozinha, sala_de_estar e pátio.
Etapa 3: crie um projeto
Para gerenciar seus conjuntos de dados e modelos, você cria um projeto. Cada projeto deve abordar um único caso de uso, como reconhecer cômodos em uma casa.
Para criar um projeto (console)
Se ainda não tiver feito isso, configure o console do Amazon Rekognition Custom Labels. Para ter mais informações, consulte Como configurar o Amazon Rekognition Custom Labels.
Faça login noAWS Management Console e abra o console do Amazon Rekognition emhttps://console.aws.amazon.com/rekognition/
. No painel esquerdo, escolha Usar rótulos personalizados. A página inicial do Amazon Rekognition Custom Labels é exibida.
Na página inicial do Amazon Rekognition Custom Labels, escolha Conceitos básicos
No painel de navegação esquerdo, selecione Projetos.
Na página de projetos, escolha Criar projeto.
Em Nome do projeto, digite um nome para o seu projeto.
Escolha Criar projeto para criar seu projeto.
Etapa 4: crie conjuntos de dados de treinamento e teste
Nesta etapa, um conjunto de dados de treinamento e um conjunto de dados de teste são criados ao fazer upload de imagens do seu computador local. É possível fazer upload de até 30 imagens por vez. Se tiver muitas imagens para carregar, considere criar os conjuntos de dados importando as imagens de um bucket do Amazon S3. Para ter mais informações, consulte Importar imagens de um bucket do Amazon S3.
Para obter mais informações sobre conjuntos de dados, consulte Como gerenciar conjuntos de dados.
Para criar um conjunto de dados usando imagens em um computador local (console)
-
Na página de detalhes do projeto, escolha Criar conjunto de dados.
-
Na seção Configuração inicial, escolha Iniciar com um conjunto de dados de treinamento e um conjunto de dados de teste.
Na seção Detalhes do conjunto de dados de treinamento, escolha Fazer upload de imagens do seu computador.
-
Na seção Detalhes do conjunto de dados de teste, escolha Fazer upload de imagens do seu computador.
Escolha Criar conjuntos de dados.
Uma página do conjunto de dados aparece com uma guia Treinamento e uma guia Teste para os respectivos conjuntos de dados.
Na página conjuntos de dados, escolha a guia Treinamento.
Escolha Ações e escolha Adicionar imagens ao conjunto de dados de treinamento.
Na caixa de diálogo Adicionar imagens ao conjunto de dados de treinamento, escolha Escolher arquivos.
Escolha as imagens que você deseja fazer upload no conjunto de dados. É possível fazer upload de até 30 imagens por vez.
Escolha Fazer upload de imagens. Pode levar alguns segundos para que o Amazon Rekognition Custom Labels adicione as imagens ao conjunto de dados.
Se tiver mais imagens para adicionar ao conjunto de dados de treinamento, repita as etapas 9 a 12.
Selecione a guia Testar.
-
Repita as etapas de 8 a 12 para adicionar imagens ao conjunto de dados de teste. Para a etapa 8, escolha Ações e escolha Adicionar imagens ao conjunto de dados de teste.
Etapa 5: adicione rótulos ao projeto
Nesta etapa, é adicionado um rótulo ao projeto para cada uma das classes identificadas na etapa Etapa 2: decida suas classes.
Para adicionar um novo rótulo (console)
Na página da galeria do conjunto de dados, escolha Iniciar rotulagem para entrar no modo de rotulagem.
Na seção Rótulos da galeria do conjunto de dados, escolha Editar rótulos para abrir a caixa de diálogo Gerenciar rótulos.
Na caixa de edição, insira um novo nome de rótulo.
Selecione Adicionar novo rótulo.
Repita as etapas 3 e 4 até criar todos os rótulos necessários.
Escolha Salvar para salvar os rótulos que você adicionou.
Etapa 6: atribuia rótulos em nível de imagem aos conjuntos de dados de treinamento e teste
Nesta etapa, é atribuído um único nível de imagem a cada imagem em seus conjuntos de dados de treinamento e teste. O rótulo no nível da imagem é a classe que cada imagem representa.
Para atribuir rótulos em nível de imagem em uma imagem (console)
Na página Conjuntos de dados, escolha a guia Treinamento.
Escolha Iniciar rotulagem para entrar no modo de rotulagem.
Selecione uma ou mais imagens às quais você deseja adicionar rótulos. Só é possível selecionar imagens em uma única página de cada vez. Para selecionar uma faixa contígua de imagens em uma página:
Selecione a primeira imagem.
Pressione e segure a tecla shift.
Selecione a segunda imagem. As imagens entre a primeira e a segunda imagem também são selecionadas.
Solte a tecla shift.
Escolha Atribuir rótulos em nível de imagem.
Na caixa de diálogo Atribuir rótulos em nível de imagem às imagens selecionadas, selecione um rótulo que você deseja atribuir à imagem ou imagens.
Escolha Atribuir para atribuir um rótulo à imagem.
Repita a rotulagem até que cada imagem seja anotada com os rótulos necessários.
Selecione a guia Testar.
Repita as etapas para atribuir rótulos de nível de imagem às imagens do conjunto de dados de teste.
Etapa 7: treine seu modelo
Use as etapas a seguir para treinar seu modelo. Para ter mais informações, consulte Como treinar um modelo do Amazon Rekognition Custom Labels.
Para treinar seu modelo (console)
Na página Conjunto de dados, escolha Treinar modelo.
Na página Treinar modelo, escolha Treinar modelo. O nome do recurso da Amazon (ARN) do seu projeto está na caixa de edição Escolher projeto.
Na caixa de diálogo Você quer treinar seu modelo?, escolha Treinar modelo.
Na seção Modelos da página do projeto, pode ver que o treinamento está em andamento. É possível verificar o status atual visualizando a coluna
Model Status
da versão do modelo. O treinamento de um modelo leva algum tempo para ser concluído.Após a conclusão do treinamento, escolha o nome do modelo. O treinamento é concluído quando o status do modelo for TRAINING_COMPLETED.
Escolha o botão Avaliar para ver os resultados da avaliação. Para obter informações sobre como avaliar um modelo, consulte Como melhorar um modelo treinado do Amazon Rekognition Custom Labels.
Escolha Exibir resultados do teste para ver os resultados de imagens de teste individuais. Para ter mais informações, consulte Métricas para avaliar seu modelo.
Depois de visualizar os resultados do teste, escolha o nome do modelo para retornar à página do modelo.
Etapa 8: inicie seu modelo
Nesta etapa, seu modelo é iniciado. Depois que o modelo começar, é possível usá-lo para analisar novas imagens.
Há uma cobrança pela quantidade de tempo que o modelo é executado. Interrompa seu modelo se você não precisar analisar as imagens. Será possível reiniciar o modelo mais tarde. Para ter mais informações, consulte Como executar um modelo do Amazon Rekognition Custom Labels.
Para iniciar o seu modelo
Escolha a guia Usar modelo na página do modelo.
Na seção Iniciar ou interromper o modelo, faça o seguinte:
Escolha Iniciar.
Na caixa de diálogo Iniciar modelo, escolha Iniciar.
Espere até que o modelo esteja em execução. O modelo está em execução quando o status na seção Iniciar ou interromper modelo é Executando.
Etapa 9: analise uma imagem com seu modelo
Você analisa uma imagem chamando a API DetectCustomLabels. Nesta etapa, o comando detect-custom-labels
AWS Command Line Interface (AWS CLI) é usado para analisar uma imagem de exemplo. Você recebe o comando AWS CLI no console do Amazon Rekognition Custom Labels. O console configura o comando da AWS CLI para usar seu modelo. Só é preciso fornecer uma imagem que esteja armazenada em um bucket do Amazon S3.
nota
O console também fornece um código de exemplo em Python.
A saída de detect-custom-labels
inclui uma lista de rótulos encontrados na imagem, caixas delimitadoras (se o modelo encontrar a localização dos objetos) e a confiança que o modelo tem na precisão das previsões.
Para ter mais informações, consulte Como analisar uma imagem com um modelo treinado.
Para analisar uma imagem (console)
-
Se ainda não tiver feito isso, configure a AWS CLI. Para obter instruções, consulte Etapa 4: configure a AWS CLI e os AWS SDKs.
-
Escolha a guia Usar modelo e escolha o código da API.
Escolha o Comando da AWS CLI.
-
Na seção Analisar imagem, copie o comando AWS CLI que chama
detect-custom-labels
. -
Faça upload de uma imagem para um bucket do Amazon S3. Para obter mais informações, consulte Fazer upload de objetos no Amazon S3 no Guia do usuário do Amazon Simple Storage Service. Se estiver usando imagens do projeto Cômodos, use uma das imagens que você moveu para uma pasta separada em Etapa 1: colete suas imagens.
-
No prompt de comando, insira o comando AWS CLI que você copiou na etapa anterior. Ele se parece com o exemplo a seguir.
O valor de
--project-version-arn
deve ser o nome do recurso da Amazon (ARN) do seu modelo. O valor de--region
deve ser a região da AWS na qual você criou o modelo.Altere
MY_BUCKET
ePATH_TO_MY_IMAGE
use o bucket e a imagem do Amazon S3 que você usou na etapa anterior.Se estiver usando o perfil custom-labels-access para obter credenciais, adicione o parâmetro
--profile custom-labels-access
.aws rekognition detect-custom-labels \ --project-version-arn "
model_arn
" \ --image '{"S3Object": {"Bucket": "MY_BUCKET
","Name": "PATH_TO_MY_IMAGE
"}}' \ --regionus-east-1
\ --profile custom-labels-accessA saída JSON do comando AWS CLI deverá ser semelhante à seguinte. O
Name
é o nome do rótulo em nível de imagem que o modelo encontrou. AConfidence
(de 0 a 100) é a confiança do modelo na precisão da previsão.{ "CustomLabels": [ { "Name": "living_space", "Confidence": 83.41299819946289 } ] }
-
Continue usando o modelo para analisar outras imagens. Interrompa o modelo se não estiver mais usando.
Etapa 10: interrompa seu modelo
Nesta etapa, seu modelo para de ser executado. Há uma cobrança pela quantidade de tempo que o modelo está em execução. Se terminou de usar o modelo, deve interrompê-lo.
Para interromper seu modelo
-
Na seção Iniciar ou interromper modelo, escolha Interromper.
-
Na caixa de diálogo Interromper modelo, insira interromper para confirmar que deseja interromper o modelo.
-
Escolha Parar para interromper seu modelo. O modelo foi interrompido quando o status na seção Iniciar ou interromper modelo é Interrompido.