Reconhecimento de expressões faciais para grupos de pessoas em tempo real
Author:
Lopez, Dennis Paul Paz
Abstract:
Este projeto teve como objetivo principal o desenvolvimento de um program capaz de detectar e reconhecer expressões faciais em tempo real para grupos de pessoas. Para isso, foi implementado um modelo de Rede Neural Convolucional (CNN) baseado na arquitetura da rede MobileNetV2, com o intuito de classificar sete emoções universais: i. neutro, ii. feliz, iii. triste, iv. raiva, v. medo, vi. surpreso, e vii. nojo. O modelo foi treinado e avaliado utilizando o dataset FER2013, que contém 35.887 imagens de rostos humanos em tons de cinza, com dimensões de 48x48 pixels. O programa foi elaborado utilizando a linguagem de programação Python, e as bibliotecas OpenCV e face-recognition para a detecção e reconhecimento facial, e a biblioteca TensorFlow para treinamento e avaliação do modelo. O treinamento foi da CNN foi realizado em um computador com processador Intel Core i7-11700H, 40 GB de memória RAM, e placa de vídeo NVIDIA GeForce RTX 4070 com 8 GB de memória dedicada, e foi aplicado em um ambiente controlado com diversos grupos de pessoas no Laboratório de Tecnologias Computacionais (LabTeC) da Universidade Federal de Santa Catarina (UFSC) - Campus Araranguá. O modelo foi avaliado utilizando a métrica de acurácia, e obteve um resultado de 95% de acurácia no conjunto de avaliação. Embora os resultados obtidos tenham sido satisfatórios, o modelo desenvolvido apresenta algumas limitações operacionais. A principal limitação está relacionada com a posição das faces em relação à câmera utilizada para captura das imagens, sendo necessário que as faces estejam posicionadas de frente para a câmera. Além disso, a distância entre a câmera e as faces está limitada à resolução da câmera utilizada.