Trabajo de grado - Pregrado
Sistema biométrico de reconocimiento facial basado en inteligencia artificial
Fecha
2022-05-06Registro en:
Universidad Autónoma de Occidente
Repositorio Educativo Digital
Autor
Osorio Quimbayo, Daniel
Garcia Mongua, Santiago
Institución
Resumen
En este proyecto se diseñó un prototipo de un sistema biométrico de reconocimiento facial usando inteligencia artificial con la capacidad suficiente para adaptarse a varios entornos, principalmente en los que se tiene foco para este proyecto los cuales son conjuntos residenciales cerrados y empresas privadas bien sean pequeñas, medianas o grandes.
Para la creación de este sistema se usó una arquitectura de red neuronal profunda especializada en detectar rostros denominada red neuronal convolucional multitareas con la que se obtuvo un porcentaje de eficiencia superior al 85% y que a su vez también tuvo pocos requerimientos de hardware para su implementación, en este proceso se analizaron tres tipos de arquitecturas, una que consistía en el entrenamiento de una red neuronal con las personas de la población a trabajar con el objetivo de clasificar si una persona pertenece o no a la población registrada, la segunda consiste en utilizar una librería que contiene imágenes de rostros y con eso entrenar una red neuronal que sea capaz de extraer características de un rostro, y la última resalta por el uso de ORB para la extracción de características, la mejor fue la que usaba ORB (por sus siglas en ingles Oriented FAST and Rotated BRIEF), para la detección de puntos clave del rostro tomando aproximadamente 500 puntos de la cara humana, con los cuales realizaba una comparación para la validación de autenticidad.
El HMI (interfaz máquina-humano) que se diseñó para el prototipo fue creado por medio del lenguaje de programación Python usando la librería tkinter y gridfs que además necesitó la ayuda del software Pycharm, en este programa se elaboró una interfaz gráfica amigable y de fácil entendimiento para el usuario con unos cuadros emergentes, además el texto de los mismos posee una fuente suave y agradable para una cómoda lectura. Por otro lado, en el software Pycharm también se creó el algoritmo del prototipo del sistema biométrico de reconocimiento facial usando las librerías de random, os, cv2, matplotlib y mtcnn con estas librerías y una profunda investigación de los distintos temas de interés se completó el algoritmo requerido sin necesidad de usar otro tipo de lenguaje de programación u otro software para el desarrollo del sistema.
El algoritmo que se elaboró para este prototipo tiene un gran porcentaje de acierto que es aproximadamente del 94%, dicho valor fue encontrado mediante varias pruebas hechas de este sistema con diferentes personas lo cual permitió validar un óptimo funcionamiento del prototipo creado. In this project, a prototype of a biometric facial recognition system was designed using artificial intelligence with sufficient capacity to adapt to several environments, mainly those that are focused for this project, which are closed residential complexes and private companies, whether small, medium or large.
For the creation of this system, a deep neural network architecture specialized in detecting faces called multitasking convolutional neural network was used, with which a percentage of efficiency greater than 85% was obtained and which in turn also had few hardware requirements for its implementation, in this process three types of architectures were analyzed, one that consisted of the training of a neural network with the people of the population to work with the aim of classifying whether or not a person belongs to the registered population, the second consists of using a library that contains images of faces and with that train a neural network that is capable of extracting characteristics of a face, and the last one stands out for the use of ORB for the extraction of characteristics, the best was the one that used ORB (for its acronym in English Oriented FAST and Rotated BRIEF), for the detection of key points of the face taking approximately 500 points of the human face, with which it made a comparison for the validation of authenticity.
The HMI (machine-human interface) that was designed for the prototype was created through the Python programming language using the tkinter library and gridfs that also needed the help of the Pycharm software, in this program a friendly and easy to understand graphical interface was developed for the user with some pop-up boxes, in addition the text of the same has a soft and pleasant font for a comfortable reading. On the other hand, in the Pycharm software the algorithm of the prototype of the biometric facial recognition system was also created using the libraries of random, os, cv2, matplotlib and mtcnn with these libraries and a deep investigation of the different topics of interest was completed the required algorithm without the need to use another type of programming language or other software for the development of the system.
The algorithm that was developed for this prototype has a large percentage of success that is approximately 94%, this value was found through several tests made of this system with different people which allowed to validate an optimal functioning of the prototype created.