Introdução
Devido a situação pandêmica vivenciada desde o inicio do ano de 2020, diversas estratégias surgiram para realizar o rastreamento de contatos de pessoas infectadas com o vírus SARS-CoV-2.
Aqui é apresentado um rascunho de rastreamento de contatos por visão computacional, onde considera-se um ambiente de trabalho fechado (um escritório, por exemplo), com um número limitado de pessoas e câmeras disponíveis em locais específicos para realizar a análise. Esse exemplo visa detectar as pessoas através de detecção de faces, e com base nas distâncias euclidianas (em pixels) entre as faces, avaliar e gerar um alerta informando que determinada pessoa esteve próxima/teve contato com uma pessoa que está com o vírus.
Etapa 1
A primeira etapa da aplicação tem como objetivo detectar todos as faces em uma determinada cena/imagem. Para isso, é utilizado o algoritmo Viola-Jones para detectar as faces, onde utiliza-se um arquivo XML treinado com as características (features) Haar para detecção de faces frontais.
Através dos bounding boxes gerados na detecção das faces, são calculados os pontos centrais destes, que são utilizados na obtenção da distância euclidiana entre as faces na imagem.
Etapa 2
A segunda etapa visa classificar, através de uma rede neural convolucional, as faces detectadas na etapa anterior, cujo objetivo real seria identificar as pessoas (faces) na imagem, possibilitando assim o rastreamento de contatos. Utilizou-se o dataset VGGFace, que possui faces rotuladas de 8631 celebridades. Para a classificação, foi usado o modelo pré-treinado ResNet50.
Os resultados da classificação são mostrados abaixo:
Detecção 1
Edinson Cavani: 98.043%, Juliano Cazarre: 0.075%, Tino Costa: 0.075%Detecção 2
Anthony Ogogo: 99.913%, Brahim Asloum: 0.007%, Scott Quigg: 0.006%Detecção 3
Sharon Stone: 97.929%, Noelle Reno: 0.985%, Tina Maze: 0.092
Os resultados mostram que todas as três pessoas foram classificadas corretamente, com distribuições de probabilidades superiores a 95%.
Etapa 3
Por fim, a etapa final, que visa obter as distâncias euclidianas entre as combinações de pessoas (faces) detectadas na imagem. A Tabela abaixo mostra as distâncias euclidianas entre as pessoas na imagem.
Ao considerar o limiar (threshold) da distância entre as pessoas como 500 pixels, e considerando Edinson Cavani com o vírus, a pessoa que teve um contato mais próximo dele é Sharon Stone, sendo necessário alertar essa pessoa para as medidas e precauções cabíveis.
O código com o rascunho do rastreamento de contatos por visão computacional pode ser encontrado em: https://github.com/rlrocha/pdi. Um melhor detalhamento do código desenvolvido encontra-se em: https://youtu.be/RJd7ufq_tZU. Siga o blog se o post for útil para você.
Top comments (0)