Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica...
Transcript of Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica...
![Page 1: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/1.jpg)
Reconocimiento automático de palabras en documentos históricos usando redes
neuronales convolucionales
Dra. Ma. de Guadalupe García HernándezDepartamento de Ingeniería Electrónica
![Page 2: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/2.jpg)
Objetivo general
Aplicar redes neuronales convolucionales, modelosdel proceso de lectura humana y programacióndinámica en el reconocimiento de escritura impresacontenida en documentos históricos.
![Page 3: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/3.jpg)
Objetivos específicos
• Desarrollo de una interfaz gráfica de usuario en MatLab paraetiquetaje de palabras contenidas en un documento histórico.
• Desarrollo de una interfaz gráfica de usuario en MatLab parasegmentado de palabras etiquetadas, para obtener una base deimágenes de letras.
• Entrenamiento de una red neuronal convolucional para ladetección de letras contenidas en imágenes de palabras etiquetadas.
• Análisis de resultados del entrenamiento.
![Page 4: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/4.jpg)
Redes neuronales
• Redes neuronales biológicas.• Redes neuronales artificiales.
![Page 5: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/5.jpg)
Neurona biológica
Célula del sistemanervioso, descubierta porel Dr. Santiago Ramón yCajal en 1904 (España).
![Page 6: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/6.jpg)
Primera red neuronal artificial
Modelo de McCulloch y Pitts(1943), llamado Perceptron.La neurona es una unidad decálculo binaria con variasentradas.Calcula la suma ponderada desus entradas (pesos sinápticos)seguida de una operación nolineal.
![Page 7: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/7.jpg)
Otra red neuronal artificial
Red Adaline (ADAptive Linear Neuron Element), desarrollada por Widrow y Hoff en 1960.
Operación lineal, se adapta a la entrada, aprende en tiempo real.Aplicaciones:Cancelación de ruido, filtros adaptivos, cancelación de eco en telefonía.
![Page 8: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/8.jpg)
Estructura de una red neuronal multicapa
Neuronas o unidades (neurons, units)
Conexiones (links)
Capas (layers)
![Page 9: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/9.jpg)
Perceptron multicapa
Redes de propagación haciaadelante.En aprendizaje retropropagael error para disminuirloobteniendo los parámetrosde la red.Una red de cuatro capastiene dos capas ocultas.
Capa de entradaCapas ocultas Capa de salida
![Page 10: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/10.jpg)
Estructura de una red neuronal artificial
Neuronas o unidades (neurons, units)Conexiones de entrada.Función de activación o de transferencia.
Conexiones (links)Propagan activación de una neurona a otra.Tiene un valor llamado peso sináptico.
Capas (layers)de entrada (input): sólo nodos de entrada.oculta (hidden): salida no visible.de salida (output): salida visible.
![Page 11: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/11.jpg)
Arquitecturas de redes neuronales
Feed-forward (propagación hacia adelante o estática)La propagación de la información (activación) siempre es desde la entrada hacia la salida.
RecurrenteParte de la salida se retroalimenta a la entrada.Es una red neuronal dinámica.
![Page 12: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/12.jpg)
Algunas aplicaciones
Reconocimiento de patrones (voz, imágenes, texto). Procesamiento de señales. Predicción de estado atmosférico. Predicción de mercado financiero. Clasificación de proteínas. Control de robots. Identificación de bancos de radares. Detección de explosivos.
![Page 13: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/13.jpg)
Problemas de las redes neuronales artificiales
1. La dimensión del espacio de entrada no debeser grande, pues no habría suficientes datos paraestimar sus parámetros.
2. Requieren de una considerable cantidad deejemplos para aprender a generalizar, pues la reddebe ser capaz de reconocer bien ejemplos quenunca ha visto.
![Page 14: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/14.jpg)
Redes neuronales convolucionales
• Tratan de imitar al sistema visual humano(dinámico).
• Usan campos receptivos (región de la imagen de laque recibe información cada neurona).
• No requieren extracción de características (comoson bidimensionales entonces pueden recibirdirectamente la imagen como entrada).
![Page 15: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/15.jpg)
Redes neuronales convolucionales
• Toleran traslaciones moderadas (que puedenreconocer el contenido de la imagen aunque ésta semueva un poco o cambie de tamaño).
• Necesitan menos parámetros que otras redesneuronales, porque las neuronas comparten pesos oparámetros, por lo que requieren de menosejemplos para aprender.
• Funcionan bien para el reconocimiento deimágenes.
![Page 16: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/16.jpg)
Redes neuronales convolucionales
![Page 17: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/17.jpg)
Etapas del reconocimiento de palabras
Imagen de
entrada
Preprocesado Segmentado Reconocimiento
Algoritmobasado en unared neuronal convolucional
Segmentación de lineas de palabras y de palabras en letras
Detección de regiones de texto y su orientación,eliminación de ruido, detección de bordes y mejora de contraste
Clasede
palabra
![Page 18: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/18.jpg)
Documento histórico
Índice General de la Recopilación de Leyes de las Indias, año 1681.
![Page 19: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/19.jpg)
Retos de los documentos históricos
• Si el texto se encuentra impreso en pergamino, la textura ymanchas de éste puede originar confusión durante elreconocimiento (fondo degradado).
• Si el texto se encuentra impreso en papel, éste puede haberacumulado manchas de grasa, tinta, humedad y hongos a lolargo del tiempo.
• La tinta de algunas letras se ha desgastado por el uso normaldel documento.
![Page 20: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/20.jpg)
Mediante Matlab se implementó la interfaz gráfica de usuario para el etiquetaje de palabras
![Page 21: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/21.jpg)
Base de datos de imágenes de palabras etiquetadas
![Page 22: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/22.jpg)
Mediante Matlab se implementó la interfaz gráfica de usuario para la segmentación de palabras en letras
![Page 23: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/23.jpg)
Se usaron algoritmos para incrementar la resolución de las imágenes de palabras
![Page 24: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/24.jpg)
Base de datos de letras etiquetadas generada
![Page 25: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/25.jpg)
Reconocimiento de letras
![Page 26: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/26.jpg)
Ejemplo de letras reconocidas y no reconocidas
![Page 27: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/27.jpg)
Resultados
• Se conformó una base de datos de imágenes de palabrasetiquetadas, provenientes del documento histórico citado.
• Se conformó una base de datos de imágenes de letras etiquetadas.• Se entrenó a la red neuronal convolucional con la base de imágenes
de letras.• Se analizó el desempeño de varias redes neuronales convolucionales
y se seleccionó a la que tuvo mejor desempeño.• Se analizaron los resultados del reconocimiento de letras para
posteriormente optimizar el proceso.
![Page 28: Reconocimiento automático de palabras en documentos ... · • Desarrollo de una interfaz gráfica de usuario en MatLab para segmentado de palabras etiquetadas, para obtener una](https://reader034.fdocuments.es/reader034/viewer/2022042111/5e8babcfab949369232a5dcd/html5/thumbnails/28.jpg)
Estado actual del proyecto
• Se están analizando los resultados que va arrojando elentrenamiento de la red neuronal convolucional para elaprendizaje de letras.
• Se está implementando un algoritmo de programacióndinámica que encuentre la ruta más corta entre dos puntos,para encadenar letras y formar palabras de forma automática.