Documentos de Académico
Documentos de Profesional
Documentos de Cultura
SEDE QUITO
Quito-Ecuador
2023
CERTIFICADO DE RESPONSABILIDAD Y AUDITORIA DEL TRABAJO
DE TITULACIÓN
Soy el autor y responsable del presente trabajo; y, autorizo a que sin fines de lucro la
Universidad Politécnica Salesiana pueda usar, difundir, reproducir o publicar de
manera total o parcial el presente trabajo de titulación.
Atentamente,
--------------------------------------------
Bryan Miguel Pazmiño Camacho
0928642560
i
CERTIFICADO DE CESIÓN DE DERECHOS DE AUTOR DEL TRABAJO
DE TITULACIÓN A LA UNIVERSIDAD POLITÉCNICA SALESIANA
Atentamente,
-------------------------------------------
Bryan Miguel Pazmiño Camacho
0928642560
ii
CERTIFICADO DE DIRECCIÓN DEL TRABAJO DE TITULACIÓN
Yo, Carmen Johanna Celi Sánchez con documento de identificación N° 1717437808, docente
de la Universidad Politécnica Salesiana, declaro que bajo mi tutoría fue desarrollado el
trabajo de titulación: DESARROLLO DE UN SISTEMA DE IDENTIFICACIÓN DE
PERSONAS CON UN DRONE MEDIANTE EL USO DE REDES NEURONALES
ARTIFICIALES Y VISIÓN ARTIFICIAL, realizado por Bryan Miguel Pazmiño
Camacho con documento de identificación N° 0928642560, obteniendo como
resultado final el trabajo de titulación bajo la opción Proyecto técnico que cumple con
todos los requisitos determinador por la Universidad Politécnica Salesiana.
Atentamente,
--------------------------------------------------------
Ing. Carmen Johanna Celi Sánchez, Mgtr
1717437808
iii
DEDICATORIA
El presente proyecto está dedicado a mis padres; Marcos Pazmiño y Rosa Camacho
quienes con su apoyo, confianza y paciencia he podido cumplir un sueño más en mi
vida, los cual me inculcaron de valores para llegar a esta instancia de mi carrera
profesional.
iv
AGRADECIMIENTO
v
ÍNDICE GENERAL
vi
2.5 Detección de Objetos ....................................................................... 9
2.5.1 Detección Facial .............................................................................. 9
2.5.2 Características Haar ....................................................................... 10
2.5.3 Composición de propiedades que forman características faciales
comparables ................................................................................................ 11
2.5.4 Criterios para el Reconocimiento Facial ......................................... 11
2.5.5 Detección de Bordes ...................................................................... 11
2.6 UAV’s ........................................................................................... 12
2.6.1 Drone Phantom 4 pro V2.0 ............................................................ 12
2.7 Python - OpenCV .......................................................................... 13
2.8 Escala de Grises ............................................................................. 14
2.9 Reconocimiento de una circunferencia ........................................... 14
CAPÍTULO 3 ...................................................................................................... 15
DISEÑO E IMPLEMENTACIÓN ....................................................................... 15
3.1 Desarrollo de la propuesta.............................................................. 15
3.1.1 Red neuronal ................................................................................. 15
3.1.2 Software ........................................................................................ 16
3.1.3 Descripción del Software ............................................................... 18
3.2 Estación ......................................................................................... 26
3.3 Resumen de costos ......................................................................... 26
CAPÍTULO 4 ...................................................................................................... 27
PRUEBAS Y RESULTADOS ............................................................................. 27
4.1 Puesta en marcha del sistema ......................................................... 27
4.2 Ensayos de la Red Neuronal Artificial CNN .................................. 27
4.3 Pruebas de funcionamiento ............................................................ 28
CONCLUSIONES ............................................................................................... 31
RECOMENDACIONES ...................................................................................... 32
REFERENCIAS BIBLIOGRÁFICAS ................................................................. 33
ANEXOS ............................................................................................................ 36
vii
ÍNDICE DE FIGURAS
viii
ÍNDICE DE TABLAS
ix
RESUMEN
Este tipo de sistema posee un enfoque educativo y demostrativo para los nuevos
estudiantes que cursen las materias de sistemas inteligentes e inteligencia artificial de
la Universidad Politécnica Salesiana, Quito-Campus Sur. La finalidad de este trabajo
se enfoca en el ámbito de seguridad y control de las personas dentro del área
universitaria.
Mediante la implementación del sistema tanto la red neuronal como la visión artificial,
se comprobó su efectividad en un entorno controlado dando como un resultado una
efectividad del 80% en la detección del rostro de la persona a identificar.
x
ABSTRACT
The use of facial recognition systems represents an important advance in the area
of artificial vision, this technological field evolves day by day, which is why
different applications are frequently exhibited based on this technology that can be
applied in various sectors to provide security and control.
This type of system has an educational and demonstrative approach for new
students who study the subjects of intelligent systems and artificial intelligence at
the Salesian Polytechnic University, Quito-South Campus. The purpose of this
work focuses on the field of security and control of people within the university
area.
Through the implementation of the system, both the neural network and the
artificial vision, its effectiveness was verified in a controlled environment,
resulting in an effectiveness of 80% in the detection of the face of the person to be
identified.
xi
INTRODUCCIÓN
El primer capítulo, describe los antecedentes del proyecto técnico, donde se detalla el
problema de estudio, la justificación y objetivos.
xii
facial para la identificación de personas con un drone mediante redes neuronales
artificiales.
xiii
CAPÍTULO 1
ANTECEDENTES
Hoy en día, los sistemas de reconocimiento facial son una parte fundamental en el
desarrollo de la seguridad y control de un país debido a sus grandes aplicaciones de
uso, sin embargo, este tipo de tecnología al ser desarrollada a mayor escala en otros
países del primer mundo implica altos costos al momento de implementarla en el país,
por ende, se pretende desarrollar un sistema de bajo costo utilizando tecnología de
hardware y software libre para obtener mayor accesibilidad para estudiantes.
1.2 Justificación
La investigación de (Cajas Idrovo & Viri Ávila, 2017) (Sánchez, 2012) muestra los
desarrollos de inteligencia artificial con el fin de mejorar el proceso frente a situaciones
de inseguridad y falta de control dentro de un área establecida dando solución al
problema con un sistema basado en Inteligencia Artificial.
1.3 Objetivos
2
- Realizar el análisis del sistema de identificación mediante pruebas experimentales
en ambientes controlados de laboratorio para la validación del funcionamiento.
1.4 Delimitación
El prototipo no está diseñado para funcionar en entornos con climas lluvioso o con
poca iluminación, por lo que no se recomienda usar en ese tipo de escenarios.
3
CAPÍTULO 2
MARCO CONCEPTUAL
En el área de la inteligencia artificial se debe enfatizar que existen varias ramas, como
el aprendizaje automático, las redes neuronales, el aprendizaje profundo, y la visión
artificial.
4
una red neuronal artificial donde sus nodos interactúan y se conectan entre sí, los datos
ingresan por la capa de entrada, se procesan en las capas profundas y finalmente se
logra el resultado, como se muestra en el diagrama de la Figura 2.1. En los niveles
profundos, hay un proceso de extracción de características que utilizan un método para
examinar los datos que pasan entre cada nodo o neurona. Entrenar una red neuronal
consiste en ajustar consideraciones de cada uno de los nodos para dar como resultado
un ajuste máximo a los datos conocidos. (Mari, 2020)
5
Es un ejemplo de procesamiento de información que está infundido en el sistema
nervioso biológico, está compuesto por una capa de entrada, oculta y de salida, según
lo que se desee diseñar esta puede ser manipulada para lograr el objetivo planteado.
(Kausar, 2016)
Las redes neuronales artificiales (RNA) son una rama con mayor representatividad en
el ámbito científico de la Inteligencia Artificial, el cual pretende imitar el
comportamiento del cerebro humano; donde el aprendizaje es caracterizado a través
de la práctica y la extracción de información del entorno, comparándose con el
esquema de la estructura neuronal del cerebro. (Alain, 2018)
6
conocido, y la otra salida un rostro desconocido. En la siguiente Figura 2.2. se
observará la estructura básica de una red neuronal convolucional
La visión artificial tiene como objetivo la adquisición de información del mundo físico
a partir de imágenes, para luego ser procesadas por algún tipo de CPU, por lo que se
puede decir que actúa sobre una realidad que le provee información sobre formas,
colores, etc. (L Larcher, 2011), Se trata de una tecnología que combina las
computadoras con las cámaras de video para obtener, estudiar e interpretar imágenes
de una forma semejante a la intervención visual humana. (Herrero, 2005)
7
transformaciones geométricas, se excluirán partes de la imagen que no son necesarias.
Una imagen que se presenta en escala grises se define como una función bidimensional
F(x,y), donde F es un par ordenado definido que representa el nivel de gris; x, y son
coordenadas espaciales. (Woods., 2002)
8
la señal digital en una señal analógica para visualizar la imagen procesada en un
monitor de TV, ver Figura 2.4. (Politécnico, 2017)
La detección facial no es más que encontrar las áreas dentro de una imagen o video
que contienen rostros, es decir elimina todo lo que sea fondo, y obtiene la ubicación y
tamaño exacto de la cara, este proceso se divide en dos: detección y reconocimiento.
(Jones, 2004)
9
El procedimiento del método de detección de rostros se basa en el algoritmo propuesto
por Viola Jones, el cual consiste en un procesamiento en tiempo real para la detección
de rostros, aplicando algoritmos AdaBoost para clasificar las características
rectangulares en etapas de "cascada". Su concepto primitivo permite que la imagen de
fondo se descarte rápidamente. Para ello el algoritmo de Viola-Jones se utiliza para
detectar la cara interior del rectángulo en la imagen. Luego, las características
complejas de la cara de la región del rectángulo se analizan mediante análisis
discriminante y las características de la cara compuesta se ingresan en el clasificador
para el reconocimiento facial. (Kartika, 2018)
Los rostros humanos tienen algunas propiedades similares pueden adaptarse mediante
características Haar. Al hablar de propiedades comunes de la cara se tienen que: la
región del ojo es más oscura que las mejillas superiores, así también la región del
puente nasal es más brillante que los ojos (Andreea, 2016)
10
2.5.3 Composición de propiedades que forman características faciales
comparables
El operador Patrones Binarios Locales (LBP) se usa para describir regiones locales del
rostro que después son agrupadas para formar una descripción global. (Ríos., 2013).
En la configuración del operador Patrones Binarios Locales hay 255 patrones, 58 son
uniformes y 197 de ellos no son patrones uniformes, lo que simboliza una disminución
del histograma del 76.86% por cuadro. Con estos parámetros este método (LBP)
calcula un histograma de 59 posiciones, en cada una de las 49 regiones divididas,
después se procede a realizar un histograma para cada una de las 49 regiones en las
que se ha dividido el rostro. (Corrales., 2013).
11
Figura 2.5. Detección de borde usando el gradiente.
Fuente: (OpenCV., 2014)
2.6 UAV’s
Es un vehículo aéreo no tripulado, ver Figura 2.6, el cual posee distintas características
que se muestran en la siguiente Tabla 2.1.
Característica Valor
Marca Dji
Peso 1388 gramos
Campo de visión 60 a 70°
Capacidad de vuelo 5870 mAh
Autonomía de vuelo 30 minutos aprox.
Altitud de vuelo 120m
Cámara 4K /60fps
Temperatura máxima de 40°
funcionamiento
Distancia de control 7 km sin obstrucciones
Tabla de características del drone seleccionado para el sistema.
Fuente: (Pro, 2022)
12
Figura 2.6. Drone Phantom 4 pro V2.0
Fuente: (Pro, 2022)
Dentro de la línea de drones del tipo Phantom, la marca DJI ha creado una pantalla
denominada CrystalSky el cual es una herramienta versátil al momento de la
captura de imágenes que el drone visualiza, en la siguiente tabla podemos observar
algunas de sus características, ver Tabla 2.2.
Marca Dji
tamaño 5,5 pulgadas
Tipo de memoria MicroSD
Resolución 1920 x 1080
Tipo salida HDMI 4K
Conectividad Wifi: 2.4G, 5.2G y 5.8G
Cámara 4K /60fps
Aplicación DJI Go, DJI Go 4
Sistema Androide
Open Source Computer Vision Library es una herramienta que se usa en aplicaciones
de visión artificial, es librería de código libre, usada por empresas y personas naturales.
(OpenCV, 2018)
13
OpenCV tiene sus diferentes aplicaciones tales como generación de algoritmos para
reconocimiento de objetos, creación de ambientes virtuales mediante la colección de
imágenes, rastrear objetos que estén en movimiento, reconocimiento facial,
aplicaciones para realidad aumentada, entre otros. (OpenCV, 2018)
Al tener una muestra es decir una imagen dada por una cámara, esta debe pasar por un
proceso de filtrado para mejorar la calidad de la muestra es decir obtener un resultado
propicio. Para suavizar una imagen es necesario convertir la imagen original en escala
de grises para así trabajar con esta última. (OpenCV., 2014)
14
CAPÍTULO 3
DISEÑO E IMPLEMENTACIÓN
15
Figura 3.2. Diagrama de secuencia.
Figura elaborada por: Bryan Miguel Pazmiño Camacho.
3.1.2 Software
16
Librerías de Python usadas:
• Opencv: Es una librería de código abierto creada por Intel, que dispone de
una cantidad importante de librerías para el desarrollo de programación
orientada a la visión artificial.
17
3.1.3 Descripción del Software
El objetivo es crear un sistema de redes neuronales con la capacidad de leer una base
de datos de imágenes de 150 x 150 pixeles de rostros de personas para verificar si esta
se encuentra o no en el video captado por un dron para ello es necesario organizar paso
a paso como va a trabajar el programa, todo basado en Python, Opencv, TensorFlow y
Keras:
- Usando el algoritmo Haar Cascade para obtener únicamente los rostros de cada
fotograma captado por el dron.
- Una vez más se usa el algoritmo Haar Cascade para segmentar los rostros de
18
las personas que aparezcan en estas imágenes, esto con el fin de orientar a la red
neuronal a identificar lo que es un rostro desconocido.
19
A continuación, se detalla el proceso de manera técnica mediante diagramas de flujos
de los 4 procesos necesarios para el funcionamiento del sistema.
20
-Reconocimiento de los rostros que no se quieren reconocer.
21
-Entrenamiento de la Red Neuronal Artificial CNN
Luego se configura las capas de la red convolucional, la cual consta de 3 capas ocultas
de 200, 100 y 50 neuronas, donde se delimita el valor de corte de asociación entre
pesos de borde, con una capa densa de 50 neuronas con una probabilidad máxima en
salida de 2 vías.
Mediante TensorFlow se crea tareas de aprendizaje, que para este caso se ingresó la
cantidad de 20 iteraciones. A medida que se evalúa cada iteración de aprendizaje, la
red tiene la capacidad de mejorar la precisión para alcanzar una detección más eficiente
al momento de detectar un rostro. La eficacia de la red se fundamenta en la cantidad y
22
la calidad de las muestras almacenadas, de esta forma se garantiza que las iteraciones
convergan en un resultado más favorable para el aprendizaje, cuyo resultado final nos
proporcionó modelos CNN que podemos ejecutar para poder identificar los rostros de
las personas y si encuentra un rostro con la base de datos podrá identificar.
Dentro del proceso del aprendizaje de la red neuronal podemos graficar los datos
obtenidos de los modelos CNN para observar tanto la gráfica de perdida, así como
también la precisión de la red.
23
Figura 3.10. Gráfica de Precisión de la Red Neuronal
Figura elaborada por: Bryan Miguel Pazmiño Camacho
De igual manera en la Figura 3.10, podemos observar que la precisión que tiene la red
aumenta proporcionalmente al incremento del número de épocas, debido a que la red
tiene una perdida menor, la precisión tiende a mejorar por lo que el reconocimiento de
las personas que visualiza el drone será rápida y eficaz, esto se visualiza en la curva
del training accuracy y test accuracy.
24
-Funcionamiento del modelo CNN
25
3.2 Estación
Todo el desarrollo del código para el sistema fue realizado en Python donde se implementó y
se ejecutó dentro de un laptop personal, el cual tiene las siguientes características básicas y
necesarias para el funcionamiento del proyecto, ver Tabla 3.1.
En la siguiente Tabla 3.1, se puede observar el valor total del proyecto realizado, así
como también una descripción de los elementos usados con sus respectivos precios.
26
CAPÍTULO 4
PRUEBAS Y RESULTADOS
Este capítulo detalla los resultados de los ensayos de rendimiento del sistema de
identificación de personas con un dron utilizando una red neuronal convolucional y
visión artificial, para poder verificar el correcto funcionamiento.
Para el proceso de aprendizaje de la red neuronal se tomaron 150 muestras, pero para
llegar a ese valor se realizaron varios ensayos con valores inferiores y superiores del
rostro de la persona a identificar y así obtener un número razonable de muestras que
permitan reconocer a la persona de forma correcta.
Para ello se probó el código sin la necesidad de la intervención del drone y mediante
videos se demostró la eficiencia de la red neuronal artificial CNN.
27
100 86%
110 86%
120 86%
130 87%
140 88%
150 90%
160 90%
170 90%
180 90%
190 90%
200 90%
En la Tabla 4.2 se observará el resultado de las pruebas del sistema bajo parámetros
en un ambiente controlado, con una distancia entre el dron y las personas de 2 a 4
metros, para ello se tomó un día al azar y se evaluó el sistema cada 30 minutos durante
el día, esto con el fin de observar el compartimiento del sistema bajo una variación de
iluminación del entorno.
28
Tabla 4.2. Pruebas del sistema.
29
Figura 4.1. Reconocimiento facial del sujeto de la base de datos.
Figura elaborada por: Bryan Miguel Pazmiño Camacho.
Con todas las pruebas realizadas se pudo comprobar que en un ambiente controlado se
tuvo una efectividad del 80%, logrando detectar el rasgo facial del individuo hasta una
distancia que varía entre 2 a 4 metros, pudiendo observar que el sistema en un ambiente
no controlado, es decir con poca luz, el sistema tiende a fallar.
30
CONCLUSIONES
Se determinó que el uso del dron Phantom 4 pro V2.0 permite la transmisión de video
en calidad 4K (3840x2160) que proporciona una mayor información de las personas
captadas por lo que se usó el algoritmo Haar Cascade para la extracción de las
características del rostro, dicha información es ingresada a la red neuronal artificial
convolucional CNN, mediante el desarrollo e implementación en el software Python
con el uso de librerías orientadas a la inteligencia artificial y visión artificial, el cual
nos permitió crear modelos neuronales que mediante el ingreso de las muestras en la
capa de entrada y estableciendo los parámetros de las capas ocultas garantizan que en
las capas de salidas de la red neuronal identifique el rostro de la persona.
31
RECOMENDACIONES
Se recomienda que al momento de realizar el vuelo del drone dentro de un área, lea y
siga las instrucciones de guía de vuelo que viene incorporado en el manual, como
medida de seguridad del que opera el drone como las personas y animales del entorno.
32
REFERENCIAS BIBLIOGRÁFICAS
Cajas Idrovo & Viri Ávila. (2017). Uso de la inteligencia artificial. Colombia.
Dalal, N. &. (2005). Histograms of oriented gradients for human detection. Obtenido
de https://doi.org/10.1109/CVPR.2005.177
33
Herrero, I. (2005). Aspectos de un Sistema de Visión Artificial. Universidad Nacional
de Quilmes – Ing. en Automatización y Control Industrial.
Ibarra, J., & Paredes, K. (Enero de 2018). Redes neuronales artificiales para el control
de acceso basado en reconocimiento facial. Ibarra, Ecuador: Revista PUCE.
Kausar, F. &. (2016). Artificial neural network: Framework for fault tolerance and
future. ICEEOT.
34
Politécnico, C. I. (2017). Célula de Fabricación Flexible ETI. Obtenido de
http://www.etitudela.com/celula/downloads/visionartificial.pdf
Serrano Fuentes, M. L. (2020). Coffee Fruit Recognition Using Artificial Vision and
neural NETWORKS. En In 2020 5th International Conference on Control and
Robotics Engineering. IEEE.
snaptain. (2022). versus. Obtenido de https://versus.com/es/snaptain-sp500
Woods., R. C. (2002). Digital image processing. 2.a ed. Prentice hall Upper Saddle
River.
35
ANEXOS
36
Anexo #2 Funcionamiento del reconocimiento facial.
37
2. Reconocimiento facial con 150 muestras en un ambiente controlado.
38
Como se puede observar en la siguiente imagen aún sigue teniendo errores, sin
embargo, al momento de cambiar parámetros a la red neuronal, se puede
mitigar y mejorar la red, de esta manera modificar los modelos hasta que estos
puedan minimizar los errores y que llegue a identificar correctamente.
39
Anexo 4 Proceso del funcionamiento del sistema.
40
3. Ahora en la estación se corre el programa ejecutando el modelo de la red neural
y de esta manera se identifican los rostros de las personas y si se encuentra
alguna que está en la base de datos lo va a reconocer.
41
Anexo 5 Guía de manejo rápida del Drone Phantom 4 Pro V2.0
Antes de arrancar verificar en la app que esté vinculado el drone con el control de
mando.
42
Para aterrizar, palanca izquierda
abajo(despacio), hasta tocar el suelo y si
mantiene esa posición unos segundos los
motores se detendrán
Control de vuelo
La palanca izquierda controla la altitud y la dirección de la aeronave, mientras que
la derecha controla los movimientos hacia delante, atrás, izquierda y derecha.
Palanca Izquierda
Palanca Derecha
43
Anexo 7 Código de programación del sistema realizado en Python.
44
Captura de rostros negativos.
Lectura de archivos
45
Creación de la Red Neuronal Convolucional
Proceso de entrenamiento
Proceso de aprendizaje
46
47
Matriz de Confusión
48
Reconocimiento + Prueba CNN
49