Reconocimiento de Caracteres Manuscritos Trabajo realizado por Alfonso Sendra Gamero y Rafael Sánchez Martínez UNIVERSIDAD DE CÁDIZ – RECONOCIMIENTO DE PATRONES 1 de mayo de 2010 Autor: Rafael Sánchez y Alfonso Sendra Gamero Reconocimiento de Caracteres Manuscritos Trabajo realizado por Alfonso Sendra Gamero y Rafael Sánchez Martínez 1. Breve descripción de la resolución del problema Hemos aplicado el algoritmo de clasificación de los k vecinos más cercanos para k=5 al conjunto de datos, una vez pre-procesado y extraídas las características. El procesamiento de los datos consiste en la binarización de la matriz, con un threshold de 70. La extracción de las características ha consistido en la implementación de un algoritmo de extracción de características direccionales llamado “contour chaincode descomposition”. Con este algoritmo obtenemos un vector de 64 elementos, que son las características extraídas. Más adelante, mostraremos más detalles sobre cómo funciona este algoritmo. 2. Resultados obtenidos Aplicando este algoritmo de clasificación a la base de datos del problema, utilizando el procedimiento de remuestreo k-fold cross validation para k=10, hemos obtenido un resultado final de 93.99% de acierto. %result(:,i) = directionFeatures(orientationPlanes(edge(reshape(x(:,i),28,28),'canny'))); 3. Preprocesamiento Reconocimiento de Caracteres Manuscritos | 01/05/2010 El conjunto de datos se binariza utilizando el siguiente procedimimento: function [ f ] = subirConstrasteAll( x, threshold ) f = (x>threshold); end El threshold utilizado es de 70, es decir, que con una intensidad por encima de 70, el pixel se considera como un 1, y si es igual o por debajo de 70, como un cero. Para mejorar la tasa de reconocimiento, hemos intentado usar procedimientos alternativos de procesamiento, pero pese a ello, no obtuvimos mejores tasas de reconocimiento. Las opciones descartadas fueron la esqueletización, suavización de contornos, obtención de contornos, y rotación de la imagen por el número de grados obtenido de la obrención de líneas de hough. 4. Extracción de características La extracción de características ha consistido en la implementación de un método de extracción de características direccionales llamado “contour chaincode decomposition”. En este método, tras binarizar la imagen, se calcula por cada pixel un vector de 8 direcciones. 1 Los pixeles con valor 0 (negro), tienen valores 0 para todas las posiciones de dicho vector. Para los pixeles de valor 1 que forman parte del contorno de la imagen, se calcula el vector. Dicho vector está formado por valores correspondientes a los píxeles que lo rodean según el algoritmo. D3 D2 D1 D4 C D0 D5 D6 D7 Reconocimiento de Caracteres Manuscritos | 01/05/2010 en qué dirección continúa la línea que define el número en ese pixel 2