Avaliação do Paralelismo em Python para Otimizar uma Abordagem de Identificação de Máscaras Faciais utilizando Redes Neurais Artificiais

The Covid-19 pandemic has required great efforts from the entire scientific community. However, pandemic control has only been possible with social isolation and the use of facial masks. Despite this, cases of agglomerations and people who refuse to use the masks are shown daily, making it difficult to control the disease. This article presents an approach using Artificial Neural Networks (ANN) to identify people who do not use face masks in an image database. The results obtained demonstrate that although the parallelism used in the Python language with the Numpy library is punctual, it positively impacts the developed approach’s execution time. 1. Introdução O avanço da Covid-19 pelo mundo tem exigido esforços cada vez maiores dos cientistas no desenvolvimento de uma vacina. Até o momento as únicas medidas que se mostraram eficazes no controle da doença são baseadas no isolamento social, melhora nos hábitos de higiene e utilização das máscaras faciais. No entanto, inúmeras pessoas tem burlado os controles sanitários não utilizando as máscaras faciais, realizando aglomerações e etc. Verificar se essas medidas tem sido respeitadas por toda a população é uma tarefa complicada e exigiria um esforço muito grande das autoridades. Neste contexto, métodos de visão computacional podem ser utilizados para auxiliar na identificação automática de aglomerações ou mesmo identificar se um determinado indı́viduo está ou não utilizando a máscara dentro do metrô ou de um ônibus. O uso de tais métodos no contexto urbano não é novidade, inúmeras cidades já utilizam sistemas de monitoramento por câmeras [Ullah et al. 2019]. Dentre as técnicas de visão computacional, as Redes Neurais Artificiais (RNA) são uma das técnicas mais utilizadas, pois nos últimos anos elas têm obtido resultados consideráveis para problemas altamente complexos [Szegedy et al. 2016]. Assim, este trabalho propõe avaliar os impactos do paralelismo presente na biblioteca NumPy para implementação de uma RNA utilizada para identificar se uma determinada pessoa está utilizando a máscara facial. Este trabalho está estruturado conforme descrito a seguir. A Seção 2 apresenta os trabalhos relacionados. A Seção 3 apresenta uma pequena introdução sobre RNAMultiLayer Perceptron (MLP) e a metodologia desenvolvida. Os resultados obtidos são apresentados na Seção 4. Por fim, a Seção 5 apresenta as considerações finais. 2. Trabalhos Relacionados Com o avanço dos casos de Covid-19 pelo mundo, as contribuições cientı́ficas têm sido as mais abrangentes possı́veis. Neste contexto, diversas pesquisas demonstraram a efetividade do uso de máscaras faciais para a redução das taxas de transmissão do coronavı́rus ou até mesmo o grau de severidade da doença [Chughtai et al. 2020]. Contudo, as autoridades sanitárias têm tido cada vez mais dificuldade em fiscalizar o uso das máscaras por parte da população. Visando realizar tal fiscalização de forma automática, diversos pesquisadores têm proposto abordagens utilizando técnicas de visão computacional que identificam se um individuo está utilizando a máscara ou não[Ejaz et al. 2019, QIN and LI 2020, Loey et al. 2020]. A técnica de análise de componentes principais (PCA) foi utilizada por [Ejaz et al. 2019]. Já as Redes Neurais Artificiais foram utilizadas por [QIN and LI 2020] e [Loey et al. 2020]. Enquanto em [QIN and LI 2020] utilizaram redes do tipo Deep Super Resolution Crack Network (SRCNet), já as redes do tipo Residual Neural Network (ResNet50) foram avaliadas em [Loey et al. 2020]. Aqui são utilizadas as redes do tipo MLP, sendo avaliado o desempenho obtido com o uso do paralelismo da linguagem Python por meio da biblioteca NumPy.