Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tesis Reconocimiento de Patrones PDF
Tesis Reconocimiento de Patrones PDF
TESIS DE GRADO
LA PAZ – BOLIVIA
2010
“Mírame a los ojos, está bien si tienes miedo.
Yo también lo tengo. Pero tenemos miedo por
diferentes razones. Yo tengo miedo de lo
que no me convertiré y tú tienes miedo de lo
que podría convertirme. Mírame, no voy a
dejarme a mi mismo acabar donde empecé.
No voy a dejarme a mi mismo terminar
donde me inicié. Yo se lo que hay dentro de
mí incluso si tu no lo puedes ver aún. Mírame
a los ojos, yo tengo algo más importante que
el valor, tengo paciencia. Yo me convertiré
en lo que sé que soy.”
i
AGRADECIMIENTOS
Agradezco en primer lugar a mis padres Raúl y Norah por todo el apoyo brindado
durante todo este tiempo, es gracias a ellos que tuve la dicha de terminar mis estudios.
A mis amigos Gary y María Luisa por su apoyo y ayuda al momento de recabar
información y conseguir los materiales necesarios.
También le doy las gracias a todas las personas que me permitieron incluir a sus
mascotas en el sistema: amigos, conocidos, conocidos de conocidos y todas las personas
que lo hicieron sin conocerme y que prefirieron no dar sus nombres.
e-mail: gonzalo_chacon_alipaz@hotmail.com
ii
RESUMEN
A lo largo de la historia ha habido diversos usos para las RNA, uno de los más
importantes es el reconocimiento de patrones. El reconocimiento de los rasgos físicos de los
seres humanos se denomina biometría; sin embargo no existen antecedentes sólidos de un
estudio donde el reconocimiento sea aplicado a canes.
Este trabajo nace de la idea de que todas las narices caninas tienen patrones únicos de
igual manera a que los humanos tienen huellas dactilares únicas. Es en base a esto que se
realizará un prototipo (software) el cual será capaz de identificar a un can tomando como
“huella” los patrones nasales extraídos de una fotografía del animal el cual previamente
será registrado en una base de datos.
iii
ÍNDICE
Página
CAPÍTULO I
INTRODUCCIÓN …………………………………………................................................ 1
1.1 ANTECEDENTES………….............................................................................. 2
1.2 EL PLANTEAMIENTO DEL PROBLEMA………………...………………… 3
1.2.1 Planteamiento del problema………………………………………….. 3
1.2.2 Formulación del problema………………………………………….. 4
1.2.3 Sistematización del problema……………………………………….. 4
1.3 OBJETIVOS…………………………………………..………………………... 4
1.3.1 Objetivo general……………………………………………………. 4
1.3.2 Objetivos específicos…………………………………………………. 5
1.4 JUSTIFICACIÓN……………………………………..………………………5
1.4.1 Justificación Teórica………………………………………………… 5
1.4.2 Justificación Práctica…………………………………………………5
1.4.2 Justificación Científica…………………………………………..…… 6
1.4.3 Justificación Social…………………………………………………… 6
1.5 HIPÓTESIS………………………………..…………..……………………… 6
CAPÍTULO II
MARCO DE REFERENCIA…………………………..………………………………... 7
2.1 REDES NEURONALES ARTIFICIALES…...……………………………...… 7
2.1.1 Introducción……………………………………………….………….. 7
2.1.2 Redes Neuronales Biológicas…………..……………..……………… 8
2.1.3 Definición…………………………………………………………… 10
2.1.4 Características generales…………………………………………… 10
2.1.5 Funcionamiento………………………………………………...…… 11
2.1.6 Tipos de entrenamiento…………………………………………...… 12
2.1.6.1 Entrenamiento supervisado………………………………... 12
iv
2.1.6.1 Entrenamiento no supervisado…….………………………13
2.1.7 Validación…………………………………………………………… 14
2.1.8 Estructura…………………………………………………………… 14
2.1.8.1 La neurona………………………………………………… 15
2.1.8.2 Capas de neuronas………………………………………… 17
2.1.9 Reconocimiento de patrones………………………………………… 20
2.1.9.1 Auto-asociación…………………………………………… 20
2.1.10 Cálculo del error…………………………………………………… 21
2.1.10.1 Cálculo del error en un entrenamiento supervisado……… 21
2.1.10.2 Cálculo del error en un entrenamiento no supervisado...… 22
2.1.11 Tipos de redes…..………………………………….………………. 23
2.1.11.1 Percetrón……..……………………………...…………… 23
2.1.11.2 Backpropagation……………………………….………… 25
2.1.11.3 Modelo Hopfield……………………………….………… 26
2.1.11.4 Modelo Kohonen………………………………………… 27
2.1.12 Diseño y programación de una RNA………………………….…… 29
2.1.13 Algoritmo de entrenamiento…………………..…………………… 30
2.2 EL PROCESO UNIFICADO DE DESARROLLO DE SOFTWARE……..… 33
2.3 EL LENGUAJE UNIFICADO DE MODELADO…………………………. 36
2.3.1 Elementos……………………………………………….………….. 37
2.3.2 Relaciones……………………………..……………..……………… 39
2.3.3 Diagramas…………………………………………………………… 40
CAPÍTULO III
PROCESAMIENTO DE IMÁGENES……………………..…………………………….45
3.1 DESCRIPCIÓN GENERAL………………………………………………… 45
3.2 ADQUISICIÓN DE LA IMAGEN…………………………………………… 46
3.2.1 Imágenes de Intensidad………………………………….………….. 46
3.2.2 Imágenes de Color………….…………..……………..…………… 47
3.3 TRATAMIENTO DE IMÁGENES…………………………….…..……..… 48
3.3.1 Extracción de características…….…………………………………. 48
v
3.3.1.1 Detección de bordes...………………………...…………… 48
3.3.2 Binarización………………………………..………………………... 50
3.4 INTERPRETACIÓN DE LA IMAGEN COMO DÍGITOS BINARIOS…..… 51
CAPÍTULO IV
FUNCIONAMIENTO DE LA RED DE KOHONEN…………………………………….53
4.1 DEFINICIÓN DE LA RED NEURONAL DE KOHONEN………………... 53
4.2 COMO CONOCE UNA RED DE KOHONEN……………………….……… 53
4.2.1 Estructura de una red neuronal de Kohonen…………….………….. 53
4.2.2 Normalización de la entrada…………..……………..……………… 55
4.2.3 Cálculo de la salida de cada neurona…..……………..…………… 56
4.2.4 Mapeo a bipolar……………….………..……………..…………… 56
4.2.5 Escogiendo al ganador……….………..……………..……………… 57
4.2.6 Aprendizaje de una red de Kohonen.…..……………..…………… 57
4.2.7 Tasa de aprendizaje.…………………………………..…………… 59
4.2.8 Ajuste de los pesos……………………..……………..…………… 59
4.2.9 Cálculo el error……………………..……………..……………… 61
4.3 IMPLEMENTACION DE LA RED NEURONAL DE KOHONEN……..… 61
CAPÍTULO V
DISEÑO DEL SOFTWARE……………………………………………………………….62
5.1 DESCRIPCIÓN GENERAL………………………….……………………... 62
5.2 DEFINICIÓN DE LA HUELLA USADA……………………………………. 65
5.3 PROCESAMIENTO PREVIO……………………….……………………... 66
5.4 DISEÑO DEL PROTOTIPO………………………………………………… 72
5.4.1 Diagrama de Casos de Uso……………………………….…………. 72
5.4.2 Diagrama de Clases……….……….…………………….………….. 73
5.4.3 Diagrama de Actividades……….………………………….……… 79
5.4.4 Diagramas de Secuencia…….………………………….…………… 80
5.4.5 Diagrama Entidad-Relación………...………………………….…… 81
5.5 VENTANA PRINCIPAL DEL PROTOTIPO……………………...………… 82
vi
5.6 BINARIZACIÓN DE LA HUELLA……………………………………….… 83
5.7 REGISTRO DE UN CAN EN LA BASE DE DATOS……………..……..… 87
5.8 BÚSQUEDA DE UN CAN…………………………………………..……..… 89
5.9 RECONOCIMIENTO DE UN CAN…………………………….…..……..… 91
5.9.1 Creación de la red neuronal……………………………….………… 92
5.9.2 Entrenamiento de red neuronal………………………….………….. 94
5.9.3 Reconocimiento de la muestra………………………….………….. 94
CAPÍTULO VI
EVALUACIÓN DEL PROTOTIPO……………………………………………………. 96
6.1 DETERMINACIÓN DE LOS CASOS DE PRUEBA...….…………………... 98
6.2 EVALUACIÓN DE LOS CASOS DE PRUEBA…….……………………... 97
6.3 EVALUACIÓN DE LOS RESULTADOS……………………………………98
6.3.1 Definición las hipótesis H0 y H1………………….…………………. 98
6.3.2 Determinación de la región critica…………………………………. 98
6.3.3 Cálculo del estadístico de la prueba………………………………… 99
6.3.4 Toma de decisión…………………………………………………. 100
6.3.5 Conclusión…………………………………………………………. 100
CAPÍTULO VII
CONCLUSIONES Y RECOMENDACIONES…………………………………………. 101
7.1 CONCLUSIONES……………………………………..….…………………. 101
7.2 RECOMENDACIONES……………………………..….…………………... 103
GLOSARIO………………………………………..…………………………………….. 104
BIBLIOGRAFÍA…………………………………..……………………………………. 106
ANEXOS………………………………………………………………………………. 107
ANEXO 1 FUNCIONES DE ACTIVACIÓN MÁS COMUNES………………. 108
ANEXO 2 DETERMINACIÓN DE LA NEURONA GANADORA…………… 109
vii
ANEXO 3 HILOS EN EL MÉTODO DE ENTRENAMIENTO……………….. 112
ANEXO 4 CONSULTAS A LA BASE DE DATOS MEDIANTE SQL……….. 113
ANEXO 5 TABLA DE RESULTADOS DE LAS PRUEBAS………...……….. 116
ANEXO 6 PRUEBAS DE HIPÓTESIS ESTADÍSTICAS…………………...…. 117
ANEXO 7 SELECCIÓN DE UN ÁREA REDUCIDA DE ESTUDIO...……….. 122
ANEXO 8 CARNET DE REGISTRO DE UN CAN…………………...……….. 123
viii
ÍNDICE DE FIGURAS
Página
ix
Figura 5.5: Puntos característicos de una huella digital……………………………………65
Figura 5.6: Fotografía tomada originalmente y huella extraída……………………………66
Figura 5.7: Ventana principal de Photoshop 7.0…………………………………………67
Figura 5.8: Transformación libre de una imagen…………………………………………68
Figura 5.9: Foto ajustada el formato preestablecido………………………………………68
Figura 5.10: Aplicación del filtro de bordes añadidos……………………………………69
Figura 5.11: Bordes extraídos de la fotografía…………………………………………..…70
Figura 5.12: Selección del área de estudio…………………………………………………70
Figura 5.13: Huella de la nariz del can lista para ser procesada por el prototipo……….…71
Figura 5.14: Guardado de la imagen JPG……………………………………………….…71
Figura 5.15: Modelo de casos de uso del prototipo………………………………………72
Figura 5.16: Diagrama de clases del prototipo……………………………………………..73
Figura 5.17: La clase BinarizarImagen………………………………………………….…74
Figura 5.18: La clase FormCan……………………………………………………….……75
Figura 5.19: La clase ReconocerImagen…………………………………………………76
Figura 5.20: Las clases CanInfo y CanDAO…………………………………………….…77
Figura 5.21: Las clases Red, RedKohonen y SetEntrenamiento…………………………78
Figura 5.22: Diagrama de actividades…………………………………………………...…79
Figura 5.23: Diagrama de secuencia para el proceso de binarización……………………80
Figura 5.24: Diagrama de secuencia para el proceso de registro…………………………81
Figura 5.25: Diagrama Entidad-Relación de la base de datos……………………………82
Figura 5.26: Ventana principal del prototipo………………………………………………83
Figura 5.27: Muestra de la binarización un sector de una huella…………………………83
Figura 5.28: Ventana principal del módulo de binarización………………………….……84
Figura 5.29: Imagen de la huella mostrada en el primer panel……………………….……84
Figura 5.30: Huella binarizada mostrada en el segundo panel……………………………..85
Figura 5.31: Botones usados para especificar el destino y guardar el archivo TXT………86
Figura 5.32: Archivo TXT resultante de la binarización de una huella……………………86
Figura 5.33: Ventana principal del módulo de registro………………………………….…87
Figura 5.34: Opciones para elegir edad aproximada o fecha de nacimiento……………….87
Figura 5.35: Fotografía del can mostrada en el primer panel………………………………88
x
Figura 5.36: Nariz del can mostrada en el segundo panel……………………………….…88
Figura 5.37: Registro añadido en la base de datos…………………………………………89
Figura 5.38: Ventana principal del módulo de búsqueda…………………………………89
Figura 5.39: Campo de texto para escribir el nombre a buscar y botón de búsqueda……90
Figura 5.40: Despliegue del resultado de una búsqueda…………………………………90
Figura 5.41: Ventana principal del módulo de reconocimiento……………………………91
Figura 5.42: Huella previamente binarizada mostrada en el panel principal………………92
Figura 5.43: Botones para creación de la red, entrenamiento y reconocimiento…………92
Figura 5.44: Dimensiones de una huella previamente binarizada………………………….93
Figura 5.45: Mensaje que indica la creación de la red de Kohonen………………………..93
Figura 5.46: Mensaje que indica el fin del entrenamiento de la red de Kohonen…….……94
Figura 5.47: Despliegue del resultado del reconocimiento……………………………...…95
Figura 6.1: Región critica para la hipótesis……………………………………………...…98
Figura 6.2: Distribución de zc y z0 en el gráfico para la toma de decisión……..…………100
Figura A.1: Diagrama del ejemplo de red neuronal………………………………………109
Figura A.2: Cuadro de decisión……………………………………………...……………117
Figura A.3: Región critica y región de aceptación………………………………………118
Figura A.4: Tipos de gráfica según la hipótesis………………………………..…………118
Figura A.5: Región reducida de la huella para ahorrar recursos…………………………122
Figura A.6: Medidas geométricas de la huella………….……………………...…………122
Figura A.7: Vista frontal del carnet de registro del can……………….………………… 123
xi