Handwritten text recognition: A system to translate notes into digital text
Handwritten text recognition: A system to translate notes into digital text
Enllaç permanent
Descripció
Resum
We built a system capable to take images of human-like texts and process them to extract all the information that is written. When we have images of single words, we realize that the classification has to be at character level, so we will have a sequence of labels at the output, which we must decode to get the word. Hence, this classification problem needs a clever approach to label the training data according to the different encodings of a word. We present the building blocks for bringing the state of the art in the field, to an end to end system almost ready to deploy and use for daily tasks. We make use of state of the art architectures, mainly Convolutional and Recurrent neural networks (CNN and RNN), and a clever computation called Connectionist Temporal Classification (CTC), [3], which solves the of labeling, decoding and training. We made many experiments with different approaches, showing the best performance using a dictionary for predicting the final words, with the Word Beam Search algorithm. We perform an experiment to evaluate how important is to binarize the images before we enter them to the neural network, by using raw images as inputs. We get acceptable results, however the neural network gets confused at character level, so we must get rid of all noise possible for optimum extraction and classification.
Aquest projecte té l’objectiu de construir un sistema capaç d’agafar una fotografia d’un text escrit a mà, i convertir-lo en text digital. Té la motivació d’agrupar les millors arqui- tectures i algorismes existents en aquest camp, en un sistema complet, més proper a una solució real. El treball descriu en els primers dos capítols com es focalitza aquest problema dins el marc de la visió per computador i la intel·ligència artificial, així com l’estat de l’art i els tipus de xarxes neuronals que es fan servir. Es fa una descripció i anàlisi del dataset IAM, format per 115.000 imatges de paraules escrites a mà, i que serà utilitzat per a l’entrenament. També s’expliquen les eines utilitzades en el desenvolupament; llenguatges de programació i programes. En el tercer capítol s’explica tota la metodologia seguida, de forma seqüencial en cada pas del processament de la imatge i a la xarxa neuronal. Es descriuen en detall les diverses alternatives que hi ha a l’hora de realitzar algunes tasques, amb diferents algorismes i op- eracions. Aquesta part ve acompanyada d’imatges que mostren el resultat de cada pas sobre un text escrit per l’autor. La metodologia es basa en l’ús de xarxes neurals convolucionals, xarxes neurals recurrents LSTM i una capa anomenada Connectionist Temporal Classifica- tion [3], la qual permet codificar les imatges per a poder entrenar el sistema i descodificar les paraules a la sortida. Finalment, en el quart capítol es mostren els resultats obtinguts durant el desenvolupa- ment i alguns experiments enfocats a obtenir els millors paràmetres per al preprocessament i nous resultats. Es presenten taules amb optimitzacions d’aquests paràmetres per a la correcta binarització de la imatge i l’extracció de paraules. Es conclou que millor precisió, 85%, amb l’ús d’un diccionari de possibles paraules en el procés de descodificació, i es posa èmfasi en la importància d’un bon preprocessament.
Este proyecto tiene el objetivo de construir un sistema capaz de coger una fotografía de un texto escrito a mano, y convertirlo en texto digital. La motivación del proyecto es acercar los algoritmos y herramientas existentes a un sistema próximo a una solución real. El trabajo describe en los dos primeros capítulos cómo se enfoca este problema en el campo de la visión por computador y la inteligencia artificial, así como el estado del arte y los diferentes tipos de redes neuronales que se utilizan. Se realiza un análisis del dataset IAM, el cual contiene alrededor de 115.000 imágenes de palabras procedentes de diferentes au- tores, y se usa pera entrenar el sistema de reconocimiento. También se explican en este apartado las herramientas utilizadas para el desarrollo, es decir, el entorno de programación y los aplicativos necesarios. En el tercer capítulo se explica toda la metodología seguida, pasando de forma ordenada por todos las etapas de procesamiento y dentro de la red neuronal. También se da detalle de diferentes alternativas a la hora de desarrollar ciertas operaciones. Esta explicación se soporta con el uso de imágenes que muestran los resultados de cada operación, relativas a un texto escrito por el autor. La metodología escogida se basa en el uso de redes neuronales convolucionales, redes neuronales recurrentes LSTM y una capa llamada Connectionnist Tempora Classification, [3], la cual permite codificar las imágenes para poder entrenar el modelo y posteriormente decodificar las palabras. Finalmente, en el cuarto capítulo, se muestran los resultados obtenidos durante el desar- rollo y algunos experimentos enfocados a obtener los mejores parámetros de procesamiento y nuevos resultados. Se presentan tablas con optimización de parámetros para los procesos de finalización y extracción de palabras. Se concluye que la mejor precisión, 85%, se obtiene utilizando un diccionario de posibles palabras en el proceso de descodificación y se pone énfasis en la importancia de un buen preprocesamiento de las imágenes.Descripció
Treball de fi de grau en Telemàtica
Tutor: Xavier Binefa Valls