Diseño e implementación de un módulo de reconocimiento de números manuscritos
Acceso a Texto completo
Abstract
Los sistemas de reconocimiento óptico de caracteres (OCR) constituyen un
tema activo de investigación. El principal problema es el porcentaje de
efectividad que se obtiene en el reconocimiento de caracteres manuscritos,
esto es debido a la naturaleza de estos caracteres, la tipografía, la resolución
de la imagen, iluminación y otros factores.
Los sistemas que reconocen números manuscritos tienen diversas aplicaciones
(reconocimiento de cantidades numéricas sobre cheques bancarios, facturas,
planillas de conteo de votos electorales, encuestas, etc.), para los cuales se
necesita que la tasa de acierto al reconocer los números sea muy elevada
(reconocimiento mayor 90% y error cercano 0%). Para lograr esto se
implementó un módulo de reconocimiento basado en redes neuronales
haciendo uso del toolbox de MATLAB.
El módulo de reconocimiento tiene las siguientes etapas: una primera etapa es
la segmentación que se encarga de separar la imagen de valor numérico en
dígitos individuales, la segunda etapa se encarga de la normalización para
obtener muestras parecidas paro lo cual se realiza corrección de la inclinación,
espesor del trazo y tamaño, y una última etapa es la clasificación para lo cual
se usó la red neuronal de topología “backpropagation”.
Luego de las pruebas respectivas se obtuvo un reconocimiento de 95.9% con
un porcentaje de error 0.8%, estas pruebas se realizaron con números de
buena escritura. Se realizó otras pruebas con una base de datos de números
manuscritos (MNIST, base de datos del National Institute of Standards and
Technology) con la cual se obtuvo un reconocimiento del 90.11% y error
3.67%.
Con esto se puede concluir que la metodología desarrollada es buena cuyas
etapas se pueden optimizar para obtener mejores resultados.