O blog da AWS

Utilizando o Amazon Rekognition para identificar situações de descumprimento ao distanciamento social

Por Gabriel Bella Martini, Solutions Architect, WWPS Brazil
Lucas Duarte, Solutions Architect, WWPS Brazil
Ernesto dos Santos, Solutions Architect, WWPS Brazil

 

O distanciamento social em 2021 ainda é um tema que será muito discutido, com o aumento da quantidade de casos de COVID-19 ao redor do mundo e a dificuldade de detectar situações de descumprimento, torna-se cada vez mais evidente a necessidade de se ter soluções que possam auxiliar a identificar esse tipo de situação. Tomando como referência o programa Plano São Paulo ainda estamos passando por uma fase rígida da quarentena, onde existe a necessidade de respeitarmos as orientações de distanciamento social, sendo que se observarmos as estatísticas atuais para a cidade de São Paulo, temos atualmente próximo de os mesmos índices de distanciamento que praticávamos antes da existência da quarentena.

Diferente do primeiro blog post onde tivemos a oportunidade de tratar cenários de possível aglomeração social e detecção de multidões, neste iremos mostrar como utilizar tecnologia e inteligência artificial para identificar situações de descumprimento ao distanciamento social.

 

O Desafio

Os cenários mais comuns de descumprimento usualmente ocorrem em estabelecimentos comerciais (restaurantes, supermercados, lojas de conveniência, etc.), onde por vezes a formação de filas estimula que pessoas fiquem muito próximas umas das outras. O desafio então é como identificarmos estas situações para mitigá-las de maneira rápida.

Uma forma de monitorar estas filas, seria utilizar imagens ou vídeos de uma câmera, enviando estas imagens para serem analisadas pelo Amazon Rekognition.

 

A Solução

O serviço Rekognition facilita a adição de análises em imagens e vídeos aos seus aplicativos usando Deep Learning. O serviço não requer conhecimentos de Inteligência Artificial e Machine Learning para sua utilização, com o Rekognition você pode identificar objetos, pessoas, texto, cenas e atividades em imagens e vídeos, detectar conteúdos inapropriados, além de nos permitir extrair as coordenadas do objeto identificado.

Utilizaremos nesta solução o recurso Bounding Box do Rekognition para determinar as coordenadas de cada uma das pessoas identificadas na imagem. Com base nesses dados determinaremos a distância, em pixels, que separa cada uma das pessoas na fila. Através de um valor de referência, a distância será classificada como descumprimento ou não, caso encontremos uma situação de proximidade inferior a que determinarmos, enviaremos uma notificação para um endereço de e-mail.
Afim de realizar o cálculo da distância real entre a foto e o mundo real, é necessário determinar a proporção existente entre centímetros versus pixels da imagem. Para isso, e afim de viabilizar a solução, determinamos alguns requisitos:

1) Disposição de uma câmera digital posicionada de forma fixa, onde possamos ter uma visibilidade horizontal da fila a ser monitorada.
2) Determinar a relação centímetros/pixels das imagens capturadas, levando em conta a resolução da câmera utilizada, e o posicionamento da mesma.
Nesta solução utilizaremos os seguintes serviços: Amazon S3, Lambda, Rekognition, e SNS. A arquitetura da solução é descrita na figurar abaixo:

 

Figura 1: Arquitetura da solução

 

Abaixo temos uma imagem de exemplo, onde podemos verificar quatro pessoas formando uma fila. Ao enviarmos esta imagem para um bucket no S3, um evento de upload será gerado, iniciando o fluxo de execução de uma função Lambda, afim de analisar o distanciamento.

 

Figura 2: Demonstração de distanciamento social

 

Após o processamento desta imagem pela função Lambda, conseguimos validar o sucesso na identificação das pessoas que não estão atendendo aos critérios definidos de distanciamento social, ressaltando esta situação na imagem através de uma linha vermelha.

 

Figura 3: Demonstração da solução

 

Ao identificarmos o descumprimento da distância entre as pessoas na imagem, um alerta é enviado para um e-mail cadastrado, indicando o cenário inadequado.

 

Implantando a Solução

Para que você replique a solução, criamos um repositório público com o detalhamento de cada etapa de implementação. Estamos utilizando o serviço Amazon CloudFormation para tratar toda a arquitetura como código. Seguindo o repositório, você será capaz de replicar a arquitetura para construir uma solução como demonstrado acima.

Rekognition Distance Calculation: https://github.com/aws-samples/rekognition-distance-calculation.

 

Conclusão e Próximos Passos

Neste blog post tivemos a oportunidade de mostrar como é possível utilizar os serviços AWS para criar uma solução que nos permite manter o cuidado necessário de distanciamento social nesta difícil época de pandemia. Vimos também mais uma vez como utilizar o Rekognition para implantar Visão Computacional de maneira rápida e fácil. Como próximos passos, na terceira parte dessa solução, iremos abordar como melhorar a assertividade da identificação do distanciamento utilizando Inteligência Artificial para analisar três dimensões em uma imagem.

 

 


Sobre os autores

Gabriel Bella Martini é um Arquiteto de Soluções na AWS. Atua ajudando clientes do setor público (educação, governo e instituições sem fins lucrativos) durante a jornada na nuvem da AWS. Tem trabalhado em diferentes projetos relacionados a inteligência artificial e IoT, e também tem grande interesse na área de computação gráfica.

 

 

 

Lucas Duarte é Arquiteto de Soluções na AWS. Atua com clientes do setor público, é entusiasta de automação, Cloud, e cultura DevOps. Com experiência prévia em projetos focados nesse segmento em empresas como IFood, Guiabolso e Mandic. Tem trabalhado em diferentes projetos relacionados principalmente a orquestração de containers e microsserviços.

 

 

 

Ernesto dos Santos é Arquiteto de Soluções na AWS. Atua auxiliando e apoiando clientes do setor público em sua jornada para a nuvem AWS, trabalhando em projetos que envolvam arquiteturas distribuídas e escaláveis. Tem grande interesse na área de segurança da informação, infraestrutura, networking e serverless.