Rótulos personalizados do Amazon Rekognition é um serviço de visão computacional totalmente gerenciado que permite que os desenvolvedores criem modelos personalizados para classificar e identificar objetos em imagens específicas e exclusivas do seu negócio.
O Rekognition Custom Labels não exige que você tenha nenhum conhecimento prévio em visão computacional. Você pode começar simplesmente fazendo upload de dezenas de imagens em vez de milhares. Se as imagens já estiverem rotuladas, você poderá começar a treinar um modelo em apenas alguns cliques. Caso contrário, você pode rotulá-los diretamente no console Rekognition Custom Labels ou usar Verdade no solo do Amazon SageMaker para rotulá-los. O Rekognition Custom Labels usa o aprendizado de transferência para inspecionar automaticamente os dados de treinamento, selecionar a estrutura e o algoritmo de modelo corretos, otimizar os hiperparâmetros e treinar o modelo. Quando estiver satisfeito com a precisão do modelo, você poderá começar a hospedar o modelo treinado com apenas um clique.
No entanto, se você for um usuário de negócios procurando resolver um problema de visão computacional, visualizar resultados de inferência do modelo personalizado e receber notificações quando esses resultados de inferência estiverem disponíveis, você precisará contar com sua equipe de engenharia para criar tal aplicativo. Por exemplo, um gerente de operações agrícolas pode ser notificado quando uma safra é diagnosticada com uma doença, um vinicultor pode ser notificado quando as uvas estão maduras para a colheita ou um gerente de loja pode ser notificado quando é hora de reabastecer estoques, como refrigerantes em uma geladeira vertical.
Neste post, orientamos você no processo de construção de uma solução que permite visualizar o resultado da inferência e enviar notificações aos usuários inscritos quando rótulos específicos são identificados em imagens processadas usando modelos criados pelo Rekognition Custom Labels.
Visão geral da solução
O diagrama a seguir ilustra nossa arquitetura de solução.
Esta solução usa os seguintes serviços da AWS para implementar uma arquitetura escalável e econômica:
- Amazona atena – Um serviço de consulta interativa sem servidor que facilita a análise de dados no Amazon S3 usando SQL padrão.
- AWS Lambda – Um serviço de computação sem servidor que permite executar código em resposta a gatilhos, como alterações nos dados, mudanças no estado do sistema ou ações do usuário. Como o Amazon S3 pode acionar diretamente uma função do Lambda, você pode criar uma variedade de sem servidor sistemas de processamento de dados.
- AmazonQuickSight – Um serviço de análise de negócios baseado em nuvem muito rápido, fácil de usar e que facilita a criação de visualizações, a realização de análises ad hoc e a obtenção rápida de insights de negócios a partir dos dados.
- Rótulos personalizados do Amazon Rekognition – Permite treinar um modelo de visão computacional personalizado para identificar os objetos e cenas em imagens que são específicos para suas necessidades de negócios.
- Serviço de notificação simples da Amazon – O Amazon SNS é um serviço de mensagens totalmente gerenciado para comunicação de aplicativo para aplicativo (A2A) e aplicativo para pessoa (A2P).
- Serviço de fila simples da Amazon – O Amazon SQS é um serviço de enfileiramento de mensagens totalmente gerenciado que permite desacoplar e dimensionar microsserviços, sistemas distribuídos e aplicativos sem servidor.
- Serviço de armazenamento simples da Amazon – O Amazon S3 serve como um armazenamento de objetos para seus documentos e permite o gerenciamento central com controles de acesso ajustados.
A solução utiliza um fluxo de trabalho sem servidor que é acionado quando uma imagem é carregada no bucket S3 de entrada. Uma fila SQS recebe uma notificação de evento para criação de objeto. A solução também cria filas de mensagens mortas (DLQs) para separar e isolar mensagens que não podem ser processadas corretamente. Uma função Lambda alimenta-se da fila SQS e torna a DetectLabels
Chamada de API para detectar todos os rótulos na imagem. Para dimensionar essa solução e torná-la um design fracamente acoplado, a função Lambda envia os resultados da previsão para outra fila do SQS. Essa fila SQS aciona outra função do Lambda, que analisa todos os rótulos encontrados nas previsões. Com base na preferência do usuário (configurada durante a implantação da solução), a função publica uma mensagem em um tópico do SNS. O tópico SNS está configurado para entregar notificações por email ao usuário. Você pode configurar a função do Lambda para adicionar um URL à mensagem enviada ao Amazon SNS para acessar a imagem (usando um Amazon S3 URL pré-assinado). Por fim, a função do Lambda carrega um resultado de previsão e metadados de imagem para um bucket do S3. Você pode usar o Athena e o QuickSight para analisar e visualizar os resultados do bucket do S3.
Pré-requisitos
Você precisa ter um modelo treinado e em execução com os rótulos personalizados do Rekognition.
Os rótulos personalizados do Rekognition permitem gerenciar o processo de treinamento do modelo de aprendizado de máquina no Reconhecimento da Amazônia console, que simplifica o processo de desenvolvimento de modelo de ponta a ponta. Para este post, usamos um modelo de classificação treinado para detectar doenças foliares de plantas.
Implante a solução
Você implanta um Formação da Nuvem AWS modelo para provisionar os recursos necessários, incluindo buckets S3, filas SQS, tópico SNS, funções Lambda e Gerenciamento de acesso e identidade da AWS (IAM). O modelo cria a pilha na região us-east-1, mas você pode usar o modelo para criar sua pilha em qualquer região em que os serviços da AWS acima estejam disponíveis.
- Execute o seguinte modelo do CloudFormation na região e na conta da AWS em que você implantou o modelo de rótulos personalizados do Rekognition:
- Escolha Nome da pilha, insira um nome de pilha, como
rekognition-customlabels-analytics-and-notification
. - Escolha CustomModelARN, insira o ARN do modelo de rótulos personalizados do Amazon Rekognition que você deseja usar.
O modelo de rótulos personalizados do Rekognition precisa ser implantado na mesma conta da AWS.
- Escolha Notificação de Email, insira um endereço de e-mail onde você deseja receber notificações.
- Escolha EntradaBucketName, insira um nome exclusivo para o bucket do S3 que a pilha cria; por exemplo,
plant-leaf-disease-data-input
.
É aqui que as imagens de folhas de plantas recebidas são armazenadas.
- Escolha Rótulos de interesse, você pode inserir até 10 rótulos diferentes sobre os quais deseja ser notificado, em formato separado por vírgulas. Para nosso exemplo de doença de planta, insira
bacterial-leaf-blight,leaf-smut
. - Escolha MinConfiança, insira o limite mínimo de confiança para receber a notificação. Os rótulos detectados com uma confiança abaixo do valor de MinConfidence não são retornados na resposta e não gerarão notificação.
- Escolha OutputBucketName, insira um nome exclusivo para o bucket do S3 que a pilha cria; por exemplo,
plant-leaf-disease-data-output
.
O bucket de saída contém arquivos JSON com metadados de imagem (rótulos encontrados e pontuação de confiança).
- Escolha Próximo.
- No Configurar opções de pilha página, defina quaisquer parâmetros adicionais para a pilha, incluindo tags.
- Escolha Próximo.
- No Capacidades e transformações seção, marque a caixa de seleção para reconhecer que o AWS CloudFormation pode criar Recursos IAM.
- Escolha Criar pilha.
A página de detalhes da pilha deve mostrar o status da pilha como CREATE_IN_PROGRESS
. Pode levar até 5 minutos para que o status mude para CREATE_COMPLETE
.
O Amazon SNS enviará uma mensagem de confirmação de assinatura para o endereço de e-mail. Você precisa confirme a assinatura.
Teste a solução
Agora que implantamos os recursos, estamos prontos para testar a solução. Assegure-se de que você iniciar o modelo.
- No console do Amazon S3, escolha Baldes.
- Escolha o bucket S3 de entrada.
- Faça upload de imagens de teste para o bucket.
Na produção, você pode configurar processos automatizados para entregar imagens a esse bucket.
Essas imagens acionam o fluxo de trabalho. Se a confiança do rótulo exceder o limite especificado, você receberá uma notificação por e-mail como a seguinte.
Você também pode configurar o tópico SNS para entregar essas notificações a qualquer destinos suportado pelo serviço.
Analise os resultados da previsão
Depois de testar a solução, você pode estender a solução para criar uma análise visual para as previsões de imagens processadas. Para isso, usamos o Athena, um serviço de consulta interativa que facilita a análise de dados diretamente do Amazon S3 usando SQL padrão e o QuickSight para visualizar os dados.
Configurar o Athena
Se você não estiver familiarizado com o Amazon Athena, consulte Neste tutorial. No console do Athena, crie uma tabela no catálogo de dados do Athena com o seguinte código:
Preencher o Location
campo na consulta anterior com o nome do bucket de saída, como plant-leaf-disease-data-output
.
Esse código informa ao Athena como interpretar cada linha do texto no bucket do S3.
Agora você pode consultar os dados:
SELECT * FROM "default"."rekognition_customlabels_analytics" limit 10;
Configurar QuickSight
Para configurar o QuickSight, conclua as etapas a seguir:
- Abra o Consola QuickSight.
- Se você não se inscreveu no QuickSight, você será solicitado com a opção de se inscrever. Siga os passos para inscreva-se para usar o QuickSight.
- Depois de fazer login no QuickSight, escolha Gerenciar QuickSight sob sua conta.
- No painel de navegação, escolha Segurança e permissões.
- Debaixo Acesso QuickSight a serviços AWS, escolha Adicionar ou remover.
Uma página é exibida para habilitar o acesso do QuickSight aos serviços da AWS.
- Selecionar Amazon Atena.
- Na janela pop-up, escolha Próximo.
- Na guia S3, selecione os buckets S3 necessários. Para esta postagem, seleciono o bucket que armazena os resultados da minha consulta do Athena.
- Para cada bucket, selecione também Permissão de gravação para o Athena Workgroup.
- Escolha Acabamento.
- Escolha Atualizar.
- No console QuickSight, escolha Nova análise.
- Escolha Novo conjunto de dados.
- Escolha Conjuntos de dados, escolha Atena.
- Escolha Nome da fonte de dados, entrar
Athena-CustomLabels-analysis
. - Escolha Grupo de trabalho Atenas, escolha primário.
- Escolha Criar fonte de dados.
- Escolha banco de dados, escolha
default
no menu suspenso. - Escolha Tabelas, selecione a tabela
rekognition_customlabels_analytics
. - Escolha Selecione
- Escolha Visualizar.
- No Visualizar página, sob o Campos lista, escolha rótulo e selecione o gráfico de pizza de Tipos visuais.
Você pode adicionar mais visualizações no painel. Quando sua análise estiver pronta, você poderá escolher Partilhar para criar um painel e compartilhá-lo em sua organização.
Resumo
Neste post, mostramos como você pode criar uma solução para receber notificações de rótulos específicos (como ferrugem bacteriana ou fuligem) encontrados em imagens processadas usando os Rótulos personalizados do Rekognition. Além disso, mostramos como você pode criar painéis para visualizar os resultados usando o Athena e o QuickSight.
Agora você pode compartilhar facilmente esses painéis de visualização com usuários de negócios e permitir que eles assinem notificações em vez de depender de suas equipes de engenharia para criar tal aplicativo.
Sobre os autores
Jay Rao é um arquiteto de soluções principal na AWS. Ele gosta de fornecer orientação técnica e estratégica aos clientes e ajudá-los a projetar e implementar soluções na AWS.
Mistério Pashmeen é gerente de produto sênior para rótulos personalizados do Amazon Rekognition. Fora do trabalho, Pashmeen gosta de caminhadas de aventura, fotografia e passar tempo com sua família.
- Coinsmart. A melhor troca de Bitcoin e criptografia da Europa.
- Platoblockchain. Inteligência Metaverso Web3. Conhecimento Ampliado. ACESSO LIVRE.
- CryptoHawk. Radar Altcoin. Teste grátis.
- Fonte: https://aws.amazon.com/blogs/machine-learning/receive-notifications-for-image-analysis-with-amazon-rekognition-custom-labels-and-analyze-predictions/
- "
- &
- 10
- 100
- 116
- 7
- 9
- Acesso
- Conta
- ações
- Ad
- Adição
- Adicional
- endereço
- algoritmo
- Todos os Produtos
- já
- Amazon
- análise
- analítica
- Outro
- api
- Aplicação
- aplicações
- arquitetura
- Automatizado
- disponível
- AWS
- fronteira
- Caixa
- construir
- Prédio
- negócio
- chamada
- Pode obter
- alterar
- Escolha
- classificação
- código
- Comunicação
- Computar
- confiança
- cônsul
- contém
- relação custo-benefício
- acoplado
- cria
- criação
- colheita
- personalizadas
- Clientes
- painel de instrumentos
- dados,
- implantar
- implantado
- desenvolvimento
- Design
- detectou
- desenvolvedores
- Desenvolvimento
- diferente
- diretamente
- Doença
- distribuído
- INSTITUCIONAIS
- Não faz
- facilmente
- permitindo
- Engenharia
- Entrar
- Evento
- exemplo
- experiência
- estender
- família
- RÁPIDO
- Finalmente
- seguir
- seguinte
- formato
- encontrado
- Quadro
- função
- gerar
- ter
- Como funciona o dobrador de carta de canal
- Como Negociar
- HTTPS
- identificar
- Dados de identificação:
- imagem
- executar
- Incluindo
- entrada
- insights
- interativo
- IT
- apenas um
- Rótulos
- aprendizagem
- Lista
- localização
- procurando
- máquina
- aprendizado de máquina
- FAZ
- gerenciados
- de grupos
- Gerente
- mensagens
- mínimo
- modelo
- modelos
- mais
- Navegação
- notificação
- Operações
- Opção
- organização
- fotografia
- predição
- Previsões
- Diretor
- Problema
- processo
- processos
- Produto
- Produção
- fornecendo
- propósito
- rapidamente
- em tempo real
- receber
- requerer
- Recursos
- resposta
- Resultados
- Execute
- corrida
- escalável
- Escala
- Cenas
- Serverless
- serviço
- Serviços
- conjunto
- Partilhar
- simples
- solução
- Soluções
- RESOLVER
- Passar
- pilha
- padrão
- começo
- começado
- Estado
- Status
- armazenamento
- loja
- lojas
- Estratégico
- Inscreva-se
- tudo incluso
- Suportado
- .
- sistemas
- Profissionais
- Dados Técnicos:
- conta
- teste
- milhares
- Através da
- tempo
- Training
- transferência
- único
- usar
- usuários
- valor
- variedade
- visão
- visualização
- dentro
- Atividades:
- Workgroup