Está en la página 1de 79

FACULTAD DE INGENIERÍA Y ARQUITECTURA

ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS

“MODELO INTELIGENTE DE RECONOCIMIENTO FACIAL PARA LA


BÚSQUEDA AUTOMATIZADA DE LOS TRABAJADORES DE LA
EMPRESA “COMPUGAMES”, TUMBES – 2023.”

AUTORES:

Ruiz Ruiz Jenny Milagros (Orcid: 0000-0003-3615-6552)

Vidal Garcia Johana Elizabeth (Orcid: 0000-0002-7797-9902)

DOCENTE:

Mgtr. Jaramillo Atoche, Javier Eduardo (Orcid: 0000-0002-9843-7416)

LÍNEA DE INVESTIGACIÓN:

Sistema de Información y Comunicaciones

LÍNEA DE RESPONSABILIDAD SOCIAL UNIVERSITARIA:

Desarrollo económico, empleo y emprendimiento

PIURA- PERÚ

2023
DEDICATORIA

DEDICATORIA

El presente trabajo de
investigación va dedicado a
nuestros padres por habernos
forjado como las personas que
somos actualmente y a Dios.

ii
AGRADECIMIENTO

AGRADECIMIENTO

El presente trabajo fue realizado con el


control de nuestro docente y a nuestros
compañeros que han apoyado para
desarrollar este trabajo de
investigación.

iii
ÍNDICE
DEDICATORIA ...................................................................................................... ii

AGRADECIMIENTO ............................................................................................. iii

ÍNDICE DE TABLAS ............................................................................................ vii

ÍNDICE DE IMÁGENES .......................................................................................viii

RESUMEN ............................................................................................................ xi

ABSTRACT .......................................................................................................... xii

I. INTRODUCCIÓN ............................................................................................. 1

II. DESCRIPCIÓN DEL PROYECTO ................................................................... 2

2.1. Descripción del lugar donde se realiza el proyecto.................................... 2

2.1.1. Razón social ....................................................................................... 2

2.1.2. Nombre de la empresa ....................................................................... 2

2.1.3. Tipo de empresa ................................................................................. 2

2.1.4. Naturaleza de la empresa ................................................................... 2

2.1.5. Localización geográfica ...................................................................... 2

III. SITUACIÓN PROBLEMÁTICA ..................................................................... 3

IV. OBJETIVOS Y JUSTIFICACIÓN DEL PROYECTO ..................................... 5

4.1. Objetivos del proyecto ............................................................................... 5

4.1.1. Objetivo general ................................................................................. 5

4.1.2. Objetivos específicos .......................................................................... 5

4.2. Justificación e Impacto .............................................................................. 5

4.2.1. Académico .......................................................................................... 5

4.2.2. Tecnológico ........................................................................................ 5

4.2.3. Práctico .............................................................................................. 5

V. FUNDAMENTACION TEORICA DEL PROYECTO ......................................... 7

5.1. Marco Teórico ........................................................................................... 7

iv
5.1.1. Inteligencia artificial ............................................................................ 7

5.1.2. Procesamiento de imágenes .............................................................. 7

5.1.3. Biometría ............................................................................................ 8

5.1.4. Reconocimiento facial ......................................................................... 9

5.1.5. Búsqueda automatizada ..................................................................... 9

5.1.6. Control de asistencia ........................................................................ 10

5.1.7. Python .............................................................................................. 10

5.1.8. Algoritmo ORB .................................................................................. 11

5.1.9. Open CV ........................................................................................... 11

5.1.10. Tkinter ........................................................................................... 11

5.1.11. MTCNN ......................................................................................... 12

5.1.12. Datetime ........................................................................................ 12

5.1.13. Librería Pandas ............................................................................. 12

5.1.14. Modulo OS .................................................................................... 13

5.1.15. Empresa ........................................................................................ 13

5.1.16. Trabajador ..................................................................................... 13

5.1.17. Web Cam ...................................................................................... 13

5.2. Antecedentes .......................................................................................... 14

5.2.1. Antecedentes Internacionales: .......................................................... 14

5.2.2. Antecedentes Nacionales: ................................................................ 15

VI. PLANIFICACIÓN DEL PROYECTO ........................................................... 18

6.1. Cronograma de actividades .................................................................... 18

6.2. Presupuesto ............................................................................................ 19

VII. METODOLOGÍA......................................................................................... 20

7.1. Iniciación ................................................................................................. 20

7.1.1. Visión del Proyecto ........................................................................... 20

7.2. Planificación y Estimulación .................................................................... 21

v
7.2.1. Requerimientos ................................................................................ 21

7.2.2. Product Backlog ............................................................................... 21

7.2.3. Sprint backlog ................................................................................... 22

7.2.4. Boceto de interfaces ......................................................................... 22

7.2.5. Estructura de desarrollo .................................................................... 27

7.3. Sprint 1: Registro de empleados ............................................................. 27

7.3.1. Código de la Interface de registro de empleados .............................. 27

7.3.2. Interfaz de registro de empleados..................................................... 31

7.4. Sprint 2: Registro de asistencia ............................................................... 33

7.4.1. Código de la Interfaz de registro de entrada y salida de los empleados


33

7.4.2. Interfaz de registro de entrada y salida de los empleados ................ 38

7.5. Verificación de eficiencia ......................................................................... 43

7.5.1. Testeo .............................................................................................. 43

7.5.2. Lanzamiento ..................................................................................... 44

VIII. RESULTADOS ........................................................................................... 45

8.1. Técnica e instrumento de recolección de datos ....................................... 45

IX. CONCLUSIONES Y RECOMENDACIONES .............................................. 47

9.1. Conclusiones .......................................................................................... 47

9.2. Recomendaciones .................................................................................. 47

X. REFERENCIAS BIBLIOGRÁFICAS............................................................... 48

ANEXOS .............................................................................................................. 55

vi
ÍNDICE DE TABLAS

Tabla 1: Presupuesto ........................................................................................... 19


Tabla 2: Cuestionario ........................................................................................... 45
Tabla 3: Respuestas del cuestionario .................................................................. 46

vii
ÍNDICE DE IMÁGENES

Ilustración 1: Localización Geográfica .................................................................... 2


Ilustración 2: Cronograma de actividades - Parte1 ............................................... 18
Ilustración 3: Cronograma de actividades – Parte 2 ............................................. 18
Ilustración 4: Imagen del libro de Excel con el sprint backlog. .............................. 22
Ilustración 5: Boceto de Interfaz 1 Registro de trabajadores ................................ 23
Ilustración 6: Boceto de Interfaz 2 Registro de trabajadores ................................ 23
Ilustración 7: Boceto de Interfaz 3 Registro facial ................................................. 24
Ilustración 8: Boceto de Interfaz de registro de asistencia .................................... 24
Ilustración 9: Boceto de Interfaz de registro de entrada ....................................... 25
Ilustración 10: Boceto de Interfaz de registro de rostros para compatibilidad –
Registro de entrada.............................................................................................. 25
Ilustración 11:Boceto de interfaz de registro de salida ......................................... 26
Ilustración 12: Boceto de Interfaz de registro de rostros para compatibilidad –
Registro de salida ................................................................................................ 26
Ilustración 13: Código de librería y variables - Registro de empleados ................ 27
Ilustración 14: Función getEnter(), registrar_usuario() y registro_facial().............. 28
Ilustración 15: Función reg_rostro() ...................................................................... 29
Ilustración 16: Función registro() .......................................................................... 30
Ilustración 17: Función pantalla_principal() .......................................................... 30
Ilustración 18: Interfaz de Registro de trabajadores ............................................. 31
Ilustración 19: Registro de trabajadores ............................................................... 32
Ilustración 20: Interfaz 3 Registro facial................................................................ 32
Ilustración 21: Mensaje de Registro Facial Exitoso .............................................. 32
Ilustración 22: Muestra de los registros de rostros almacenados en la Carpeta
Rostros ................................................................................................................ 33
Ilustración 23: Código de librería y variables - Registro de asistencia .................. 33
Ilustración 24: Función getEnter() y Función verificacion_entrada() ..................... 34
Ilustración 25. Función registro_entrada() y entrada_rostro() ............................... 35
Ilustración 26:Función orb_sim() .......................................................................... 36
Ilustración 27: Función orb_sim() - Parte 2 ........................................................... 36

viii
Ilustración 28: Función entrada() .......................................................................... 37
Ilustración 29: Código de función pantalla_principal() .......................................... 38
Ilustración 30: Interfaz de registro de asistencia................................................... 38
Ilustración 31: Interfaz de registro de entrada ...................................................... 39
Ilustración 32: Interfaz de registro de rostros para compatibilidad – Registro de
entrada ................................................................................................................. 39
Ilustración 33: Mensaje ........................................................................................ 40
Ilustración 34: Interfaz de registro de salida ......................................................... 40
Ilustración 35:Interfaz de registro de rostros para compatibilidad – Registro de salida
............................................................................................................................. 41
Ilustración 36: Mensaje ........................................................................................ 41
Ilustración 37: Muestra de registro de rostros cuando se confirma la asistencia .. 41
Ilustración 38: Muestra del Excel (BD) donde se encuentra almacenado el registro
de entrada ............................................................................................................ 42
Ilustración 39: Muestra del Excel (BD) donde se encuentra almacenado el registro
de salida .............................................................................................................. 42
Ilustración 40: Testeo – Registro de empleados ................................................... 43
Ilustración 41: Testeo – Registro de asistencia .................................................... 43
Ilustración 42: Demostración del código e interfaz del programa ......................... 44
Ilustración 43: Apreciación del beneficiario sobre el producto del proyecto .......... 44
Ilustración 44: Gráfico circular de la Pregunta 1 ................................................... 55
Ilustración 45: Gráfico circular de la Pregunta 2 ................................................... 55
Ilustración 46: Gráfico circular de la Pregunta 3 ................................................... 56
Ilustración 47: Gráfico circular de la Pregunta 4 ................................................... 56
Ilustración 48: Gráfico circular de la Pregunta 5 ................................................... 57
Ilustración 49: Gráfico circular de la Pregunta 6 ................................................... 57
Ilustración 50: Gráfico circular de la Pregunta 7 ................................................... 58
Ilustración 51: Gráfico circular de la Pregunta 8 ................................................... 58
Ilustración 52: Gráfico circular de la Pregunta 9 ................................................... 59
Ilustración 53: Gráfico circular de la Pregunta 10 ................................................. 59
Ilustración 54: Estructuración del código del proyecto .......................................... 60
Ilustración 55: Interfaz del registro ....................................................................... 60
Ilustración 56: Acceso a la cámara para el reconocimiento facial ......................... 61

ix
Ilustración 57: Registro Exitoso ............................................................................ 61
Ilustración 58: Registro de asistencia a base del registro de usuario ................... 62
Ilustración 59: Registro Exitoso ............................................................................ 62
Ilustración 60: Presentación del registro de usuario ............................................. 63
Ilustración 61: Nuevo interfaz del registro ............................................................ 64
Ilustración 62: Verificación del acceso a la WebCam ........................................... 64
Ilustración 63: Registro exitoso del empleado ...................................................... 65
Ilustración 64: Interfaz de registro de entrada ...................................................... 65
Ilustración 65: Registro de entrada exitoso .......................................................... 66
Ilustración 66: Registro de salida exitoso ............................................................. 66
Ilustración 67: Archivos de extensión xlsx como BD para el almacén de los registros
de asistencia ........................................................................................................ 67

x
RESUMEN
En el presente trabajo de investigación se realizó un modelo inteligente de
reconocimiento facial para la búsqueda automatizada de los trabajadores de la
empresa “CompuGames”, tratándose de un negocio destinado a la venta de
hardware y software, como se especifica es una empresa tecnológica, en donde se
usará la búsqueda automatizada de los trabajadores para generar principalmente
un registro de asistencia de los mismos, esto claro, a través del reconocimiento
facial.
El objetivo de la investigación fue proponer un modelo inteligente de
reconocimiento facial para la búsqueda automatizada de los trabajadores de la
empresa CompuGames - Piura - 2023, para ello se planteó los objetivos específicos
tales como crear procesos correspondientes al control de asistencia empleando el
reconocimiento facial en la empresa CompuGames, lograr que la inteligencia
artificial reconozca sin margen de error los rostros de los trabajadores de la
empresa CompuGames y verificar que el registro de asistencia se complete con
éxito dentro de la empresa CompuGames. La metodología empleada fue Scrum y
la técnica de recolección de datos fue la encuesta. Cabe destacar que se aplicó el
testeo en la funcionalidad del producto del proyecto y a su vez se encontró que el
producto del proyecto es aplicable y está sujeto a futuras modificaciones.
Como resultados se obtuvo que el dueño presenta un nivel de satisfacción
aceptable para hacerle entrega del producto del proyecto respecto a las
modificaciones que él mismo sugirió en las constantes comunicaciones con él,
además precisó estar bastante satisfecho con la adaptabilidad del producto.
Finalmente se tiene que se logró desarrollar el modelo inteligente de
reconocimiento facial para la búsqueda automatizada de los trabajadores
CompuGames, este modelo inteligente fue creado con el lenguaje de programación
python y con librerías como OpenCV, MTCNN, los cuales eran complementos para
la realización exitosa de este.

Palabras Clave: modelo inteligente, Biometría, reconocimiento facial, búsqueda


automatizada.

xi
ABSTRACT

In this research work an intelligent model of facial recognition for the automated
search of the workers of the company "CompuGames" was made, being a business
dedicated to the sale of hardware and software, as specified is a technology
company, where the automated search of workers will be used to generate mainly
a record of attendance of the same, this of course, through facial recognition.

The objective of the research was to propose an intelligent model of facial


recognition for the automated search of the workers of the company CompuGames
- Piura - 2023, for this the specific objectives such as creating processes
corresponding to the attendance control using facial recognition in the company
CompuGames, to achieve that artificial intelligence recognizes without margin of
error the faces of the workers of the company CompuGames and verify that the
attendance record is completed successfully within the company CompuGames.
The methodology used was Scrum and the data collection technique was the
survey. It should be noted that the testing was applied on the functionality of the
project product and in turn it was found that the project product is applicable and
subject to future modifications.
As results it was obtained that the owner presents an acceptable level of satisfaction
to deliver the product of the project with respect to the modifications that he himself
suggested in the constant communications with him, in addition he specified to be
quite satisfied with the adaptability of the product.
Finally, it was possible to develop the intelligent model of facial recognition for the
automated search of CompuGames workers, this intelligent model was created with
the Python programming language and libraries such as OpenCV, MTCNN, which
were complements for the successful implementation of this.

Keywords: intelligent model, biometrics, facial recognition, automated search.

xii
I. INTRODUCCIÓN

Inteligencia artificial (IA) hace referencia al comportamiento similar que tienen las
máquinas al comportamiento humano. Así mismo, se admite que la inteligencia
artificial pertenece a las Ciencias de la computación que se encarga de los diseños
de sistemas inteligentes. (Inteligencia artificial y sus implicaciones en la educación
superior, 2019)

La inteligencia artificial es un tema de gran importancia, porque alcanza a dominar


elementos de las actuales tendencias. La empleabilidad de la inteligencia artificial
es muy variada, pero es usada mayormente en las ramas de robótica e informática.
Otras áreas donde también es usada la IA son en salud, educación, ciencias
empresariales, ciencias sociales, entre otros. (Inteligencia artificial y sus
implicaciones en la educación superior, 2019)

En la actualidad el tema de reconocimiento facial ha tenido una especial


importancia con respecto a análisis de imágenes, lo cual se debe a las aplicaciones
y tecnologías relacionadas a ella, así mismo al trabajo de los científicos en esta
rama por imitar la particularidad humana de identificar rostros. (Rosero Vásquez,
2019)

En el Perú, actualmente existen algunas empresas que se están adaptando a los


avances de la tecnología como es el reconocimiento facial, estas usan esta
herramienta para la firma biométrica facial como es en el caso de la empresa AFP
Habitat, o para crear tu cuenta digital en BBVA, entre otros. (Redacción ContentLab,
2019) (BBVA, 2020)

En la empresa CompuGames se desea que se implemente inteligencia artificial en


algunos de los procesos de dicha empresa, para lo cual el objetivo del presente
proyecto es el proponer un modelo inteligente de reconocimiento facial para la
búsqueda automatizada de los trabajadores de la empresa CompuGames, Tumbes
– 2023, que dé como resultados el lograr exitosamente que la IA reconozca los
rostros de los trabajadores, y además de ello poder verificar que el registro de
asistencia se complete con éxito.

1
II. DESCRIPCIÓN DEL PROYECTO
2.1. Descripción del lugar donde se realiza el proyecto
2.1.1. Razón social
 Sin razón social
2.1.2. Nombre de la empresa
 CompuGames
2.1.3. Tipo de empresa
 Empresa de base tecnológica
2.1.4. Naturaleza de la empresa
 “CompuGames” es una empresa que se dedica a la venta
minoritaria y mayoritaria de hardware y software, que a su vez
está pensada para brindar servicios de ciberseguridad más
adelante, empresa que es administrada por el Sr. Tomás
Monteza Mogollon.
2.1.5. Localización geográfica
 Se ubica en las coordenadas geográficas 3°38'14.6"S
80°35'20.3"W en la que comprende como ubicación local al C.p
la Cruz, Caleta Cruz 24521 - Tumbes.

Ilustración 1: Localización Geográfica

2
III. SITUACIÓN PROBLEMÁTICA
Los sistemas inteligentes son algunas de las novedosas tecnologías que se quiere
implementar en los negocios actuales, obviamente según la necesidad o rubro de
la empresa, pero sea cual sea la necesidad de ser aplicada se puede asegurar que
agiliza los procesos, atiende los procesos frecuentes, que resultan repetitivos para
el ser humano, de forma automática, además reduce los márgenes de error que es
propio del ser humano, asegurando así su confiabilidad.

Centrando a la inteligencia artificial en un caso, específicamente en el ámbito de


reconocimiento facial, se presenta uno de los proyectos desarrollados en Brasil,
refiriéndose a los aeropuertos de Congonhas y Santos Dumont (São Paulo y Río
de Janeiro respectivamente) pues en estos se utiliza el embarque biométrico facial,
quiere decir que en lugar de presentar la tarjeta de abordaje y documentos de
identificación, solo hace falta la lectura biométrica facial mediante tótems
que permitirán el acceso posterior al vuelo. (Cordeiro, 2022)

Según el resultado de las búsquedas sobre sistemas inteligentes en Google Trends,


búsqueda especificada en los últimos cinco años, he ido minorando en el país, no
obstante, aún despierta el interés en un considerable porcentaje de diferentes
usuarios, por lo que se deduce que aún hay empresas o usuarios que están
interesados en la adquisición de estas tecnologías. (Google Trends, 2023)

En la actualidad, la empresa “CompuGames” al ser nueva en el mercado laboral y


tratándose de una empresa tecnológica, como es crucial en toda empresa, se
necesitan ciertos niveles de seguridad, para lo cual este proyecto tiene lugar en uno
de estos aspectos, tratándose de la validación de la asistencia de sus trabajadores,
este aspecto se manejará en el uso de reconocimiento facial.

Para implementar el servicio solicitado se debe conocer la causa del porque se


quiere evitar llevar de manera convencional los procesos implicados al cambio, se

3
redactan las causas del por qué y/o para evitar qué, se implementa la validación de
asistencia con reconocimiento facial:
 En el registro de asistencia convencional, existe poca confiabilidad.
 No hay forma de validar la asistencia del personal, pues los datos de la
asistencia podrían no ser del todo ciertos.
Sin embargo, teniendo en cuenta lo anterior, el efecto que tendrá si no se procede
con la implementación del reconocimiento facial en este servicio será lo siguiente:
 Se vulnera la seguridad del registro de la asistencia, al no haber forma de
verificar una posible suplantación de identidad.
 Al no poder validar si la persona que está firmando la asistencia es la
correcta, el registro de la asistencia estaría erróneo y se puede dejar pasar
esta falla si no se tiene control sobre la asistencia.

4
IV. OBJETIVOS Y JUSTIFICACIÓN DEL PROYECTO
4.1. Objetivos del proyecto
4.1.1. Objetivo general
Proponer un modelo inteligente de reconocimiento facial para la búsqueda
automatizada de los trabajadores de la empresa CompuGames, Tumbes - 2023.
4.1.2. Objetivos específicos
 Crear procesos correspondientes al control de asistencia empleando el
reconocimiento facial en la empresa CompuGames.
 Lograr que la inteligencia artificial reconozca sin margen de error los rostros
de los trabajadores de la empresa CompuGames.
 Verificar que el registro de asistencia se complete con éxito dentro de la
empresa CompuGames.
4.2. Justificación e Impacto
Este estudio se elabora con justificaciones de carácter académico, tecnológico y
práctico que se detallan a continuación:
4.2.1. Académico
En los años académicos que tiene la Universidad César Vallejo filial Piura ha venido
brindando apoyo a sus estudiantes en la ejecución del proyecto de investigación, lo
cual es de mayor utilidad en la formación académica.
4.2.2. Tecnológico
Mediante el constante uso de las tecnologías siempre es indispensable mantenerse
actualizado, además éstas ofrecen aspectos de seguridad muy importantes hoy en
día, por ello es que el proyecto se justifica de manera tecnológica al aplicar sistemas
inteligentes para el reconocimiento facial, según lo requiera la empresa.
4.2.3. Práctico
Este proyecto se justifica de manera práctico ya que se propone un modelo
inteligente de reconocimiento facial para la búsqueda automatizada de los
trabajadores de la empresa CompuGames y así poder validar la asistencia de sus
empleadores y tener un control de ella.

5
El impacto que tendrá este proyecto en la empresa será la seguridad en sus
procesos de validación de identidad en aspectos de acceso a la información y
validación de asistencia.

6
V. FUNDAMENTACION TEORICA DEL PROYECTO
5.1. Marco Teórico
5.1.1. Inteligencia artificial
Según (Frankenfield, 2022) se refiere a la imitación de la inteligencia humana en
las máquinas, las cuales son creadas para tener un pensamiento humano e imitar
sus acciones. También se puede llamar inteligencia artificial a aquellas máquinas
que tengan rasgos relacionados a la mente humana, como por ejemplo el de
resolver ejercicios, aprender, etc.

Según (Rouhiainen, 2018) la inteligencia artificial es la habilidad que tiene una


máquina para captar los datos, aprender de ellos y aplicar lo aprendido en la
resolución de problemas complejos, a diferencia del ser humano, las máquinas
pueden seguir trabajando sin descanso y retener información en volúmenes altos.

Aquella tecnología que utiliza inteligencia artificial en la actualidad está siendo


empleada para contribuir con el ser humano y así hacerle los ámbitos de vida más
fácil, pero eso no quiere decir que todo sea bueno, al implementar la inteligencia
artificial se debe de estar atento para así prever futuras desventajas que se pueden
producir el incremento de esta. (Rouhiainen, 2018)

Cuando decimos “Inteligencia artificial”, hay veces que las personas se ponen
incómodas ante este término así que Sebastián Thrun propuso llamarla “Ciencia de
datos”, un término menos intimidante para el público. (Rouhiainen, 2018)

5.1.2. Procesamiento de imágenes


Es un proceso el cual transforma una imagen en una forma digital, es usado para
extraer información necesaria, como es el escaneo. Hoy en día existen varias
empresas de diferentes sectores que usan el procesamiento de imágenes para
diferentes aplicaciones, reconocimiento de patrones, segmentación, extracción de
información, etc. (Kurama, 2021)
Además, (Viera Maza, 2018) sostiene que el procesamiento de imágenes se realiza
tras el uso de diferentes técnicas para mejorar la imagen deseada, estás técnicas
pueden ser la posterior eliminación de ruido (objetos extra), ajuste del brillo,
modificación del contraste, etc., según su necesidad.

7
Según lo sostiene (Reyes Ortiz, y otros, 2019) entre las distintas técnicas que
existen, las que usualmente se emplean para el procesamiento de imágenes son:
redes neuronales, sistemas difusos, sistemas inmunes artificiales y además la
inteligencia de enjambre.

5.1.3. Biometría
La biometría es una disciplina que se enfoca en el uso de características únicas de
una persona, ya sea físicas o de comportamiento, para identificarlos. Estas
características incluyen huellas dactilares, iris, venas de la mano, firma, forma de
caminar, entre otras. (Cienfuegos Solís, 2017)

Según (Valencia Martínez, 2021) el concepto de biometría es que son las


características físicas que son usadas para reconocer, autenticar e identificar a una
persona. Estas características deben de ser singulares, inscribibles, calculables
como por ejemplo el reconocimiento facial, ocular, de voz y dactilar.
Existen 3 categorías principales de características:
 Conductual:
o De marcha: Cada ser humano tiene una característica única al
caminar, y con la ayuda de la visión artificial e imágenes basadas en
ordenadores, esta se convierte en una técnica biométrica para el
reconocimiento de patrones. (Valencia Martínez, 2021)
 Biológico
o ADN: esta técnica la usan en el área de salud, como por ejemplo los
forenses cuando recogen ADN del cabello, saliva, uñas para así poder
identificar a la persona. (Valencia Martínez, 2021)
 Morfológica
o Huella digital: este tipo de reconocimiento es muy usado ya que las
huellas dactilares son únicas, estas tienden a ser usadas en temas de
seguridad. (Valencia Martínez, 2021)
o Facial: con este reconocimiento es usado para la vigilancia del
individuo o también para la seguridad ya que permite a la maquina

8
identificar a la persona mediante sus rasgos faciales. (Valencia
Martínez, 2021)
o Ocular: para este tipo de reconocimiento usa el iris de la persona ya
que esta tiende a ser única en cada ser humano, o también usa la
esclerótica del globo ocular. (Valencia Martínez, 2021)
o Voz: este tipo de reconocimiento convierte la voz en un identificador
biométrico crucial, usa los rasgos fisiológicos que necesita de la
anatomía de la garganta y boca. (Valencia Martínez, 2021)

5.1.4. Reconocimiento facial


Según (Symanovich, 2021) el reconocimiento facial es un método para identificar
el rostro humano por medio de la tecnología. Un sistema de reconocimiento facial
usa la biometría para hacer un mapeo de los rasgos faciales por medio de un video
o fotografía. Este va a realizar una comparación con la BD de los rostros
almacenados y así encontrar una coincidencia. Mientras que (Yañez Neyra, 2019)
sostiene que este término refiere a la construcción estructural de las características
faciales, dando como resultado identificar al individuo mediante el conjunto de
características que muestran sus rasgos faciales.
El reconocimiento facial es una tecnología que utiliza algoritmos de aprendizaje
automático para analizar y reconocer las características únicas de la cara de una
persona. A través del análisis de la estructura facial, como la posición de los ojos,
la nariz, la boca y otras características, el software de reconocimiento facial es
capaz de identificar y autenticar la identidad de una persona. (Martinez, 2019)

5.1.5. Búsqueda automatizada


Hace referencia a la búsqueda de forma autónoma para consultar datos en una o
varias bases de datos. (Law Insider, 2022)
En tanto (Alvarado Fernández, 2010) refiere a la búsqueda automatizada como un
sistema de representación de conceptos que se encuentran en cualquier base de
datos, los datos que se usen para realizar estas búsquedas tienen que ver con las
habilidades y las diferentes estrategias que posee el usuario para la búsqueda del
tema deseado por el mismo.

9
Una búsqueda automatizada es un proceso en el que un software o un sistema
realiza una búsqueda en línea o en una base de datos de forma automática, sin la
intervención manual de un usuario. Esto permite ahorrar tiempo y recursos, y puede
ser utilizado en una variedad de aplicaciones, como la búsqueda de información en
la web, la búsqueda de información en bases de datos empresariales, y más.
(Botkers | Blog, 2022)

5.1.6. Control de asistencia


Es un sistema que administra los datos de los horarios de entrada y salida de los
trabajadores en una empresa. El control de asistencias realiza un seguimiento de
las horas de sus trabajadores, este es usado para la documentación de las horas
que trabajan los empleados. (Sistemas Sintel, 2022) (peopleHum, 2022)
El control de asistencia es un sistema que se utiliza para registrar la presencia o
ausencia de un individuo en un lugar determinado, como una empresa o una
institución educativa. Se puede realizar manualmente o mediante tecnologías como
el reconocimiento biométrico, la tarjeta de identificación o el software de
seguimiento en línea. El objetivo principal es llevar un registro preciso y confiable
de la asistencia para fines de pago, seguimiento de horario y toma de decisiones.
(Raga, 2021)

5.1.7. Python
Según (Londoño, 2022) Python es un lenguaje de programación de un alto nivel
interpretado, fue creado en 1991 por Guido van Rossum. Este lenguaje de
programación puede implementarse en varias plataformas y software. Python es
popular porque es fácil de aprender.
Python es un lenguaje de programación de alto nivel y propósito general. Fue
creado a principios de los años 90 por Guido van Rossum. Se caracteriza por su
sintaxis clara y legible, lo que lo hace fácil de aprender y usar para personas sin
experiencia previa en programación. Python se utiliza ampliamente en aplicaciones
web, científicas, de inteligencia artificial y en muchas otras áreas. (Robledano,
2019) (Cristancho, 2022)

10
5.1.8. Algoritmo ORB
Es una fusión entre el detector FAST y el descriptor BRIEF, este utiliza una medida
de orientación, que es calculada entre la esquina de una región en la imagen y el
centroide de intensidad de aquella región calculada, esto es asumiendo que la
orientación hacia una esquina de la región es el desplazamiento desde el centroide.
(Taquía Gutiérrez, 2017)
ORB fue publicado en 2011 en el ICCV como alternativa a SIFT y SURF, al ser este
una fusión entre FAST y BRIEF es que ORB agrega en FAST un componente de
orientación para los keypoints detectados, mientras que para BRIEF agrega
invarianza a la rotación y presenta además una mejora en la velocidad de cálculo.
(Ilbay, y otros, 2013)
5.1.9. Open CV
Open CV es una biblioteca de Python el cual va a permitir realizar tareas de
procesamiento de imágenes y visión artificial. Tiene una amplia gama de funciones,
entre las cuales están la detección de objetos, seguimiento y reconocimiento facial.
(Great Learning, 2022)
OpenCV es una biblioteca de visión por computadora de código abierto, que
proporciona algoritmos y herramientas para el procesamiento y análisis de
imágenes y videos. Se utiliza en una amplia gama de aplicaciones, incluyendo la
robótica, la visión artificial, la seguridad y la inteligencia artificial. OpenCV está
escrito en lenguaje C++ y es compatible con diferentes sistemas operativos,
incluyendo Windows, Linux y macOS. (Viera Maza, 2017)
OpenCV es una biblioteca de visión por computadora de código abierto que permite
el desarrollo de aplicaciones relacionadas con el procesamiento de imágenes y
videos en tiempo real. Está diseñada para ser rápida y eficiente y ofrece una amplia
variedad de funciones que incluyen detección de objetos, reconocimiento de
formas, seguimiento de movimiento, filtrado de imágenes, entre otros. OpenCV es
una herramienta popular en la industria y en la investigación debido a su flexibilidad
y rendimiento. (Ruiz León, y otros, 2021)

5.1.10. Tkinter
Tkinter es una biblioteca de Python que permite crear interfaces gráficas de usuario
para programas en Python. Tkinter se basa en la biblioteca Tcl/Tk, que proporciona

11
una colección de herramientas para crear interfaces gráficas de usuario en varios
lenguajes de programación. (Python, 2022)
Tkinter proporciona un conjunto de widgets (elementos de la interfaz de usuario)
que se pueden utilizar para crear interfaces gráficas de usuario de manera fácil y
rápida. También proporciona una serie de métodos y funciones que permiten
controlar la apariencia y el comportamiento de estos widgets. Con Tkinter, los
programadores pueden crear aplicaciones con una interfaz de usuario atractiva y
fácil de usar. (KeepCoding, 2022)
5.1.11. MTCNN
MTCNN (Multi-Task Cascaded Convolutional Neural Network) es una biblioteca de
Python que se usa para la detección de rostros en imágenes. Es una red neuronal
convolucional en cascada que utiliza múltiples tareas para detectar y localizar
rostros en imágenes. (Guse, 2020)
MTCNN es usado en el procesamiento de imágenes y el análisis de video, y puede
ser útil en aplicaciones de reconocimiento facial, detección de emociones,
seguimiento de objetos y otras aplicaciones de visión por computadora. (Amat
Rodrigo, 2021)
MTCNN se puede utilizar en una variedad de aplicaciones, como la detección de
rostros en imágenes de redes sociales, la seguridad en la vigilancia y la
identificación de personas en videos. Es una biblioteca popular en la comunidad de
aprendizaje profundo debido a su precisión y capacidad para detectar rostros en
diferentes ángulos y posiciones. (Vega, 2021)
5.1.12. Datetime
La biblioteca datetime de Python proporciona clases para trabajar con fechas y
horas. Las clases datetime, date y time se utilizan para trabajar con fechas y horas
juntas o por separado. La clase timedelta se utiliza para representar una duración
de tiempo, y la clase tzinfo se utiliza para trabajar con zonas horarias. (Python,
2022)
5.1.13. Librería Pandas
Esta librería proporciona estructuras de datos y herramientas de análisis de datos
para trabajar con datos estructurados y tabulares. La estructura de datos principal
es el DataFrame, que es una tabla de datos bidimensional, y la Serie, que es una
estructura de datos unidimensional. (Chacón, 2021)

12
La librería pandas incluye funciones y herramientas para la importación y
exportación de datos en varios formatos, como CSV, Excel, SQL, JSON y otros
formatos populares. También proporciona funciones para limpiar y transformar
datos, como la eliminación de valores faltantes, la selección de columnas y filas, la
agregación de datos y el análisis estadístico. (Data Scientest, 2022)
5.1.14. Modulo OS
El módulo "os" de Python proporciona una forma de interactuar con el sistema
operativo subyacente, lo que permite realizar tareas comunes del sistema
operativo, como manipulación de archivos, navegación de directorios y
administración de procesos. (Python, 2022)
5.1.15. Empresa
Es una entidad legal natural formada por un grupo de personas que trabajan juntas
para lograr un objetivo común. La línea de negocio que tiene la empresa determina
que estructura comercial elige, como una empresa individual, colectiva o sociedad
anónima. Además, se puede diferenciar como empresa pública o privada, ambos
tienen una estructura de propiedad, normativas y requisitos de información
financiera diferentes. (Hayes, 2022)

5.1.16. Trabajador
Un trabajador es una persona contratada por un empleador para realizar un trabajo
específico después de haber pasado por un proceso de solicitud y entrevista.
(Heathfield, 2022)
Un trabajador es una persona que realiza una actividad laboral a cambio de un
salario o pago. Pueden ser empleados por una empresa o trabajar por cuenta
propia. El trabajo puede ser en una variedad de industrias, incluyendo la
producción, la construcción, los servicios y el sector gubernamental. El trabajo
puede ser a tiempo completo o parcial, permanente o temporal. (Westreicher,
2021) (Radley, 2022)

5.1.17. Web Cam


Es una cámara de video la cual se conectará a una computadora o viene incluida
en laptops, IPad, Tablet, celulares, esta permite la captura de imágenes y videos,

13
mayormente es usado para hacer videoconferencias, cámara de vigilancia,
reconocimiento facial, etc. (Johnson, 2021)

5.2. Antecedentes
5.2.1. Antecedentes Internacionales:
Según (Gavilánez Mariño, 2022) en su proyecto de investigación titulada “Sistema
automatizado para la gestión de asistencia y control de temperatura con
reconocimiento facial de los empleados de la empresa eléctrica Ambato EEASA”
sustentada en Ambato, Ecuador, tuvo como objetivo el desarrollar un sistema
automatizado para la gestión de asistencia y control de temperatura con
reconocimiento facial de los empleados de la Empresa Eléctrica Ambato EEASA, y
con el tema de pandemia de COVID-19, el contacto entre los empleados era
riesgoso por contagio. La modalidad de la investigación fue bibliográfica y de
campo. Para la recolección de datos se usó la técnica de la entrevista y como
instrumento el cuestionario. Su población y muestra fue de 4 personas
pertenecientes al departamento de relaciones industriales.
Como resultado de la entrevista realizada se obtuvo que si se estaban de acuerdo
con la realización de este software para la asistencia de los empleados ya que fue
analizada y planteada de manera clara y concisa. Se concluyó que, con la
implementación de este software, los empleados tendrían un mínimo contacto entre
ellos y el dispositivo dactilar como también la asistencia tendría un mayor control.

Según (Lara Jacho, 2020) en su tesis titulada “Prototipo de reconocimiento facial


para mejorar el control de asistencia de estudiantes en el laboratorio de cómputo,
UNIANDES-QUEVEDO” sustentada en Quevedo, Ecuador, su objetivo fue el
desarrollar un prototipo de reconocimiento facial para mejorar el control de
asistencia de estudiantes, lograr automatizar esta labor, registrando fecha, hora de
entrada y salida. Esta tesis tuvo diversas metodologías, las cuales son el analítico,
el sintético, el sistemático y de modelación, cada uno ayudando al desarrollo del
proyecto. Es de tipo experimental.
Como técnica de recolección de datos se usó la entrevista y la observación de
campo. Se concluyó que se logró el desarrollo y funcionamiento del prototipo
propuesto donde se realizó la toma de asistencia de manera automatizada y se

14
verificó en la página web donde quedan almacenados todos los registros de
asistencia.

Según (Calles Carrasco, 2019) en su tesis titulada “Sistema informático de


reconocimiento facial para el registro y control de asistencia de los socios de la
cooperativa de taxis y camionetas Puyo.” sustentada en Puyo, Ecuador tuvo como
objetivo principal desarrollar un software de reconocimiento facial para así poder
tener un registro y control de asistencia de los socios de la cooperativa de Taxis y
Camionetas Puyo, con el fin de llegar un adecuado control de asistencias de los
socios en las convocatorias y dentro de la empresa. Las metodologías de esta tesis
fueron analítico-sistémico, histórico-lógico, inductivo-deductivo y análisis
documental. Se usó la técnica de la entrevista y observación, como técnica fueron
el cuestionario y ficha de observación.
Su población y muestra fue de 81 personas, entre ellas personal administrativo y
socios. Del cuestionario realizado se obtuvieron como resultado que el 51% de los
socios estaban de acuerdo con la implementación de un sistema de reconocimiento
facial mientras que el 49% no se encontraban de acuerdo con el proyecto.
Se concluyó que la implementación de un sistema de reconocimiento facial para el
registro de asistencias se planteó como una propuesta tecnológica novedosa que
reemplazaría el proceso manual lo cual provocaba pérdida de recursos y tiempo.
5.2.2. Antecedentes Nacionales:
Según (Gutiérrez Pizarro, 2019) en su tesis titulada “Sistema de reconocimiento
facial para el control de asistencia de la I.E. “Juan Pablo II” basado en visión
computacional, 2019” que tiene como objetivo general el evaluar el margen de error
en la detección facial para el control de asistencia con un sistema basado en visión
computacional, como metodología de la investigación se tiene que esta fue de tipo
aplicada y diseño transversal, en cuanto a la problemática a tratar consiste en
automatizar el proceso de control de asistencias en el alumnado de la institución
mencionada, debido a la alta tasa de alumnos en la institución y por la contratación
extra de personal para la verificación y control de este proceso manual.
Como resultado se tuvo que en un 6.95% se presentó el índice de error de los casos
en los cuales el sistema con visión computacional falla por cuestiones de
semejanza de rostros, así como posición y manejo de la iluminación del ambiente,

15
concluyendo que se realizó la implantación del sistema de reconocimiento facial
planeado para la institución educativa, así mismo se logró desplegar dicho sistema,
además de que se evaluó el margen de error en el proceso de reconocimiento de
rostros con el desarrollo de un sistema de identificación facial con visión
computacional.

Citando la investigación de (Pillaca Cerdán, 2019) en su tesis titulada “Sistema de


reconocimiento facial para el control del personal en la consultora LANIU S.A.C”,
esta tiene como objetivo general determinar el efecto de un sistema de
reconocimiento facial para el control de personal en la consultora LANIU S.A.C.
cuya metodología, fue de tipo Aplicada – Explicativa, con diseño experimental de
tipo pre experimental presentó la problemática, como población presenta a 30
trabajadores, de los cuales tomará a 7 de ellos como muestra. La problemática del
estudio fue que el registro de horas de ingreso y salida de cada empleado se
realizaba de forma manual, haciendo que no sea muy confiable el marcado de
asistencia, pues cualquier empleado podía no solo marcar su asistencia, sino
también la de otro trabajador, generando conflicto por la manipulación de los datos,
además el área contable necesitó una herramienta que le permitiera gestionar las
planillas de cada empleado y así realizar este proceso de forma más eficiente.
Dando como resultados del pre test comparándolo con el post test, dio la diferencia
del 1.36% en cuanto a mejora del tema de ausentismo laboral, respecto al tema del
control del personal hubo una mejora del 2,04%. Con lo expuesto anteriormente se
pudo llegar a la conclusión de que la implementación del sistema de reconocimiento
facial si mejoró el control del personal, permitiendo tener un registro de las horas
de ingreso y salida de cada empleado, además de permitir al área contable tener
un apoyo para desembolsar mensualmente las planillas de los empleados.

Según (Leonardo Paredes, 2019) en su tesis titulada “Mejora del Control de


Asistencia de Personal a través de un Sistema de Información con Reconocimiento
Facial Geolocalizado en AGRO RURAL” que fue sustentada en Lima, tuvo como
objetivo principal el mejorar el control de asistencia del personal del Programa de
Desarrollo Productivo Agrario Rural AGRO RURAL por medio de un sistema

16
informático con reconocimiento facial. Para este proyecto de investigación se una
como metodología RUP para la realización del software.
Los resultados de la encuesta de satisfacción del ciudadano – atención oportuna
en sede y campo al poblador rural, en el año 2018 se tuvo una aprobación del 57%
y una desaprobación de 38% junto con 5% para el Item No opina.

Se concluyó que con la implementación de este sistema informático se pudo


mejorar la autentificación del personal al registrar la asistencia con un alto nivel de
certeza, garantizando un alto nivel de seguridad al mitigar el riesgo de
inconsistencias en la información registrada.

17
VI. PLANIFICACIÓN DEL PROYECTO
6.1. Cronograma de actividades

Ilustración 2: Cronograma de actividades - Parte1

Ilustración 3: Cronograma de actividades – Parte 2

Fuente: Elaboración Propia

18
6.2. Presupuesto
A continuación, se muestra el presupuesto para la realización del proyecto:
Descripción Unidad Precio Unidad Precio Total
Laptops 2 S/ 1 600 S/ 3 200.00
WebCam 1 S/ 98.00 S/ 98.00
Visual Studio Code 1 S/ 0.00 S/ 0.00
Electricidad 2 S/ 150.00 S/. 300.00
Internet 2 S/40.00 S/ 80.00
TOTAL S/ 3 678.00
Tabla 1: Presupuesto

Fuente: Elaboración Propia

19
VII. METODOLOGÍA
7.1. Iniciación
7.1.1. Visión del Proyecto
Permitir a la empresa “CompuGame” mantenerse al margen de la tecnología,
más aún porque se trata del rubro tecnológico, además este servicio se
podría ofrecer a los clientes que lo requieran, y así generar otra fuente de
ingresos.

7.1.2. Scrum y StakeHolders


La metodología Scrum es una forma de gestionar proyectos que se centra
en la entrega continua de un producto funcional y de calidad, y en la
colaboración y la comunicación efectiva entre los miembros del equipo y los
clientes. (Ramírez Ramírez, y otros, 2019)
El Scrum Master es responsable de garantizar que el equipo siga las
prácticas de Scrum y de facilitar la colaboración y la comunicación entre los
miembros del equipo. El Scrum Master también ayuda al equipo a resolver
problemas y a eliminar obstáculos que puedan estar afectando su trabajo.
(Nettleton, 2015) (Ibarra, 2017)
Los stakeholders son las personas, grupos u organizaciones que tienen un
interés o una participación en el proyecto. Los stakeholders pueden influir en
el proyecto y sus resultados, por lo que es importante involucrarlos en la
planificación y el seguimiento del proyecto. (Nettleton, 2015) (Ibarra, 2017)

En este proyecto los Scrum Master somos los integrantes del proyecto con
el objetivo de facilitar soluciones a través de tecnología y con la capacidad
de documentar y desarrollar cada proceso del sistema. Los Stakerholder de
este proyecto son:
 Empresa CompuGames.
 Gerente de la empresa CompuGames.
7.1.3. Sprints:
El sprint es un elemento fundamental de la metodología Scrum porque este
permite al equipo de trabajo centrarse en entregables concretos, lo que

20
facilita el monitoreo del progreso del proyecto y permite ajustar el enfoque y
las prioridades a medida que el equipo aprende y avanza. (Requena Mesa,
2018)

7.2. Planificación y Estimulación


7.2.1. Requerimientos
 Permitir a través del reconocimiento facial generar la asistencia.
 Almacenar estos mismos registros en un archivo editable para el
administrador.
 Accesibilidad en las imágenes generadas por el programa para su
posterior cambio.
 Accesibilidad en el programa para la eliminación de un usuario.
7.2.2. Product Backlog
En el apartado se organizan por orden de prioridad los requisitos para la
elaboración del producto del proyecto, a continuación, se presentan algunos:
 Creación de todas las interfaces (con sus respectivos nombres).
 Importación de librerías.
 Registro de nuevos usuarios.
 Apertura la webcam para la captura de la fotografía del usuario.
 Identificar el rostro.
 Almacenar los datos ingresados en un directorio.
 Almacenar los rostros ingresados en la carpeta correspondiente.
 Registro de asistencia de entrada.
 Comparar rostro actual con el rostro de registro de usuario.
 Almacenar los rostros ingresados en la carpeta correspondiente.
 Registrar la asistencia de entrada en la BD (Excel) correspondiente.
 Registro de asistencia de salida.
 Comparar rostro actual con el rostro de registro de usuario.
 Almacenar los rostros ingresados en la carpeta correspondiente.
 Registrar la asistencia de salida en la BD (Excel) correspondiente.

21
7.2.3. Sprint backlog
Esto hace referencia a la lista de tareas que se consideran para realizar a lo
largo del sprint, estás tareas están medidas por un promedio de duración de
5 (cinco) horas por día, dando como total de horas 65hr y 15min, lo que nos
lleva a 13 (trece) días laborables del sprint. A continuación, se presenta la
imagen de una parte del sprint backlog.

Ilustración 4: Imagen del libro de Excel con el sprint backlog.

7.2.4. Boceto de interfaces


Los primeros bocetos para la realización de este proyecto se realizaron en
el programa Paint ya que para nosotros se nos hizo un poco más fácil el de
dibujar el modelo de la propuesta desde cero.

En nuestra primera interfaz será usada únicamente por el administrador para


el registro de los trabajadores, esta interfaz cuenta con un texto de
bienvenida y un Botón que lleva como nombre “Registrar Usuario”

22
Ilustración 5: Boceto de Interfaz 1 Registro de trabajadores

Fuente: Elaboración propia

Al hacer clic al botón te llevará a otra interfaz, en la cual le va a pedir ingresar


el primer nombre y sus 2 apellidos del trabajador en el campo de texto,
después debe de hacer clic en el botón Registro facial, el cual le llevara a
otra interfaz.

Ilustración 6: Boceto de Interfaz 2 Registro de trabajadores

Fuente: Elaboración propia

En la Interface 3, se mostrará el inicio del video para que la cámara pueda


captar el rostro del empleado, debe de darle en la tecla escape para que el
video se detenga y guarde el rostro del empleado.

23
Ilustración 7: Boceto de Interfaz 3 Registro facial

Fuente: Elaboración propia

Después de capturar el rostro del empleado, se mostrar un mensaje de


“Registro Exitoso”.

Para el registro de asistencia, la interfaz cuenta con un texto de bienvenida,


seguido de dos botones, “Registrar Entrada” y “Registrar Salida”
respectivamente, esta interface va a interactuar con el empleado.

Ilustración 8: Boceto de Interfaz de registro de asistencia

Fuente: Elaboración propia

Al hacer clic en el botón “Registrar Entrada”, nos llevara a la siguiente


interfaz, donde nos mostrará un texto indicándole al empleador que datos
debe de ingresar en el campo de texto, después de ingresarlos, al hacer clic
al botón “Registrar entrada”, iniciara el video para registrar el rostro del

24
usuario, debe de dar escape para capturar imagen, después el sistema va a
comprobar si es o no es el empleado ingresado, si es se registrar en un
archivo de Excel en el cual estarán los registros de asistencias, si no
entonces le saldrá un mensaje de usuario no ingresado o que debe de ser
registrado antes de registrar su asistencia.

Ilustración 9: Boceto de Interfaz de registro de entrada

Fuente: Elaboración propia

Ilustración 10: Boceto de Interfaz de registro de rostros para compatibilidad –


Registro de entrada

Fuente: Elaboración propia

Al hacer clic en el botón “Registrar Salida”, nos llevara a la siguiente interfaz,


donde nos mostrará un texto indicándole al empleador que datos debe de
ingresar en el campo de texto, después de ingresarlos, al hacer clic al botón
“Registrar Salida”, iniciara el video para registrar el rostro del usuario, debe
de dar escape para capturar imagen, después el sistema va a comprobar si

25
es o no es el empleado ingresado, si es se registrar en un archivo de Excel
en el cual estarán los registros de asistencias, si no entonces le saldrá un
mensaje de usuario no ingresado o que debe de ser registrado antes de
registrar su asistencia.

Ilustración 11:Boceto de interfaz de registro de salida

Fuente: Elaboración Propia

Ilustración 12: Boceto de Interfaz de registro de rostros para compatibilidad –


Registro de salida

Fuente: Elaboración Propia

26
7.2.5. Estructura de desarrollo

Para la creación del modelo inteligente, se empleó el lenguaje de


programación python, así mismo usaron librerías como Open CV, Tkinter,
MTCNN, datetime, pandas y módulo Os.

7.2.6. Distribución de Tareas


Para distribuir las actividades o tareas de nuestro proyecto, se utilizó el
software Gantt Project, donde se detalla las tareas que se realizarán y la
duración que tendrán.

7.3. Sprint 1: Registro de empleados

7.3.1. Código de la Interface de registro de empleados


Para la realización de la primera interface de registro de empleados, hemos
usado las librerías Tkinter, Open CV, matplotlib y mtcnn. Así mismo, se crea
una lista de variables que se usaran en el proyecto.

Ilustración 13: Código de librería y variables - Registro de empleados

Creamos la función getEnter() para separar elementos en la pantalla y mejorar


la legibilidad.
Con la función registrar_usuario() se tomará la información del usuario que ha
sido ingresada en el campo de texto y se almacenará en un archivo con el

27
mismo nombre del usuario. Luego, el campo de texto se borra (ósea se
establece en blanco).

En la función registro_facial() usando la librería OpenCV va a capturar el rostro


del usuario por medio de la cámara de la computadora. La función abre una
ventana llamada “Registro Facial” y muestra la imagen capturada. Si el
usuario presiona la tecla Esc, la función finaliza y la imagen del rostro se
guarda en la carpeta path1 con el nombre de usuario y la extensión ".jpg”
Después de guardar la imagen, la función cierra la cámara y la ventana. Por
último, la función elimina la entrada del nombre de usuario y muestra un
mensaje de éxito en la pantalla "REGISTRO FACIAL EXITOSO”.

Ilustración 14: Función getEnter(), registrar_usuario() y registro_facial()

Después de guardar la imagen, la función llama a otra función llamada


reg_rostro() que utiliza la librería MTCNN (una red neuronal convolucional)
para detectar las caras en la imagen registrada. Luego, para cada cara
detectada, se recorta la imagen y se guarda en un archivo separado.
Finalmente, se muestra la imagen recortada de cada cara detectada en una
ventana de visualización.

28
Ilustración 15: Función reg_rostro()

La función llamada registro() crea una ventana emergente (top-level) usando


el módulo Tkinter y la asigna a la variable pantalla1. La ventana emergente
muestra un formulario para que un usuario pueda registrar el nombre de un
empleado y también incluye un botón para iniciar el registro facial del empleado.
Las variables usuario y usuario_entrada se definen como variables de cadena
(StringVar) y se utilizan para almacenar el nombre del empleado que el usuario
ingresa en el campo de entrada. En la ventana emergente se crean dos
etiquetas y una entrada de texto (Entry). La primera etiqueta solicita al usuario
que ingrese el nombre del empleado, y la segunda etiqueta indica que el
siguiente campo de entrada es para el "1er Nombre y Apellidos". Finalmente,
la función crea un botón de registro (Button) que, cuando se presiona, llama a
otra función llamada registro_facial. Este botón también tiene un texto y está
configurado para tener un aspecto específico.

29
Ilustración 16: Función registro()

En la función pantalla_principal() se crea una ventana principal de la interfaz


gráfica de usuario utilizando la librería Tkinter en Python, con un tamaño de
550x250 píxeles, un título "REGISTRO DE TRABAJADORES", y un color de
fondo definido por la variable color_background.
En la ventana principal se muestra un texto de bienvenida centrado en la parte
superior, utilizando una etiqueta Label. También se incluyen un botón para
registrar usuarios y una función getEnter para separar visualmente los
elementos de la ventana.
La función pantalla_principal() tiene una llamada a la función mainloop al
final, que se encarga de mantener la ventana abierta y esperando eventos de
entrada del usuario hasta que se cierre la ventana.
La variable pantalla se declara como global al principio de la función, lo que
permite que sea utilizada por otras funciones en el mismo módulo sin
necesidad de pasarla como un argumento explícito.

Ilustración 17: Función pantalla_principal()

30
7.3.2. Interfaz de registro de empleados
En nuestra primera interfaz será usada únicamente por el administrador para
el registro de los trabajadores, esta interfaz cuenta con un texto de
bienvenida “Bienvenido al registro de trabajadores” y un Botón que lleva
como nombre “Registrar Usuario”, cuando el administrador hace clic en el
botón, lo llevará a la siguiente interfaz.

Ilustración 18: Interfaz de Registro de trabajadores

En esta nueva interfaz se mostrará 2 textos que indican lo que debe de


realizar en el campo de texto, después de ingresar los datos solicitados, se
debe de hacer clic en el botón “Registrar” para comenzar el registro facial
del empleado.

31
Ilustración 19: Registro de trabajadores

Al hacer clic al botón lo llevara a otra interfaz donde se mostrará el inicio del
video para que la cámara pueda captar el rostro del empleado, debe de darle
en la tecla escape para que el video se detenga y guarde el rostro del
empleado.

Ilustración 20: Interfaz 3 Registro facial

Después de capturar el rostro del empleado, se mostrar un mensaje de


“Registro Exitoso” y se guarda la imagen en la Carpeta Rostros al cual ya fue
asignada para el registro de rostros.

Ilustración 21: Mensaje de Registro Facial Exitoso

32
Ilustración 22: Muestra de los registros de rostros almacenados en la Carpeta
Rostros

7.4. Sprint 2: Registro de asistencia


7.4.1. Código de la Interfaz de registro de entrada y salida de los
empleados

Para la realización de la primera interface de registro de empleados, hemos


usado las librerías Tkinter, Open CV, matplotlib, MTCNN, Datetime, Pandas
y modulo OS. Así mismo, se crea una lista de variables que se usaran en el
proyecto.

Ilustración 23: Código de librería y variables - Registro de asistencia

33
Creamos la función getEnter() para separar elementos en la pantalla y
mejorar la legibilidad.
La segunda función, verificacion_entrada(), se encarga de verificar si un
archivo existe en un directorio (path1) y luego abrirlo para leer su contenido.
Para hacer esto, primero toma el valor de entrada del usuario desde un objeto
llamado verificacion_usuario_entrada. Luego, elimina el contenido de un
objeto de entrada de usuario llamado usuario_entr.
A continuación, el código verifica si el valor de entrada del usuario
(entr_usuario) está en la lista de archivos en el directorio especificado
(list_archiv). Si es así, abre el archivo con el nombre correspondiente y lee
su contenido en una variable llamada verificacion. Si el archivo no existe, el
código imprimirá "Usuario no encontrado" y agregará una etiqueta roja en una
pantalla llamada pantalla2.

Ilustración 24: Función getEnter() y Función verificacion_entrada()

Se llama a la función registro_entrada(), que inicializa una cámara y


muestra la imagen en una ventana llamada "Registrar". El usuario puede
capturar una imagen de su rostro presionando la tecla Esc, lo que hace que
se guarde la imagen en una ubicación específica.

Luego, la función entrada_rostro() utiliza el detector de caras MTCNN para


detectar la cara en la imagen y recortar solo la región de la cara. La imagen
recortada se redimensiona a un tamaño específico y se guarda en la misma
ubicación donde se guardó la imagen original del usuario.

34
Después, la función orb_sim() utiliza el algoritmo ORB para comparar la
imagen recién capturada con la imagen de registro del usuario. Si la similitud
entre las dos imágenes es mayor o igual a 0.95, se registra el usuario en un
archivo de Excel y se muestra un mensaje de éxito en la pantalla. Si la
similitud es menor a 0.95, se muestra un mensaje de error y se solicita que
el usuario verifique su identidad.

Ilustración 25. Función registro_entrada() y entrada_rostro()

35
Ilustración 26:Función orb_sim()

Ilustración 27: Función orb_sim() - Parte 2

En la función entrada() crea una ventana secundaria llamada pantalla2


usando la función Toplevel() que pertenece a la libreria Tkinter. En esta
ventana secundaria, se agrega un título “Registro de entrada”, también
aparece un texto que indica que datos debe de ingresar el empleado.
También se define una variable de control de cadena
(verificacion_usuario_entrada) para almacenar el valor ingresado por el
usuario en el widget Entry posteriormente.

36
A continuación, se agrega otro texto "USUARIO:" y se utiliza la función
getEnter() nuevamente. Luego, se crea un widget Entry llamado
usuario_entr donde el usuario puede ingresar su nombre de usuario y su
valor se guarda en la variable de control de cadena
verificacion_usuario_entrada.
Finalmente, se agrega un botón con el texto "Registrar Entrada" (que
probablemente sea una variable global) que llama a la función
registro_entrada() cuando se hace clic en él. El botón se agrega utilizando
el widget Button().

Ilustración 28: Función entrada()

Este mismo procedimiento se usa para el registro de salida, pero cambiando


de nombre las variables y funciones para que no exista un cruce de datos.

La función pantalla_principal() es para, como su nombre lo dice, la


visualización de la interfaz principal de nuestro registro de asistencia, en esta
interfaz se encontraran el tamaño de la interfaz
pantalla.geometry("500x300"), también el título de la interfaz
pantalla.title("REGISTRO DE ASISTENCIA"), un mensaje de bienvenida y

37
dos botones, una para la entrada el cual llamara a la función entrada() y el
de salida que llamara a la función de salida().
La función pantalla_principal() tiene una llamada a la función mainloop al
final, que se encarga de mantener la ventana abierta y esperando eventos
de entrada del usuario hasta que se cierre la ventana.

Ilustración 29: Código de función pantalla_principal()

7.4.2. Interfaz de registro de entrada y salida de los empleados


Para el registro de asistencia, la interfaz cuenta con un texto de bienvenida,
seguido de dos botones, “Registrar Entrada” y “Registrar Salida”
respectivamente, esta interface va a interactuar con el empleado.

Ilustración 30: Interfaz de registro de asistencia

Al hacer clic en el botón “Registrar Entrada”, nos llevara a la siguiente


interfaz, donde se mostrará un texto indicándole al empleador que datos

38
debe de ingresar en el campo de texto, en este caso seria “Ingrese un 1er
nombre y sus apellidos”, después de ingresarlos, debe de hacer clic al botón
“Registrar entrada”, seguidamente se iniciara el video para registrar el rostro
del usuario, este debe seleccionar la tecla “Esc” del teclado para que se
pueda capturar la imagen, después el sistema va a comprobar si es o no es
el empleado ingresado, si es se registrar en un archivo de Excel en el cual
estarán los registros de asistencias, si no entonces le saldrá un mensaje de
usuario no ingresado o que debe de ser registrado antes de registrar su
asistencia.

Ilustración 31: Interfaz de registro de entrada

Ilustración 32: Interfaz de registro de rostros para compatibilidad – Registro de


entrada

39
Ilustración 33: Mensaje

Lo casi lo mismo pasara con el botón “Registrar Salida”, nos llevara a otra
interfaz, donde nos mostrará un texto indicándole al empleador que datos
debe de ingresar en el campo de texto, después de ingresarlos, al hacer clic
al botón “Registrar Salida”, iniciara el video para registrar el rostro del
usuario, debe de dar escape para capturar imagen, después el sistema va a
comprobar si es o no es el empleado ingresado, si es se registrar en un
archivo de Excel en el cual estarán los registros de asistencias, si no
entonces le saldrá un mensaje de usuario no ingresado o que debe de ser
registrado antes de registrar su asistencia.

Ilustración 34: Interfaz de registro de salida

40
Ilustración 35:Interfaz de registro de rostros para compatibilidad – Registro de
salida

Ilustración 36: Mensaje

Ilustración 37: Muestra de registro de rostros cuando se confirma la asistencia

41
Ilustración 38: Muestra del Excel (BD) donde se encuentra almacenado el registro
de entrada

Ilustración 39: Muestra del Excel (BD) donde se encuentra almacenado el registro
de salida

42
7.5. Verificación de eficiencia
7.5.1. Testeo
Se comprueba el funcionamiento del programa a través del testeo plasmado
en Microsoft Excel, empleando los sprint, como se muestra a continuación:

Ilustración 40: Testeo – Registro de empleados

Como se muestra en la imagen a pensar que se encuentra un fallo en un


resultado, este termina siendo favorable, pues cumple con la función de solo
detectar rostros, como se fue planeado de un principio.

A continuación, se tiene el testeo del otro proceso, el cual es el registro de


asistencias.

Ilustración 41: Testeo – Registro de asistencia

Este como se muestra, cumple con los resultados esperados, teniendo


finalmente que su funcionalidad se basa en el 100%, pero siempre se pueden
aplicar otros cambios según la afinidad.

43
7.5.2. Lanzamiento
Se presenta el programa en su versión final tras las modificaciones
correspondientes según el criterio del representante de la empresa mediante
una reunión empleando la herramienta de zoom, a su vez se hizo una serie
de preguntas en cuanto al nivel de satisfacción, mismas que están
plasmadas en el formulario de google y que posteriormente se mostrará en
anexos, a continuación, se presentan algunas evidencias de la reunión final.

Ilustración 42: Demostración del código e interfaz del programa

Ilustración 43: Apreciación del beneficiario sobre el producto del proyecto

44
VIII. RESULTADOS
8.1. Técnica e instrumento de recolección de datos
La técnica que se emplea es la encuesta, mediante la cual se tiene como
instrumento de recolección de datos al cuestionario, mismo que tiene un total
de 10 ítem, los cuales tienen el objetivo de medir o evaluar la satisfacción del
dueño de la empresa “CompuGames” con respecto al producto de la
investigación y a su vez el servicio para el beneficiario.

APRECIACIÓN DEL PRODUCTO

N° ÍTEM MEDIDA

1 ¿Qué tan satisfecho esta con la realización del producto?

2 ¿Cuál es el grado de satisfacción con las modificaciones continuas del


producto?

3 ¿En qué medida se encuentra con la adaptación final que cumple sus
observaciones sobre el producto?

4 ¿Cuán satisfecho se encuentra tras la funcionabilidad de los procesos?


 Nada
5 Indique su nivel de satisfacción con el tipo de almacenamiento de datos satisfecho.
del registro de asistencia.
 Poco
6 ¿En qué escala se encuentra respecto que el producto esté sujeto a satisfecho.
modificaciones futuras?
 Satisfecho.
7 Demuestre su satisfacción respecto a la comunicación profesional y no
profesional respecto al seguimiento de cambios para el producto  Muy
satisfecho.
8 ¿Cuál es el grado de satisfacción con la explicación del funcionamiento
 Bastante
del producto?
satisfecho.
9 ¿Cuán satisfecho está con la calidad del producto?

10 ¿Qué tan satisfecho se encuentra de haber confiado su idea de negocio


con nosotras?
Tabla 2: Cuestionario

Fuente: Elaboración Propia

45
Para la aplicación de la encuesta, se usó la herramienta de google form, que
nos permite tener una mejor visualización de resultados, los cuales se
plasman a continuación:

APRECIACIÓN DEL PRODUCTO

N° ÍTEM MEDIDA

1 ¿Qué tan satisfecho está con la realización del producto? Satisfecho

2 ¿Cuál es el grado de satisfacción con las modificaciones Muy satisfecho


continuas del producto?

3 ¿En qué medida se encuentra con la adaptación final Muy satisfecho


que cumple sus observaciones sobre el producto?

4 ¿Cuán satisfecho se encuentra tras la funcionalidad de Muy satisfecho


los procesos?

5 Indique su nivel de satisfacción con el tipo de Satisfecho


almacenamiento de datos del registro de asistencia.

6 ¿En qué escala se encuentra respecto que el producto Bastante


esté sujeto a modificaciones futuras? satisfecho

7 Demuestre su satisfacción respecto a la comunicación Satisfecho


profesional y no profesional respecto al seguimiento de
cambios para el producto

8 ¿Cuál es el grado de satisfacción con la explicación del Muy satisfecho


funcionamiento del producto?

9 ¿Cuán satisfecho está con la calidad del producto? Satisfecho

10 ¿Qué tan satisfecho se encuentra de haber confiado su Bastante


idea de negocio con nosotras? satisfecho
Tabla 3: Respuestas del cuestionario
Fuente: Elaboración propia
La interpretación de los resultados se basa en que hay cuatro aspectos que,
a pesar de estar bien, siempre se pueden mejorar, esto según lo indicó el
dueño de “CompuGames”, además en las medias de “Bastante satisfecho”
precisa que cumplimos con sus requerimientos y conveniencias para
adaptaciones futuras.

46
IX. CONCLUSIONES Y RECOMENDACIONES
9.1. Conclusiones
 En conclusión, se logró desarrollar el modelo inteligente de reconocimiento
facial para la búsqueda automatizada de los trabajadores CompuGames,
este modelo inteligente fue creado con el lenguaje de programación python
y con librerías como OpenCV, MTCNN, los cuales eran complementos para
la realización exitosa de este.
 Tratándose de los procesos del control de asistencia se logró generar una
base de datos en Excel para registrar con fecha y hora la entrada y salida
de los trabajadores que firmaron la asistencia a través de la biometría
 Con respecto al segundo objetivo específico, se concluyó que el modelo
inteligente si logra reconocer los rostros registrados de los trabajadores de
la empresa CompuGames.
 Además, se concluyó que cuando el modelo inteligente es ejecutado para
la realización de las asistencias, este reconoce exitosamente los rostros de
los empleados para su respectiva asistencia, adicionalmente a esto, a la
hora de realizar la comprobación de reconocimiento facial, si el usuario
ingresado no existe aparecerá un mensaje de Usuario no encontrado,
seguido de eso no se realiza ningún registro en el archivo de asistencia y
se guarda una imagen del usuario con el nombre ingresado, así mismo, si
el usuario ingresa otro nombre de los trabajadores y realiza su
reconocimiento facial, se mostrará un texto que dice rostro incorrecto, y al
igual que el anterior caso, no se registra ningún dato en el archivo de
asistencia.
9.2. Recomendaciones
 Considerar una base de datos que se adapte a la conveniencia de cada
usuario/empresa.
 Considerar límites en cada proceso, ya sea por espacio de almacenamiento
o por requerimientos.
 Siempre dejar el producto sujeto a futuras modificaciones.

47
X. REFERENCIAS BIBLIOGRÁFICAS

Alvarado Fernández, Rómulo Eduardo. 2010. El servicio de búsqueda


automatizada en la Sala OPAC de la Biblioteca Nacional del Perú (sede Av.
Abancay). Facultad de Letras y Ciencias Humanas, Universidad Nacional Mayor de
San Marcos. Lima : Universidad Nacional Mayor de San Marcos, 2010. Tesis.
Amat Rodrigo, . 2021. Ciencia de datos. Ciencia de datos. [Online] Mayo 2021.
[Cited: 10 Febrero 2023.] https://www.cienciadedatos.net/documentos/py34-
reconocimiento-facial-deeplearning-
python.html#:~:text=Uno%20de%20los%20%C3%BAltimos%2C%20y,forma%20s
ecuencial%2C%20las%20detecciones%20generadas..
BBVA. 2020. BBVA. BBVA. [Online] 9 Junio 2020. [Cited: 25 Enero 2023.]
https://www.bbva.com/es/pe/bbva-utiliza-el-reconocimiento-facial-para-la-apertura-
de-cuentas-digitales-en-peru/.
Botkers | Blog. 2022. Botkers | Blog. Botkers | Blog. [Online] 19 Agosto 2022.
[Cited: 3 Febrero 2023.] https://www.botkers.com/blog/automatizar-la-busqueda-
de-informacion-con-rpa.
Calles Carrasco, . 2019. Sistema informático de reconocimiento facial para el
registro y control de asistencia de los socios de la cooperativa de taxis y camionetas
Puyo. FACULTAD DE SISTEMAS MERCANTILES, UNIVERSIDAD REGIONAL
AUTÓNOMA DE LOS ANDES. Puyo - Ecuador : UNIVERSIDAD REGIONAL
AUTÓNOMA DE LOS ANDES, 2019. p. 127, Tesis.
Chacón, . 2021. Profile. Profile. [Online] 22 Marzo 2021. [Cited: 10 Febrero 2023.]
https://profile.es/blog/pandas-python/.
Cienfuegos Solís, Jorge Luis. 2017. Biometría de voz en la seguridad de la
información en las notarías públicas peruanas, 2017. Ingeniera , Universidad Cesar
Vallejo. Lima : Universidad Cesar Vallejo, 2017. p. 143, TESIS PARA OPTAR EL
GRADO ACADÉMICO.
Cordeiro, . 2022. Aeropuertos de Brasil abren embarque con reconocimiento facial.
Digital Policy & Law News. 22 Agosto 2022.
Cristancho, . 2022. Talently | Blog. Talently | Blog. [Online] 27 Agosto 2022. [Cited:
3 Febrero 2023.] https://talently.tech/blog/que-es-python-y-para-que-sirve/.

48
Data Scientest. 2022. Data Scientest. Data Scientest. [Online] 19 Diciembre 2022.
[Cited: 10 Febrero 2023.] https://datascientest.com/es/pandas-python.
Frankenfield, . 2022. Investopedia. Investopedia. [Online] 6 Julio 2022. [Cited: 25
Enero 2023.] https://www.investopedia.com/terms/a/artificial-intelligence-ai.asp.
Gavilánez Mariño, . 2022. Sistema automatizado para la gestión de asistencia y
control de temperatura con reconocimiento facial de los empleados de la empresa
eléctrica Ambato EEASA. FACULTAD DE INGENIERÍA EN SISTEMAS,
ELECTRÓNICA E INDUSTRIAL, UNIVERSIDAD TÉCNICA DE AMBATO.
Ambato,Ecuador : UNIVERSIDAD TÉCNICA DE AMBATO, 2022. p. 130, Tesis.
Google Trends. 2023. Google Trends. Google Trends. [Online] 2023. [Cited: 29
Enero 2023.] https://trends.google.es/trends/explore?date=today%205-
y&geo=PE&q=sistemas%20inteligentes.
Great Learning. 2022. Blog | Great Learning. Blog | Great Learning. [Online] 24
Octubre 2022. [Cited: 25 Enero 2023.]
https://www.mygreatlearning.com/blog/opencv-tutorial-in-
python/#:~:text=OpenCV%20is%20a%20Python%20library,%2C%20face%20reco
gnition%2C%20and%20tracking...
Guse, . 2020. Towards Data Science. Towards Data Science. [Online] 27 Abril
2020. [Cited: Febrero 10 2023.] https://towardsdatascience.com/face-detection-
using-mtcnn-a-guide-for-face-extraction-with-a-focus-on-speed-c6d59f82d49.
Gutiérrez Pizarro, Ronald Jansh. 2019. Sistema de reconocimiento facial para el
control de asistencia de la I.E. “juan pablo ii” basado en visión computacional, 2019.
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS, UNIVERSIDAD
NACIONAL JOSÉ MARÍA ARGUEDAS. ANDAHUAYLAS : UNIVERSIDAD
NACIONAL JOSÉ MARÍA ARGUEDAS, 2019. p. 127, Tesis.
Hayes, . 2022. Investopedia. Investopedia. [Online] 28 Junio 2022. [Cited: 29 Enero
2023.] https://www.investopedia.com/terms/c/company.asp.
Heathfield, Susan M. 2022. The Balance. The Balance. [Online] 15 Agosto 2022.
[Cited: 29 Enero 2023.] https://www.thebalancemoney.com/what-is-an-employee-
1918111.
Ibarra, . 2017. Linkedin. Linkedin. [Online] 22 Mayo 2017. [Cited: 15 Febrero 2023.]
https://www.linkedin.com/pulse/c%C3%B3mo-seleccionar-al-scrum-master-y-los-
stakeholders-ernesto-ibarra/?originalSubdomain=es.

49
Ilbay, Miguel Fabricio Ñauñay and Córdova, Luis Gonzalo Tipantuña. 2013.
Análisis de eficiencia en algoritmos de reconocimiento de imágenes digitales
aplicables a dispositivos móviles bajo la plataforma Android. [Online] 2013. [Cited:
3 3 2023.] http://repositorio.espe.edu.ec/bitstream/21000/7770/1/ac-si-espe-
047430.pdf.
Inteligencia artificial y sus implicaciones en la educación superior. Ocaña-
Fernández, , Valenzuela Fernández, and Garro-Aburto, . 2019. Lima : Propósitos
y Representaciones, Agosto 2019, Propósitos y Representaciones, Vol. 7. 2310-
4635.
Johnson, . 2021. INSIDER. INSIDER. [Online] 19 Marzo 2021. [Cited: 25 Enero
2023.] https://www.businessinsider.com/guides/tech/what-is-a-webcam.
KeepCoding. 2022. KeepCoding. KeepCoding. [Online] 5 Septiembre 2022. [Cited:
10 Febrero 2023.] https://keepcoding.io/blog/que-es-tkinter/.
Kurama, . 2021. Blog | Nanonets. Blog | Nanonets. [Online] 2021. [Cited: 25 Enero
2023.] https://nanonets.com/blog/machine-learning-image-processing/.
Lara Jacho, Steven Bryan. 2020. Prototipo de reconocimiento facial para mejorar
el control de asistencia de estudiantes en el laboratorio de cómputo, UNIANDES-
QUEVEDO. FACULTAD DE SISTEMAS MERCANTILES, UNIVERSIDAD
REGIONAL AUTÓNOMA DE LOS ANDES “UNIANDES”. Quevedo, Ecuador :
UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS ANDES “UNIANDES”, 2020.
Tesis.
Law Insider. 2022. Law Insider. Law Insider. [Online] 2022. [Cited: 29 Enero 2023.]
https://www.lawinsider.com/dictionary/automated-
search#:~:text=automated%20search%20means%20direct%20on,Sample%201S
ample%202.
Leonardo Paredes, . 2019. Mejora del control de asistencia de personal a través
de un sistema de información con reconocimiento facial geolocalizado en Agro
Rural. Facultad de Ingeniería, Universidad Tecnológica del Perú. Lima, Perú :
Universidad Tecnológica del Perú, 2019. Tesis.
Londoño, . 2022. Blog | Hubspot. Blog | Hubspot. [Online] 22 Agosto 2022. [Cited:
25 Enero 2023.] https://blog.hubspot.es/website/que-es-python.
Martinez, . 2019. IEBSchool. IEBSchool. [Online] 4 Julio 2019. [Cited: 15 Febrero
2023.] https://www.iebschool.com/blog/reconocimiento-facial-tecnologia/.

50
Nettleton, . 2015. Look Forward Blog. Look Forward Blog. [Online] 3 Abril 2015.
[Cited: 15 Febrero 2023.] https://lookforwardconsulting.com/2015/04/03/roles-de-
scrum-
definidos/#:~:text=Scrum%20Master%3A%20persona%20dedicada%20responsab
le,en%20el%20trabajo%20del%20Equipo..
peopleHum. 2022. peopleHum. peopleHum. [Online] 2022. [Cited: 29 Enero 2023.]
https://www.peoplehum.com/glossary/attendance-
management#:~:text=Attendance%20Management%20keeps%20track%20of,atte
ndance%20software%20for%20your%20company..
Pillaca Cerdán, . 2019. Sistema de reconocimiento facial para el control del
personal en la consultora LANIU S.A.C. FACULTAD DE INGENIERÍA Y
ARQUITECTURA, Universidad César Vallejo. Lima, Perú : Universidad César
Vallejo, 2019. p. 200, Tesis.
Python. 2022. Python. Python. [Online] 2022. [Cited: 10 Febrero 2023.]
https://docs.python.org/es/3/library/tkinter.html.
—. 2022. Python. Python. [Online] 2022. [Cited: 10 Febrero 2023.]
https://docs.python.org/es/3/library/datetime.html#:~:text=El%20m%C3%B3dulo%
20datetime%20proporciona%20clases,su%20posterior%20manipulaci%C3%B3n
%20o%20formateo..
—. 2022. Python. Python. [Online] 2022. [Cited: 10 Febrero 2023.]
https://docs.python.org/es/3.10/library/os.html#:~:text=Este%20m%C3%B3dulo%2
0provee%20una%20manera,rutas%2C%20mira%20el%20m%C3%B3dulo%20os.
.
Radley, . 2022. WorkDay. WorkDay. [Online] 29 Marzo 2022. [Cited: 5 Febrero
2023.] https://blog.workday.com/es-es/2022/understanding-the-basics-what-
employee-engagement.html.
Raga, . 2021. Sesame | Blog. Sesame | Blog. [Online] 28 Septiembre 2021. [Cited:
3 Febrero 2023.] https://www.sesamehr.co/blog/que-es-el-control-de-asistencia-
laboral-y-para-que-sirve/.
Ramírez Ramírez, , et al. 2019. Revista Ibérica de Sistemas e Tecnologias de
Informação. Revista Ibérica de Sistemas e Tecnologias de Informação. [Online]
2019. [Cited: 15 Febrero 2023.]

51
https://www.proquest.com/openview/7635ce5360bdb82d0c42c815e17f8323/1?pq-
origsite=gscholar&cbl=1006393.
Redacción ContentLab. 2019. Gestíon | Diario Noticias. Gestíon | Diario Noticias.
[Online] 12 Agosto 2019. [Cited: 25 Enero 2023.]
https://gestion.pe/especial/businessstyle/zona-habitat/afp-habitat-unica-empresa-
peru-reconocimiento-facial-noticia-1994515.
Requena Mesa, . 2018. OpenWebinars. OpenWebinars. [Online] 19 Diciembre
2018. [Cited: 15 Febrero 2023.] https://openwebinars.net/blog/que-es-un-sprint-
scrum/.
Reyes Ortiz, Oscar Javier, Mejia, and Useche Castelblanco, Juan Sebastían.
2019. Técnicas de inteligencia artificial utilizadas en el procesamiento de imágenes
y su aplicación en el análisis de pavimentos. Colombia : Universidad EIA, 2019, Vol.
16, pp. 189-207.
Robledano, . 2019. OpenWebinars | Blog. OpenWebinars | Blog. [Online] 23
Septiembre 2019. [Cited: 3 Febrero 2023.] https://openwebinars.net/blog/que-es-
python/.
Rosero Vásquez, Shendry Balmore. 2019. Reconocimiento facial: técnicas
tradicionales y técnicas de aprendizaje profundo un análisis. Facultad de Ingeniería
en Electricidad y Computación, ESCUELA SUPERIOR POLITÉCNICA DEL
LITORAL. Ecuador : FIEC, 2019. p. 98, Tesis de Maestría en Ciencias de la
Computación.
Rouhiainen, . 2018. Inteligencia artificial 101 cosas que debes saber hoy sobre
nuestro futuro. Primera. Madrid : Alienta Editorial, 2018. p. 22. 978-84-17568-08-5.
Ruiz León, Sebastián Fernando and Suárez Mahecha, Gregorio Esteban. 2021.
Herramienta didáctica de realidad aumentada con Python y OpenCV, para la
visualización y despiece en 3D de un brazo robótico. Ingeniería de Control y
Automatización, UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS.
Bogotá : UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS, 2021. pp.
13 - 14, Tesis.
Sanchez Rios, . 2021. YouTube. YuTube. [Online] 23 Abril 2021. [Cited: 10 Febrero
2023.] https://youtu.be/Hy3DAxgTSu0.
Sistemas Sintel. 2022. Sistemas Sintel. Sistemas Sintel. [Online] 2022. [Cited: 29
Enero 2023.] https://sintel.com.mx/control-de-

52
asistencia#:~:text=Un%20Control%20de%20Asistencia%20es,y%20mejora%20de
%20la%20productividad..
Symanovich, . 2021. Norton Life Lock. Norton Life Lock. [Online] 20 Agosto 2021.
[Cited: 25 Enero 2023.] https://us.norton.com/blog/iot/how-facial-recognition-
software-works#.
Taquía Gutiérrez, José Antonio. 2017. El procesamiento de imágenes y su
potencial aplicación en empresas con estrategia digital. Dialnet. [Online] 15 Octubre
2017. [Cited: 28 Febrero 2023.]
https://dialnet.unirioja.es/servlet/articulo?codigo=6230450.
Valencia Martínez, . 2021. Academia Pragma | Blog. Academia Pragma | Blog.
[Online] 19 Enero 2021. [Cited: 1 Febrero 2023.]
https://www.pragma.com.co/blog/que-es-biometria.
Vega, . 2021. Medium | Blog. Medium | Blog. [Online] 12 Mayo 2021. [Cited: 10
Febrero 2023.] https://medium.com/lcc-unison/aplicaci%C3%B3n-de-
reconocimiento-facial-en-tiempo-real-para-identificar-a-alumnos-de-la-licenciatura-
en-
2e2b53870995#:~:text=Implementamos%20la%20utilizaci%C3%B3n%20de%20M
TCNN,m%C3%A1s%20precisas%20en%20la%20actualidad..
Viera Maza, Gabriela Isamar. 2018. Aplicación de procesamiento de imágenes
para clasificación de granos de cacao según su color interno. Facultad de
Ingeniería, Universidad de Piura. Piura : Universidad de Piura, 2018. p. 133, Tesis
de Máster en Ingeniería Mecánico-Eléctrica con Mención en Automática y
Optimización.
—. 2017. Procesamiento de imágenes usando OpenCV aplicado en Raspberry Pi
para la clasificación del cacao. Departamento de Ingeniería Mecánico-Eléctrica,
Universidad de Piura. Piura : Universidad de Piura, 2017. pp. 49-49, Tesis.
VM, . 2021. YouTube. YouTube. [Online] 28 Mayo 2021. [Cited: 10 Febrero 2023.]
https://youtu.be/cTSVYwxHn9g.
Westreicher, . 2021. Economipedia. Economipedia. [Online] 20 Mayo 2021. [Cited:
3 Febrero 2023.] https://economipedia.com/definiciones/empleado.html.
Yañez Neyra, Margarita Lucero. 2019. Sistema de reconocimiento facial para el
control de acceso de estudiantes a los laboratorios de la FIIS-UNAC, 2019. Facultad

53
de Ingeniería y Arquitectura, Universidad Cesar Vallejo. Callao : Universidad Cesar
Vallejo, 2019. p. 220, Tesis.

54
ANEXOS
ANEXO 01
Gráficos de los resultados de la encuesta aplicada:

Ilustración 44: Gráfico circular de la Pregunta 1

Interpretación:
El 100% de los encuestados de la empresa CompuGames están Satisfechos con
la realización del producto.

Ilustración 45: Gráfico circular de la Pregunta 2

Interpretación:
El 100% de los encuestados de la empresa CompuGames están Muy Satisfechos
con las modificaciones continuas del producto.

55
Ilustración 46: Gráfico circular de la Pregunta 3

Interpretación:
El 100% de los encuestados de la empresa CompuGames están Muy Satisfechos
con la adaptación final que cumple las observaciones sobre el producto.

Ilustración 47: Gráfico circular de la Pregunta 4

Interpretación:
El 100% de los encuestados de la empresa CompuGames están Muy Satisfechos
tras la funcionalidad de los procesos.

56
Ilustración 48: Gráfico circular de la Pregunta 5

Interpretación:
El 100% de los encuestados de la empresa CompuGames están Satisfechos con
el tipo de almacenamiento de datos del registro de asistencia.

Ilustración 49: Gráfico circular de la Pregunta 6

Interpretación:
El 100% de los encuestados de la empresa CompuGames están Bastantes
Satisfechos con respecto que el producto esté sujeto a modificaciones futuras.

57
Ilustración 50: Gráfico circular de la Pregunta 7

Interpretación:
El 100% de los encuestados de la empresa CompuGames están Satisfechos con
la comunicación profesional y no profesional respecto al seguimiento de cambios
para el producto.

Ilustración 51: Gráfico circular de la Pregunta 8

Interpretación:
El 100% de los encuestados de la empresa CompuGames están Muy Satisfechos
con la explicación del funcionamiento del producto.

58
Ilustración 52: Gráfico circular de la Pregunta 9

Interpretación:
El 100% de los encuestados de la empresa CompuGames están Satisfechos con
la calidad del producto.

Ilustración 53: Gráfico circular de la Pregunta 10

Interpretación:
El 100% de los encuestados de la empresa CompuGames están Bastante
Satisfechos con haber confiado su ida de negocio con los integrantes de este
proyecto.

59
ANEXO 02

Reunión previa a la presentación del producto al beneficiario:


Se realizó una reunión previa para darle visto bueno al producto antes que sea
presentado al beneficiario y también se coordinó el cómo sería realizada la
explicación al beneficiario para que no se le sea difícil el funcionamiento del
producto.

Ilustración 54: Estructuración del código del proyecto

Ilustración 55: Interfaz del registro

60
Ilustración 56: Acceso a la cámara para el reconocimiento facial

Ilustración 57: Registro Exitoso

61
Ilustración 58: Registro de asistencia a base del registro de usuario

Ilustración 59: Registro Exitoso

62
ANEXO 03:

Reunión con el beneficiario para conocer sus aportaciones al producto:


En esta reunión se le expone al beneficiario el funcionamiento del sistema, también
se coordinan los cambios a realizar si es que son necesarios o no.

Ilustración 60: Presentación del registro de usuario

63
ANEXO 04

Reunión final aplicando las modificaciones propuestas del beneficiario:


En esta reunión se le exponen al beneficiario los cambios sugeridos con su
respectiva explicación y se espera el visto bueno del producto final.

Ilustración 61: Nuevo interfaz del registro

Ilustración 62: Verificación del acceso a la WebCam

64
Ilustración 63: Registro exitoso del empleado

Ilustración 64: Interfaz de registro de entrada

65
Ilustración 65: Registro de entrada exitoso

Ilustración 66: Registro de salida exitoso

66
Ilustración 67: Archivos de extensión xlsx como BD para el almacén de los
registros de asistencia

67

También podría gustarte