Sistema Antirrobo Vehicular Raspberry Pi 3
Sistema Antirrobo Vehicular Raspberry Pi 3
Sistema Antirrobo Vehicular Raspberry Pi 3
SEDE CUENCA
PROYECTO TÉCNICO
TEMA:
AUTORES:
TUTOR:
CUENCA – ECUADOR
2017
CESIÓN DE DERECHOS DE AUTOR
Nosotros Marco Vinicio Cajas Idrovo con C.I.: 0105391239 y Pablo Andrés Viri Avila
con C.I.: 0302362348, manifestamos nuestra voluntad y cedemos a la Universidad
Politécnica Salesiana la titularidad sobre los derechos patrimoniales en virtud de que
somos autores del trabajo de titulación: “DISEÑO E IMPLEMENTACIÓN DE UN
SISTEMA DE SEGURIDAD VEHICULAR MEDIANTE RECONOCIMIENTO
FACIAL A TRAVÉS DE VISIÓN ARTIFICIAL”, mismo que ha sido desarrollado
para optar por el título de: Ingeniero Mecánico Automotriz, en la Universidad
Politécnica Salesiana, quedando la Universidad facultada para ejercer plenamente
los derechos cedidos anteriormente.
En aplicación a lo determinado en la Ley de Propiedad Intelectual, en nuestra
condición de autores nos reservamos los derechos morales de la obra antes
citada. En concordancia, suscribimos este documento en el momento que hacemos
entrega del trabajo final en formato impreso y digital a la Biblioteca de la
Universidad Politécnica Salesiana.
............................................. …………………………..
Marco Vinicio Cajas Idrovo Pablo Andrés Viri Avila
0105391239 0302362348
ii
CERTIFICACIÓN
iii
DECLARATORIA DE RESPONSABILIDAD
Nosotros Marco Vinicio Cajas Idrovo con C.I.: 0105391239 y Pablo Andrés Viri Avila
con C.I.: 0302362348 autores del “DISEÑO E IMPLEMENTACIÓN DE UN
SISTEMA DE SEGURIDAD VEHICULAR MEDIANTE RECONOCIMIENTO
FACIAL A TRAVÉS DE VISIÓN ARTIFICIAL” certificamos que el total contenido
del Proyecto Técnico, son de nuestra exclusiva responsabilidad y autoría
............................................. …………………………..
Marco Vinicio Cajas Idrovo Pablo Andrés Viri Avila
0105391239 0302362348
iv
DEDICATORIA
v
DEDICATORIA
Dedico este proyecto técnico primero a Dios por guiarme siempre por el buen camino,
acompañándome día a día. A mi abuelito Modesto Viri que con su alegría, anécdotas
y consejos nos dejó un gran legado de vida y desde el Cielo nos cuida. A mis padres
Luis Viri y Beatriz Ávila que son el pilar fundamental de mi familia, que con su trabajo
y esfuerzo han sabido guiarme toda la vida para ser una persona de bien y haber
depositado su total confianza en mi persona para lograr grandes éxitos como haber
terminado mis estudios superiores. A mi hermana Susana Viri, por su incondicional
ayuda y ánimos en todo el trayecto de mi vida personal y educativa. Y a una persona
muy especial en mi vida Maribel León por su cariño y comprensión y ser la inspiración
para cumplir mis metas.
vi
AGRADECIMIENTOS
Agradezco enormemente a mi gran amigo Pablo Viri por colaborar con la realización
de este proyecto técnico, por ser una persona paciente y siempre dar lo mejor de él,
espero que Dios le bendiga por el camino del bien y siga consiguiendo éxitos en su
vida; Al Ing. Juan Diego Valladolid por darme la acogida y por brindar sus
conocimientos para llevar a cabo este proyecto técnico, deseo que siga cosechando
triunfos porque de verdad se lo merece por ser una gran persona.
vii
AGRADECIMIENTOS.
Agradezco primero a Dios por cuidarme toda la vida con su manto protector, a mis
padres, amigos, familiares y a todos los profesores de la universidad que de una u otra
manera han logrado inculcarme valores éticos y conocimientos técnicos dentro y fuera
de las aulas. A mis compañeros de la Cía. De Teatro, en especial al Director Jorge
Adrián Méndez por sus sabios consejos y hacerme conocer el maravilloso mundo de
la actuación.
Agradezco enormemente también al Ing. Juan Diego Valladolid por apoyarnos desde
un principio con la realización de este proyecto y brindarnos su valiosísimo tiempo
para la revisión e incondicional ayuda.
viii
ÍNDICE DE CONTENIDOS
RESUMEN ....................................................................................................................... 14
ABSTRACT ..................................................................................................................... 15
INTRODUCCIÓN ........................................................................................................... 16
CAPÍTULO 1 ....................................................................................................................... 17
1. MARCO REFERENCIAL.......................................................................................... 17
1.1. Antecedentes. ........................................................................................................ 17
1.2. Justificación del Trabajo de Titulación. ............................................................. 17
1.3. Objetivos. .............................................................................................................. 18
1.3.1. Objetivo general. ............................................................................................18
1.3.2. Objetivos específicos. .....................................................................................18
1.4. Seguridad vehicular convencional. ..................................................................... 18
1.4.1. Sistema de rastreo del vehículo. ....................................................................19
1.4.2. Traba volante / traba palanca. ......................................................................19
1.4.3. Goodlock. ........................................................................................................19
1.4.4. Corta corriente. ..............................................................................................19
1.4.5. Llaves codificadas. .........................................................................................19
1.5. Estadísticas de robo de vehículos. ....................................................................... 21
1.6. Efectividad de los sistemas enfocados a la visión artificial. .............................. 22
CAPÍTULO 2 ....................................................................................................................... 24
2. MARCO TEÓRICO. ................................................................................................... 24
2.1. Visión Artificial. .................................................................................................... 24
2.2. Métodos de reconocimiento de rostros. .............................................................. 24
2.3. Reconocimiento facial .......................................................................................... 27
2.3.1. Eigenfaces .......................................................................................................28
2.3.2. Fisherfaces. .....................................................................................................29
2.3.3. Algoritmo LBPH. ...........................................................................................31
2.4. Cascada de clasificadores Haar. .......................................................................... 34
2.5. Como trabajan los algoritmos. ............................................................................ 36
2.5.1. Los sistemas de reconocimiento facial automático. .....................................36
2.5.2. Tipos de errores y su medición......................................................................36
2.6. Reconocimiento de Patrones................................................................................ 37
2.6.1. Patrones. .........................................................................................................39
2.6.2. Similitud ..........................................................................................................39
2.6.3. Diseño de un sistema de reconocimiento de patrones. ................................39
2.7. Incidencia de la luz, colores, posición, distancia y accesorios........................... 41
2.8 OpenCV .................................................................................................................. 41
2.8.1. Instalación de OpenCV en Raspbian ...........................................................42
2.8.2. Manipulación de imágenes ............................................................................42
2.8.3. Acceso a la cámara y obtención de imágenes ...............................................43
2.8.3.1. Cámaras Web USB .................................................................................. 44
2.8.4. Detectar rostro................................................................................................44
2.8.5. Inconvenientes de las OpenCV. .....................................................................45
2.8.6. Estructura modular OpenCv. .......................................................................45
2.9. Sistema del automóvil a considerar..................................................................... 46
CAPÍTULO 3 ....................................................................................................................... 47
3. MARCO APLICATIVO .............................................................................................. 47
3.1. Diseño del sistema................................................................................................. 47
3.2. Selección de elementos para el sistema. .............................................................. 48
3.2.1. Raspberry Pi 3 Model B ................................................................................48
3.2.1.1. Pines GPIO de la Raspberry Pi ................................................................ 49
ix
3.2.1.2. Tarjeta de memoria Micro SD de 32GB .................................................. 50
3.2.2. Elementos electrónicos...................................................................................51
3.2.2.1. Arduino Mega 2560. ................................................................................ 51
3.2.2.2. Mini-webcam con conexión USB............................................................ 52
3.2.2.3. La compuerta lógica OR. ......................................................................... 52
3.2.2.4. Compuerta AND o compuerta Y. ............................................................. 53
3.2.2.5. Teclado de membrana 4x4. ...................................................................... 53
3.2.2.6. Relé 4 patas de 12V – 30 Amp. .............................................................. 54
3.2.2.7. Transistor bipolar NPN 2N3055. ............................................................. 54
3.2.2.9. Diodo 1N4007. ........................................................................................ 55
3.2.2.10. Display LCD alfanumérico de 16x2. ..................................................... 55
3.3. Selección de Técnicas de Reconocimiento Facial. .............................................. 56
3.4. Circuito de alimentación de la Raspberry. ......................................................... 57
3.5. Recolección de base de datos de rostros. ............................................................ 58
3.6. Esquema General del proyecto. .......................................................................... 59
3.7. Programación en Python para Reconocimiento Facial ..................................... 61
3.7.1. Fase de entrenamiento. ..................................................................................61
3.7.2. Fase de reconocimiento..................................................................................62
3.7.3. Activación de alarmas y actuadores. ............................................................63
3.8. Programación para clave de acceso en Arduino. ............................................... 64
3.9. Activación de la bomba de gasolina. ................................................................... 67
CAPÍTULO 4 ....................................................................................................................... 69
4. COSTOS, PRUEBAS Y RESULTADOS. .................................................................. 69
4.1. Costo de elementos. .............................................................................................. 69
4.2 Pruebas de laboratorio.......................................................................................... 70
4.3. Pruebas realizadas................................................................................................ 71
4.3.1. Tiempos que tardan en iniciarse los algoritmos. .........................................71
4.3.2. Efectividad del reconocimiento. ....................................................................74
4.3.2.1. Efectividad de reconocimiento para usuarios autorizados. ...................... 74
4.3.2.2. Efectividad de reconocimiento para usuarios no autorizados. ................. 78
4.3.2.3. Efectividad de acceso con la clave de usuario. ........................................ 80
4.3.3. Verificación de encendido de la bomba de gasolina. ...................................81
4.3.4. Pruebas de funcionamiento. ..........................................................................81
CONCLUSIONES. .......................................................................................................... 83
RECOMENDACIONES. ................................................................................................ 85
BIBLIOGRAFÍA. ............................................................................................................ 86
x
ÍNDICE DE FIGURAS
xi
Figura 46: Efectividad de reconocimiento con Eigenface. ........................................ 75
Figura 47: Efectividad de reconocimiento con Fisherface. ........................................ 76
Figura 48: Efectividad de reconocimiento con LBPH. .............................................. 77
Figura 49: Reconocimiento a Usuario 1. ................................................................... 78
Figura 50: Reconocimiento a Usuario 2. ................................................................... 78
Figura 51: Usuarios no permitidos con Eigenface. .................................................... 79
Figura 52: Usuarios no permitidos con Fisherface. ................................................... 79
Figura 53: Usuarios no permitidos con LBPH. .......................................................... 80
Figura 54: Rechazo a usuarios no permitidos. ........................................................... 80
Figura 55: Voltaje de salida del pin 87 del relé. ......................................................... 81
xii
ÍNDICE DE TABLAS
xiii
RESUMEN
Debido a que en la actualidad los vehículos son fácilmente hurtados, los avances
tecnológicos buscan modernizar los sistemas de seguridad para lograr una mayor
eficiencia y complicar a los delincuentes. El presente proyecto trata sobre el diseño y
ensamblaje de un sistema de seguridad por reconocimiento facial para poner en marcha
un vehículo Chevrolet Aveo Activo y permitir el manejo solamente a personas
autorizadas. Bajo el parasol izquierdo dentro del habitáculo se monta una mini
WebCam, apuntando al apoyacabezas del asiento del chofer; además consta de una
base de datos de fotografías de los rostros de los usuarios autorizados en múltiples
posturas, gestos y en condiciones de iluminación normales.
14
ABSTRACT
Because today's vehicles are easily stolen, technological advances seek to modernize
security systems to achieve greater efficiency and complicate criminals. The present
project is about the design and assembly of a facial recognition safety system to start
a Chevrolet Aveo Active vehicle and allow the handling to only authorized persons.
Under the left parasol inside the passenger compartment a mini WebCam is mounted,
pointing to the headrest of the driver's seat; also consists of a database of photographs
of the faces of authorized users in multiple postures, gestures and in normal lighting
conditions.
The design of the system for facial recognition uses the computer language Python and
the bookstores of the free software OpenCV for prosecution of images and Computer
vision across a computer of limited badge Raspberry Pi 3 who has the operating system
Raspbian. The system has the aptitude to keep immobilized to the railcar if the user is
not recognized, also it has a key of rapid access for emergency cases or when the
vehicle lends.
It is concluded that the type camera mini - webcam USB gave good results in
illuminated ambiences, not like that in dark and night places; likewise with the
algorithm of Histograms of Local Binary Patterns (LBPH) better yield was obtained
with 93 % of effectiveness in detection due to the adjustments in lighting changes. The
most suitable absorbed system was Raspberry Pi 3 for its best technical specifications
and because he avoids on oversize unnecessarily of the system.
15
INTRODUCCIÓN
Los sistemas de visión artificial son herramientas relativas a los más recientes avances
de autentificación que existe hoy en día alrededor del mundo, siendo el reconocimiento
facial uno de los más confiables y a los que más se recurre por su fácil utilización.
16
CAPÍTULO 1
1. MARCO REFERENCIAL.
1.1. Antecedentes.
Debido a que cualquier persona puede ser víctima del robo de su vehículo, surge la
necesidad de invertir en un buen sistema de seguridad que proteja al propietario y al
vehículo. Por supuesto que siempre se podrá contar con las tradicionales alarmas, los
candados o barras para el volante y pedales y naturalmente con el GPS; sin embargo,
dado que los ladrones varían cada vez más sus métodos de atraco, se ha pensado con
la presente propuesta desarrollar un sistema de seguridad que aumente la robustez,
utilizando tecnología actual (Aguilar, 2016).
17
que si se decide desde ya implementar sistemas para mejorar la seguridad vehicular
los indicadores de robos de vehículos pueden disminuir más.
1.3. Objetivos.
Existen varias maneras de evitar el robo del auto. Parquear en lugares seguros, no dejar
objetos de valor a la vista, entre otros. Uno de los métodos más usados es invertir en
dispositivos antirrobo para tu auto, pero no todos son los mejores, existen alarmas
ineficientes, bloqueos que entorpecen tu manejo y trucos que poco salvarán a tu auto.
No obstante, existen también excelentes dispositivos de seguridad, aquí se presenta
una lista de 5 sistemas antirrobo para autos (Llaguno, 2016).
18
1.4.1. Sistema de rastreo del vehículo.
Uno de los dispositivos más eficientes para recuperar el auto. Si, en el peor escenario,
el auto es robado, con la localización GPS que este emite, la operadora contratada
siempre lo tendrá en su vista. Con un sistema de rastreo GPS, se puede encontrar el
vehículo robado una hora después del delito. Los modelos más tecnológicos de este
sistema permiten inclusive inmovilizar el vehículo, desde cualquier parte donde esté.
1.4.3. Goodlock.
Este es un sistema nuevo y curioso creado por un Ingeniero Chileno Alejandro Mackay.
Consta de una clave de acciones que se necesita hacer para poder encender el auto. Por
ejemplo: pisar el acelerador, pitar y encender el aire. Se puede elegir entre 13.000
combinaciones diferentes y cambiarla a gusto del propietario.’
19
A continuación se muestra un cuadro comparativo acerca de los costos de instalación
de varios sistemas antirrobo para vehículos.
Goodlock 165
Llave codificada
Chevrolet Aveo 850
El vehículo puede contar con estas opciones de seguro para cuidarlo o no perderlo en
caso de ser víctima de robo.
20
1.5. Estadísticas de robo de vehículos.
De los nueve delitos de mayor connotación monitoreados, cinco se han reducido
drásticamente (homicidios, asesinatos, robo de vehículos, violaciones y muertes por
accidentes de tránsito); mientras que los cuatro delitos restantes denotan un
crecimiento, (robos a personas, a domicilios a unidades económicas y motos).
ROBO DE VEHÍCULOS
Año 2014 Año 2015
621
554 573 552
526 519 542 519 545
490 507 513
549
498 518 500 494
473 471 485
442 453 450 427
ENE FEB MAR ABR MAY JUN JUL AGO SEP OCT NOV DIC
Así mismo, a nivel nacional se tiene una tasa de variación acumulada del -15,1%, entre
los años 2014 y 2015.
21
Tabla 2: Variación porcentual de robo de vehículos.
Fuente: (INEC, 2016).
VARIACIÓN PORCENTUAL ANUAL 2015-2014
Delito Mes Variación Porcentual [%]
Enero -0,9
Febrero 1,6
Marzo -6,7
Abril -13,8
Mayo -24,2
Robo de vehículos Junio -15,4
Julio -1,5
Agosto -3,7
Septiembre -16,4
Octubre -4,8
Noviembre -17,4
Diciembre -22,6
En Cuenca, los robos a vehículos se dan en mayor número en los sectores Yanuncay,
Totoracocha, Ricaurte, Sayausí y El Valle en la zona rural. La mayoría de los robos se
dan en la vía pública. Los vehículos pequeños son los más robados. Los ladrones
prefieren los colores rojo, blanco, gris y negro, por el contrario los menos robados son
los vehículos grandes de color café, tomate y lila. Las noches del sábado y domingo
se registra mayor número de robos a vehículos (El Tiempo, 2016).
Un sistema digital permite controlar todo lo que ocurre frente a la cámara, mediante
sistemas de detección de movimiento por visión o por sensores externos, almacenar
secuencias de imágenes de distintas cámaras en el disco duro del ordenador, transferir
las secuencias a cualquier otro lugar del mundo y posteriormente almacenar las
22
imágenes en bases de datos, de forma que los sistemas de visión digital son la única
alternativa válida en la actualidad, como solución integral de seguridad y vigilancia
(INFAIMON, 2014).
23
CAPÍTULO 2
2. MARCO TEÓRICO.
Podríamos decir que la Visión Artificial (VA) describe la deducción automática de las
propiedades de un mundo tridimensional, bien a partir de una o varias imágenes
bidimensionales del mundo (Sobrado Malpartida, 2003). Las imágenes pueden ser
monocromáticas (de niveles de gris) o colores, pueden provenir de una o varias
cámaras e incluso cada cámara puede estar estacionaria o móvil.
24
reconociendo el rostro. El algoritmo no solo debe detectar el rostro para la
identificación o verificación de personas, sino que tiene que tomar en cuenta otros
aspectos los cuales podrían dificultar el proceso de detección del rostro como (López
Pérez & Toro Agudelo, 2012):
Análisis de bajo nivel: son técnicas que trabajan directamente con los
pixeles, principalmente hay dos:
25
Basados en regiones: aprovechan el hecho de que hay zonas más
oscuras que el resto de la cara (cejas, pupilas, etc.). Separan la imagen
en regiones. Localizan la cara comparando la distribución de las
regiones presentes con la distribución de regiones tipo de una cara.
Análisis de rasgos faciales: Dado que el análisis a bajo nivel puede brindar
información parcialmente correcta o incompleta, esta familia de métodos
busca encontrar implícitamente los rasgos faciales. Se basan fuertemente
en las relaciones geométricas que cumplen los diferentes rasgos presentes
en una cara. Existen dos grandes aproximaciones al respecto:
Los métodos basados en rasgos faciales son muy débiles a cambios que se puedan
presentar en las imágenes, por ejemplo, más apariciones de rostros o cambios en el
ambiente (iluminación, fondo). Para resolver este problema surgieron las siguientes
técnicas (Arguello Fuentes, 2011):
26
Sub-espacios lineales. Esta técnica se fundamenta en representar las
imágenes de los rostros en espacios lineales buscando a que espacio lineal
pertenece mediante un análisis estadístico, entre los cuales se destacan:
PCA (análisis de componentes principales), LDA (análisis de discriminante
lineal), ICA (análisis de componentes independientes).
27
Raspberry Pi 3 que es la encargada de realizar el trabajo de visión artificial.
2.3.1. Eigenfaces
Este método realiza una proyección lineal del espacio de imágenes a un espacio de
características de menor dimensión (Chichizola, De Giusti , & Naiouf, 2014). Esta
reducción se realiza utilizando la técnica PCA la cual toma aquella proyección lineal
que maximiza la dispersión de todas las imágenes proyectadas (Ottado, 2010).
En primer lugar se considera un conjunto de N imágenes con valores en el espacio de
imágenes n-dimensional
{𝑥𝑖 } 𝑖 = 1,2, … , 𝑁 (1)
Se asume además que cada una de las imágenes pertenece a una de las c clases
{𝑋1 , 𝑋2 , … , 𝑋𝐶 }. Asimismo se considera una transformación lineal que lleva el espacio
de imágenes original de n dimensiones al espacio de características de dimensión m,
donde 𝑚 < 𝑛. Los nuevos vectores de características 𝑦𝑘 ∈ 𝔑𝑚 son definidos por la
siguiente transformación lineal
𝑦𝑘 = 𝑊 𝑇 𝑥𝑘 𝑘 = 1,2, … , 𝑁 (2)
Donde 𝑊 ∈ 𝔑𝑛𝑥𝑚 en una matriz con columnas orto normales. Se define además la
matriz de la distribución 𝑆𝑇 como
𝑁
28
Donde {𝑤𝑖 | 𝑖 = 1,2, … , 𝑚} es el conjunto de vectores propios n-dimensionales de 𝑆𝑇
correspondiente a los mayores m vectores propios. Dichos vectores propios tienen la
misma dimensión que las imágenes originales y se les denomina eigenfaces.
2.3.2. Fisherfaces.
El método Fisherfaces (Yuan & Qi, 2009) utiliza el Discriminante Lineal de Fisher
(FLD) para la reducción de dimensión. Este método selecciona el W de la ecuación (1)
de manera que el cociente entre la distribución entre clases y la distribución intra-
clases sea máxima (Belhumeur & Hespanha, 2010). Para esto se define la matriz 𝑆𝐵
de distribución entre clases como
𝑐
29
intra-clases de las imágenes proyectadas pueda ser exactamente cero.
Como alternativa entonces, al criterio establecido en la ecuación (7), se proyecta el
conjunto de imágenes a un espacio de menor dimensión, de manera que la matriz
resultante de la distribución intra-clases 𝑆𝑊 es no singular. Utilizando PCA se realiza
la reducción de dimensiones del espacio de características a 𝑁 − 𝑐 y luego, aplicar
FLD definido en (7) para reducir la dimensión a 𝑐 − 1. De esta manera 𝑊𝑜𝑝𝑡 es dado
por
𝑇 𝑇 𝑇
𝑊𝑝𝑐𝑎 = 𝑊𝑓𝑙𝑑 𝑊𝑝𝑐𝑎 (9)
Donde
𝑚𝑎𝑥 𝑇
𝑊𝑝𝑐𝑎 = 𝑎𝑟𝑔 |𝑊 𝑆𝑇 𝑊| (10)
𝑤
𝑇 𝑇
𝑚𝑎𝑥 𝑊 𝑊𝑝𝑐𝑎 𝑆𝐵 𝑊𝑝𝑐𝑎 𝑊
𝑊𝑓𝑙𝑑 = 𝑎𝑟𝑔 | | (11)
𝑤 𝑊 𝑇 𝑊𝑝𝑐𝑎
𝑇 𝑆 𝑊
𝑊 𝑝𝑐𝑎 𝑊
Figura 2: Primeras siete Eigenfaces (a) y Fisherfaces (b), obtenidas con un conjunto de imágenes de
la base Extended Yale Face Database B.
Fuente: (Ottado, 2010).
30
que cada clase yace próxima a una línea que pasa por el origen en el espacio de
características de dos dimensiones (Ottado, 2010). Ambos métodos, PCA y FLD, han
sido utilizados para proyectar las muestras en un espacio de una dimensión. Se observa
que PCA proyecta las muestras de manera que las clases no puedan ser linealmente
separables. Por lo tanto FLD consigue una mayor dispersión entre clases.
31
Figura 4: Operadores LBP.
Fuente: http://media.cs.tsinghua.edu.cn/~ahz/papers/ICB07_demographic.pdf
El método de LBPH asigna etiquetas a cada uno de los pixeles de la imagen tomando
en cuenta la distribución de los vecinos. Estos son los pasos que el LBPH realiza para
su respectivo reconocimiento de imágenes.
Para el operador básico LBP es la llamada LBP uniforme, que se encontró que la
propiedad fundamental de la textura de la imagen local. A LBP se llama uniforme si
no hay más de dos 0/1 o 1/0 transiciones bit a bit en su código binario, siendo
considerado como un código circular (Salazar Espinoza, 2016).
32
La contribución de patrón uniforme a LBP y la LBP es de aproximadamente 87,2% y
70,7%, respectivamente. Es decir, los patrones uniformes toman un porcentaje
mayoritario de todos los patrones. Como resultado, cada patrón uniforme se da una
etiqueta única y todas las demás minorías se les dan una etiqueta mutua en el cálculo
del histograma (Zhiguang & Haizhou , 2007).
33
𝑚
𝜕𝜇𝑦 1 −4ℎ𝑘2 (𝑘)
= ∑ +1 (16)
𝜕𝑀𝑖 𝑁𝑦 (ℎ𝑘 (𝑖) + 𝑀𝑖 )2
𝑘=1,𝑦𝑘 =𝑦
𝑚
𝜕𝜇𝑦 2 −4ℎ𝑘2 (𝑘) 𝜕𝜇𝑦
= ∑ (𝑥 2 (ℎ𝑘 , 𝑀) − 𝜇𝑦 ) ( 2
+1− ) (17)
𝜕𝑀𝑖 𝑁𝑦 (ℎ𝑘 (𝑖) + 𝑀𝑖 ) 𝜕𝑀𝑖
𝑘=1,𝑦𝑘 =𝑦
El clasificador Haar es un método desarrollado por Viola & Jones y es una versión del
algoritmo “Adaboost”. Viola & Jones propusieron un esquema basado en una cascada
de clasificadores fuertes para cada parte del rostro, cada etapa corresponde a un
clasificador fuerte y está entrenada con todos los ejemplos que la etapa anterior no ha
clasificado correctamente más algunos nuevos (Guevara & Echeverry, 2008).
Por tanto, en la etapa de entrenamiento, cada etapa se entrena con un conjunto óptimo
34
de características capaces de detectar cada vez ejemplos más complicados; es decir,
las primeras etapas se encargan de descartar sub-imágenes que son muy diferentes de
una cara, mientras que las últimas etapas pueden rechazar ejemplos mucho más
complejos como pueden ser globos, pelotas, dibujos, etc. (Urtiaga Abad, 2014).
El clasificador está diseñado para que pueda ser fácilmente redimensionado ya sea
automáticamente o manual mediante programación, para que sea capaz de encontrar
los objetos de interés en diferentes tamaños, lo cual es mucho más eficiente que
redimensionar la propia imagen.
35
2.5. Como trabajan los algoritmos.
De acuerdo a la configuración de cada algoritmo, este trabaja de diferente manera
dependiendo a de qué manera fue programado su trabajo, se encuentran los siguientes:
36
Figura 6: Distribución de probabilidad de un usuario impostor y un usuario genuino.
Fuente: ( Vázquez López, 2014).
Los seres vivos obtienen la información del medio a través de los sentidos como la
vista, el tacto, el gusto, el olfato y la audición; en tanto los sistemas inteligentes la
obtienen a través de sensores y presentan los datos en forma conveniente para su
procesamiento e interpretación en ordenadores. Los datos registrados son llamados
37
patrones y éstos pueden ser representados como señales, imágenes o tablas de datos.
El reconocimiento de patrones (RP) se define como el proceso de la clasificación
automática de un objeto, físico o abstracto, en una o más clases con una intervención
mínima del ser humano. La clasificación se basa en el conocimiento a priori o en la
información extraída de los patrones ( Delbracio & Mateu, 2006).
Con el paso del tiempo los seres humanos, como demás organismos, han desarrollado
importantes mecanismos y habilidades para obtener la información del medio y a partir
de ello tomar decisiones. La capacidad de reconocer diferentes situaciones y tomar
decisión pertinentes es una capacidad inherente de los seres vivos, aparentemente esta
acción se aprecia como una simple tarea de sentido común.
Los seres vivos obtienen la información del medio a través de los sentidos como la
vista, el tacto, el gusto, el olfato y la audición; en tanto los sistemas inteligentes la
obtienen a través de sensores y presentan los datos en forma conveniente para su
procesamiento e interpretación en ordenadores. Los datos registrados son llamados
patrones y éstos pueden ser representados como señales, imágenes o tablas de datos.
El reconocimiento de patrones (RP) se define como el proceso de la clasificación
automática de un objeto, físico o abstracto, en una o más clases con una intervención
mínima del ser humano. La clasificación se basa en el conocimiento a priori o en la
información extraída de los patrones ( Delbracio & Mateu, 2006).
38
en dos o más clases de categorías. Esto es logrado al calcular las categorías del
conjunto en prueba comparándolo con un conjunto de entrenamiento (previo) o
training set. Un clasificador dado mide la distancia entre varios puntos dados
(compara), para saber cuáles puntos son más cercanos a la meta en un modelo
parametrizado.
2.6.1. Patrones.
2.6.2. Similitud
La noción de similitud, es la pieza angular en el proceso del RP, se refiere a los valores
parecidos de un atributo en dos o más objetos. En el proceso de reconocimiento, se
evalúa la similitud entre un objeto y un modelo (prototipo) que idealiza a la clase a la
que pertenece.
39
Figura 7: Esquema general de un sistema de reconocimiento de patrones.
Fuente: Autores
40
2.7. Incidencia de la luz, colores, posición, distancia y accesorios.
Para solucionar esto, se crea la base da datos de cada individuo con la misma cantidad
de luz, especialmente la que está directamente hacia el rostro. El sistema será capaz de
tomar las fotos del mismo tamaño cada una sin importar la distancia la que se
encuentra el usuario de la cámara.
2.8 OpenCV
OpenCV significa Open Source Computer Vision Library; por lo tanto, es una librería
de tratamiento de imágenes, destinada principalmente a aplicaciones de visión por
computador en tiempo real. Una de las ventajas principales es que puede funcionar en
muchas plataformas, existen versiones para Windows, Linux y MacOs.
41
OpenCV es multiplataforma, Existiendo versiones para GNU/Linux, Mac OSX y
Windows. Contiene más de 500 funciones que abarcan una gran gama de áreas en el
proceso de visión, como reconocimiento de objetos (reconocimiento facial),
calibración de cámaras, visión estéreo y visión robótica (Álvarez Corrales, 2013).
42
Figura 9: Función GasussianBlur.
Fuente: http://4.bp.blogspot.com/-zFk5fzn7qZc/
En muchas ocasiones es necesario guardar las imágenes que se han procesado, para lo
cual podemos usar las líneas que aclaran el tipo de compresión que se usara para
guardar la imagen, formato, matriz que la representa, nombre de la imagen a guardar,
etc.
43
Habría tres tipos de cámaras normalmente disponibles de acuerdo a su conexión y
forma de introducir la información dentro del programa y que de estas puede haber
variantes.
Existen cámaras estéreo que se conectan por USB la desventaja podrían ser que se
divide el ancho del puerto reduciendo a la mitad la velocidad de transmisión por cada
cámara.
La clase que ofrece OpenCV para detección de caras, es la clase cv: CascadeClassifier.
La clase CascadeClassifier tiene dos funciones principales que son las que permiten
cargar las características de Haar del objeto a detectar, y otra para la detección
propiamente dicha (Network, 2014). Concretamente, la función que permite cargar las
características de Haar es la función cvLoad, que necesita como parámetro de entrada
el fichero xml que contiene la información generada en un entrenamiento previo.
OpenCV viene ya con unos ficheros entrenados con miles de patrones para detección
de caras, manos, ojos, personas, etc., por lo que no hace falta realizar un entrenamiento
de patrones, sino utilizar los ficheros que trae OpenCV.
OpenCV tiene incluido en sus ficheros clasificadores para varias detecciones, ya sea
para rostro frontal, rostro de perfil, ojos, boca, nariz, etc (Haar Carcades, 2016). Es así
44
que para la detección frontal de rostros, se utilizó el Clasificador Haar Cascade que
vienen con OpenCV: haarcascade_frontalface_alt.xml.
Quizá de los pocos inconvenientes que se pueden encontrar en ella sea en el caso del
seguimiento de objetos, en el cual, el principal inconveniente es que no ofrece un
producto completo, tan sólo algunas piezas que sirven como base para montar sobre
ellas un producto final. Sin embargo, la presencia de funciones muy interesantes, y las
posibilidades ya comentadas que ofrece la librería hacen que estos inconvenientes no
sean realmente significantes.
Entre las múltiples ventajas que ofrece trabajar con una librería como OpenCV está la
de tener clases propias y funciones preparadas para el procesado de imágenes y vídeo.
Las utilizadas en el presente proyecto se detallaran en el apartado implementación.
45
2.9. Sistema del automóvil a considerar.
Este vehículo cuenta con sistema de inyección multipunto que tiene un inyector por
cada cilindro. La inyección del combustible es de manera indirecta donde los
inyectores van ubicados en los colectores de admisión en una zona próxima, en la que
se mezcle con el aire antes de entrar en la zona interior donde están los cilindros.
El sistema de alimentación de combustible consta de los siguientes elementos:
- Batería
- Relay de bomba de combustible
- Bomba de combustible
- Filtro de combustible
- Inyectores
- Regulador de combustible
- Deposito
46
CAPÍTULO 3
3. MARCO APLICATIVO
Como se logra observar, el usuario o persona que esté en el asiento del piloto del
vehículo estará sometido al reconocimiento facial cada 10 minutos (se podrá modificar
en la programación), el cual al ser reconocido como usuario registrado se activara el
relé que dará paso de voltaje para el funcionamiento de la bomba de combustible.
47
Por otra parte, al no estar ninguna persona enfocada a la cámara, se activara una alarma
de “usuario no detectado” con un led rojo parpadeante o titileo de sonidos para avisar
al conductor que debe enfocarse a la cámara, pues al no hacerlo, después de un cierto
tiempo, el sistema inhabilitara el vehículo hasta reconocer un rostro.
Cabe recalcar que existe una clave de acceso para habilitar a la bomba de gasolina,
esto es necesario pues para que un usuario que no esté registrado en la programación
pueda hacer uso del vehículo sin problema al digitar la clave.
48
2015). Los sistemas operativos basados en Linux funcionan en la Pi, lo que permite
acceso ilimitado a software libre y descargas gratuitas.
Características y ventajas de Pi 3
49
en la Figura 15, no todos los pines tienen la misma función:
Pines de alimentación: pines de 5v, 3.3v (limitados a 50mA) y tierra (GND o Ground),
que aportan alimentación a estos voltajes para tus circuitos. Te pueden servir como una
fuente de alimentación, aunque también puedes utilizar otras fuentes (pilas, fuentes de
alimentación externas, etc).
GPIO normales: son conexiones configurables que se pueden programar para los
proyectos.
GPIO especiales: dentro de éstos se encuentran algunos pines destinados a una interfaz
UART, con conexiones TXD y RXD que sirven para comunicaciones en serie.
Especificaciones:
- Diseñado para los últimos smartphones basados en Android, tablets, cámaras
de acción y MIL.
- Recomendado por GoPro para su uso con Hero, Hero3 +, Hero4, & HERO +
LCD.
50
- Dispara a modo de ráfaga continua, Full HD y vídeo Ultra HD de 4K, velocidad
de transferencia de hasta 90 MB/s.
- Construido para condiciones duras; Prueba de la temperatura, prueba del agua,
prueba del choque y prueba de la radiografía.
- La aplicación SanDisk Memory Zone facilita el manejo de la memoria del
smartphone con sus archivos multimedia.
- Software de recuperación de datos de lujo para descargar.
Características:
- Microcontrolador ATmega2560.
- Voltaje de entrada de – 7-12V.
- 54 pines digitales de Entrada/Salida (14 de ellos son salidas PWM).
51
- 16 entradas análogas.
- 256k de memoria flash.
- Velocidad del reloj de 16Mhz
Especificaciones:
- Mini-webcam USB con lente amplio angular M7 de 100grados para imagen de
video.
- Mini lente estándar M7 con amplio ángulo FOV (D) 138 (H) 100 grados.
- Max 1280X720 @ 30fps HD 720P alta resolución.
- USB 2.0 de alta velocidad de tamaño mini 32x32 / 26x26mm para insertar en
espacio pequeño
- Cable del USB de 1 metro, sirve de apoyo para la Raspberry Pi, OpenCV.
52
Figura 19: Compuerta lógica OR.
Fuente: http://unicrom.com/Tut_compuertaor.asp
53
Figura 21: Teclado matricial 4x4.
Fuente: http://electropro.pe/index.php?route=product/product&product_id=555
54
Figura 23. Transistor NPN 2N3055
Fuente: http://www.geekbotelectronics.com/producto/2n3055-transistor-npn/
55
Características:
- 16 caracteres x 2 líneas
- Caracteres de 5x8 puntos
- Tamaño de caracter: 5.23 x 3 mm
- Puede mostrar letras, números, caracteres especiales, y hasta 8 caracteres
creados por el usuario
- Backlight de LED color azul
- Caracteres color blanco
- Interface paralela. Puede operar en modo de 8 bits, o de 4 bits para ahorrar
pines del microcontrolador
- Posee controlador KS0066U o equivalente on-board (compatible Hitachi
HD44780)
- Voltaje de alimentación: 5 V.
56
3.4. Circuito de alimentación de la Raspberry.
Es necesario estudiar la alimentación de la Raspberry para evitar que esta se apague
cuando se de arranque al vehículo al existir una caída de voltaje, para que esté
encendido en todo momento.
Para esto se ha instalado un regulador de voltaje de 12V a 5V ya que este último valor
es el voltaje para la alimentación de la Raspberry.
57
Figura 27: Alimentación 12V del regulador de voltaje.
Fuente: Autores
Todas las fotografías están con el mismo tamaño de 112x92 pues mandar a ejecutar el
código de reconocimiento facial se colocara el tamaño de las imágenes y el nombre de
la carpeta de la base de datos, si estos no coinciden, el programa enviara un error.
58
Las fotografías muestran tan solo los rostros de las personas pues al sistema no le
interesa nada más y están en escala de grises con diferentes gestos y tipos de luz
haciendo que el sistema sea mucho más rápido al momento del reconocimiento.
Las diferentes fotos fueron tomadas con la persona dentro del vehículo, en el asiento
del conductor para simular una persona conduciendo y siendo captada por la cámara
como se muestra en la Figura 29 a distintas posturas y a diferentes horas del día para
variar la luz por la mañana y la tarde.
59
Figura 30: Esquema general
Fuente: Autores.
Entre la Matriz Keypad 4x4 y el Arduino Mega 2560 se hace las siguiente conexiones:
el row 1 (fila 1) de la Matriz va conectado al pin 8 de Arduino, el row 2 (fila 2) va
conectado al pin 7, el row 3 (fila 3) va conectado al pin 6 y el row 4 (fila 4) va
conectado al pin 5; el pin 5 (columna 1) de la Matriz va conectado al pin 4 de Arduino,
el pin 6 (columna 2) va conectado al pin 3 y el pin 7 (columna 3) va conectado al pin
2 de la placa Arduino.
El pin 11 de Arduino que va conectado a las compuertas lógicas AND dará un error de
la clave y el pin 12 que conecta a la compuerta lógica OR dará una entrada de clave
correcta.
Las conexiones entre el Tablero de extensión GPIO y la pantalla LCD son: el pin de
5V va conectado a las entradas VDD y mediante una resistencia; el pin GND va
conectado a las entradas VSS, VO, R/W y K de la pantalla LCD; el pin IO23 hace
contacto a la entrada D4; el pin IO24 va conectado a la entrada E; el pin IO25 va hacia
a la entrada RS; el pin IO17 va conectado a la entrada D5; el pin IO22 va conectado a
la entrada D7; el pin IO13 va hacia a la entrada D6 de la pantalla LCD.
60
De esta manera es como se muestra la situación o estado del sistema mediante
mensajes de textos cortos en la pantalla LCD.
Para la programación se ha separado en tres fases y cada una de estas cumplirá un rol
especifico, los cuales se detallas a continuación.
61
En la Figura 31 se aprecia las tres líneas de código que comandan la fase de
entrenamiento, en la primera se escoja la técnica de reconocimiento facial que se va a
utilizar, el “model.train” es el entrenamiento del sistema que actualiza la base de datos
de rostros y líneas de código nuevas, y esta es la que será guardada con la extensión
“yml” como se muestra en la tercera línea de código.
62
El enfoque que da la cámara USB hacia el rostro de la persona, debe de ser del mismo
tamaña de as que fueron tomadas las fotografías (en este caso 112x92), caso contrario
en el programa aparecerá un error.
En la programación, se ha propuesto que solo a los autores de este proyecto sean los
usuarios autorizados para poner en marcha el vehículo al detectar su rostro, por tanto
el sistema al reconocer a estos usuarios realzara la activación del paso de corriente
hacia la bomba de gasolina.
Cabe recalcar que el usuario será reconocido 5 veces seguidas para poder activar el
paso de corriente hacia la bomba, si no se cumplen estos 5 reconocimientos, no se dará
paso de corriente a la bomba para encender al vehículo.
63
Figura 34: Reconocimiento de usuario.
Fuente: Autores.
64
conducir.
Se ha programado en Arduino y las señales de salida de clave correcta o incorrecta
serán enviadas a compuertas lógicas para hacer el trabajo de habilitación o
inhabilitación del sistema.
En este caso a clave viene dado con la combinación de 4 dígitos que son: “1234”, la
misma que se puede cambiar a conveniencia del usuario en la programación y cargarla
en el microcontrolador del Arduino.
Se utiliza un teclado de membrana matricial 4x4 de la Figura 21, cabe recalcar que
para este caso ve van a utilizar solamente las teclas numéricas por lo que la matriz será
4x3, 4 filas y 3 columnas y eso es lo q se programa en código de Arduino como se
muestra en la Figura 37.
65
Figura 38: Start y reinicio del teclado.
Fuente: Autores.
Para aceptar el código que se digitó se presiona la tecla “*” o “start”, y para reiniciar
el mismo se presiona “#” o “stop” en el caso que se digitó mal con código y se requiera
ingresar nuevamente.
Las señales de salida de “clave correcta” y “clave incorrecta” serán dadas por los pines
12 y 11 del Arduino respectivamente, es decir, cuando la clave digitada por el usuario
es correcta se encenderá un led amarillo de confirmación que el vehículo está
habilitado, caso contario se encenderá un led rojo que indica que la clave es incorrecta
y que el vehículo aún sigue inhabilitado.
66
Artificial mande o no mande señal por el GPIO 19.
Por otra parte, cuando se digite una clave incorrecta, habrá señal del PIN11 del
Arduino, el cual está conectada a las dos compuertas AND como se muestra en la
Figura 39, las otras entradas de las compuertas son las señales de los GPIO’s 27 y 6,
las cuales son alertas de usuario no reconocido y usuario no detectado respectivamente.
El trabajo de las compuertas AND es q al tener señal 1 en sus dos entradas, la salida
será 1, es decir, al haber digitado la clave incorrecta el GPIO19 estará en 0, la cual dará
paso al sistema de Visión Artificial y se tendrá también la activación de las dos alarmas
que son salidas de las compuertas AND.
67
diodo rectificador en paralelo al relé, el 85 va a los 12V y el 87 ira conectada hacia el
positivo de la bomba de combustible.
Con esto se logra que al tener señal de salida de la compuerta OR, el transistor dará la
potencia suficiente para cerrar el swich del relé y lograr prender la bomba de
combustible y consigo poder encender el vehículo.
68
CAPÍTULO 4
TOTAL 225,00
69
Se detallan todos los elementos necesarios con sus precios, para la construcción del
sistema de seguridad por reconocimiento facial para la puesta en marcha de un
vehículo.
Una vez que se ha asegurado el correcto funcionamiento del circuito con resultados
favorables a cada una de las pruebas realizadas, se procede a plasmar el circuito
electrónico del sistema en tres placas perforadas. Se debe tener precaución al momento
de colocar los componentes en las placas, ya que se los debe colocar en su respectiva
posición y con la cantidad suficiente de estaño para que no quede mal sujetado, pero
70
tampoco invadir partes del circuito que puedan impedir el buen funcionamiento del
mismo.
71
Tabla 4: Tiempo en s que tarda en entrenarse el sistema.
Fuente: Autores
ENTRENAMIENTO
Promedio
Algoritmo Prueba1 Prueba2 Prueba3 Prueba4 Prueba5
Fisherface 362 359 360 360 361 360,4
Eigenface 295 298 295 301 300 297,8
LBPH 75 73 74 75 75 74,4
ENTRENAMIENTO
400
350
300
250
200
150
100
50
0
Prueba1 Prueba2 Prueba3 Prueba4 Prueba5
PROMEDIO
360,4
400
350 297,8
300
Segundos
250
200
150 74,4
100
50
0
Fisherface Eigenface LBPH
Algoritmo
Se aprecia claramente que el algoritmo LBPH tarada mucho menos en entrenarse que
los demás, esto demuestra que al entrenar tanto el algoritmo Eigenface y Fisherface
genera un archivo yml mucho más pesado que el del LBPH, como se indicó
anteriormente.
Cabe recalcar que no porque un algoritmo de reconocimiento facial tarde mucho en
72
entrenarse es más eficiente, esto no es así, pues en la fase de reconocimiento, el sistema
tardara mucho más en iniciarse y cuando este corriendo el programa puede tender a
detenerse repentinamente o colgarse.
Estas diferencias de tiempo, más que a la hora en la que fueron realizadas, son el
resultado del análisis que cada algoritmo realiza a la base de datos de rostros que fue
realizada anteriormente, pues esta es muy grande con 25 sujetos de prueba con 40 fotos
de cada quien, esto hace demorar el entrenamiento.
Los resultados mostrados son los gráficos del análisis de la última base de datos que
fue realizada dentro del vehículo, a diferentes horas del día, que anteriormente fue
seleccionada como la mejor base de datos para trabajar el sistema de reconocimiento
facial por tanto el algoritmo LBPH es más eficiente en este caso.
RECONOCIMIENTO
Algoritmo Prueba1 Prueba2 Prueba3 Prueba4 Prueba5 Promedio
Fisherface 126 126 124 125 127 125,6
Eigenface 92 93 95 92 90 92,4
LBPH 36 36 37 36 37 36,4
RECONOCIMIENTO
140
120
100
80
60
40
20
0
Prueba1 Prueba2 Prueba3 Prueba4 Prueba5
73
PROMEDIO
125,6
150
92,4
Segundos
100
36,4
50
0
Fisherface Eigenface LBPH
Algoritmo
Al entrenar con las tres técnicas de reconocimiento facial, se crean archivos resultados
de estos entrenamientos para Fisherface, Eigenface y LBPH con extensión yml para
cada uno. En el código para reconocimiento facial, para cada prueba se colocó el
nombre de las técnicas usadas y en la siguiente línea llamar al archivo creado en la
fase de entrenamiento como se muestra en la Figura 33 para empezar a correr el
programa.
Los resultados de la Tabla 5 y Figura 45 muestran que en esta fase también es menor
el tiempo que tarda en iniciar el algoritmo LBPH de reconocimiento facial. La
explicación es que de igual manera que en la fase de entrenamiento, la técnica
Fisherface y Eigenface tarda en abrir el archivo generado anteriormente.
74
Tabla 6: Pruebas de reconocimiento de usuarios autorizados con Eigenface.
Fuente: Autores.
USUARIO 1 USUARIO 2
RECONOCE TIEMPO RECONOCE TIEMPO
Pruebas SI (1) NO (1) SI (1) NO (1)
1 1 0 6 1 0 6
2 0 1 6 1 0 6
3 1 0 5 1 0 6
4 1 0 6 1 0 6
5 1 0 5 1 0 6
6 0 1 6 1 0 6
7 1 0 6 0 1 5
8 0 1 6 1 0 6
9 0 1 6 0 1 6
10 1 0 5 1 0 7
11 1 0 6 1 0 6
12 1 0 6 0 1 5
13 1 0 7 1 0 6
14 1 0 6 1 0 6
15 1 0 6 0 1 6
TOTAL 11 4 11 4
75
Tabla 7: Pruebas de reconocimiento con Fisherface.
Fuente: Autores.
USUARIO 1 USUARIO 2
RECONOCE TIEMPO RECONOCE TIEMPO
Pruebas SI (1) NO (1) SI (1) NO (1)
1 1 0 6 1 0 6
2 0 1 6 0 1 6
3 1 0 5 1 0 6
4 0 1 6 0 1 6
5 1 0 5 1 0 6
6 0 1 6 1 0 6
7 1 0 6 0 1 5
8 0 1 6 1 0 6
9 0 1 6 0 1 6
10 1 0 5 1 0 7
11 1 0 6 0 1 6
12 0 1 6 0 1 5
13 0 1 7 1 0 6
14 1 0 6 1 0 6
15 1 0 6 0 1 6
TOTAL 8 7 8 7
76
Tabla 8: Pruebas de reconocimiento con LBPH.
Fuente: Autores.
USUARIO 1 USUARIO 2
RECONOCE TIEMPO RECONOCE TIEMPO
Pruebas SI (1) NO (1) SI (1) NO (1)
1 1 0 6 1 0 6
2 1 0 6 1 0 6
3 1 0 5 1 0 6
4 1 0 6 1 0 6
5 1 0 5 1 0 6
6 1 0 6 1 0 6
7 1 0 6 1 0 5
8 1 0 6 1 0 6
9 1 0 6 1 0 6
10 1 0 5 1 0 7
11 1 0 6 1 0 6
12 1 0 6 0 1 5
13 1 0 7 1 0 6
14 1 0 6 1 0 6
15 0 1 6 1 0 6
TOTAL 14 1 14 1
77
Figura 49: Reconocimiento a Usuario 1.
Fuente: Autores.
Con el algoritmo LBPH se aprecia que la efectividad es bien alta, el 93% con 14
aciertos frente a un solo error, por lo que esta es la técnica más efectiva es esta última.
Cabe recalcar que para hacer cada prueba, previamente fue entrenado con la última
base de datos que se mencionó anteriormente.
La prueba se realiza a 30 personas, a cada una de ellas con las tres técnicas de
reconocimiento facial y de esto se observara el porcentaje de error al momento de
negar el acceso para encender al vehículo.
78
Tabla 9: Negación de acceso a usuarios no permitidos.
Fuente: Autores
Resultado
Niega el acceso Permite el acceso
Algoritmo
Eigenface 21 9
Fisherface 20 10
LBPH 26 4
EIGENFACE
Permite el acceso
30%
Niega el acceso
70%
FISHERFACE
Permite el acceso
33%
Niega el acceso
67%
79
LBPH
Permite el acceso
13%
Niega el acceso
87%
Los resultados anteriores muestran claramente que la mayor efectividad para rechazar
a personas no autorizadas se logra con el algoritmo LBPH, pues de los sujetos a prueba
a cuatro permitió en acceso, pero después de los 10 segundos programados para una
nueva revisión o nuevo reconocimiento, a fueron rechazados por el sistema y no les
permitió encender el vehículo y a los otros 26 el sistema los rechazo sin ningún
problema.
80
combustible permitiendo encender al vehículo sin importar el reconocimiento facial.
Al digitar una clave errónea, se apaga el led amarillo y se des energiza el relé, cortando
el paso de combustible hacia el motor y el vehículo queda en ese instante con seguridad
antirrobo por reconocimiento facial.
Por tanto, el uso de una clave de acceso de emergencia o al prestar el vehículo a otro
usuario, es totalmente efectivo.
81
des energiza la bomba de gasolina y al cabo de 15 segundos se apaga el vehículo, este
tiempo es el que tarda el motor en consumir el combustible almacenado en las cañerías
después de des energizarse la bomba de gasolina, sin poder encenderlo nuevamente,
hasta presionar el botón de reinicio.
Lo cual hace que el sistema de seguridad antirrobo vehicular por reconocimiento facial
sea efectivo.
82
CONCLUSIONES.
Para el proyecto, se logra realizar una justificación clara y concisa del porque se va a
realizar este trabajo, analizando la situación actual sobre el robo de vehículos ya sea
dentro o fuera de la ciudad de Cuenca, para esto se acudió a los datos del Instituto
Nacional de Estadísticas y Censos (INEC) que muestran una baja considerable en los
robos de vehículo en los últimos 10 años.
La cámara web se colocó a la altura del parasol izquierdo sin interferir su despliegue,
a 45 cm aproximadamente del rostro del conductor
Según las pruebas realizadas, el algoritmo LBPH es el que menor tiempo tarda en
entrenar el sistema (74,4 segundos), y en la fase de reconocimiento (36,4 segundos);
en comparación con los algoritmos Eigenface y Fisherface.
83
En cuanto al reconocimiento para usuarios autorizados, se tiene un porcentaje de
efecacia del 73% con el algoritmo Eigenface, del 53% con el Fisherface y del 93% con
el LBPH; concluyendo así que el algoritmo con mayor porcentaje de efectividad en el
reconocimiento facial es el LBPH.
84
RECOMENDACIONES.
Utilizar siempre ropa adecuada para trabajar con sistemas electrónicos y utilizar
herramientas certificadas para tales trabajos y así evitar accidentes.
Se recomienda actualizar la base de datos según sea necesario, sobre todo cuando
existan cambios en la apariencia de las personas registradas en la base de datos para
así garantizar el reconocimiento del rostro, con el mismo número de imágenes o
fotografías para no hacer lento al programa o evitar errores.
85
BIBLIOGRAFÍA.
86
G.E. (2012). Aplicación práctica de la visión artificial en el control de procesos
industriales. Barcelona: Gobirno de España. Ministerio de Educacion.
Guerrero, D. (11 de marzo de 2012). Reconocimiento Facial. Pasado, presente y
futuro. Recuperado el 11 de noviembre de 2016, de
http://www.diegoguerrero.info/tag/reconocimiento-facial/
Guevara, M. L., & Echeverry, J. D. (2008). Faces Detection in Digital Images Using
Cascade Classifiers. Universidad Tecnológica de Pereira.
Herrero, I. (2005). Aspectos de un Sistema de Visión Artificial. Universidad Nacional
de Quilmes – Ing. en Automatización y Control Industrial.
INEC. (14 de Junio de 2016). Instituto Nacional de Estadística y Censos – Ecuador.
Recuperado el 25 de Octubre de 2016, de
http://www.ecuadorencifras.gob.ec/justicia-y-crimen/
INFAIMON. (26 de Mayo de 2014). INFAIMON VISIÓN ARTIFICIAL. Obtenido de
http://www.infaimon.com/es/software-de-imagen-seguridad
Kanade, T., & Hebert, M. (21 de diciembre de 2015). People Image Analysis
Consortium. Recuperado el 10 de noviembre de 2016, de
http://www.consortium.ri.cmu.edu/index.php
Llaguno, C. (10 de Mayo de 2016). Seguros 123. Recuperado el 25 de Octubre de
2016, de http://ecuador.seguros123.com/5-mejores-dispositivos-antirrobo/
López Pérez, N., & Toro Agudelo, J. J. (2012). TECNICAS DE BIOMETRIA
BASADAS EN PATRONES FACIALES DEL SER HUMANO. UNIVERSIDAD
TECNOLOGICA DE PEREIRA.
Moreno Díaz, A. B. (2004). Reconocimiento Facial Automático mediante Técnicas
de Visión Tridimensional. Madrid: UNIVERSIDAD POLITÉCNICA DE
MADRID. FACULTAD DE INFORMÁTICA. Tesis Doctoral. Recuperado el
21 de octubre de 2016, de http://oa.upm.es/625/1/10200408.pdf
Navas, E. (abril de 2013). Navas Design. Recuperado el 11 de noviembre de 2016, de
http://www.eduardonavas.info/2013/04/16/clasificador-haar/
Network, D. (2014). msdn.microsoft. Recuperado el 09 de noviembre de 2016, de
https://msdn.microsoft.com/es-es/library/dn913079.aspx
Ortiz, T. M. (2014). SISTEMA DE RECONOCIMIENTO FACIALAUTOMATIZADO
PARA EL CONTROL DE ASISTENCIA DE RECURSOS HUMANOS. Loja.
Ottado, G. (2010). Reconocimiento de caras: Eigenfaces y Fisherfaces. Obtenido de
https://eva.fing.edu.uy/file.php/514/ARCHIVO/2010/TrabajosFinales2010/inf
orme_final_ottado.pdf
Salazar Espinoza, C. F. (2016). DISEÑO E IMPLEMENTACIÓN DE UN SISTEMA
DE SEGURIDAD PARA UN AUTOMÓVIL CON AUTENTICACIÓN POR
RECONOCIMIENTO FACIAL UTILIZANDO TÉCNICAS DE VISIÓN
ARTIFICIAL. ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO.,
Riobamba.
Serratosa, F. (2014). Reconocimiento de las personas por rasgos de la cara.
Universitat Oberta de Catalunya.
Sobrado Malpartida, E. A. (2003). SISTEMA DE VISIÓN ARTIFICIAL PARA EL
RECONOCIMIENTO Y MANIPULACIÓN DE OBJETOS UTILIZANDO UN
BRAZO ROBOT. Lima: PONTIFICIA UNIVERSIDAD CATÓLICA DEL
PERÚ. Obtenido de
http://tesis.pucp.edu.pe/repositorio/bitstream/handle/123456789/68/SOBRAD
O_EDDIE_VISION_ARTIFICIAL_BRAZO_ROBOT.pdf;jsessionid=6329D
67F0BCBAEB5608FABF20355A9A4?sequence=2
Turismo, M. d. (24 de Junio de 2016). Ministerio de Turismo. Noticias. Recuperado
87
el 20 de Octubre de 2016, de http://www.turismo.gob.ec/ecuador-mejorar-sus-
indices-de-seguridad-ciudadana/
Urtiaga Abad, J. A. (2014). RECONOCIMIENTO FACIAL. Madrid.
Yuan, C., & Qi, D. (2009). Face Recognition Using L-Fisherfaces. Institute of
Information Science Beijing Jiaotong University. Obtenido de
http://www.iis.sinica.edu.tw/page/jise/2010/201007_23.pdf
Zhiguang, Y., & Haizhou , A. (2007). Demographic Classification with Local Binary
Patterns. Department of Computer Science and Technology, Tsinghua
University, Beijing 100084, Beijing. Recuperado el 25 de octubre de 2016, de
http://media.cs.tsinghua.edu.cn/~ahz/papers/ICB07_demographic.pdf
88