Vous êtes sur la page 1sur 0

1

LABORATORIO DE INTELIGENCIA ARTIFICIAL











CONVERSIN DE TEXTO MANUSCRITO A
FORMATO DIGITAL UTILIZANDO MQUINAS DE
SOPORTE VECTORIAL



T E S I S

QUE PARA OBTENER EL GRADO DE
MAESTRO EN CIENCIAS EN INGENIERA DE
CMPUTO



PRESENTA
HERMENEGILDO CISNEROS CARRILLO



DIRECTOR DE TESIS
Dr. RICARDO BARRN FERNNDEZ





Mxico D.F. Junio del 2007








2



3



3






4



Dedicatoria


Este trabajo de tesis est enteramente
dedicada a mi madre y a mis hermanos.

A mi madre, por ser la persona que me
ha llenado de vida y quien ha sabido
guiarme con buenos sentimientos, hbitos
y valores.

A mis hermanos, pues sin ustedes
es claro que no hubiera podido
llegar a estas alturas.

Sencillamente son la base de mi andar
profesional y toda mi vida les estar
agradecido.

























5


Agradecimientos


A mi mam REYNA CARRILLO RENDON:

Gracias por darme la vida y ofrecerme ese gran cario que llevo en mi corazn, por haberme
dado una educacin plena y sana, por tus grandes consejos que me han servido para ser un
hombre de bien, por el apoyo incondicional que siempre me has dado y por ser la principal
inspiracin que tengo para seguir adelante.

A mis hermanos Romn, Cira, Adelina, Juventina, Noelia, Petra, Emicenia,
Delia, Solfina:

Gracias por el valioso apoyo que siempre me han brindado, por ser un ejemplo a seguir y por
permitirme llegar al lugar en donde estoy, sin ustedes no lo hubiera podido lograr.

A mis familiares:

Por brindarme su apoyo en todo este periodo de estudios y por permitirme ser parte de su
familia.

A mis compaeros, amigos y seres queridos:

Por darme nimos para seguir adelante en momentos difciles, por su gran apoyo y por
compartir conmigo tiempo y espacio.

Al IPN y al CIC:

Por ser instituciones que me dieron la oportunidad de superarme acadmica y profesionalmente.

Al laboratorio de Inteligencia Artificial, mis profesores, en especial al Dr. Ricardo Barrn
Fernndez y al M. C. Benjamn Cruz Torres, por darme las bases necesarias para tener esta
formacin profesional y por sus consejos para enfrentar los retos que hay en la vida.

A CONACYT, por haberme dado el apoyo econmico para solventar mis gastos en este periodo
de estudios.

A todas aquellas personas que han formado parte en este trayecto de vida y que han permitido
mi superacin.

Muchas Gracias.







6

RECONOCIMIENTO FUERA DE LINEA DE CARACTERES
MANUSCRITOS AISLADOS CON MQUINAS DE SOPORTE
VECTORIAL

Resumen


En este trabajo de tesis se aborda el reconocimiento y clasificacin de caracteres manuscritos
aislados. La metodologa propuesta se divide en tres etapas principales que son: etapa de
preprocesamiento, etapa de extraccin de caractersticas y finalmente la etapa de clasificacin.

La etapa de preprocesamiento utiliza tcnicas de procesamiento de imgenes, y est formada de
la siguiente manera: conversin a niveles de gris, umbralado, deteccin de bordes, dilatacin,
relleno y etiquetado.

Para eliminar el ruido de la imagen, se propone determinar el rea de cada objeto, si el rea es
menor a cierto umbral se concluye que es ruido y se elimina estableciendo su valor al color del
fondo.

Posteriormente contina la etapa de extraccin de caractersticas, en donde se propone utilizar
una combinacin de tcnicas de extraccin de rasgos compuesta por los tres primeros
invariantes de flusser, excentricidad, elongacin, factor de compacidad y tamao.

Una vez que se obtiene el vector de rasgos de cada objeto viene la etapa de clasificacin. En
este trabajo se propone utilizar a las mquinas de soporte vectorial multiclase para determinar la
clase a la que pertenece el objeto o carcter que se est procesando.

Al final, se muestran los experimentos y resultados obtenidos con esta metodologa, los cuales
consideramos fueron satisfactorios. Adems de las mquinas de soporte vectorial, se presentan
resultados utilizando una red neuronal multicapa y utilizando el clasificador de distancia mnima
(euclidiano).

Finalmente se mencionan las conclusiones, aportaciones y trabajos futuros.



















7

OFF LINE ISOLATED HANDWRITTEN CHARACTER RECOGNITION
WITH SUPPORT VECTOR MACHINES

Abstract


In this work, we present an isolated handwritten characters recognition system. The proposed
methodology is divided in three main stages: pre-processing, feature extraction and
classification.

The pre-processing stage uses techniques of image processing, and it is composed of the
following: grey level conversion, threshold, edges detection, dilatation, filling and segmentation
or labelling.

To delete the noise of the image, we propose to determine the area of each object, if the area is
smaller of certain threshold, we conclude that it is noise and the system establishes it as
background of the image.

Then, follow the stage of feature extraction, in which, once the objects were segmented are
recognized them in the order in which they were labelled. We propose to use a combination of
techniques of features extraction composed by the three first Flusser invariants, eccentricity,
elongation, compactness factor and size.

For the stage of classification, we propose to use the multi-class support vector machines to
determine the class that corresponds to the character that is being processed.

In the end, the experiments and results obtained with this methodology appear. Also, the results
appear using a neuronal network and the classifier of minimum ranges (Euclidian).

Finally, the future works, conclusions and contributions are mentioned.





















8

NDICE


NDICE DE FIGURAS IV
NDICE DE TABLAS VI
NDICE DE GRAFICAS VI
GLOSARIO DE TRMINOS VII


CAPTULO 1. INTRODUCCIN 1

1.1 EL PROBLEMA A RESOLVER 2
1.2 OBJETIVOS 2
1.2.1 GENERALES 2
1.2.2 ESPECFICOS 2
1.3 RESTRICCIONES 2
1.4 .JUSTIFICACIN 3
1.5 VISIN GLOBAL DEL SISTEMA 3
1.6 PRELIMINARES 3
1.6.1 RECONOCIMIENTO PTICO DE CARACTERES 3
1.6.2 RECONOCIMIENTO DE TEXTO MANUSCRITO 3
1.6.3 DEFINICIONES 4
1.6.4 DEPENDENCIA E INDEPENDENCIA DEL ESCRITOR 4
1.6.5 APLICACIONES AL RECONOCIMIENTO DE CARACTERES 4
1.7 FORMAS DE ADQUISICIN DE DATOS 5
1.8 ORGANIZACIN DE LA TESIS 6
1.9 RESUMEN DEL CAPTULO 6

CAPTULO 2. ESTADO DEL ARTE 7

2.1 INTRODUCCIN 7
2.2 SEGMENTACIN EN RECONOCIMIENTO DE CARACTERES 7
2.3 EXTRACCIN DE CARACTERSTICAS EN RECONOCIMIENTO DE CARACTERES 8
2.4 TRABAJOS CON MQUINAS DE SOPORTE VECTORIAL 8
2.5 RESUMEN DEL CAPTULO 9

CAPTULO 3. FUNDAMENTOS DE BASE 10

3.1 RECONOCIMIENTO DE FORMAS 10
3.2 RECONOCIMIENTO DE PATRONES 11
3.3 DEFINICIN Y CONCEPTOS BSICOS 12
3.3.1 IMAGEN DIGITAL 12
3.3.2 IMAGEN EN NIVELES DE GRIS 13
3.3.3 IMGENES BINARIAS 14
3.4 TCNICAS DE PREPROCESADO DE IMGENES 14
3.4.1 UMBRALADO 14
3.4.2 SEGMENTACIN 15
3.4.3 DETECCIN DE BORDES 17
3.4.4 OPERADORES MORFOLGICOS 18
3.4.4.1 DILATACIN 18
3.4.4.2 RELLENO 19







9


3.5 EXTRACCIN DE CARACTERSTICAS 20
3.5.1 INVARIANTES DE FLUSSER 20
3.5.2 COMPACIDAD 22
3.5.3 EXCENTRICIDAD 22
3.5.4 ELONGACIN 23
3.6 MQUINAS DE SOPORTE VECTORIAL 23
3.6.1 INTRODUCCIN 23
3.6.2 PRINCIPIO GENERAL 24
3.6.3 CLASIFICADOR DE MARGEN MXIMO 24
3.6.4 CASO LINEALMENTE SEPARABLE 25
3.6.5 CASO NO LINEALMENTE SEPARABLE 28
3.6.6 TRUCO DEL KERNEL 30
3.6.7 FUNCIONES KERNEL 31
3.7 MQUINAS DE SOPORTE VECTORIAL MULTICLASE 32
3.7.1 MSV UNO-CONTRA-TODOS 32
3.8 RESUMEN DEL CAPTULO 33

CAPTULO 4. METODOLOGA DE SOLUCIN 34

4.1 INTRODUCCIN 34
4.1.1 VARIACIONES DE ESTILO 36
4.2 OBTENCIN DE LA IMAGEN 36
4.3 PREPROCESAMIENTO 37
4.3.1 NIVELES DE GRIS 38
4.3.2 UMBRALADO 38
4.3.3 DETECCIN DE BORDES 39
4.3.4 DILATACIN 39
4.3.5 RELLENO 40
4.3.6 SEGMENTACIN Y ETIQUETADO 40
4.3.7 CONSIDERACIONES PARA LA CLASIFICACIN 42
4.4 EXTRACCIN DE CARACTERSTICAS 43
4.4.1 EXTRACCIN 1 43
4.4.2 EXTRACCIN 2 44
4.5 ENTRENAMIENTO Y CLASIFICACIN 48
4.5.1 ENTRENAMIENTO 48
4.5.2 CLASIFICACIN 51
4.5.3 EJEMPLO PRCTICO 51
4.6 RESUMEN DEL CAPTULO 53

CAPTULO 5. RESULTADOS EXPERIMENTALES 54

5.1 RESULTADOS UTILIZANDO INVARIANTES DE HU 54
5.2 RESULTADOS UTILIZANDO MOMENTOS CENTRALES 58
5.3 RESULTADOS CON INVARIANTES DE FLUSSER 60
5.4 RESULTADOS CON VECTOR DE RASGOS PROPUESTO 64
5.5 EVALUACIN DE RESULTADOS 71
5.5.1 EVALUACION DE LETRAS MINSCULAS 71
5.5.2 EVALUACION DE LETRAS MAYSCULAS 75
5.5.3 EVALUACION DE NMEROS 77
5.5.4 EVALUACION DE CLASIFICADORES 80
5.6 RESUMEN DEL CAPTULO 84









10


CAPTULO 6. CONCLUSIONES Y TRABAJO FUTURO 86

6.1 CONCLUSIONES 86
6.2 VENTAJAS 86
6.3 DESVENTAJAS 87
6.4 APORTACIONES 87
6.5 TRABAJO FUTURO 87

APNDICE A-1 88

OPERADORES DE GRADIENTE 88
MTODO DE CANNY 89

APNDICE A-2 91

OPERADORES MORFOLGICOS 91

REFERENCIAS 92

































11

NDICE DE FIGURAS

1. INTRODUCCIN


FIGURA 1.1. VISIN GLOBAL DEL SISTEMA 3
FIGURA 1.2. DISPOSITIVOS DE ADQUISICIN ON-LINE Y OFF-LINE 5


3. FUNDAMENTOS DE BASE


FIGURA 3.1 DIAGRAMA A BLOQUES DE UN SISTEMA
DE RECONOCIMIENTO DE FORMAS. 10
FIGURA 3.2 ETAPAS DE UN SISTEMA DE RECONOCIMIENTO DE PATRONES. 11
FIGURA 3.3 IMAGEN EN NIVELES DE GRIS. 13
FIGURA 3.4 IMAGEN BINARIA. 14
FIGURA 3.5 IMAGEN CON DIFERENTES VALORES DE UMBRAL. 15
FIGURA 3.6 SEGMENTACIN DE OBJETOS EN UNA IMAGEN. 16
FIGURA 3.7 BORDES DE UNA IMAGEN 17
FIGURA 3.8 DILATACIN DE LA IMAGEN 19
FIGURA 3.9 RELLENO DE LA IMAGEN 19
FIGURA 3.10 LA FRONTERA DE DECISIN DE LAS CLASES. 24
FIGURA 3.11 UN HYPERPLANO DE MARGEN MXIMO 26
FIGURA 3.12 CASO LINEALMENTE SEPARABLE. 27
FIGURA 3.13 PROYECCIN DE UN ESPACIO DE ENTRADA A UN ESPACIO MAYOR. 28
FIGURA 3.14 CASO NO LINEALMENTE SEPARABLE. 28
FIGURA 3.15 APARICIN DEL PARMETRO DE ERROR 30
FIGURA 3.16 TRANSFORMACIN DEL ESPACIO DE LOS DATOS. 31


4. METODOLOGA DE SOLUCIN


FIGURA 4.1 METODOLOGA PROPUESTA PARA LA SOLUCIN DEL PROBLEMA. 35
FIGURA 4.2 ADQUISICIN DE LOS DATOS A TRAVS DEL ESCANER. 37
FIGURA 4.3 CONVERSIN A NIVELES DE GRIS. 38
FIGURA 4.4 UMBRALADO DE LOS OBJETOS 38
FIGURA 4.5 BORDES DE LETRAS VOCALES. 39
FIGURA 4.6 DILATACIN DE CARACTERES 40
FIGURA 4.7 RELLENO DE CARACTERES 40
FIGURA 4.8 ETIQUETADO DE CARACTERES. 41
FIGURA 4.9 PROCESO DE RECONOCIMIENTO 41
FIGURA 4.10 CONSIDERACIONES PARA LA CLASIFICACIN 43
FIGURA 4.11 EXTRACCIN DE RASGOS PARA LA LETRA I. 44
FIGURA 4.12 DIVISIN DEL CARCTER EN CUATRO PARTES. 45
FIGURA 4.13 EXTRACCIN DE RASGOS PARA LA LETRA B. 47
FIGURA 4.14 ENTRENAMIENTO CON MQUINAS DE SOPORTE OAA 50
FIGURA 4.15 ENTRENAMIENTO DE VOCALES. 52













12

5. RESULTADOS EXPERIMENTALES


FIGURA 5.1 ENTRENAMIENTO DE NMEROS CON INVARIANTES DE HU 55
FIGURA 5.2 ENTRENAMIENTO DE MINSCULAS CON INVARIANTES DE HU 57
FIGURA 5.3 ENTRENAMIENTO DE MINSCULAS CON MOMENTOS CENTRALES 58
FIGURA 5.4 ENTRENAMIENTO DE MINSCULAS CON INVARIANTES DE FLUSSER 61
FIGURA 5.5 ENTRENAMIENTO DE NMEROS CON INVARIANTES DE FLUSSER 63
FIGURA 5.6 ENTRENAMIENTO DE MINSCULAS BAJAS
CON RASGOS PROPUESTOS 65
FIGURA 5.7 ENTRENAMIENTO DE MINSCULAS ALTAS
CON RASGOS PROPUESTOS 66
FIGURA 5.8 ENTRENAMIENTO DE MAYSCULAS CON RASGOS PROPUESTOS 68
FIGURA 5.9 ENTRENAMIENTO DE NMEROS CON RASGOS PROPUESTOS 70
FIGURA 5.10 RESULTADO DE PRIMERA EVALUACIN MINSCULAS 73
FIGURA 5.11 RESULTADO DE SEGUNDAVALUACIN MINSCULAS 74
FIGURA 5.12 RESULTADO DE PRIMERA EVALUACIN MAYSCULAS 75
FIGURA 5.13 RESULTADO DE SEGUNDA EVALUACIN MAYSCULAS 76
FIGURA 5.14 RESULTADO DE PRIMERA EVALUACION NMEROS 77
FIGURA 5.15 RESULTADO DE SEGUNDA EVALUACIN NMEROS 78
FIGURA 5.16 RESULTADO DE TERCERA EVALUACIN NMEROS 79




































13

NDICE DE TABLAS

TABLA 3.1 FUNCIONES KERNEL MS UTILIZADOS. 31
TABLA 4.1 DATOS DE ENTRADA PARA LETRAS A Y C. 49
TABLA 4.2 SALIDA Y CORRESPONDIENTE A LA ENTRADA X 49
TABLA 4.3 ENTRADA X Y SU CORRESPONDIENTE SALIDA Y 49
TABLA 5.1 RECONOCIMIENTO DE NMEROS UTILIZANDO MOMENTOS DE HU. 55
TABLA 5.2 RECONOCIMIENTO DE MINSCULAS UTILIZANDO MOMENTOS DE HU. 57
TABLA 5.3 RECONOCIMIENTO DE MINSCULAS CON MOMENTOS CENTRALES. 59
TABLA 5.4 RECONOCIMIENTO MINSCULAS CON INVARIANTES DE FLUSSER. 61
TABLA 5.5 RECONOCIMIENTO DE NMEROS CON INVARIANTES DE FLUSSER. 63
TABLA 5.6 RESULTADOS DE MINSCULAS BAJAS CON RASGOS PROPUESTOS. 65
TABLA 5.7 RESULTADOS DE MINSCULAS ALTAS CON RASGOS PROPUESTOS. 67
TABLA 5.8 RESULTADOS DE MAYSCULAS CON RASGOS PROPUESTOS. 68
TABLA 5.9 RESULTADOS DE NMEROS CON RASGOS PROPUESTOS. 70
TABLA 5.10 COMPARACIN ENTRE CLASIFICADORES CON MINSCULAS 81
TABLA 5.11 COMPARACIN ENTRE CLASIFICADORES CON MAYSCULAS 82
TABLA 5.12 COMPARACIN ENTRE CLASIFICADORES CON NMEROS 84


NDICE DE GRFICAS

GRAFICA 5.1 RECONOCIMIENTO DE NMEROS CON INVARIANTES DE HU 56
GRAFICA 5.2 RECONOCIMIENTO DE MINSCULAS CON INVARIANTES DE HU 58
GRAFICA 5.3 RECONOCIMIENTO DE LETRAS CON MOMENTOS CENTRALES 60
GRAFICA 5.4 RECONOCIMIENTO DE LETRAS CON INVARIANTES DE FLUSSER 62
GRAFICA 5.5 RECONOCIMIENTO DE NMEROS CON INVARIANTES DE FLUSSER 63
GRAFICA 5.6 RECONOCIMIENTO DE LETRAS MINSCULAS BAJAS
CON RASGOS PROPUESTOS 66
GRAFICA 5.7 RECONOCIMIENTO DE LETRAS MINSCULAS ALTAS
CON RASGOS PROPUESTOS 67
GRAFICA 5.8 RECONOCIMIENTO DE LETRAS MAYSCULAS
CON RASGOS PROPUESTOS 69
GRAFICA 5.9 RECONOCIMIENTO DE NMEROS CON RASGOS PROPUESTOS 70
GRAFICA 5.10 COMPARACIN ENTRE CLASIFICADORES CON MINSCULAS 81
GRAFICA 5.11 COMPARACIN ENTRE CLASIFICADORES CON MAYSCULAS 83
GRAFICA 5.12 COMPARACIN ENTRE CLASIFICADORES NMEROS 84






















14

GLOSARIO DE TRMINOS



Binarizacin: Proceso en el que dada una imagen en escala de grises, se genera una nueva
imagen digital en la cual solamente existen dos intensidades.

Segmentacin: Consiste en subdividir una imagen en sus respectivas regiones u objetos, sin que
ningn pxel pertenezca a ms de una regin u objeto.

Escala de grises: Conjunto de todos los posibles niveles de gris en una imagen digital.

Imagen Binaria: Imagen digital cuyas variaciones de brillo son nicamente de dos valores.

Dilatacin: Es la transformacin morfolgica que combina dos vectores utilizando la suma.

Factor de compacidad: Descriptor de regiones que es invariante a cambios de escala,
rotaciones y traslaciones. Describe lo circular o estrellado que es un objeto.

Excentricidad: Es un parmetro que determina el grado de desviacin de una seccin cnica
con respecto a una circunferencia.

Elongacin: Es un parmetro o descriptor que no depende del tamao de la regin

Pxel: Elemento discreto de una imagen digital, cuyo valor indica la intensidad del color o del
nivel de gris de la imagen en ese punto.

Umbral: Valor usado para segmentar los valores de nivel de gris de una imagen en dos o ms
regiones diferentes.

Umbralado:: Mtodo para convertir una imagen de varios niveles de gris en una imagen en dos
niveles.

BMP: Microsoft Windows BitMaP.

JPEG: Joint Photographic Experts Group.

OCR: Reconocimiento ptico de Caracteres.

MSV: Mquinas de Soporte Vectorial.













15

CAPITULO 1

INTRODUCCIN







El reconocimiento de texto manuscrito es un tema importante en varias aplicaciones, como el
reconocimiento de cantidades numricas en cheques bancarios, la verificacin de firmas, la
lectura y reconocimiento de cdigos y direcciones postales, etc.

Dentro del reconocimiento de formas, el reconocimiento de texto manuscrito es una de las
tareas ms difciles de abordar, pues se tiene que tomar en cuenta la variabilidad en el estilo de
la escritura manuscrita, el solapamiento y la interconexin que pueden llegar a tener los
caracteres que forman las palabras, caractersticas del bolgrafo para realizar la escritura, etc.

Cuando se tiene informacin de texto manuscrito y se desea procesarla mediante un
computador, hay dos maneras: una es introducirla a travs del teclado, la cual es una labor larga
y tediosa, la otra posibilidad es automatizar esta operacin por un sistema compuesto de un
software y hardware adecuado que reducira considerablemente el tiempo de entrada de datos.

El objetivo es el de implementar y evaluar un sistema de reconocimiento para escritura
manuscrita aislada, correspondiente a los caracteres de un texto en papel cuya imagen ha sido
previamente capturada por un escner. Se trata, en definitiva, de un caso particular de Sistema
de Reconocimiento Automtico de Formas que, por tanto, consta de una etapa de aislamiento de
los objetos a reconocer (caracteres manuscritos), otra de extraccin de sus caractersticas
individuales y finalmente la aplicacin de una funcin discriminante que permita establecer la
clase a la que pertenece cada objeto.




















16


1.1 EL PROBLEMA A RESOLVER

El problema consiste en reconocer de forma automtica caracteres manuscritos aislados a partir
de un documento previamente digitalizado. Se trata de un reconocimiento de escritura con un
mayor grado de dificultad que el de la escritura impresa, pues los resultados obtenidos hasta
ahora distan mucho de ser los esperados.

Por otro lado, los estilos de escritura manuscrita son extremadamente diversos, as, el sistema
que se desarrolle debe involucrar uno o varios escritores. De este modo, se habla de reconocer
caracteres dependientes del escritor e independientes del escritor.

En este sentido, el enfoque que lleva este trabajo es el de reconocer caracteres dependientes del
escritor.

1.2 OBJETIVOS

Con este trabajo se pretende alcanzar los siguientes objetivos:

1.2.1 GENERALES

Implementar y evaluar un sistema de reconocimiento automtico para escritura
manuscrita.
Lograr identificar y reconocer nmeros, letras minsculas y letras maysculas.

1.2.2 ESPECFICOS

Implementar filtros morfolgicos en la etapa de preprocesado.
Evaluar una combinacin de tcnicas para encontrar un vector de rasgos suficiente para
resolver el problema.
Analizar a las Mquinas de Soporte Vectorial como clasificador de caracteres
manuscritos aislados.
Analizar la altura de cada carcter para definir la clasificacin de minsculas de menor
tamao y las de mayor tamao, as como tambin de maysculas y nmeros.

1.3. RESTRICCIONES
Se reconocern letras del alfabeto de la a z tanto en maysculas
como en minsculas.
Se reconocern dgitos numricos del 0 9.
Los caracteres no pueden estar solapados o unidos.
Los caracteres pueden ser de cualquier tamao.
El fondo debe ser contrastante con respecto a los caracteres.











17

1.4 JUSTIFICACIN

Hoy en da, el reconocimiento de caracteres manuscritos aislados sigue siendo un
problema abierto, debido a que los logros alcanzados hasta el momento no satisfacen los
resultados esperados.

1.5 VISIN GLOBAL DEL SISTEMA

El sistema descrito incluye parte de la arquitectura de un ROC (Reconocimiento ptico de
Caracteres), en donde en la etapa de preprocesamiento se utiliza principalmente operadores
morfolgicos [1].

Como se muestra en la figura 1.1, el reconocimiento de caracteres se har de manera fuera de
lnea (Off-line), es decir, se comienza con una imagen previamente escaneada, se guarda como
un archivo en formato BMP o JPG en una carpeta; posteriormente el sistema toma ese archivo,
comienza a procesarlo para el reconocimiento de caracteres y finalmente se obtiene un archivo
que puede ser procesado por el computador. Ms adelante se darn los detalles de cada una las
etapas que componen el sistema.



Figura 1.1 Visin global del sistema


1.6 PRELIMINARES

1.6.1 RECONOCIMIENTO PTICO DE CARACTERES

Es el proceso que convierte imgenes escaneadas de texto manuscrito o impreso (nmeros,
letras o smbolos), en un formato procesable por la computadora. OCR [2] se divide en dos
reas principales: reconocimiento de palabras o caracteres impresos (por mquinas) y
reconocimiento de caracteres o palabras manuscritas. La mayor parte de los xitos alcanzados
hasta el momento recae dentro de la escritura impresa ya que la segmentacin es ms fcil en
sus caracteres componentes. Esto ha posibilitado la aparicin de diversos sistemas OCR
comerciales con tasas de reconocimiento alrededor de 99%. Sin embargo, el reconocimiento de
escritura con un mayor grado de dificultad de segmentacin de sus componentes, como el de la
escritura manuscrita, prevalece todava como un problema abierto.

1.6.2 RECONOCIMIENTO DE TEXTO MANUSCRITO

El Reconocimiento de Texto Manuscrito fuera de lnea es una tarea de gran dificultad.

A continuacin se dan a conocer algunas de las definiciones relacionadas con la escritura
manuscrita.




18

1.6.3 DEFINICIONES

Reconocimiento de texto manuscrito: Entendemos la tarea que transforma un leguaje
representado por su forma espacial de marcas grficas a una representacin simblica.

Interpretacin del texto manuscrito: Entendemos la tarea que determina el significado de un
texto manuscrito dado.

Identificacin de caligrafa: Entendemos la tarea que determina el autor de una muestra dada
de texto manuscrito, asumiendo que cada autor tiene un estilo personal de escritura diferente.

Verificacin de firma: Entendemos la tarea que determina si la firma que se asume
perteneciente a una persona, efectivamente pertenece o no a sta.


1.6.4 DEPENDENCIA E INDEPENDENCIA DEL ESCRITOR

Los estilos de escritura manuscrita son extremadamente diversos, dependiendo principalmente
de los patrones de trazos empleados por cada regin geogrfica en la enseanza de la escritura
manuscrita y de la propia idiosincrasia del escritor (carcter personal, cultura, modismos,
entorno donde vive, etc.). As, si el diseo del sistema involucra uno o varios escritores, el
mismo puede ser clasificado como:

Dependiente del Escritor: el sistema se destina solamente al reconocimiento, identificacin o
verificacin de la escritura de un autor especfico. Con suficientes muestras de aprendizaje es
posible lograr que el sistema capture con precisin el estilo manuscrito personal, y conseguir
unas buenas prestaciones en el reconocimiento y/o verificacin del mismo.

Independiente del Escritor: el sistema hace frente al reconocimiento de escritura con una
amplia variedad de estilos provenientes de varios autores. En estos sistemas la utilizacin de
tcnicas de filtrado de estilos y normalizacin de escritura adquieren una importancia
preponderante.


1.6.5 APLICACIONES AL RECONOCIMIENTO DE CARACTERES

Procesamiento automtico de correo.
Identificacin de placas en matrculas.
Reconocimiento de caracteres en planos.
Reconocimiento de firmas.
Procesamiento de cheques bancarios
Creacin de propias bases de datos textuales
Reconocimiento de textos antiguos.
Lectura y reconocimiento de cdigos y direcciones postales
Etctera.









19

1.7 FORMAS DE ADQUISICIN DE DATOS

Podemos distinguir en general dos tipos de adquisiciones de datos:

On-Line: los datos se obtienen en tiempo real mientras se escribe. El sistema trata con una
representacin espacio-temporal de los datos de entrada.

Off-Line: los datos son registrados por medio de escneres o cmaras en forma de imgenes.
El sistema trata con representaciones en un espacio de luminancia.

La figura 1.2 ilustra algunos dispositivos empleados para cada tipo de adquisicin.

En reconocimiento on-line, el escritor est conectado directamente por medio de un bolgrafo
electrnico, lpiz ptico o dispositivo similar a un computador, y el trazo de la escritura es
registrada como una funcin del tiempo. Es decir que, mientras se escribe una palabra o frase, se
muestrea a intervalos de tiempo uniformes la posicin (coordenadas x, y) del trazador y la
presin del mismo (a menudo simplemente valores 0-1). De esta manera se tiene una
informacin completa del proceso dinmico de escritura, incluyendo la velocidad de trazado,
etc. Gracias a la disponibilidad de esta informacin temporal, el reconocimiento on-line es
frecuentemente considerado un problema de resolucin ms fcil que el off-line. Por otra
parte, si la informacin constituye imgenes (binarias) de escritura adquiridas por medio de una
cmara fotogrfica, vdeo, escner, etc., el sistema es llamado off-line y una de las primeras
dificultades en este caso radica precisamente en encontrar el rea de escritura en la imagen.

Figura 1.2. Algunos dispositivos de adquisicin on-line y off-line.


















20

1.8 ORGANIZACIN DE LA TESIS

El resto de la tesis est organizada como sigue:

En el captulo dos estado del arte, se da una breve descripcin sobre la evolucin de los
sistemas de reconocimiento de caracteres. Se mencionan algunos trabajos sobre segmentacin
de caracteres, as como tambin trabajos que se han realizado en torno a este problema, sin dejar
a un lado los trabajos que se han hecho utilizando a las mquinas de soporte vectorial.

En el captulo tres fundamentos de base, se explican a grandes rasgos las tcnicas de
procesamiento de imgenes que se utilizan para dar solucin al problema que se pretende
resolver.

En el captulo cuatro Metodologa de solucin, se explica de manera detallada el proceso que
se utiliza para alcanzar el objetivo propuesto utilizando las tcnicas que se mencionan en el
captulo anterior.

En el captulo cinco Resultados experimentales, se presentan los resultados obtenidos con la
metodologa propuesta. Se incluyen resultados para nmeros, letras maysculas y letras
minsculas.

En el captulo seis Conclusiones y trabajo futuro, se da a conocer las ventajas y desventajas
que tiene el mtodo utilizado, as como tambin las aportaciones realizadas en este trabajo y
recomendaciones para mejorar la metodologa propuesta.


1.9 RESUMEN DEL CAPTULO

En este captulo observamos una breve introduccin de lo que es el reconocimiento de
caracteres, se muestra la visin global del problema que se pretende resolver, los objetivos del
sistema, las restricciones y tambin se menciona la estructuracin la tesis.

En el siguiente captulo se hablar del estado del arte. Se mencionan los trabajos que se han
realizado en torno al problema de reconocer caracteres manuscritos.












21

CAPTULO 2

ESTADO DEL ARTE


2.1 INTRODUCCIN

El primer programa de ROC (reconocimiento ptico de caracteres) fue presentado en 1959 por
la Intelligent Machine Corporation. Slo era capaz de leer un tipo de letra de tamao fijo, se
utilizaba para procesar formularios de hipotecas preimpresos, dentro del sector bancario.

Posteriormente se disearon los equipos de fuentes mltiples, capaces de leer diez o ms tipos
de fuentes mediante tcnicas de coincidencia de patrones, en las que se comparaba la imagen
obtenida por el escner con una biblioteca de imgenes almacenadas. Estos equipos, concebidos
para entornos de oficina, utilizaban bibliotecas de fuentes "teletipo", es decir, de mquinas de
escribir.

A finales de los 80 se desarrollaron sistemas que utilizaban redes neuronales, algoritmos
capaces de aprender a partir de ejemplos. Los desarrolladores los alimentaron con ms de
10,000 ejemplos para cada caracter en ingls, extrados de todo tipo de material real, incluso
pginas daadas. Esto dio como resultado un sistema de ROC lo suficientemente inteligente
como para controlar fuentes que nunca haba encontrado hasta entonces, y mucho ms eficaz a
la hora de reconocer documentos daados.

Hoy en da se usan algoritmos expertos, diseados especficamente para diferentes campos del
reconocimiento de caracteres, como es el caso de las Mquinas de Soporte Vectorial.


2.2 SEGMENTACIN EN RECONOCIMIENTO DE CARACTERES

Algunos trabajos desarrollados en los ltimos aos sobre la segmentacin para el
reconocimiento de caracteres manuscritos se mencionan a continuacin:

1. Tcnicas con segmentacin previa, externa o explcita [3, 4], en las que primero se
segmenta el texto a reconocer en sus respectivas palabras y caracteres constituyentes y
posteriormente se reconoce.

2. Tcnicas sin segmentacin previa, segmentacin interna o implcita [5, 6, 7, 8], en las
que el proceso de reconocimiento se realiza simultneamente con el proceso de
segmentacin. Conocidas en la literatura tambin como segmentation-free.

3. Tcnicas sin segmentacin [9, 10, 11], en las que el proceso de reconocimiento est
basado directamente en la forma o representacin global del elemento (palabra) a
reconocer, evitando cualquier tipo de segmentacin del mismo.






22

En la ltima dcada, desde el punto de vista de los procesos de entrenamiento y reconocimiento,
entre las aproximaciones que ms destacan se encuentran las basadas en redes neuronales [12,
13, 14] y los Modelos de Markov. Entre las aproximaciones menos usuales en reconocimiento,
se encuentran por ejemplo, las basadas en teora Fuzzy [15], estimacin Bayesiana [16],
template matching [17], etc.


2.3 EXTRACCIN DE CARACTERSTICAS EN RECONOCIMIENTO DE
CARACTERES

En la etapa de extraccin de caractersticas de la referencia [18] se pretende transformar la
representacin de los datos, de formato de pxel simple a un nivel mayor, quedndose con las
caractersticas ms importantes del patrn y deshacindose de informacin redundante. Se
utiliz el mtodo de Kirsh para encontrar los cuatro ejes direccionales (horizontal, vertical,
diagonales derecha e izquierda), puesto que considera los 8 vecinos de cada pxel.

En [19] se describe mtodos para extraer el vector de rasgos a los caracteres dependiendo de la
imagen. Es decir, para imgenes en niveles de gris menciona qu caractersticas se pueden
utilizar, de igual manera lo hace para imgenes binarias o a color.

En [20], la extraccin de rasgos se realiza para reconocer caracteres alfanumricos en aplicacin
de formas. La matriz del carcter es dividida en submatrices y cada una es escaneada vertical y
horizontalmente, posteriormente se obtiene un vector de rasgos para cada celda.

En [21], para la extraccin de rasgos, dividen la imagen en 9 zonas, en donde a cada zona le
calculan la densidad relativa y la orientacin. Adems utilizan la firma del contorno y los
descriptores de Fourier, a partir de un contorno de 32 puntos.

En [22], para reconocer caracteres off-line, utilizan informacin de rasgos utilizados en
reconocimiento on-line.


2.4 TRABAJOS RELACIONADOS CON MQUINAS DE SOPORTE VECTORIAL

En trabajos donde utilizan a las Mquinas de Soporte Vectorial (MSV) como clasificador se
mencionan:

[23]. En este trabajo se presenta un sistema on-line de reconocimiento de formulas
matemticas manuscritas para un pizarrn electrnico (E-chalk). Muestra cmo se realiza la
clasificacin de smbolos y la construccin de un rbol de espacios relacionados entre si. La
clasificacin la realizan con Mquinas de Soporte Vectorial y la construccin de formulas se
basa en anlisis estructural en lnea de fondo.










23

[24]. Utilizan una combinacin de tcnicas entre Dynamic Time Warping (DTW) y Mquinas de
Soporte Vectorial (MSV), para establecer un nuevo kernel MSV al cual llaman kernel Gausiano.
Mencionan que ste kernel tiene una ventaja principal sobre las tcnicas de los modelos de
Markov (HMM), en donde ste no asume un modelo generativo para las clases, en lugar de eso,
el modelo que proponen direcciona directamente el problema de discriminacin para
incrementar los lmites de clase.

[25]. En este trabajo aplican el clasificador MSV y las Redes Bayesianas (BBN) [8] a la
segmentacin de caracteres para texto manuscrito. Discuten que un clasificador generado por
una BBN y una MSV tiene una mejora para aprender a identificar los lmites correctos de
segmentacin.

[26]. Mencionan el uso de las MSV para reconocer cadenas de nmeros manuscritos, como un
problema mayor que el de reconocer dgitos aislados, puesto que trata problemas de
segmentacin ms complicados, traslapes, desconocer nmeros de dgitos, etc., utilizando
heursticas de sobre-segmentacin.


2.5 RESUMEN DEL CAPTULO

En este captulo se mencionaron algunos trabajos realizados para reconocer caracteres
manuscritos. Brevemente se explicaron los mtodos y tcnicas utilizadas en dichos trabajos para
segmentar, obtener el vector de rasgos y clasificar a los caracteres.

El captulo que viene a continuacin describe los mtodos empleados para lograr el sistema
propuesto.



























24

CAPTULO 3

FUNDAMENTOS DE BASE

En este captulo se describen los mtodos y algoritmos que se emplearon para lograr el sistema
propuesto. Se incluye la definicin de los conceptos bsicos e histricos del tratamiento de
imgenes digitales para una mejor comprensin de la metodologa que se propone.

3.1 RECONOCIMIENTO DE FORMAS

El reconocimiento automtico, descripcin, clasificacin y agrupamiento de patrones son
problemas importantes para diferentes disciplinas tales como la medicina, visin por
computadora, inteligencia artificial, etc. En tal contexto, un patrn podra ser una imagen de
huella digital, un diagnstico mdico, una seal vocal, etc.

El reconocimiento de formas (RF) [27], estudia cmo las mquinas pueden observar el entorno,
aprendiendo a distinguir patrones de inters en el mismo y posteriormente tomar decisiones
razonables acerca de las categoras de esos patrones distinguidos.

Esencialmente en todo sistema de RF se distinguen tres mdulos principales:

1. Mdulo de adquisicin y preprocesamiento de datos.

2. Mdulo de extraccin de caractersticas.

3. Mdulo de decisin: modelos y tcnicas de reconocimiento/clasificacin.









Preproceso Extraccin de
caractersticas
Clasificacin
Aprendizaje
Resultado
Figura 3.1 Diagrama a bloques de un sistema de reconocimiento de formas.

Todo sistema de RF comprende dos fases:

Fase de entrenamiento
Fase de reconocimiento/clasificacin.

En la fase de entrenamiento se procura evaluar diferentes mtodos de preproceso, tipos de
extraccin de caractersticas y mtodos de clasificacin, para elegir los ms adecuados en
funcin de los requerimientos de la tarea.

La fase de reconocimiento/clasificacin es la fase operativa final del sistema, la cual debe tener
un eficiente desempeo de clasificacin para patrones desconocidos.




25

Si las categoras de los patrones son conocidas de antemano, los mtodos o tcnicas de
aprendizaje empleado se llaman de aprendizaje supervisado. En cambio, si estas deben ser
aprendidas con base en las similitudes de los patrones, entonces se llaman de aprendizaje no
supervisado.


3.2 RECONOCIMIENTO DE PATRONES

El concepto de patrn es algo universal dentro del reconocimiento de patrones. Por ejemplo, los
patrones en datos biolgicos contienen conocimiento slo si se pueden reconocer. La
discriminacin de patrones de seales permite una identificacin personal por voz, escritura,
huellas dactilares, imagen facial, y ms. Esto mismo se aplica al reconocimiento del habla,
caracteres escritos y escenas en imgenes. Deben mencionarse, tambin, la identificacin de
blancos militares basados en radar, infrarrojos y/o imgenes de video.

Este trabajo est dentro del reconocimiento de patrones [28], por lo que se definen algunos
conceptos:

Clase o patrn: Conjunto de entidades que comparten alguna caracterstica que las diferencia de
otras.

Extractor de caractersticas: Subsistema que extrae informacin relevante para la clasificacin
a partir de las entidades cuantificables.

Clasificador: Subsistema que utiliza un vector de caractersticas de la entidad cuantificable y lo
asigna a una de las clases. Ver figura 3.2.





x
1
x
2
x
n
Adquisicin
De datos




y
1
y
2
y
m
Extraccin de
caractersticas


Clasificacin



Resultado

Clase

Figura 3.2. Etapas de un sistema de reconocimiento de patrones.





26

En esta tesis se asume que el proceso de reconocimiento de un objeto se da de la siguiente
manera. Primero los atributos del objeto son medidos para formar un vector patrn (patrn a
partir de ahora), que es transformado en un reducido conjunto de rasgos; enseguida, mediante
sus rasgos el objeto es reconocido (o clasificado) por el reconocedor (o clasificador).

El problema de la clasificacin consiste en decidir si un patrn pertenece o no a una clase de
equivalencia. El problema del reconocimiento, consiste en decidir si algn patrn es equivalente
a un patrn prototipo, o a un conjunto de esos patrones prototipos, que representan una clase.

Un sistema de reconocimiento de patrones automatizado es un sistema operacional que consta
al menos de: a) un sub-sistema de entrada que acepta vectores muestra y b) un sub-sistema de
decisin que decide la clase a la cual pertenece un vector muestra de entrada.

En la literatura existen mtodos de reconocimiento de patrones, desde los ms simples como el
clasificador lineal simple, hasta las mquinas de soporte vectorial, el clasificador por el vecino
ms cercano, el clasificador por funcin potencia o el clasificador por los k-simos vecinos ms
cercanos; en [28] se explican en detalle estos mtodos.

Los mtodos ms complejos y exactos conocidos son el Perceptrn de Rossenblat [29], el
Associatron de Nakano [30], los mapas auto-organizados de Kohonen [31], la red pi-sigma de
Shin y Ghosh [32], las mquinas de aprendizaje de Nilsson [33]. En las nuevas tendencias
encontramos a las Mquinas de Soporte Vectorial [34,35], los algoritmos genticos, la
computacin evolutiva, la lgica difusa o las memorias asociativas, e inclusive algunas
combinaciones entre ellas vistas en [36], [37], [38], [39] y [40].

3.3 DEFINICIN Y CONCEPTOS BSICOS

3.3.1 IMAGEN DIGITAL

Definicin 1: Sea I una imagen digital y f(x, y, c) la funcin que representa los puntos discretos
que la conforman, donde x e y son las coordenadas espaciales y c un grupo de tres valores
bsicos de un modelo de color.

Los valores de f dependen de la paleta de color utilizada por el sistema. Se manejan dos tipos de
rangos: el de los valores normalizados en el rango 0 f 1, y el de los no normalizados, que
utiliza un byte para representarlos en el rango 0 f 255. Cada valor de f, con la combinacin
de sus tres colores bsicos o primarios, es conocido como un pxel de color.

Para almacenar y procesar la imagen digital en la memoria de la computadora, se puede utilizar
cualquiera de los tipos de representacin que se mencionan a continuacin, de acuerdo a las
caractersticas y tipo de cada imagen.

Imgenes indexadas - Estas imgenes son representadas mediante dos matrices: una matriz m
x n conocida como la matriz de imagen y una matriz l x 3 conocida como mapa del color.

Cada valor de la matriz de imagen apunta al rengln que le corresponde en la matriz del mapa
de color, donde se encuentran los tres valores de RGB con que se representa un pxel particular.






27


Imgenes de intensidad - En este caso las imgenes se representan en tonos de gris. Los
valores son almacenados en una matriz m x n; cada uno de sus valores define un pxel que puede
mostrar cualquier intensidad entre el negro y el blanco, pasando por los tonos de gris. Aqu, las
3 componentes de la matriz lx3 son siempre iguales.

Imgenes binarias - Este es el tipo de representacin ms simple y ms limitado. La matriz m x
n de la imagen est integrada slo por los valores 0 y 1, que representan por convencin los
niveles negro y blanco, respectivamente.

Imgenes RGB - Representa las imgenes de color. En ellas se utiliza un arreglo
multidimensional de m x n x 3, en donde cada uno de los tres colores primarios es representado
por una matriz m x n.

3.3.2 IMAGEN EN NIVELES DE GRIS

Una imagen bidimensional es una regin en el plano en el cual un brillo en cada punto es
definido como una funcin f(x, y) donde x e y son las coordenadas de dicho punto en el plano.
La amplitud de f en cualquier par de coordenadas se conoce como la intensidad de la imagen en
ese punto.

Cuando los valores de las coordenadas y de la intensidad son cantidades discretas finitas, la
imagen se considera una imagen digital. Los elementos que constituyen una imagen digital se
les conoce como pxeles. Un pxel posee dos coordenadas espaciales y un valor.

Si cada uno de los pxeles de una imagen tiene asociado un nivel de brillo para su
representacin, entonces se le llama imagen en niveles de gris. Ver figura 3.3.

Para representar el valor de un pxel en una imagen en niveles de gris se utilizan bytes (desde el
0 hasta el 255).
a) b)


Figura 3.3 a) Imagen original b) Imagen en niveles de gris













28



3.3.3 IMGENES BINARIAS

Si una imagen tiene slo dos niveles de gris, el nivel ms claro y el ms oscuro, se le conoce
como imagen binaria. En la figura 3.4 se muestra un ejemplo de una imagen binaria donde el
nivel ms claro se representa por el valor de 255 (blanco) y el ms oscuro por el cero (negro).


a) b)
Figura 3.4 a) Imagen en niveles de gris b) Imagen binaria


3.4 TCNICAS DE PREPROCESADO EN IMAGENES

3.4.1 UMBRALADO

El mtodo de umbralado o binarizado consiste en poner los pxeles que sobrepasen un umbral u
dado, en el valor ms alto dentro del rango de niveles, generalmente blanco, y los que sean
iguales o estn por debajo de dicho umbral en el valor ms pequeo en el mismo rango de
niveles, generalmente negro.

De manera ms formal, sea X una matriz que contiene todos los niveles de la imagen donde,
representa el nivel del pxel en la columna i y la fila j; el nivel, generalmente, se encuentra
en el rango (0, 255). La imagen umbralada es una matriz X cuya ij-sima componente est dada
por la ecuacin (1).
j i
X
,

>
=
u X si
u X si
X
j i
j i
j i
,
,
,
; 0
; 255
' (1)

El valor del umbral u depende de diversos factores, como las caractersticas de la imagen, la
forma en que se ha de procesar la imagen, etc.

Con esto se asegura que los pxeles de la imagen tengan slo dos valores, donde el valor mayor
puede considerarse como un uno y el menor un cero; de ah el nombre de imagen binaria.

Para asegurarse de que un umbral sea efectivo, es necesario que el objeto contraste lo suficiente
con el fondo, una vez conocido el rango de intensidades de los niveles de gris del objeto. El
valor del umbral es usualmente seleccionado en forma experimental de acuerdo a la aplicacin,
valindose de estadsticas de los niveles de gris de la imagen.





29

La figura 3.5 muestra una imagen umbralada con diferentes valores.











(a) (b)









(c) (d)

Figura 3.5 Umbralado de una imagen en niveles de gris mediante diferentes valores de umbral. a) niveles
de gris, b) u =20, c) u = 100, d) u = 150.

En muchas aplicaciones la obtencin del umbral o umbrales para binarizar una imagen se
pueden obtener en forma automtica a travs de mtodos estadsticos ([41] y [42]); en otras, esto
no es posible tenindose que recurrir a sofisticadas tcnicas de segmentacin.


3.4.2 SEGMENTACIN

La segmentacin consiste en subdividir una imagen en sus respectivas regiones u objetos, sin
que ningn pxel pertenezca a ms de una regin u objeto. El nivel al cual aplicar la subdivisin
depende del problema a resolver; es decir, la segmentacin se detendr cuando todos los objetos
de inters hayan sido separados del fondo, y en el caso de estarse tocando o existan
solapamientos entre ellos, deben tambin haber sido separados de los dems objetos. En la
siguiente figura se muestra el proceso de segmentacin de los objetos en una imagen con
respecto al fondo.










30


a)


b)

Figura 3.6 Segmentacin de los objetos de una imagen. a) Imagen umbralada con u = 128,
b) objetos segmentados.

Los mtodos de segmentacin pueden ir desde un umbralado, simplemente usando un valor de
umbral adecuado, hasta los mtodos basados en la separacin por regiones orientadas y la
segmentacin sobre la base de funciones morfolgicas tipo watershed [43] y [44].

Una vez segmentados los objetos de una imagen, el siguiente paso es, usualmente, el etiquetado,
es decir, hacer una separacin espacial entre los diferentes objetos de la imagen para poder
extraerlos ms fcilmente.

Podra pensarse que con estas tcnicas es suficiente para trabajar con una imagen, pero la
mayora de las veces las imgenes vienen con algn tipo de alteracin debido a la calidad de la
cmara con que fueron capturadas, al software usado o simplemente al deterioro mismo de los
objetos que tuvo lugar con los procedimientos previos. En estos casos, si se utilizan las tcnicas
mencionadas, es muy difcil llegar a los resultados esperados. Una solucin es pasar la imagen a
travs de un conjunto de filtros para eliminar las posibles imperfecciones de la imagen
etiquetada.

Existen muchos tipos de filtros, divididos en dos categoras: filtros en el dominio espacial
aplicados directamente a la imagen, y filtros en el dominio de la frecuencia aplicados sobre una
transformacin de la imagen. En el dominio espacial se usan los filtros gaussianos, filtros
geomtricos, laplacianos, de mediana, de media, media aritmtica, mscaras, de Sobel, etc.
Dentro del dominio de la frecuencia se encuentran los filtros pasa altas, filtros pasa bajas, los
filtros FIR, las ondeletas (wavelets), transformadas de Fourier, etc.

Los filtros morfolgicos podran encontrarse en la categora de filtros en el dominio espacial,
pero merecen mencin aparte debido a las potencialidades que tienen sobre los dems filtros. Se
basan en las operaciones de erosin, dilatacin, apertura y clausura. Muchas veces aplicando
una erosin o una dilatacin a una imagen, se elimina el posible ruido que pueda tener. Algunas
veces ser necesario hacer combinaciones entre stas para obtener mejores resultados.








31

3.4.3 DETECCIN DE BORDES

Uno de los ms importantes y sencillos procesos es la deteccin de bordes. Importante porque
de ellos se puede empezar a extraer importante informacin de la imagen, como pueden ser las
formas de los objetos que la componen, y sencillo porque los operadores de deteccin de bordes
(operadores de gradiente) [45] son simples mscaras de convolucin. Estos operadores son
utilizados en aplicaciones para el reconocimiento de formas, aplicaciones industriales, militares,
etc.

Los bordes de una imagen contienen mucha informacin de la misma. Los bordes nos dicen
donde estn los objetos, su forma, su tamao, y tambin sobre su textura. Los ejes o bordes se
encuentran en zonas de una imagen donde el nivel de intensidad flucta bruscamente, cuanto
ms rpido se produce el cambio de intensidad, el eje o borde es ms fuerte. Un buen proceso de
deteccin de bordes facilita la elaboracin de las fronteras de objetos con lo que, el proceso de
reconocimiento de objetos se simplifica. Para poder detectar los bordes de los objetos, debemos
de detectar aquellos puntos borde que los forman.

Los objetivos principales de un detector de borde son dos: una baja tasa de error y una buena
localizacin del borde. El primer objetivo se refiere a la capacidad del detector para clasificar
pxeles de la imagen como bordes, sin incluir elementos espurios como ruidos o manchas. Por
su parte, la propia forma del filtro puede dar lugar a una deteccin de borde ligeramente
trasladada, o incluso duplicada.

Entre los operadores de gradiente ms conocidos estn los operadores de Roberts, Prewitt y
Sobel (Apndice A-1).

En nuestro caso decidimos utilizar el mtodo de Canny (Apndice A-1) por ser uno de los ms
robustos contra el ruido (filtro ptimo) en comparacin con los otros mtodos para detectar
bordes [46].

La siguiente figura muestra un ejemplo del detector de bordes utilizado.










a) Imagen binaria b) Bordes de la imagen

Figura 3.7 Bordes de la imagen aplicando el mtodo de Canny.










32

3.4.4 OPERADORES MORFOLGICOS

Una herramienta de gran utilidad en el procesamiento digital de imgenes lo constituye la
morfologa matemtica [47], basada en la teora de conjuntos en el espacio n-dimensional entero
Z
n,
donde cada elemento es una tupla con componentes (x
1
, x
2
,..., x
n
). Para Z
2
se destacan las
operaciones morfolgicas siguientes: traslacin, reflexin, complemento, diferencia, dilatacin,
relleno, erosin, apertura y cierre. En el Apndice A-2 se incluye una recopilacin de las
expresiones matemticas relacionadas con estos operadores.

Mediante el uso de detectores de borde y en general de mltiples operaciones morfolgicas, se
pueden aislar grupos de pxeles que posean caractersticas muy similares. Una vez aislados se
pueden aplicar tcnicas de reconocimiento de patrones basadas en la delimitacin espacial
tomando como base el color. Cada elemento est formado por pxeles con valores similares
dentro de cada una de las tres capas de color, con cierta afinidad con las otras dos capas de
diferente color.

El anlisis de esta cualidad comn es de gran utilidad para diferenciarlos de los vecinos que lo
rodean, ya que estos pueden "pertenecer" a un elemento en una capa y ser eliminados al
considerar las otras capas independientemente o en combinacin. La figura 3.8 ejemplifica el
uso de los operadores dilatacin y erosin.


3.4.4.1 Dilatacin

La dilatacin es la transformacin morfolgica que combina dos vectores utilizando la suma. La
dilatacin binaria fue usada primero por Minkowski y en la literatura matemtica recibe el
nombre de suma de Minkowski. Si A y B son conjuntos en un n-espacio E
n
con elementos a=
(a
1
,..,a
n
) y b= (b
1
,..,b
n
), respectivamente, siendo ambos n-tuplas, entonces la dilatacin de A
por B es el conjunto de todos los posibles vectores que son suma de pares de elementos, uno de
A y otro de B.

Ms formalmente, la dilatacin de A por B se nota B A y se define mediante:

{ } B b y A a n a para b a c E c B A
n
+ = = lg |

Al ser la suma conmutativa, la dilatacin tambin lo es A B B A = .

Se puede probar que las siguientes definiciones de la dilatacin son equivalentes

b
BA b A x B x B A

= 0 |
^

En la prctica los conjuntos A y B no son simtricos. El primer elemento de la dilatacin A, est
asociado con la imagen que se est procesando y el segundo recibe el nombre elemento
estructural, la forma que acta sobre A en la dilatacin para producir . B A








33

La siguiente figura muestra el resultado del uso de la dilatacin en una imagen.










1) Bordes de imagen 2) Dilatacin de bordes

Figura 3.8 Dilatacin de la imagen.


3.4.4.2 Relleno

Una vez aplicada la dilatacin a la imagen se contina con el proceso de relleno.

El algoritmo es el siguiente:

1. Se parte de un conjunto A de puntos 8-conectados que encierran una regin que se desea
rellenar.

2. Se asigna el valor 1 a un punto p interior al contorno A (X
0
= p).

3. Se realiza la dilatacin condicional dada por la frmula siguiente con un elemento
estructurante 3x3 de conectividad-4 (cruz):

c
k k
A B X X =

) (
1


4. El algoritmo termina cuando X
k
= X
k+1.

5. El conjunto final es X
k
U A.


a) b)

Figura 3.9 a) Imagen umbralada, b) Imagen rellenada.









34

3.5 EXTRACCIN DE CARACTERSTICAS

Despus de segmentar una imagen en regiones, el conjunto resultante de pxeles segmentados se
representa y describe normalmente en una forma adecuada; esto es, se describe el objeto en
trminos numricos para que pueda ser procesado por la computadora. La forma ms comn de
describirlo es por medio de sus caractersticas, las cuales deben ser insensibles a posibles
variaciones tales como cambios de tamao, traslacin y rotacin.

Una de las metas en anlisis de documentos es clasificar caracteres y smbolos en clases. La
extraccin de caractersticas es tradicionalmente un objeto de estudio en reconocimiento de
patrones y puede ser dividida de dos maneras, estadstica y estructural.

A continuacin se describen las tcnicas utilizadas para extraer las caractersticas de los objetos
en estudio.

Otros mtodos que sirven para extraer rasgos se pueden encontrar en [18], [19], [20], [21], [22].


3.5.1 INVARIANTES DE FLUSSER

Los momentos invariantes de Flusser [48] estn en el grupo caractersticas estadsticas, son
derivadas de los momentos invariantes Hu [49] y son invariantes bajo transformaciones
generales afines, por lo que pueden ser usadas en reconocimiento de objetos deformados.

Los momentos invariantes afines [48] son derivados de la teora de invariantes algebraicos, son
invariantes bajo transformacin general afines.

u = a
0
+ a
1
x + a
2
y
v = b
0
+ b
1
x + b
2
y (1)

Los momentos de orden general para dos dimensiones (p + q) en funcin de la distribucin de
densidad ) , ( y x se define como:

,... 2 , 1 , 0 , ) , ( = =

q p dxdy y x y x m
q p
pq
(2)

Al trabajar con objetos binarios, entonces es una funcin caracterstica de objetos G.

= =
G
q p
pq
q p dxdy y x m ,... 2 , 1 , 0 , (3)

Es posible generalizar todas las siguientes relaciones y resultados para objetos en niveles de
gris.










35


La transformacin afine (1) puede ser descompuesta en seis parmetros de transformacin:






Cualquier funcin F de momentos que son invariantes bajo estas seis transformaciones sern
invariantes bajo la transformacin general afine (1).

Los invariantes de Flusser parten de los momentos centrales utilizados por Hu (2) y (3),
entonces cualquier funcin de ellos sern invariantes a la traslacin 1 y 2.

Los momentos centrales u
pq
se definen como:

,... 2 , 1 , 0 , ) , ( ) ( ) ( = =

q p dxdy y x y y x x u
q p
pq
(4)

Donde x = m
10
/m
00
y

y = m
01
/m
00
son las coordenadas del centro de gravedad de un objeto
dado.

El invariante ms sencillo consiste en momentos de segundo orden:

I
1
= (u
20
*u
02
u
2
11
)/u
4
00

Para los momentos de tercer orden el discriminante del polinomio:

u
03
x
3
+ 3u
12
x
2
+3 u
21
x+ u
30.

Es igual a:





_
u
03
3u
12
3u
12
u
30
0

0 u
03
3u
12
3u
21
u
30

3u
03
6u
12
3u
21
0 0

0 3u
03
6u
12
3u
21
0

0 0 3u
03
6u
12
3u
21

5. u = x + x t
v = y
6. u = x
v = t x + y. '
3. u = x
v = y
4. u = x
v = y
1. u = x + a
v = y
2. u = x
v = y +





Y su correspondiente invariante es:

I
2
= (u
2
30
*u
2
03
- 6*u
30
*u
21
*u
12
*u
03
+ 4*u
30
*u
3
12
+ 4*u
3
21
*u
03
- 3*u
2
21
*u
2
12
)/u
10
00
.








36

De los momentos de segundo y tercer orden:

u
02
u
11
u
20

u
03
u
12
u
21

u
12
u
21
u
30






El correspondiente invariante es:

I
3
= (u
20
*(u
21
*u
03
u
2
12
) - u
11
*(u
30
*u
03
- u
21
*u
12
) + u
02
*(u
30
*u
12
u
2
21
))/u
7
00

El nmero de invariantes se reparte con el teorema de Cayley-Sylvester [48].

Para una mejor comprensin sobre este tema es conveniente verificar la referencia [48].

3.5.2 COMPACIDAD

Un descriptor de regiones frecuentemente usado como caracterstica de un objeto es la
compacidad de una regin y est definida como:
.
4
2
A
P
F

=



Donde P es el permetro del objeto y A es el rea.

Se utiliza cuando deseamos emplear un descriptor invariante a cambios de escala, rotaciones y
traslaciones.

Algunas propiedades son:

El alargamiento y la rectangularidad son independientes de transformaciones lineales.
La direccin es independiente de todas las transformaciones lineales excepto de la
rotacin.
La direccin relativa de dos regiones es invariante a rotaciones.
La compacidad es invariante a cualquier tipo de transformacin.

3.5.3 EXCENTRICIDAD

La excentricidad mide la relacin entre los tamaos mayor y menor del objeto. La forma ms
simple de medirlo es calcular la relacin entre la longitud de la cuerda mayor respecto a la
longitud de la cuerda perpendicular a la cuerda mayor.

La excentricidad es un parmetro que determina el grado de desviacin de una seccin cnica
con respecto a una circunferencia. Es un parmetro importante en la definicin de elipses.

La excentricidad e de una elipse de semieje mayor a y semieje menor b es:

. 1
2
2
a
b
e =



37




3.5.4 ELONGACIN

La elongacin es un parmetro que no depende del tamao de la regin y viene dado por:

.
2
P
A
E =

Donde A es el rea y P el permetro de la regin.
Un rea menos elongada define un rea mayor para el mismo permetro.

Adems de los invariantes de Flusser, la compacidad, la excentricidad y la elongacin, tambin
se toma en cuenta el tamao de caracter que viene dado por:

. * 2
P
A
T =



3.6 MQUINAS DE SOPORTE VECTORIAL

3.6.1 INTRODUCCIN

Las Mquinas de Soporte Vectorial (MSV) [34,35] son mquinas, de base lineal y solucin
nica, fundadas en Teora del Aprendizaje Estadstico.

La teora de las Mquinas de Soporte Vectorial (SVM por su nombre en ingls Support Vector
Machines) es una nueva tcnica de clasificacin y ha tomado mucha atencin en aos recientes.
La teora de la MSV se basa en la idea de minimizacin de riesgo estructural [34]. En muchas
aplicaciones, las MSV han mostrado tener gran desempeo, ms que las mquinas de
aprendizaje tradicional como las redes neuronales y han sido introducidas como herramientas
poderosas para resolver problemas de clasificacin.

Una MSV primero mapea los puntos de entrada a un espacio de caractersticas de una
dimensin mayor (es decir, si los puntos de entrada estn en R
2
entonces son mapeados por la
MSV a R
3
) y encuentra un hyperplano que los separe y maximice el margen m entre las clases
en este espacio como se aprecia en la siguiente figura.




38


Figura 3.10 La frontera de decisin debe estar tan lejos de los datos de ambas clases como sea.

Maximizar el margen m es un problema de programacin cuadrtica (QP) y puede ser resuelto
por su problema dual introduciendo multiplicadores de Lagrange. Sin ningn conocimiento del
mapeo, la MSV encuentra el hyperplano ptimo utilizando el producto punto con funciones en
el espacio de caractersticas que son llamadas kernels [50]. La solucin del hyperplano ptimo
puede ser escrita como la combinacin de unos pocos puntos de entrada que son llamados
vectores de soporte.

3.6.2. PRINCIPIO GENERAL

Construccin de un clasificador en nmeros reales.
Descomposicin de un problema en varios sub-problemas.
1. Construccin de un separador lineal ptimo.
2. Transformacin no lineal del espacio de entrada.

3.6.3. CLASIFICADOR DE MARGEN MXIMO

El modelo ms simple de las MSV es el llamado Clasificador de Margen Mximo [34]. Este
trabaja solamente para datos que son linealmente separables en el espacio de caractersticas, y
por lo tanto no puede ser usado en muchas situaciones del mundo real.

El clasificador de margen mximo optimiza el lmite de separacin de datos con el margen
mximo del hyperplano y hace que el lmite no dependa de la dimensionalidad del espacio, esta
separacin puede ser buscada en cualquier kernel inducido en el espacio de caractersticas. El
clasificador de margen mximo forma la estrategia de la primer mquina de soporte vectorial
para encontrar el hyperplano de margen mximo en un espacio de caractersticas apropiado.

Notemos que en la definicin de clasificadores lineales hay un grado de libertad inherente,
debido al hecho de que la funcin asociada con el hyperplano (w, b) no cambia si reescalamos el
hyperplano a (w, b), para R
+
. As pues, podemos optimizar bien el margen geomtrico
haciendo que el margen funcional sea igual a 1 (hyperplanos con margen funcional 1 algunas
veces se conocen como hyperplanos cannicos) y minimizando la norma del vector de peso. Si
w es el vector de peso, realizando un margen funcional de 1 sobre los puntos positivos y
negativos de x, podemos calcular su margen geomtrico como sigue:





39

<w x
+
> + b =+1,
<w x
-
> + b = -1,

Mientras calculamos el margen geomtrico debemos normalizar w.

El margen geomtrico es entonces el margen funcional del resultado del clasificador. As pues,
en [34] se demuestra que = 1/||w||
2.


3.6.4 CASO LINEALMENTE SEPARABLE

Idea base: el margen ptimo

Funcin de decisin:
F(x) = W
T
X + b

Definicin del hyperplano (frontera de decisin):

W
T
X + b = 0
Distancia de un punto al hyperplano:

D(x) = | W
T
X + b |
||w||

Entonces maximizar el margen es equivalente a minimizar ||w||.

Un punto x
i
ser bien clasificado si y solo si

y
i
,f(x
i
) 0,

pero como el par (w, b) est asociado a un coeficiente de multiplicacin, se impone:

y
i
,f(x
i
) 1

El hyperplano (w, b) que resuelve el problema de optimizacin realiza el margen mximo del
hyperplano con margen geomtrico = 1/||w||
2.

Minimizar
w, b
<w w>,
Sujeto a y
i
(<w x
i
> + b) 1, i= 1,, l.

As tenemos un problema de programacin cuadrtica QP. Esta optimizacin se transforma
dentro de su correspondiente problema dual, donde se utilizan los multiplicadores de Lagrange:
L (w, b, )= 1/2 w w - ( ) [ ]

=
+
l
i
b xi wi yi i
1
1

Donde 0 i son los multiplicadores de Lagrange.
El dual correspondiente se encuentra por diferenciacin con respecto a w y b,




40

=
= =

l
i
ixi yi w
w
b w L
1
, 0
) , , (

=
= =

l
i
i yi
b
b w L
1
, 0
) , , (



Y resustituyendo.

=
=
l
i
ixi yi w
1
,

=
=
l
i
i yi
1
, 0

L (w, b, )= 1/2 w w - ( ) [ ]

=
+
l
i
b xi wi yi i
1
1
= 1/2

= =
+
l
j i
l
j i
l
i i
i xj xi j i yiyj xj xi j i yiyj
1 , 1 ,


=


L (w, b, )=


= =

l
j i
l
i i
xj xi j i yiyj i
1 ,
.
2
1


Propiedades
Solo los multiplicadores i asociados a los puntos ms cercanos al hyperplano son diferentes
de cero. Estos puntos forman el conjunto de los Vectores Soporte.

=
l
i
i i i
x y w
1

=
=
nsv
i
i i i
x y w
1


Funcin de decisin
b x w x f + = ) (

+ =
l
i
i i i
b x x y x f
1
) (
x
o
o
x
x x
x
o
o
o
o


Figura 3.11 Un hyperplano de margen mximo con sus Vectores Soporte




41

Supongamos que nos han dado un conjunto S de puntos etiquetados para entrenamiento como se
aprecia en la siguiente figura:

(y1, x1),..., (y
i
, x
i
) (1)



Figura 3.12 Caso linealmente separable

Cada punto de entrenamiento x
i
R
N
pertenece a alguna de dos clases y se le ha dado una
etiqueta y
i
{-1,1} para i = 1, . . . , l. En la mayora de los casos, la bsqueda de un hyperplano
adecuado en un espacio de entrada es demasiado restrictiva para ser de uso prctico. Una
solucin a esta situacin es mapear el espacio de entrada en un espacio de caractersticas de una
dimensin mayor y buscar el hyperplano ptimo all. Sea z = (x) la notacin del
correspondiente vector en el espacio de caractersticas con un mapeo de R
N
a un espacio de
caractersticas Z.

Deseamos encontrar el hyperplano:

w z + b =0 (2)

Definido por el par (w, b), tal que podamos separar el punto x
i
de acuerdo a la funcin:

=
=
= + =
1 ..... 1
1 ........ 1
) ( ) (
yi
yi
b zi w sign xi f (3)

Donde w Z y b R. Ms precisamente, el conjunto S se dice que es linealmente separable si
existe (w, b) tal que las inecuaciones:

= +
= +
1 ,....... 1 ) (
1 ,....... 1 ) (
yi b zi w
yi b zi w
l i ,...., 1 = (4)

Sean vlidas para todos los elementos del conjunto S. Para el caso linealmente separable de S,
podemos encontrar un nico hyperplano ptimo, para el cual, el margen entre las proyecciones
de los puntos de entrenamiento de dos diferentes clases es maximizado.







42

3.6.5 CASO NO LINEALMENTE SEPARABLE

Proyeccin del espacio de entrada a un espacio de Hilbert [34] de dimensin ms importante a
travs de funciones kernel o ncleo.


Figura 3.13 proyeccin de un espacio de entrada a un espacio mayor.

Si el conjunto S no es linealmente separable, violaciones a la clasificacin deben ser permitidas
en la formulacin de la MSV.


Figura 3.14 Caso no linealmente separable.

Para tratar con datos que no son linealmente separables, el anlisis previo puede ser
generalizado introduciendo algunas variables no-negativas 0
i
de tal modo que

= +
= +
1 ,....... 1 ) (
1 ,....... 1 ) (
yi b zi w
yi b zi w
l i ,...., 1 =

Es modificado a

, 1 ) (
i i i
b z w y + (5) l i ,...., 1 =





43

Los 0
i
en (5) son aquellos para los cuales el punto x
i
no satisface (4). Entonces el trmino
puede ser tomado como algn tipo de medida del error en la clasificacin.

=
l
i
i
1


El problema del hyperplano ptimo es entonces redefinido como la solucin al problema:

, 0
, 1 ) (
2
1
min
1

+

=
i
i i i
l
i
i
b z w y
C w w

(6)

Donde l i ,...., 1 =

Donde C es una constante. El parmetro C puede ser definido como un parmetro de
regularizacin. Este es el nico parmetro libre de ser ajustado en la formulacin de la MSV; el
ajuste de este parmetro puede hacer un balance entre la maximizacin del margen y la
violacin a la clasificacin.

Buscando el hyperplano ptimo en (6) es un problema QP, que puede ser resuelto construyendo
un Lagrangiano y transformndolo en el dual.

l i C y a s
z z y y W Max
i
l
i
i i
l
i
l
j
j i j i j i
l
i
i
,...., 1 , 0 , 0 .
2
1
) (
1
1 1 1
= =
=


=
= = =


(7)


Donde ) ,.... (
l i
= es una vector de multiplicadores de Lagrange positivos asociados con las
constantes en (5).

El teorema de Khun-Tucker [34] juega un papel importante en la teora de las MSV. De acuerdo
a este teorema, la solucin
i
del problema (7) satisface:

l i b z w y
i i i i
,...., 1 , 0 ) 1 ) ( ( = = + + (8)

l i C
i i
,... 1 , 0 ) ( = = (9)
De esta igualdad se deduce que los nicos valores 0
i
en (9) son aquellos que para las
constantes en (5) son satisfechas con el signo de igualdad. El punto x
i
correspondiente con
i
>0 es llamado vector de soporte.

Pero hay dos tipos de vectores soporte en un caso no separable. En el caso 0<
i
< C, el
correspondiente vector de soporte x
i
satisface las igualdades 0 1 ) ( = = +
i i i
y b z w y .



44

En el caso
i
= C, el correspondiente
i
es diferente de cero y el correspondiente vector
soporte x
i
no satisface (4). Nos referimos a estos vectores de soporte como errores. El punto x
i

correspondiente con
i
= 0, es clasificado correctamente y est claramente alejado del margen
de decisin. La figura 3.20 muestra los vectores soporte de error
i
que estn fuera del rango del
margen.

Figura 3.15 Aparicin del parmetro de error
i
en el error de clasificacin.

Para construir el hyperplano ptimo b z w
i
+ se utiliza:
i
l
i
i
i z y w

=
=
1
(10)

Y el escalar b puede ser determinado de las condiciones de Kuhn-Tucker (9).

La funcin de decisin generalizada de (3) y (10) es tal que

+ = + =

=
b z z y sign b z w sign x f
i
l
i
i i
1
) ( ) ( (11)


3.6.6 TRUCO DEL KERNEL PARA EL CASO NO LINEALMENTE SEPARABLE

Como no tenemos ningn conocimiento de (mapeo), el clculo del problema (7) y (11) es
imposible. Hay una buena propiedad de la MSV la cual es que no es necesario tener ningn
conocimiento acerca de . Slo necesitamos una funcin ) , ( K llamada kernel que calcule el
producto punto de los puntos de entrada en el espacio de caractersticas Z (figura 3.16), esto es:

) , ( ) ( ) (
j i j i j i
x x K x x z z = = (12)




45



Figura 3.16 Transformacin del espacio de entrada a espacio de caractersticas usando la funcin
kernel.

Las funciones que satisfacen el teorema de Mercer [34] se pueden usar como productos punto y
por ende pueden ser usadas como kerneles. Podemos usar el kernel polinomial de grado d.

d
j i j i
x x x x K ) 1 ( ) , ( + = (13)

Para construir un clasificador MSV.

Entonces el hyperplano no lineal de separacin puede ser encontrado como la solucin de:
l i C y a s
x x K y y W Max
i
l
i
i i
l
i
l
j
j i j i j i
l
i
i
,...., 1 , 0 , 0 .
) , (
2
1
) (
1
1 1 1
= =
=


=
= = =


(14)
Y la funcin de decisin es

+ = + =

=
b x x K y sign b z w sign x f
j i
l
i
i i
) , ( ) ( ) (
1
(15)

3.6.7 FUNCIONES KERNEL MS UTILIZADOS

Tabla 3.1 Funciones kernel ms utilizados






46


3.7 MQUINAS DE SOPORTE VECTORIAL MULTICLASE

Como se observ en la seccin anterior, las Mquinas de Soporte Vectorial se formulan para
problemas de dos clases. Sin embargo, debido a que las MSV emplean funciones de decisin
directa, una extensin a problemas multiclase no es directa.

Hay cuatro tipos de MSV que manejan problemas multiclase [51]:

1. MSV uno contra todos (one-against-all).
2. MSV en parejas (pairwise).
3. MSV correccin de error por cdigo de salida (error-correcting output code ) ECOC.
4. MSV todos contra uno (all-at once).

De acuerdo a la formulacin de Vapniks [34], en MSV uno contra todos (oaa), un problema de
n-clases se convierte en n problemas de dos-clases y para el i-esimo problema de dos-clases, la
clase i es separada del resto de las clases. Pero con esta formulacin existen regiones no
clasificadas si usamos funciones de decisin discretas.

Para resolver el problema en MSV de parejas (pairwise), Krebel [51] convierte el problema de
n-clases en n(n-1)/2 problemas de dos clases, que cubren todos los pares de clases. Sin embargo
con este mtodo tambin existen regiones no clasificadas.

El problema de regiones no clasificadas se puede resolver introduciendo: funcin miembro,
rboles de decisin, correccin de error por cdigo de salida o determinando funciones de
decisin todos contra uno. Estas tcnicas se pueden encontrar en [51].

Especialmente para las MSV uno contra todos (oaa), si se usan funciones de decisin continuas
en lugar de discretas, se resuelven las regiones no clasificadas.


3.7.1 MSV UNO CONTRA TODOS.

Considere un problema de n-clases. Para las MSV-oaa, determinamos n funciones de decisin
directa que separe una clase del resto de las clases. Sea la i-sima funcin de decisin, con el
margen mximo que separa la case i del resto de las clases:

i
T
i i
b x g w x D + = ) ( ) ( (16)

Donde w
i
es el vector l-dimensional, g(x) es la funcin de mapeo que mapea x dentro del
espacio de caractersticas l-dimensional, y b
i
es el trmino bias.

El hyperplano forma el hyperplano de separacin ptimo, y si el problema de
clasificacin es separable, los datos de entrenamiento que pertenecen a la clase i satisfacen
y los que pertenecen a las clases restantes satisfacen . Especialmente los
vectores soporte satisfacen
0 ) ( = x D
i
1 ) ( x D
i
1 ) ( x D
i
1 ) ( = x D y
i i
. Si el problema no es separable, los vectores soporte sin
limites satisfacen y los vectores soporte con limites satisfacen . El resto
de datos de entrenamiento satisfacen
1 ) ( = x D y
i i
1 ) ( x D y
i i
1 ) ( x D y
i i




47


En clasificacin, si para el vector de entrada x

) (x D
i
> (17) 0

Satisface para una i, x es clasificada dentro de la clase i, debido a que solamente se usa el signo
de funcin de decisin. La funcin es discreta.

Si (17) satisface pluralmente o si no hay una clase i que satisface (17), x no es clasificada.

Para un mejor entendimiento sobre esta tcnica se recomienda leer [51].


3.8 RESUMEN DEL CAPTULO

En este captulo se describieron los mtodos y tcnicas utilizadas para lograr el sistema que se
propone. Se incluyeron la definicin de los conceptos bsicos para el tratamiento de imgenes,
as como tambin se describen los mtodos utilizados para la etapa de preprocesamiento como:
umbralado, deteccin de bordes, dilatacin, relleno y etiquetado de los objetos; tambin se
mencionaron las tcnicas que se utilizarn para obtener el vector de rasgos y la clasificacin.

El siguiente captulo trata de la metodologa propuesta para resolver el problema, utilizando los
mtodos y algoritmos mencionados en este captulo.





























48

CAPTULO 4

METODOLOGA DE SOLUCIN



4.1 INTRODUCCIN

Como se describi en el captulo 1, el problema consiste en reconocer caracteres manuscritos
aislados a partir de un documento guardado como archivo de imagen. En este captulo se
propone una metodologa usando tcnicas de procesamiento de imgenes y que en combinacin
con las Mquinas de Soporte Vectorial permite llegar a una solucin factible del problema.

La metodologa para resolver el problema se divide en tres etapas organizadas de la siguiente
manera:

Etapa de preprocesamiento. Aqu se deja la imagen libre de ruido para su mejor manipulacin
en las siguientes fases. A su vez esta etapa se divide en 5 subetapas: umbralado, deteccin de
bordes, dilatacin, relleno y tambin la segmentacin. sta ltima se va encargar de detectar los
caracteres con los que cuenta la imagen en el orden en que van apareciendo; es decir, el primero
que se encuentra se etiqueta con el 1, el segundo con el 2 y as sucesivamente, ya que
posteriormente se enviarn a la siguiente etapa (extraccin de caractersticas), de manera
individual para su clasificacin.

Etapa extraccin de caractersticas. Una vez que los caracteres fueron segmentados, el
siguiente paso es el de extraer los rasgos que los describan, esto es, el objeto se describe en
trminos numricos para que pueda ser procesado por la computadora. La forma ms comn de
describirlo es por medio de sus caractersticas, las cuales deben ser insensibles a posibles
variaciones tales como cambios de tamao, traslacin y rotacin.

Etapa de clasificacin. Esta es la ltima fase de la metodologa propuesta, la cual se encargar
de decidir a qu clase pertenece el carcter a ser reconocido dependiendo de las caractersticas
que le fueron previamente tomadas. Quien se va a encargar de realizar la clasificacin de los
objetos en estudio son las Mquinas de Soporte Vectorial.

La siguiente figura muestra la metodologa propuesta para dar solucin al problema.














49

Umbralado



Figura 4.1 Metodologa propuesta.

La figura 4.1 muestra las etapas y sub-etapas por las que tiene que pasar el documento. Se
observa que antes de entrar a la etapa de preprocesado, el documento tiene que entrar a una
preetapa que es la captura del mismo a travs de un escner, por lo que estamos hablando de un
reconocimiento fuera de lnea (off-line)

Cabe mencionar que en base a diversas pruebas realizadas con las operaciones morfolgicas
hasta llegar a una combinacin suficiente para ser utilizada en esta metodologa, fue como se
llego a los pasos usados en la etapa de preprocesamiento. Por ejemplo, se usaron combinaciones
como:

- Umbralado, adelgazamiento y etiquetado.
- Umbralado, adelgazamiento, dilatacin y etiquetado.
- Umbralado, dilatacin y etiquetado.
- Umbralado y etiquetado.
- Umbralado, bordes, dilatacin y etiquetado.
- Umbralado, bordes, dilatacin, relleno y etiquetado.
- Entre otras.

De estas combinaciones, la que arrojo mejores resultados fue: Umbralado, bordes, dilatacin,
relleno y etiquetado, respectivamente, que es precisamente la que se utiliza en la metodologa
propuesta.



Texto
manuscrito
Extraccin de
caractersticas
Dilatacin
Clasifica o d r
(SVM)
Caracteres
Reconocidos
Captura de te to x
(Escner)
Deteccin de
Bordes
Preprocesamiento
Relleno
Etiquetado



50

4.1.1 VARIACIONES DE ESTILO

Sabemos que cada persona posee un estilo de escritura propio con sus caractersticas distintivas.
Este hecho hace la tarea de reconocimiento ms complicada, y aunque este trabajo est
enfocado a un solo tipo de escritura, estas variaciones se tienen que tomar en cuenta pues
tambin estn presentes en estilo del escritor.

En nuestro sistema, estas variaciones se resuelven con las tcnicas utilizadas en la etapa de
preprocesamiento y extraccin de caractersticas.

Nivel de Ruido: intrnseco de la imagen y/o que pueda aparecer en el proceso de digitalizacin.

Pendiente o Slope: Es el ngulo de la lnea base del texto manuscrito respecto a la horizontal.

Inclinacin o Slant: Es el ngulo del trazo respecto a la vertical.


Altura de la escritura: La altura de la escritura vara entre diferentes autores para una tarea dada
y para un autor dado entre diferentes tareas. Es de relevancia notar la altura relativa entre letras
ascendentes (ej.: b, l, t, etc.), descendentes (ej.: p, q, j, etc.) y normales.

Anchura de las letras: El ancho de la escritura vara entre diferentes autores para una dada
tarea, y para un autor dado entre diferentes tareas.

Grosor del Trazo: el uso de diferentes elementos de escritura puede dar lugar a diferentes tipos
y grosores de trazo.

Los procesos de correccin de slope y slant son operaciones bastante estndar en sistema de
reconocimiento de caracteres en general [52, 53, 14, 13, 54]. En el trabajo [55] se demuestra una
cierta equivalencia en el orden en que lleven a cabo los procesos de correccin de pendiente y
de inclinacin de la escritura.

En nuestro caso la correccin de la pendiente e inclinacin se resuelven al utilizar los
invariantes Flusser, por ser invariantes a proyecciones (cierto grado de inclinacin).


4.2 OBTENCIN DE IMAGEN

En la seccin 1.7 se mostraron las formas de adquirir datos:

Fuera de lnea (off-line). Los datos son registrados por medio de escneres o cmaras.
En lnea (on-line). Los datos son registrados en tiempo real mientras se escribe.

En nuestro caso, el dispositivo de adquisicin de la imagen es un escner de la serie hp scanjet
8250 a 300 ppp de resolucin, cuyas caractersticas son apropiadas para esta implementacin.








51




Figura 4.2 Adquisicin de los datos a travs de un escner

Una vez que hemos escaneado el documento, se guarda como un archivo de imagen en un
directorio con formato BMP o JPG para que posteriormente el sistema lo adquiera y lo procese.
El tipo de formato es debido a que desde el principio se trabaj con ellos por ser de los ms
utilizados en tratamiento de imgenes.

4.3 PREPROCESAMIENTO

La etapa consiste en dejar la imagen con el menor porcentaje de ruido posible para aumentar las
posibilidades de xito en las siguientes fases, tambin tiene como objetivo segmentar la imagen
para procesar los objetos individualmente.

Comienza con la captura del archivo, se realiza un proceso para pasar a niveles de grises y a
partir de ah comienzan las siguientes etapas:

1. Umbralado. Es la parte donde se toma la imagen de texto en niveles de gris y se le
aplica un umbral para que la imagen de salida quede solo con valores de 0 (negro) y 1
(blanco).

2. Deteccin de bordes. Se detectan los bordes de cada carcter para delimitar los lmites
entre ellos.

3. Dilatacin. Se dilatan los bordes de cada objeto, debido a que en algunos de ellos lneas
no estn completamente cerradas o existen algunos puntos muy cercanos que no
pertenecen a dicho carcter.

4. Relleno. Se aplica un relleno a cada objeto para darle una mejor descripcin.

5. Etiquetado. Se aplica el etiquetado a los caracteres para indexarlos y llevarlos
posteriormente a la etapa de extraccin de rasgos.













52


4.3.1 NIVELES DE GRIS

Se captura el archivo de imagen y se convierte a escala de grises para dejarlo como una matriz
bidimensional. Ver figura 4.3












a) b)

Figura 4.3 Conversin a niveles de gris. a) Original, b) Niveles de gris

4.3.2 UMBRALADO

Como la imagen est en niveles de gris se le aplica un umbralado ya que los fines de este trabajo
as lo requieren, adems de que las tcnicas para extraer caractersticas se basan en imgenes
binarias.

Como se explic en el apartado 3.4.1 el umbralado consiste en poner en color blanco (o el nivel
ms alto) todos los pxeles que sobrepasen un umbral y en negro (o nivel ms bajo) los que sean
iguales o estn por debajo del umbral.

En este trabajo se utiliz la tcnica de Otsu`s para calcular el umbral de la imagen total. Aunque
como se ha mencionado, el umbral tambin se puede obtener en forma automtica a travs de
mtodos estadsticos [41] y [42].


a) b)

Figura 4.4 Umbralado de la imagen. a) Niveles de gris de vocales, b) imagen umbralada de vocales,


Trabajar con imgenes en blanco y negro puede ser ventaja y desventaja a la vez, ya que
depende del tipo de procesamiento que requiera la imagen. En el caso de esta metodologa, es
suficiente que la imagen sea binaria pues una imagen en niveles de gris es ms difcil de
manipular.



53

Una vez hecho el umbralado, la imagen pasa por una serie de filtros para liberarla de posibles
distorsiones en los caracteres, es decir, muchas veces los caracteres no estn completamente
cerrados o en sus orillas existen pequeos puntos, considerados como ruido, causados por el
movimiento de escritor.

Para eliminar estas pequeas imperfecciones se utilizan tcnicas de morfologa matemtica
descritas en el apartado 3.4.4.

Para eliminar pequeos puntos (ruido) que no pertenecen a los caracteres se realiza lo siguiente:
si el rea de estos puntos es menor a cierto umbral, se consideran ruido. Lo que se hace en estos
casos es que a estos puntos se le coloca el mismo valor que tiene el fondo para que se
consideren como tal.

4.3.3 DETECCIN DE BORDES

Los objetivos principales de un detector de borde son dos: una baja tasa de error y una buena
localizacin del borde. El primer objetivo se refiere a la capacidad del detector para clasificar
pxeles de la imagen como bordes, sin incluir elementos espurios como ruidos o manchas. Por
su parte, la propia forma del filtro puede dar lugar a una deteccin de borde ligeramente
trasladada, o incluso duplicada.

En nuestro caso decidimos utilizar el mtodo de Canny (ver apndice A-1) por ser uno de los
ms robustos contra el ruido (filtro ptimo) en comparacin con los otros mtodos para detectar
bordes.

Al aplicar el mtodo de Canny la imagen resultado queda como se muestra en la siguiente
figura.


a) b)

Figura 4.5 Deteccin de bordes de vocales. 1) Imagen binaria, 2) bordes de los objetos.


4.3.4 DILATACIN

Debido a que las lneas de algunos caracteres no estn completamente cerradas, aplicamos la
operacin dilatacin, pues una de sus caractersticas es la unin de pxeles cercanos al objeto.

Supongamos que todos los elementos del objeto son unos (1), si en el entorno correspondiente
de un pxel del objeto hay al menos un pxel con valor uno (1), entonces el pxel toma el valor
uno (se incorpora al objeto). Por lo tanto el objeto original se agranda.




54

Adems los agujeros pequeos o fisuras del objeto original se rellenan y las lneas del contorno
se hacen ms suaves. Por ello a este operador se le conoce como dilatacin. Ver [56].

La figura 4.8 muestra el resultado de aplicar el proceso de dilatacin en nuestro sistema a partir
de la imagen en la que se detectaron sus bordes.



a) b)

Figura 4.6 Dilatacin de caracteres vocales. a) bordes de caracteres, b) bordes dilatados.

4.3.5 RELLENO

Una vez aplicada la dilatacin a la imagen se contina con el proceso de relleno.

Cada objeto de la imagen est delimitado por sus bordes tanto interiores como exteriores, lo que
se hace es rellenar el interior de esos lmites con el mismo color con el que stos se encuentran.
Se puede observar que el borde de los objetos estn de color blanco (1) y el fondo de color
negro (0).

Al aplicar el proceso de relleno a la imagen, sta queda como se muestra en la siguiente figura.









a) b)

Figura 4.7 Relleno de los objetos. a) Caracteres dilatados, b) caracteres rellenados.


4.3.6 SEGMENTACIN Y ETIQUETADO

Terminado el proceso de relleno, se contina con la segmentacin de los objetos, es decir,
identificar cada uno de los caracteres aplicando un proceso de etiquetado para conocer el
nmero de los objetos en la imagen (nmero de caracteres).






55

El mtodo ms comn es basado en el concepto de componentes conexas [43] [44]. Se barre la
imagen por filas de la esquina superior izquierda a la derecha, colocando un ndice a cada objeto
encontrado, es decir, al primer objeto encontrado se indexa con el 1, al segundo con el 2, y as
sucesivamente hasta llegar a n objetos.

La siguiente figura muestra objetos etiquetados. En este caso la imagen contiene 6 objetos.



Figura 4.8 Etiquetado de caracteres.

Una vez que hemos etiquetado (indexado) a los caracteres, el sistema entra en un ciclo que va
desde el primero hasta los n objetos encontrados. A partir de ese momento cada objeto o
carcter se va a tratar como una imagen, pues el siguiente paso es de extraer los rasgos de cada
uno de acuerdo al orden en que fueron indexados para su reconocimiento.

Dentro del mismo ciclo, despus de calcular el vector caracterstico al primer carcter
indexado, ste vector ingresa a la funcin de clasificacin para decidir a qu clase pertenece.

Una vez reconocido y clasificado el primer objeto, el sistema regresa al segundo objeto
indexado y se realiza el mismo proceso. Este proceso se repite para todos los objetos indexados
y el sistema termina cuando ha reconocido y clasificado el ltimo objeto. La siguiente figura
muestra la descripcin anterior.

Objeto_1Objeto_N
Extraccin de
caractersticas
Clasifica or d
(SVM)


Figura 4.9 Proceso de reconocimiento y clasificacin.

Preprocesamiento
Objeto
Reconocido



56

4.3.7 CONSIDERACIONES PARA LA CLASIFICACIN

Cuando hablamos de reconocimiento de caracteres solamente esbozamos la solucin que se le
puede dar a este problema. Sin embargo, no nada ms se trata de reconocer y clasificar a los
caracteres, sino que para tener un buen reconocimiento se necesitan buenas bases. En este
trabajo uno de los objetivos es reconocer letras minsculas, letras maysculas y nmeros del 0
al 9.

Antes de continuar con las siguientes etapas mencionamos algunos aspectos que consideramos
nos pueden ayudar a realizar una mejor distincin entre los caracteres.

Podemos observar que hay caracteres altos y otros bajos (esto es relativo porque depende del
escritor).

Hablando de altura tenemos:

Caracteres altos. En esta clase entran todas las maysculas, los nmeros y algunas minsculas:
b, d, h, g, f, j, k, l, q, p, t)

Caracteres bajos. En esta clase se incluyen la minsculas restantes.

Por otro lado tenemos caracteres ambiguos y no ambiguos:

Caracteres ambiguos. Aquellos en que la versin en mayscula es morfolgicamente igual a la
minscula (solo cambia el tamao): K/k, P/p, Y/y, l/i I/l.

Caracteres no ambiguos. Las versiones mayscula y minscula son morfolgicamente
diferentes: P/f, h/k, j/g.

En este sentido el sistema propuesto realiza la clasificacin en base a los aspectos antes
mencionados. Por ejemplo, si el carcter a reconocer es mayor a cierta altura entonces se trata
de una mayscula o un nmero, y si es menor entonces se trata de una minscula.

De esta manera, por ejemplo, se har una distincin correcta de las letras l (ele minscula) y la i,
sin embargo, no ser as con el 1 puesto que son muy parecidos. Ms s lo har con los
caracteres ambiguos, es decir, no habr confusin con la K y la k, P con p Y con y. Entonces
este problema se resuelve de manera correcta. Puede haber confusiones con algn otro carcter
pero de su misma altura.

Se hace mencin que despus de decidir si se trata de un carcter alto o uno bajo se hace un
proceso para normalizar el tamao a 32x32. Esto con la finalidad de hacer ms fcil la
extraccin de caractersticas. Quedan exentos de este proceso las letras l, i y 1, ya que si se
aplica este procedimiento, la forma y tamao sern casi iguales y como consecuencia no sern
bien reconocidos por el clasificador.









57


Carcter
Etiquetado

Figura 4.10 Diagrama que muestra las consideraciones para la clasificacin.


4.4 EXTRACCIN DE CARACTERSTICAS

Una vez segmentados y etiquetados los caracteres, lo que sigue es calcular sus caractersticas.

4.4.1 EXTRACCIN 1

Para la extraccin de caractersticas de las letras minsculas bajas se utilizan los siguientes
rasgos:

Invariantes de Flusser:

I
1
= (u
20
*u
02
u
2
11
)/u
4
00
I
2
= (u
2
30
*u
2
03
- 6*u
30
*u
21
*u
12
*u
03
+ 4*u
30
*u
3
12
+ 4*u
3
21
*u
03
- 3*u
2
21
*u
2
12
)/u
10
00
.
I
3
= (u
20
*(u
21
*u
03
u
2
12
) - u
11
*(u
30
*u
03
- u
21
*u
12
) + u
02
*(u
30
*u
12
u
2
21
))/u
7
00


Excentricidad Compacidad Elongacin Tamao

. 1
2
2
a
b
e = .
4
2
A
P
F

=


2
P
A
E = . * 2
P
A
T =


Continuando con el proceso, tenemos lo siguiente:

Suponiendo que el primer carcter etiquetado es la letra i, observamos que se encuentra en los
caracteres bajos, entonces el procedimiento es el siguiente:

Rasgos
caracteres
bajos
Clasificador
(SVM)
Objeto
Reconocido
si
Normalizar
altura <= Ancho > Ancho >
no
si si
Normalizar
no
no
Rasgos
caracteres
altos



58

Como se trata de la i, el sistema determina que se trata de una carcter bajo (por su
tamao) y lo lleva a la categora de caracteres bajos.

Al tratarse de la letra i tampoco se realiza la normalizacin de tamao por los motivos
que se describieron antes (ver 4.3.7).

Pasa a la etapa de extraccin de caractersticas para obtener sus rasgos.

La siguiente figura muestra el procedimiento mencionado.


5.5217
16.6614
0.7542
0.9598
0.0065
-0.0000
-0.0000
Tamao

Elongacin

Compacidad


Excentricidad
I1

I2

I3


Se extraen
sus rasgos

Carcter
etiquetado
No aplica
normalizacin


Figura 4.11 Extraccin de rasgos para la letra i.


4.4.2 EXTRACCIN 2

El siguiente procedimiento para extraer rasgos, aplica para los caracteres que entran en la
categora de altos, es decir, todas las maysculas, nmeros y minsculas altas.

La siguiente tcnica ya se ha utilizado en otros trabajos de reconocimiento de objetos. Se trata
de obtener caractersticas por zonas de la imagen. Con base en Prez [57], este procedimiento
secciona la imagen en nueve zonas y toma dos descriptores por zona: el primero es la densidad
relativa de pxeles (d1= pxeles del carcter en la zona / pxeles totales) mientras el segundo
indica la orientacin y ubicacin relativa del grupo de pxeles del carcter en la zona.

En este trabajo se realiza una variante a esta tcnica en cuanto a los descriptores que se toman
por zona.













59

El procedimiento es el siguiente:
Seccionamos el carcter no en nueve zonas, sino en 4 zonas.









Figura 4.12 divisin de la letra b en cuatro zonas

A cada zona le calculamos solamente los tres primeros invariantes de Flusser.

Como a cada zona le calculamos tres invariantes de Flusser, en total tenemos 12 rasgos de la
imagen. Estos 12 rasgos se suman a los otros que hemos mencionado: elongacin,
excentricidad, compacidad, tamao y uno que se obtuvo de manera heurstica que se describe a
continuacin.

El siguiente rasgo se dise en primera instancia para diferenciar las letras b, d, p y q ya que los
rasgos de estos caracteres son muy parecidos.

Entonces, primeramente comenzamos con la b y con la d. Podemos observar que estos dos
caracteres son muy parecidos, principalmente porque el crculo lo tienen en la parte inferior, a
diferencia de la p y la q que lo tienen en la parte superior. Sin embargo, lo que hace diferente a
la letra b con la d es que el primero tiene el crculo del lado derecho y el segundo del lado
izquierdo.

En base a esa diferencia, se dise un algoritmo sencillo para obtener un rasgo que los haga
diferentes. Se trata de encontrar el primer pxel en la imagen, el pxel ms a la derecha y el pxel
ms a la izquierda.

El algoritmo se describe a continuacin:

1. Recorremos la imagen de izquierda a derecha y de arriba hacia abajo por filas.
2. Al primer pxel del carcter encontrado lo llamamos X1 y su valor ser el de la posicin
en la que se encuentre.
3. Si los pxeles siguientes de la fila no corresponden al caracter, el valor del pxel ms a la
izquierda X2 y ms a la derecha X3 tendrn el mismo valor que X1.
4. En la misma fila, si el pxel siguiente al primero corresponde al carcter y es mayor a
X1, entonces est ms a la derecha, por lo que actualizamos el valor de X3. Si los
siguientes pxeles en la fila no corresponden al carcter pasamos a la siguiente fila.
5. Si el primer pxel correspondiente al carcter es menor que X1, entonces est ms a la
izquierda, por lo que actualizamos X2 y le asignamos el valor de la posicin en que se
encontr.
6. Realizamos el proceso 4 y 5 para todas las filas hasta recorrer toda la imagen.






60

Una vez que obtenemos X1, X2 y X3, aplicamos la siguiente operacin para obtener el rasgo:

2 1
3 1
X X
X X
R

=

La siguiente figura es un ejemplo del algoritmo anterior aplicado a la letra b y d.




0 0 0 0 1 1 0 0 0 0
0 0 0 0 1 1 0 0 0 0
0 0 0 0 1 1 0 0 0 0
0 0 0 1 1 1 0 0 0 0
X1=5 X2=4
0 0 0 0 1 1 1 1 0 0
0 0 0 0 1 1 1 1 1 0
0 0 0 0 1 1 1 1 1 0
0 0 0 0 1 1 1 1 1 1
X3=10
0 0 0 0 1 1 1 1 1 0
0 0 0 0 1 1 1 1 0 0

2 1
3 1
X X
X X
R

= = | 5 - 10 | / | 5 4| = 5/1 = 5.
R=5


X2=2


0 0 0 0 0 1 1 0 0 0
0 0 0 0 0 1 1 0 0 0
0 0 0 0 0 1 1 0 0 0
0 0 0 0 0 1 1 1 0 0
X1=6
X3=8
0 0 1 1 1 1 1 0 0 0
0 0 1 1 1 1 1 0 0 0
0 1 1 1 1 1 1 0 0 0
0 0 1 1 1 1 1 0 0 0
0 0 1 1 1 1 1 0 0 0
0 0 0 0 0 0 0 0 0 0

2 1
3 1
X X
X X
R

= = | 6 - 8 | / | 6 2| = 2/4 = 0.5
R=0.5

Podemos observar que al aplicar al algoritmo, existe una buena distincin entre los caracteres b
y d.

Para diferenciar la p y la q, aplicamos el mismo algoritmo, la nica diferencia est en que el
recorrido de la imagen se har de abajo hacia arriba.




61


Puede ser que an aplicando el mtodo anterior, el rasgo de b y p sean parecidos. De la misma
forma puede ocurrir con el rasgo de la d y de la q. Pero este problema se resuelve aplicando el
mtodo que secciona la imagen en conjunto con los otros rasgos.

Finalmente, los rasgos utilizados para reconocer a los caracteres que pertenecen a la categora
de altos son: 12 rasgos de la imagen seccionada, Elongacin, Compacidad, Excentricidad,
Tamao y R que suman un total de 17.

Continuando con el proceso, supongamos que la segunda letra indexada es la b. Su
procedimiento es el siguiente:

El sistema determina que se trata de un carcter alto, por lo tanto el sistema lo lleva a la
categora de altos.

Se realiza el proceso de normalizacin, pues solamente a las letras i, l y 1 no se aplica
este proceso.

Posteriormente pasa a la etapa de extraccin de caractersticas.

La siguiente figura muestra el procedimiento mencionado:

0.1538
11.1800
17.8891
0.7025
0.7305
0.0092
-0.0000
-0.0000
0.0054
-0.0000
-0.0000
0.0071
-0.0000
-0.0000
0.0069
-0.0000
-0.0000

R

Tamao
Elongacin
Compacidad

Excentricidad
I1 celda 1

I2 celda 1
I3 celda 1

I1 celda 2
I2 celda 2

Normalizacin
I3 celda 2

I1 celda 3
I2 celda 3

Carcter
etiquetado
I3 celda 3

I1 celda 4
I2 celda 4

I3 celda 4



Se extraen
sus rasgos

Figura 4.13 Extraccin de rasgos para la letra b.










62


4.5 ENTRENAMIENTO Y CLASIFICACIN

Esta es la ltima fase del sistema propuesto, que es donde se asigna la clase a los caracteres que
se van a reconocer.

Cuando se obtiene el vector de caractersticas que describe al carcter, este vector es el que se
toma para decidir a qu clase pertenece.

Existen varios mtodos que realizan esta tarea como el clasificador bayesiano, Redes neuronales
Multiclase (Retropropagacin), Clasificador de distancia ms cercana (KNN) o el clasificador
de distancias mnimas (Euclidiano).

En nuestro caso, utilizamos a las Mquinas de soporte Vectorial (MSV), por ser una tcnica
muy eficaz para resolver este tipo de problemas, adems de que presenta varias ventajas con
respecto a los otros clasificadores.

Las MSV toman los datos de entrada y los mapea a un espacio de caractersticas mayor en la
que se busca un hyperplano ptimo que separe los datos de entrada a sus respectivas clases. La
base de las MSV recae en los llamados vectores soporte, ya que de ellos depende que se
encuentre el hyperplano ptimo. Consultar [34,35].

Para el proceso de entrenamiento y clasificacin se utiliz la caja de herramientas de Matlab
[stprtool] [58] que trata sobre las Mquinas de soporte vectorial.


4.5.1 ENTRENAMIENTO

Para el entrenamiento de los datos se requiere el vector de rasgos de cada uno de los objetos a
clasificar.

El proceso se hace del siguiente modo:

Para los datos de entrada que pertenecen a una cierta clase, sus respectivos vectores de rasgos se
colocan en una matriz X en forma de columnas. Por ejemplo, si se ingresan 5 vectores de rasgos
que pertenecen a la letra a y 5 vectores de rasgos que pertenecen a la letra c, entonces cada uno
de estos datos o vectores se colocaran en una matriz en forma de columna. Por lo tanto si el
tamao del vector es de 7 se tendr una matriz X de tamao 7x10 (7 filas y 10 columnas).

Cabe mencionar que se deben de colocar primero todos los datos que pertenecen a una clase y
despus todos los que pertenecen a la siguiente clase.

Para cada dato de entrada X le corresponde una salida Y por lo que tenemos una pareja (x, y).
En este sentido debemos indicarle al mtodo de entrenamiento cul es la salida Y que le
corresponde a cada entrada X. Es decir, si tenemos 5 datos de entrada (x
1
, x
2
, x
3
, x
4
, x
5
) para la
letra a, entonces debemos indicarle las 5 salidas (y
1
, y
2
, y
3
, y
4
, y
5
) que van a pertenecer a esa
clase.







63


Tabla 4.1 Datos de entrada de la matriz X para letras a y c.

a a a a a c c c c c
89 90 88 86 96 210 230 224 210 236
0.001 0.015 0.034 0.023 0.010 0.245 0.234 0.253 0.243 0.232
15 20 23 19 14 0.001 0.015 0.034 0.023 0.010
210 230 224 210 236 0.540 0.530 0.528 0.537 0.560
0.245 0.234 0.253 0.243 0.232 89 90 88 86 96


La salida Y para los datos de entrada son:
- Para la entrada a la salida es 1
- Para la entrada c la salida es 2

El tamao de Y es de 1x10, ya que solo se necesita indicar la clase a la que pertenece cada
entrada.

Tabla 4.2 Salida Y correspondiente a la entrada X.

1 1 1 1 1 2 2 2 2 2


Entonces, para la estrada a la salida es 1 y para la entrada c la salida es 2:

Tabla 4.3 Entrada X y su correspondiente salida Y.
X
Y
Y

a a a a a c c c c c
1 1 1 1 1 2 2 2 2 2


Como se mencion en el apartado 3.7 las mquinas de soporte vectorial maneja cuatro mtodos
para la clasificacin multiclase:

MSV uno contra todos (one-against-all).
MSV en parejas (pairwise).
MSV correccin de error por cdigo de salida (error-correcting output code ) ECOC.
MSV todos contra uno (all-against once).

Realizamos pruebas entrenando con MSV-oaa y MSV-aao y los resultados eran muy similares,
solo con un pequeo porcentaje de mayor efectividad de la primera sobre la segunda, por lo que
decidimos utilizar MSV-oaa para entrenar los datos de los caracteres.

Se recomienda dar lectura a la caja de herramientas [58] de Mquinas de soporte vectorial para
una mejor comprensin.







64

La funcin de la caja de herramientas de Mquinas de Soporte Vectorial que permite entrenar
los datos es oaasvm (uno contra todos), tal como se muestra a continuacin:

Entrenamiento de los datos:

datos = load(datos_entrada); Carga datos de entrada
options.solver = smo; Margen Optimizador de Secuencia Mnima
options.ker = rbf; Kernel Redes de Base Radial (tambin puede
ser polinomial)
options.arg = 1; Argumento del kernel
options.C = 10; Constante de regularizacin
model = oaasvm(datos,options ); Entrenamiento de datos

figure;
ppatterns(datos); Muestra los patrones como puntos en el espacio de
caractersticas
pboundary(model); Muestra el lmite de decisin del clasificador





Figura 4.14 Entrenamiento de datos usando la funcin one-against-all (uno contra todos) del toolbox de Mquinas
de soporte vectorial
.











65


4.5.2 CLASIFICACIN

Una vez hecho el entrenamiento, lo que sigue es clasificar los datos. Una buena clasificacin
depende de que los datos estn bien entrenados, es decir, si el vector de rasgos de cada objeto,
efectivamente es diferente a los dems, la clasificacin se har de manera correcta.

Nuestro sistema utiliza, como se ha mencionado antes, a las mquinas de soporte vectorial
multiclase. Para el entrenamiento se utiliz MSV-oaa. Ahora en su fase de clasificacin, estn
las funciones svmclass y mvsvmclass [58]. La primera se utiliza para clasificar datos en general
y la segunda es la que se utiliza para clasificar los datos por voto mayoritario.

4.5.3 EJEMPLO

A continuacin se muestra un ejemplo para entrenar y clasificar a las vocales utilizando las
funciones antes mencionadas.

Una vez que se ha pasado por la etapa de preprocesamiento (seccin 4.3) y la etapa de
extraccin de caractersticas (seccin 4.4), se contina con el entrenamiento de los datos que se
obtiene usando el siguiente cdigo:

Entrenamiento:

datos = load(vocales); Carga datos vocales
options.solver = smo; Margen Optimizador de Secuencia Mnima
options.ker = rbf; Kernel RBF
options.arg = 1; Argumento del kernel
options.C = 10; Constante de regularizacin
model = oaasvm(datos,options ); Entrenamiento de datos conla funcin oaasvm
(Uno contra todos) de las MSV.

El parmetro model contiene la informacin de los datos entrenados. Por ejemplo:

nsv = # de vectores soporte.
b = bias.
fn = funcin de clasificacin.
krcnt = valor del kernel.

Alpha < 29 x 5 Double>
b -0,78583,-0,39865,-0,63997,-0,83036, -0,35947
sv < 1x1 struct>
nsv 29
kercnt 1.216e+005
options <1 x1 struct>
fun svmclass
trnerr 0






66

En la figura 4.15 se muestran los datos de las vocales ya entrenados. En esta figura podemos
observar, en primera instancia, la separacin que hay entre cada una de las letras de las vocales;
tambin podemos observar en la parte inferior izquierda que entre las letras a y o pudiera haber
confusiones, sin embargo tambin se observa que existen unas lneas entre ellas que no son otra
cosa ms que los lmites de separacin para cada clase. En cuanto a las vocales restantes
observamos que aparentemente no hay ningn problema pues la separacin que existe entre las
mismas es notable.





















Figura 4.15 Entrenamiento de vocales

Clasificacin:

Una vez entrenada las vocales, se procede a la clasificacin. Para esto, tomaremos una letra a
como prueba:

El vector de rasgo de la letra a de prueba es:

14.5243
14.1832
0.8860
0.2272
0.0069
-0.0000
-0.0000

El patrn de la letra a es evaluada por el parmetro model y la funcin svmclass es quien
determina a que clase pertenece dicho patrn.







67

tst=patron; patrn de entrada (prueba) de letra a.
res=svmclass(tst,model); evaluacin y clasificacin del patrn.

svmclass devuelve en la variable res el valor asignado a la clase correspondiente al patrn de
entrada.

Valor para clase a es 1
Valor para clase e es 2
Valor para clase i es 3
Valor para clase o es 4
Valor para clase u es 5
Si el valor devuelto es 1 entonces la letra es a
Si el valor devuelto es 2 entonces la letra es e
Si el valor devuelto es 3 entonces la letra es i
Si el valor devuelto es 4 entonces la letra es o
Si el valor devuelto es 5 entonces la letra es u

res = 1
La letra es a

En este caso, la funcin svmclass devolvi el valor 1 que corresponde a la clase a, por lo tanto,
la clasificacin se realiz de manera correcta.


4.6 RESUMEN DEL CAPTULO

En este captulo se llev a cabo la metodologa propuesta, utilizando los mtodos y tcnicas
descritas en el captulo 3 para resolver el problema. Pudimos observar la manera en que el
sistema realiza el proceso de reconocimiento desde la etapa de adquisicin de los datos, pasando
por la etapa de preprocesado, etapa de obtencin del vector de rasgos y finalmente la etapa de
entrenamiento y clasificacin.

En el siguiente captulo se muestran los experimentos realizados utilizando metodologa descrita
y los resultados obtenidos de la misma.



















68

CAPITULO 5

RESULTADOS EXPERIMENTALES


En este captulo se exponen los resultados obtenidos utilizando la metodologa propuesta para
letras minsculas, letras maysculas y nmeros.

Software:

La aplicacin fue desarrollada usando Matlab en su versin 7.0, debido a su fcil manejo para
trabajar en procesamiento de imgenes. Lo que concierne a las maquinas de soporte vectorial,
se utiliz la caja de herramientas de Matlab [58] que es muy sencillo de utilizar.

Hardware

El hardware utilizado en este proyecto es:

Computadora Toshiba Sattelite:
Procesador Pentium IV
Memoria RAM de 512
Escner Hp 8250:

Para comparar los resultados del sistema propuesto, se program una red neuronal entrenada
con el algoritmo de retropropagacin con sus valores de parmetro estndar, adems del
clasificador Euclidiano (distancia mnima).

Antes de mostrar los resultados finales que se obtuvieron con el sistema propuesto, se presentan
resultados parciales en los que se utilizan descriptores de rasgos diferentes.


5.1 RESULTADOS UTILIZANDO LOS INVARIANTES DE HU

Se presentan los resultados obtenidos por el sistema utilizando como vector de rasgos los
momentos invariantes de Hu.

Recordemos que los invariantes de Hu, son invariantes a rotacin, traslacin y escala, por lo que
podemos suponer que causar diversas confusiones entre algunos caracteres, por ejemplo las
letras b, d, p y q, debido a las caractersticas antes mencionadas.


NMEROS

Para el caso de los nmeros se utilizaron 20 dgitos por clase, es decir, un total de 200 muestras.
Para cada clase se tomaron al azar el 50% de datos para entrenar y 50 % para las pruebas.







69

Entrenamiento

En la figura 5.1 se muestra el entrenamiento de los nmeros utilizando como vector de rasgos a
los invariantes de Hu y a las mquinas de soporte vectorial como funcin de entrenamiento.
Podemos observar una gran cantidad de datos que no presentan buena separacin, de hecho,
tampoco se observa un hyperplano de separacin entre las clases que intervienen. Puede
suponerse que esto se debe a que existen nmeros que tienen una forma parecida y presentan
rasgos similares principalmente por ser invariantes a la rotacin, caracterstica de los
invariantes de Hu. Como ejemplo se tiene el caso del 3 con el 5 el 6 y el 9.



Figura 5.1. Entrenamiento de nmeros con invariantes de Hu

Resultados

La tabla 5.1 muestra los resultados obtenidos tomando como vector de rasgos a los invariantes
de Hu y como funcin de clasificacin a las Mquinas de Soporte Vectorial.

Tabla 5.1 Reconocimiento de nmeros utilizando momentos de Hu.

Nmeros Entrenamiento Pruebas Reconocimiento
0 10 10 40%
1 10 10 60%
2 10 10 60%
3 10 10 80%
4 10 10 100%
5 10 10 60%
6 10 10 60%
7 10 10 60%
8 10 10 60%
9 10 10
40%

62%
Promedio de
reconocimiento








70




Promedi o de reconoci mi ento = 62%
0%
20%
40%
60%
80%
100%
120%
0 1 2 3 4 5 6 7 8 9
Nmeros
R
e
c
o
n
o
c
i
m
i
e
n
t
o

Grfica 5.1 Reconocimiento
de nmeros usando los
invariantes de Hu como
vector de rasgos.
De acuerdo a la tabla 5.1 y a la grfica 5.1 observamos que los nmeros que presentan menor
porcentaje de reconocimiento son el 0 y el 9 con 40% y los que presentan mayor reconocimiento
son el 4 con el 100% y el 3 con el 80%. Para el resto de los nmeros el porcentaje de
reconocimiento est con el 60% para cada uno.

Al observar el promedio de reconocimiento (62 %) podemos concluir que tomar los invariantes
de Hu como descriptor de rasgos no es muy factible.


MINSCULAS

Para el caso de las letras minsculas se utilizaron 20 dgitos por clase, es decir, un total de 520
muestras. Para cada clase se tomaron al azar el 50% de datos para entrenar y 50 % para las
pruebas.


Entrenamiento

La figura 5.2 muestra el entrenamiento de las letras minsculas usando como vector de rasgos a
los momentos invariantes de Hu y como funcin de entrenamiento a las Maquinas de Soporte
Vectorial. En ella podemos observar la gran cantidad de datos que presentan caractersticas muy
parecidas debido a la invarianza de rotacin que tienen los momentos de Hu. Tales son los casos
de las letras c, n y u que son muy parecidas y simplemente tienen una orientacin diferente,
adems los casos de las letras b, d, p y q que presentan esa misma caracterstica. Se tiene que
tomar en cuenta que mientras mayor sea el nmero de clases, mayor ser la complejidad para
poder distinguirlos.





71


Figura 5.2. Entrenamiento de minsculas usando invariantes de Hu.

Resultados

La tabla siguiente muestra los resultados obtenidos usando los momentos de Hu como vector
descriptor y a las Mquinas de Soporte Vectorial como clasificador.

Tabla 5.2 Reconocimiento de minsculas usando momentos de Hu como vector de rasgos.
Letra Entrenamiento Pruebas Confusiones
Reconocimiento
SVM
a 10 10 o,,o,,c,,b,o,e 20%
b 10 10 q, q, d, d 60%
c 10 10 r, k, u, n, g, u, n 30%
d 10 10 o, q, b, b, p, p, b 30%
e 10 10 a, q, u, n, n, m 40%
f 10 10 p, ,j, k , m, g, z 40%
g 10 10 0%
h 10 10 z, e, z, ,m, n, n, n, b,n 10%
i 10 10 l, l, l, l, l, l, l, l 20%
j 10 10 x, u, t, t, t, g, l, l 20%
k 10 10 t, h, h, h, h, t, c 30%
l 10 10 i, i, i, j, j, j, j, i 20%
m 10 10 e, e, w, w, w, w 40%
n 10 10 c, c, g, u, c, k, c, c 20%
o 10 10 0%
p 10 10 d, b, d, d, d 50%
q 10 10 d, o, p, b 60%
r 10 10 0%
s 10 10 c, c, e, e, e k, k, k 20%
t 10 10 k, k, e 70%
u 10 10 n, s, r, v, n 50%
v 10 10 x, u, u, u, x 50%
w 10 10 m, m, m, m, m, v, v 30%
x 10 10 e,nl,nl,nl,c,c,nl,v,nl,nl 0%
y 10 10 w,nl,w,nl,nl,m 40%
z 10 10 nl,k,g,nl,g,nl,g,nl 20%

30% Promedio de
reconocimiento



72


Promedio de reconocimiento = 30 %
0%
10%
20%
30%
40%
50%
60%
70%
80%
a b c d e f g h i j k l m n o p q r s t u v w x y z
Minsculas
R
e
c
o
n
o
c
i
m
i
e
n
t
o

Grfica 5.2 Reconocimiento de minsculas usando momentos de Hu como vector de rasgos.

Utilizando la metodologa propuesta y de acuerdo a estos resultados, podemos concluir que
utilizar los momentos invariantes de Hu como vector de rasgos no es muy satisfactorio.
Primeramente, recordemos que los momentos de Hu son invariantes a la traslacin, rotacin y
escala, lo cual trae varios problemas para reconocer caracteres. Como ejemplo podemos
mencionar a las letras b, q, p, y d, que de acuerdo a los resultados la confusin entre ellos es
muy alta, lo mismo podemos decir de las letras c, n, u, y m, w, adems de que las letras g, o, r y
x, tuvieron un porcentaje de reconocimiento del 0 %.

En el caso de los nmeros, el porcentaje de reconocimiento result ser un poco mejor, aunque
todava est lejos de ser lo deseado.

5.2 RESULTADOS UTILIZANDO MOMENTOS CENTRALES

A continuacin se muestran los resultados obtenidos por el sistema utilizando los momentos
centrales. Estos momentos so invariantes a la traslacin y llevan acabo una mejora en el
reconocimiento.

MINSCULAS

Para estas pruebas tambin se utilizaron 20 muestra para cada letra minscula. Se utiliz el 50%
de datos para entrenamiento y 50% para pruebas.

Entrenamiento

Figura 5.3
Entrenamiento de
minsculas usando
momentos centrales.



73


La figura anterior muestra el entrenamiento de las letras minsculas usando como vector de
rasgos a los momentos centrales y como funcin de entrenamiento a las Maquinas de Soporte
Vectorial. En ella podemos observar que la separacin que existe entre las letras no es muy
notable por lo que el problema de confusin de letras an sigue prevaleciendo debido a que
varias de ellas presentan caractersticas muy parecidas.

Resultados

La tabla siguiente muestra los resultados obtenidos usando los momentos centrales como vector
descriptor y a las Mquinas de Soporte Vectorial como clasificador.

Tabla 5.3 Reconocimiento de minsculas con momentos centrales

Letras Entrenamiento Pruebas Confusiones Reconocimiento
a 10 10 o,e,o 70%
b 10 10 t,h,q,h 60%
c 10 10 s,k,n,e,z 50%
d 10 10 h,f,h 70%
e 10 10 s,c,v,k 60%
f 10 10 y,y,y,y 60%
g 10 10 F,p,p,d,q,f,q,j,f,q 0%
h 10 10 q,t,q,q,t,t,j,t 20%
i 10 10 l,d,d,d,l,l,d 30%
j 10 10 y,y,y 70%
k 10 10 Q,q,q,q,qf,t,q,q,t, 0%
l 10 10 d,i,i,i,i,i,i,i 20%
m 10 10 z,z 80%
n 10 10 c,s,c,e,c 50%
o 10 10 b,a,b,a,a 50%
p 10 10 f,f,d,f,u 50%
q 10 10 k,k,y,t 60%
r 10 10 n,n,j,c,n,n,n,j,j 10%
s 10 10 k,q,k,n,n,c,n,x 10%
t 10 10 N,n,c,n,n,n,c,d,h 10%
u 10 10 j,j,c,v,q 50%
v 10 10 c,h,c,c,c,c 40%
w 10 10 e,z 80%
x 10 10 U,r,r,v,c,v,c,,r,v,r 0%
y 10 10 f,f,j,f 60%
z 10 10 v,v,m,w,e 50%

43%
Promedio de
reconocimiento











74


Promedio de reconocimiento = 43 %
0%
20%
40%
60%
80%
100%
a b c d e f g h i j k l m n o p q r s t u v w x y z
Minsculas
R
e
c
o
n
o
c
i
m
i
e
n
t
o

Grfica 5.3 Reconocimiento de letras con momentos centrales.

De acuerdo a la tabla y grfica anterior podemos observar que utilizando a los momentos
centrales como vector de caractersticas, el porcentaje de reconocimiento aumenta con respecto
a los invariantes de Hu, aunque sigue estando lejos de lo esperado.

Podemos decir que la causa de este aumento es debido a que los momentos centrales solo son
invariantes a la traslacin y no a la escala ni a la rotacin. Al evitar la rotacin de los objetos, el
problema de las confusiones mencionadas anteriormente para las letras b, d, p, q se evitan en
buena medida, sin embargo no est del todo resuelto; adems an existen letras que tienen un
porcentaje de reconocimiento del 0 % como son el caso de las letras g, k y x.

Esto puede suponer que si se utiliza los momentos centrales en combinacin con otros rasgos, el
porcentaje de reconocimiento pueda aumentar.


5.3 RESULTADOS CON INVARIANTES DE FLUSER

Debido a que los resultados obtenidos con los momentos invariantes de Hu y los momentos
centrales no resultaron ser suficientes para reconocer caracteres, se opt por buscar otra
alternativa para tal funcin. De sta forma se decidi recurrir a los invariantes de Flusser
mencionada en el captulo 3.5.1. sta es una modificacin a los invariantes de Hu como lo
menciona en el artculo [48], en la que una de sus principales caractersticas es que son
invariantes a proyecciones o trasformaciones de los objetos.

A continuacin se muestran los resultados obtenidos utilizando los invariantes de Flusser como
vector de rasgos.

MINSCULAS

Al igual que en los experimentos anteriores se usaron 20 muestras por clase. 50% para
entrenamiento y 50% para pruebas, obtenindose los siguientes resultados.






75

Entrenamiento

En la siguiente figura se muestra el entrenamiento de las letras minsculas utilizando como
vector de rasgos a los invariantes de Flusser y a las Mquinas de Soporte Vectorial como
funcin de entrenamiento. En ella podemos observar que existen varias clases que no presentan
buena separacin, sin embargo, tambin observamos que existen otras clases que si lo presentan.




Figura 5.4 Entrenamiento de minsculas usando invariantes de Flusser.

Resultados

La tabla siguiente muestra los resultados obtenidos usando los invariantes de Flusser como
vector de rasgos y a las Mquinas de Soporte Vectorial como funcin de clasificacin.

Tabla 5.4 Reconocimiento minsculas con invariantes de Flusser

Letras Entrenamiento Pruebas Confusiones Reconocimiento
a 10 10 o,e,o,e 60%
b 10 10 t,h,q 70%
c 10 10 s,k,n,e 60%
d 10 10 h,f,h,b 60%
e 10 10 s,c,v,a 60%
f 10 10 l,y,y,t 60%
g 10 10 f,q,j,f 60%
h 10 10 q,t,q,q,t 50%
i 10 10 l,l,d 70%
j 10 10 y,y,y 70%
k 10 10 a,a,t 70%
l 10 10 d,i,i 70%
m 10 10 z,z,a 70%
n 10 10 c,s,c,e,c 50%
o 10 10 b,a,a,a 60%
p 10 10 d,f,u 70%
q 10 10 k,p,o 70%
r 10 10 n,,j,,j,h,v 50%



76

s 10 10 q,k,n,n,c,c 40%
t 10 10 n,c,n 70%
u 10 10 n, j,,j,c,v,q 60%
v 10 10 c,c,c 70%
w 10 10 e,z,m,z,a 50%
x 10 10 r,v,c,v,c 50%
y 10 10 f,f,j,f 60%
z 10 10 v,v,m,w,e 50%

61%
Promedio de
reconocimiento

Promedio reconocimiento = 61 %
0%
10%
20%
30%
40%
50%
60%
70%
80%
a b c d e f g h i j k l m n o p q r s t u v w x y z
Minsculas
R
e
c
o
n
o
c
i
m
i
e
n
t
o

Grfica 5.4 Reconocimiento de letras con invariantes de Flusser.

De acuerdo a los resultados mostrados en la tabla 5.4 y la grfica 5.4 podemos observar que el
reconocimiento de las letras minsculas aumenta de manera considerable. Las confusiones que
hay con las letras b, d, p y q es de aproximadamente del 30 %, es decir de cada 10 letras de b, 3
no la clasifica de manera correcta, lo mismo ocurre con la d, p y q. Adems, las letras g, k y x ya
presentan un buen porcentaje de reconocimiento, pues con los vectores de rasgos anteriores
presentaban 0%.

NMEROS

Para el caso de los nmeros se usaron 20 muestras por clase. 50% para entrenamiento y 50%
para pruebas, obtenindose los siguientes resultados.

Entrenamiento

En la siguiente figura se muestra el entrenamiento de los nmeros utilizando como vector de
rasgos a los invariantes de Flusser y a las Mquinas de Soporte Vectorial como funcin de
entrenamiento. Aparentemente no hay una buena separacin entre las clases, y en efecto no la
hay, pero tambin podemos apreciar que existe una pequea separacin entre algunas de ellas.
Esto lo podemos apreciar mejor en los resultados obtendos.





77



Figura 5.5 Entrenamiento de nmeros usando invariantes de Flusser.

Resultados

La siguiente tabla muestra los resultados para el reconocimiento de nmeros usando como
vector de rasgos a los invariantes de Flusser y a las Mquinas de Soporte Vectorial como
funcin de clasificacin.

Tabla 5.5 Reconocimiento de nmeros con invariantes de Flusser
Nmeros Entrenamiento Pruebas Reconocimiento
0 10 10 70%
1 10 10 70%
2 10 10 70%
3 10 10 80%
4 10 10 100%
5 10 10 60%
6 10 10 60%
7 10 10 60%
8 10 10 60%
9 10 10 60%

69%

Promedio reconocimiento = 69 %
0%
20%
40%
60%
80%
100%
120%
0 1 2 3 4 5 6 7 8 9
Nmeros
R
e
c
o
n
o
c
i
m
i
e
n
t
o

Promedio de
reconocimiento
Figura 5.5 Reconocimiento de nmeros con invariantes de Flusser.




78

De acuerdo a los resultados que muestran la tabla 5.5 y la grfica 5.5, observamos el
considerable aumento en el porcentaje de reconocimiento que se da con lo nmeros. De entrada,
llama la atencin el reconocimiento de nmero 4 pues de 10 datos de prueba que se tomaron, en
todos los casos el sistema lo reconoci de manera correcta, para los dems casos el porcentaje
de reconocimiento no baj del 60%.

Los invariantes de Flusser por si solos resultaron ser ms eficientes en cuanto al reconocimiento
de caracteres que los rasgos anteriores utilizando la metodologa propuesta. Sin embargo, los
resultados todava estn lejos de ser los esperados.


5.4 RESULTADOS CON INVARIANTES DE FLUSER Y OTRAS MEDIDAS
GEOMETRICAS

En los resultados anteriores pudimos observar que utilizar a los invariantes de Flusser el
porcentaje de reconocimiento aument de manera considerable, aunque los resultados distan de
ser los esperados.

En consecuencia se decidi hacer una combinacin de tcnicas en la que se incluan a los
invariantes de Flusser y otras medidas geomtricas para determinar el vector de caractersticas
que permitan reconocer de manera ms eficiente a los caracteres.

De este modo, finalmente se propuso utilizar como vector de caractersticas:

Los tres primeros invariantes de Flusser, por ser invariantes a transformaciones
(proyecciones) del objeto.
La excentricidad, que es un parmetro importante en la definicin de elipses.
Compacidad del objeto, que es invariante a cambios de escala. Importante porque las
letras manuscritas aisladas no tienen un tamao estndar.
Elongacin, que es un parmetro que no depende del tamao de la regin donde se
encuentra el objeto.
Tamao, tomado en cuenta en esta metodologa para determinar si se trata de una letra
minscula o mayscula.

Recordemos que de acuerdo a la metodologa propuesta, se reconocern letras minsculas bajas,
minsculas altas, nmeros y letras maysculas. A continuacin, se muestra el entrenamiento,
reconocimiento y clasificacin de cada una de stas categoras y al final se hace una
comparativa con la red neuronal de retropropagacin y el clasificador euclidiano.

MINSCULAS BAJAS

En la categora de minsculas bajas se encuentran los siguientes caracteres: a, c, e, i, k, m, n, o,
r, s, u, v, w, x y z.

Para esta categora se utilizaron 100 muestras por clase, 50% de cada clase para entrenamiento y
50% de cada clase para pruebas.







79

Entrenamiento

La siguiente figura muestra el entrenamiento de stos caracteres, en la que aparentemente las
clases pertenecientes a esta categora se encuentran muy juntas, lo que hace pensar que habr
confusiones al momento de la clasificacin; sin embargo, podemos observar claramente el
hyperplano de separacin que existe entre ellas, lo cual tambin hace suponer que s existe una
separacin (que puede ser mnima).


Figura 5.6
Entrenamiento de
minsculas bajas usando
rasgos propuestos

Resultados de reconocimiento para minsculas bajas

La tabla siguiente muestra los resultados obtenidos usando el vector de rasgos propuestos y a las
Mquinas de Soporte Vectorial como funcin de clasificacin.

Tabla 5.6 Resultados de minsculas bajas con rasgos propuestos.
Letras Entrenamiento Pruebas Confusiones Reconocimiento
a 50 50 100%
c 50 50 n,n,u,u,v 90%
e 50 50 100%
i 50 50 100%
k 50 50 x(5),n(2),s,r(2) 80%
m 50 50 100%
n 50 50 c(4),k(2),u(4) 80%
o 50 50 100%
r 50 50 100%
s 50 50 i(3),r(3),x(3),z 80%
u 50 50 c(5),k,n(4) 80%
v 50 50 k(2),r(3),u(4),x 80%
w 50 50 m(5) 90%
x 50 50 i(2),k(3),r(3),s(2) 90%
z 50 50 k(3),n,s(4),x(2)
80%
Promedio
90%
Promedio de
reconocimiento








80

Procentaje reconocimiento = 90 %
0%
20%
40%
60%
80%
100%
120%
a c e i k m n o r s u v w x z
Minsculas bajas
P
o
r
c
e
n
t
a
j
e

Grfica5.6 Reconocimiento de letras minsculas bajas con rasgos propuestos.

Al apreciar la tabla 5.6 y la grfica 5.6, observamos que al utilizar el vector de rasgos propuesto
para esta categora (seccin 4.4.1), el reconocimiento de minsculas bajas es bueno (90% de
reconocimiento), en donde el menor porcentaje obtenido fue del 80% (letras k, n, s, u, v, z).

MINSCULAS ALTAS

En la categora de minsculas altas se encuentran los siguientes caracteres: b, d, f, g, h, j, l, p, q,
t, y.

Para esta categora se utilizaron 100 muestras por clase, 50% para entrenamiento y 50% para
pruebas.

La siguiente figura muestra el entrenamiento de stos caracteres. Se puede apreciar que
aparentemente las clases pertenecientes a esta categora se encuentran muy juntas, lo que hace
pensar que habr confusiones al momento de la clasificacin; sin embargo, podemos observar
que existe un hyperplano de separacin entre ellas, lo cual hace suponer una distincin entre las
mismas.



Figura 5.7 Entrenamiento de minsculas altas usando rasgos propuestos





81

Resultados de reconocimiento de minsculas altas

La tabla siguiente muestra los resultados obtenidos para minsculas altas usando el vector de
rasgos propuestos y las Mquinas de Soporte Vectorial como funcin de clasificacin.

Tabla 5.7 Resultados de minsculas altas con rasgos propuestos.

Letras Entrenamiento Pruebas Confusiones Reconocimiento
b 50 50 100%
d 50 50 100%
f 50 50 h(6), j(4), g(5), t(5) 80%
g 50 50 f(3), h(4), j(3) 90%
h 50 50 g(3), j(3), k(4) 90%
j 50 50 g(5), f(6), t(3), k(3), y(3) 80%
l 50 50 100%
p 50 50 100%
q 50 50 p(3), y(2), d(3), b(2) 90%
t 50 50 f(7), y(4), k(3), g(3), h(3) 80%
y 50 50 f(4), g(4), h(3), j(6), k(3) 80%
Promedio 90%


Reconocimiento = 90%
0%
20%
40%
60%
80%
100%
120%
b d f g h j l p q t y
Minsculas altas
P
o
r
c
e
n
t
a
j
e

Promedio de
reconocimiento
Grfica 5.7 Reconocimiento de letras minsculas altas con rasgos propuestos.

De acuerdo a los resultados mostrados en la tabla y grafica anteriores, observamos que al
utilizar el vector de rasgos propuesto para esta categora (seccin 4.4.2), el promedio de
reconocimiento para las letras minsculas altas es considerable. En donde el menor porcentaje
fue del 80% para las letras f, j, t, y.


MAYUSCULAS

En esta categora entran todas las letras maysculas.

Para esta categora se utilizaron 50 muestras por clase, 50% para entrenamiento y 50% para
pruebas.







82

Entrenamiento

La siguiente figura muestra el entrenamiento de letras maysculas. Aparentemente las clases
pertenecientes a esta categora se encuentran muy juntas, lo que hace pensar que habr
confusiones al momento de la clasificacin, y en efecto s existen algunas clases que tienen
rasgos muy similares, lo que puede ocasionar algunas confusiones.



Figura 5.8 Entrenamiento de maysculas usando rasgos propuestos


Resultados de reconocimiento de letras maysculas

La tabla siguiente muestra los resultados para reconocimiento de letras maysculas usando el
vector de rasgos propuesto y a las Mquinas de Soporte Vectorial como funcin de
clasificacin.

Tabla 5.8 Resultados de maysculas con rasgos propuestos.
Maysculas Entrenamiento Pruebas Confuciones MSV
A 25 25 R,R,K 90
B 25 25 100
C 25 25 G,G,K,U,U 80
D 25 25 B,B,O 90
E 25 25 100
F 25 25 E,E,L,T,T 80
G 25 25 C,C,C,U,S 80
H 25 25 A,A,F 90
I 25 25 100
J 25 25 K,L,L,S,T 80
K 25 25 C,C,N,N,X 80
L 25 25 100
M 25 25 100
N 25 25 C,K,K,R,R 80
O 25 25 100
P 25 25 100
Q 25 25 B,D,O 90



83

R 25 25 100
S 25 25 G,G,J ,K,Z 80
T 25 25 I,I,I,J ,L,L,Y 70
U 25 25 C,C,N,N,V 80
V 25 25 U,U,W,X,Y 80
W 25 25 100
X 25 25 K,K,R 90
Y 25 25 H,S,R,K,X 80
Z 25 25 S,S,X,X,R 80
Promedio 88.46


Reconocimiento = 88.46%
0
20
40
60
80
100
120
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Maysculas
P
o
r
c
e
n
t
a
j
e
Serie1

Promedio de
reconocimiento
Grfica 5.8 Reconocimiento de maysculas con rasgos propuestos.

De acuerdo a los resultados mostrados en la tabla y grfica anterior, se puede apreciar una
pequea disminucin en el promedio de reconocimiento de letras maysculas; esto se debe en
gran parte a que se estn considerando todas las clases (26 clases) de las letras, a diferencia de
las minsculas que tienen 15 clases para minsculas bajas y 11 para minsculas altas.


NUMEROS

Para el caso de los nmeros se utilizaron 100 muestras por clase. Se eligieron de manera
aleatoria el 50% datos por clase para entrenamiento y 50% para pruebas.

Entrenamiento

En la siguiente figura se muestra el entrenamiento de los nmeros utilizando el vector de rasgos
propuesto y a las mquinas de soporte vectorial como funcin de entrenamiento; en ella se
puede observar a los datos en el espacio de caracterscas y al hyperplano de separacin que
existe entre cada clase. Tambin se observa que aparentemente algunas clases se encuentran
muy juntas, lo que hace pensar que existe ambigedad entre ellas, sin embrago los resultados
nos mostrarn que esta apariencia no es del todo cierta.




84


Figura 5.9
Entrenamiento de
nmeros usando rasgos
propuestos

Resultados de reconocimiento de nmeros

La tabla siguiente muestra los resultados para reconocimiento de nmeros usando el vector de
rasgos propuesto y a las Mquinas de Soporte Vectorial como clasificador.

Tabla 5.9 Resultados de nmeros con rasgos propuestos
Nmeros Entrenamiento Pruebas Reconocimiento
0 50 50 100%
1 50 50 100%
2 50 50 90%
3 50 50 70%
4 50 50 90%
5 50 50 60%
6 50 50 100%
7 50 50 100%
8 50 50 100%
9 50 50 100%
Promedio 91%


Reconocimiento = 91%
0%
20%
40%
60%
80%
100%
120%
0 1 2 3 4 5 6 7 8 9
Nmeros
P
o
r
c
e
n
t
a
j
e

Promedio de
reconocimiento

Grfica 5.9 Reconocimiento de nmeros con rasgos propuestos.




85

De acuerdo a la tabla y grfica anterior, el porcentaje de reconocimiento aumenta un poco
debido a que las clases a reconocer son menos que las anteriores. Los que presentaron menor
porcentaje de reconocimiento fueron el 5 y el 3 con un 70% y 60 % de reconocimiento
respectivamente. Esto podra explicarse debido a que su forma es algo parecida y por
consiguiente sus rasgos tambin.

Al utilizar la metodologa y el vector de rasgos propuesto tanto para letras como para nmeros,
podemos observar una notable y considerable mejora en el reconocimiento.

Tambin nos damos cuenta que utilizar a los invariantes de Flusser en combinacin con la
excentricidad, la elongacin, el factor de compacidad y el tamao resulta eficiente para
reconocer caracteres manuscritos aislados.


5.5 EVALUACIN DE RESULTADOS

El objeto de esta seccin es disponer de una medida que indique la bondad de resultados de
reconocimiento en frases manuscritas aisladas, mostrando de esta forma la efectividad del
sistema propuesto.

Cabe mencionar que el sistema desarrollado no realiza el reconocimiento de espacios entre cada
palabra, por lo que el resultado de reconocimiento arrojado es sin espacio entre cada una.


5.5.1 EVALUACIN DE LETRAS MINSCULAS

Como primer ejemplo de letras minsculas tenemos la siguiente imagen escaneada que contiene
la siguiente frase:

Ejemplo 1







Lo esperado es que el sistema reconozca la frase, obteniendo el siguiente resultado:

hola mi nombre es hermes


Al ejecutar el programa se obtiene lo siguiente:











86

Ejecucin del programa:





Seleccionamos la imagen con el texto a reconocer:





Y nos da como resultado la siguiente figura:




87



Figura 5.10 Resultado de primera evaluacin para minsculas.


La evaluacin del sistema para la primera frase es:


hola mi nombre es hermes
Resultado esperado


holaminombveeNRhermeNR
Resultado real



hola mi nombve eNR hermeNR


En donde las letras NR significan que el sistema no reconoci la letra que corresponde a esa
posicin, en este caso la letra s. tambin observamos que en la palabra nombre, la letra r se
reconoci como v. De igual forma vemos que no existe separacin entre cada palabra como se
mencion anteriormente.








88

Ejemplo 2

Un segundo ejemplo que se muestran para evaluar el sistema es el siguiente:








Siguiendo los pasos del ejemplo anterior el resultado que obtiene el sistema es el siguiente:



Figura 5.11 Resultado de segunda evaluacin para minsculas.


instituto politecnico nacional
Resultado esperado


iuNRtitntoqolifecnicocacional
Resultado real



iuNRtitnto qolifecnico cacional


Para esta frase observamos claramente que varias letras no fueron reconocidas de manera
correcta por el sistema; como primera letra no reconocida tenemos a la u en vez de n, a NR en
vez de s, posteriormente tenemos a la n en vez de u, la q en vez de p, a la f en vez de t y a la c
en lugar de la n, dando un total de 6 errores de reconocimiento.




89

5.5.2 EVALUACIN DE LETRAS MAYSCULAS

Para evaluar al sistema con letras maysculas se disponen de los siguientes ejemplos:

Ejemplo 1







El resultado que se obtiene es el siguiente:



Figura 5.12 Resultado de primera evaluacin para maysculas.



HOLA SOY HERMES
Resultado esperado


HOLASOYHERMES
Resultado obtenido

Como se puede apreciar, para esta pequea frase el sistema no obtuvo mayor problema para
reconocer las letras; tambin se observa que no existe separacin entre las letras debido a que el
sistema no reconoce los espacios en blanco.







90


Ejemplo 2





Al insertar la imagen al sistema, el resultado que se obtiene es el siguiente:




Figura 5.13 Resultado de segunda evaluacin para maysculas.


INSTITUTO POLITCNICO NACIONAL
Resultado esperado


TNSTITCTOPOLITEUNICONACTONAL
Resultado obtenido





91

Como se puede apreciar, para esta pequea frase el sistema no pudo reconocer el total de las
letras como es el caso de la letra T en lugar de la I y C en lugar de U. Tambin se aprecia la no
separacin de las letras debido a que el sistema no reconoce los espacios en blanco.


5.5.3 EVALUACIN DE NUMEROS

Para el caso de los nmeros se hicieron las siguientes evaluaciones:

Ejemplo 1

La primera imagen de evaluacin con nmeros es:






Al ingresar esta imagen al sistema de reconocimiento nos da como resultado lo siguiente:



Figura 5.14 Resultado de primera evaluacin para nmeros.


197
Resultado esperado


197
Resultado obtenido

En este ejemplo observamos que el sistema no tuvo mayor problema; esto se debe en gran parte
a que el nmero de clases para los nmeros es mucho menor que el nmero de clases para las
letras.




92

Ejemplo 2

Otro ejemplo para reconocer nmeros es el siguiente:






Al ingresar esta imagen al sistema nos da como resultado lo siguiente:



Figura 5.15 Resultado de segunda evaluacin para nmeros.


1999
Resultado esperado


1999
Resultado obtenido

Al igual que el ejemplo anterior, el sistema no tuvo problemas para reconocer esta imagen de
nmeros. Sin embrago, el siguiente ejemplo de nmeros muestra que s existen algunas
confusiones entre estas las clases.











93


Ejemplo 3






Al ingresar esta imagen al sistema, nos da como resultado lo siguiente:



Figura 5.16 Resultado de tercera evaluacin para nmeros.


2007
Resultado esperado


3007
Resultado obtenido

Como puede observarse, en este caso el sistema tuvo un error en el reconocimiento de uno de
los nmeros (al nmero 2 lo reconoci como 3); esto se debe a que existe un porcentaje de
confusin entre estas clases.

De acuerdo a los resultados de los ejemplos mostrados en esta seccin, podemos concluir que el
sistema propuesto puede funcionar bien para algunos casos en reconocimiento de caracteres en
categoras separadas. Es decir, puede reconocer (no al cien por ciento) pequeas frases escritas
en minsculas; de igual forma y de manera separada puede reconocer dgitos numricos; lo
mismo ocurre para el caso de letras maysculas. Sin embargo, no se puede garantizar que el
sistema reconozca con un porcentaje considerado un texto que contenga una cantidad mucho
mayor a las frases mostradas en los ejemplos anteriores.




94

Debido a estas razones y a las limitaciones del sistema, consideramos inoportuno en este
momento realizar una conjuncin de todas las clases participantes (62 clases), pues como
pudimos observar, reconocer letras minsculas (26 clases), nmeros (10 clases) o letras
maysculas (26 clases) de manera separada, el sistema an tiene dificultad para reconocer de
manera eficiente caracteres.


5.5.4 EVALUACION DE CLASIFICADORES CON METODOLOGA PROPUESTA

A continuacin, se muestran los resultados entre los mtodos de clasificacin: Mquinas de
soporte vectorial, Red neuronal (retropropagacin) y el clasificador Euclidiano (distancias
mnimas).

Los resultados para el clasificador de las Mquinas de Soporte Vectorial (MSV) son los
resultados vistos anteriormente y que se obtuvieron con el vector de rasgos propuesto (Seccin
5.4).

Los resultados para el clasificador de la Red Neuronal (ANN) se obtuvieron con los siguientes
parmetros (usando Matlab) en su construccin:


MINSCULAS

Para las letras Minsculas bajas:

red = newff (datos de entrada, [15 15], {tansig purelin},trainlm)

- Datos entrada: Matriz 15 x 7 (15 letras minsculas bajas con 7 rasgos para cada
una).
- [15 15]: Dos capas en la red neuronal, 15 neuronas en la capa de entrada y 15 en
la capa de salida.
- tansig: Funcin de transferencia tangente hiperblico para la capa de entrada.
- purelin: Funcin de transferencia linear para la capa de salida.
- trainlm: Funcin de entrenamiento de optimizacin Levenberg Marquardt.

Para las letras Minsculas altas:

red = newff (datos de entrada, [11 11], {tansig purelin},trainlm)

- Datos entrada: Matriz 11 x 17 (11 letras minsculas altas con 17 rasgos para
cada una).
- [11 11]: Dos capas en la red neuronal, 11 neuronas en la capa de entrada y 11 en
la capa de salida.
- tansig: Funcin de transferencia tangente hiperblico para la capa de entrada.
- purelin: Funcin de transferencia linear para la capa de salida.
- trainlm: Funcin de entrenamiento de optimizacin Levenberg Marquardt.


A continuacin se muestra la tabla de resultados obtenidos para las letras minsculas en los
respectivos clasificadores:




95

Tabla 5.10 Comparacin entre clasificadores con letras minsculas.

Letras MSV ANN Euclidiano
a 100 100 90
b 100 100 90
c 90 80 70
d 100 100 90
e 100 100 80
f 80 80 80
g 90 80 70
h 90 90 80
i 100 100 100
j 80 90 80
k 80 80 70
l 100 90 90
m 100 90 80
n 80 90 80
o 100 100 80
p 100 100 90
q 90 100 90
r 100 100 100
s 80 80 70
t 80 80 60
u 80 70 60
v 80 70 70
w 90 80 80
x 90 100 80
y 80 80 70
z 80 80 70
90% 89.1% 80%


0
20
40
60
80
100
120
a b c d e f g h i j k l mn o p q r s t u v w x y z
Minsculas
P
o
r
c
e
n
t
a
j
e
MSV 90%
ANN 89.1%
EUCLIDIANO 80%

Grfica 5.10 Comparacin entre clasificadores con letras minsculas.




96

De acuerdo a la tabla 5.10 y la grfica 5.10 podemos apreciar el promedio de reconocimiento
que arroja cada uno de los clasificadores antes mencionados utilizando el sistema propuesto,
dando una ligera ventaja al clasificador de Mquinas de Soporte Vectorial con un 90 % sobre la
red neuronal con un 89.1%, quedando un poco rezagado el clasificador Euclidiano con un 80 %
de reconocimiento.


MAYUSCULAS

Para las letras Maysculas:

red = newff (datos de entrada, [26 26], {tansig purelin},trainlm)

- Datos entrada: Matriz 26 x 17 (26 letras maysculas con 17 rasgos para cada
una).
- [26 26]: Dos capas en la red neuronal, 26 neuronas en la capa de entrada y 26 en
la capa de salida.
- tansig: Funcin de transferencia tangente hiperblico para la capa de entrada.
- purelin: Funcin de transferencia linear para la capa de salida.
- trainlm: Funcin de entrenamiento de optimizacin Levenberg Marquardt.

A continuacin se muestra la tabla de resultados obtenidos para las letras maysculas en los
respectivos clasificadores:


Tabla 5.11 Comparacin entre clasificadores con letras maysculas.

Letras MSV ANN Euclidiano
A 90 90 80
B 100 100 90
C 80 80 70
D 100 100 90
E 100 100 80
F 80 80 80
G 80 80 70
H 90 90 80
I 100 100 100
J 80 90 80
K 80 80 70
L 100 90 90
M 100 90 80
N 80 90 80
O 100 100 80
P 100 100 90
Q 90 90 80
R 100 100 100
S 80 80 70
T 70 80 70
U 80 70 60



97

V 80 70 70
W 100 80 80
X 90 100 80
Y 80 80 70
Z 80 80 70
88.8461538 88,07 % 79.20%


0
20
40
60
80
100
120
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Maysculas
P
o
r
c
e
n
t
a
j
e
MSV 88.84%
ANN 88.07%
EUCLIDIANO 79.20%

Grafica 5.11 Comparacin entre clasificadores con letras maysculas.

De acuerdo a la tabla y grfica anteriores, se aprecia una ligera disminucin de reconocimiento
en promedio de cada uno de los clasificadores; la razn puede ser que para el caso de las letras
maysculas se tomaron en cuenta todas las clases pertenecientes (26 clases), a diferencia de las
letras minsculas que son de 15 clases para minsculas bajas y 11 para minsculas altas.

El clasificador que tuvo un mayor porcentaje de reconocimiento es la MSV con 88.84%,
siguindole la red neuronal con 88.07 y por ltimo el clasificador euclidiano con 79.20%.


NMEROS

Para los nmeros:

red = newff (datos de entrada, [10 10], {tansig purelin},trainlm)

- Datos entrada: Matriz 10 x 17 (10 nmeros con 17 rasgos para cada uno).
- [10 10]: Dos capas en la red neuronal, 10 neuronas en la capa de entrada y 10 en
la capa de salida.
- tansig: Funcin de transferencia tangente hiperblico para la capa de entrada.
- purelin: Funcin de transferencia linear para la capa de salida.
- trainlm: Funcin de entrenamiento de optimizacin Levenberg Marquardt.

A continuacin se muestra la tabla de resultados obtenidos para los nmeros en los respectivos
clasificadores:







98

Tabla 5.12 Comparacin entre clasificadores con dgitos numricos.
NUMEROS MSV
ANN EUCLIDIANO
0 100%
100% 90%
1 100%
100% 90%
2 90%
90% 90%
3 70%
70% 60%
4 90%
90% 80%
5 60%
50% 50%
6 100%
100% 90%
7 100%
100% 80%
8 100%
100% 90%
9 100%
100% 90%
Total 90.10%
90% 81%



0%
20%
40%
60%
80%
100%
120%
0 1 2 3 4 5 6 7 8 9
Nmeros
P
o
r
c
e
n
t
a
j
e
MSV 90.1 %
ANN 90%
EUCLIDIANO 81%


Grfica 5.12 Comparacin entre clasificadores con dgitos numricos.

De acuerdo a los resultados que muestran la tabla y grfica anteriores, podemos apreciar un
porcentaje de reconocimiento en promedio bueno para cada uno de los clasificadores. Siendo los
ms sobresalientes las Mquinas de soporte vectorial y la Red neuronal con 90.1 % y 90 % de
reconocimiento en promedio respectivamente, quedando un poco rezagado el clasificador
Euclidiano con 81% de reconocimiento.













99


5.6 RESUMEN DEL CAPTULO

En este capitulo se expusieron los experimentos y resultados obtenidos al utilizar la metodologa
propuesta.

En los primeros experimentos se utilizaron tcnicas clsicas para obtener el vector de rasgos
como son los invariantes de Hu, momentos centrales e invariantes de Flusser para observar el
funcionamiento de cada uno en este tipo de problema.


Posteriormente se utilizo el vector de rasgos propuesto en la seccin, en donde los resultados
arrojados fueron bastante aceptables.

Finalmente se hizo una comparacin de resultados con los clasificadores: Maquinas de Soporte
Vectorial, Retropropagacin y el clasificador Euclidiano.





































100

CAPITULO 6

CONCLUSIONES Y TRABAJO FUTURO


En este capitulo se presentan las conclusiones de la investigacin a partir de los datos tericos y
prcticos presentados sobre el reconocimiento de caracteres manuscritos aislados enfocado a un
solo tipo de escritura.

Se presentan algunas ventajas y desventajas de usar esta metodologa.

Tambin se mencionan algunas ideas para posibles trabajos futuros o mejoras a la metodologa
del reconocimiento de caracteres aislados.

6.1 CONCLUSIONES

Recordemos que el objetivo de este trabajo es el de realizar un sistema que reconozca de manera
automtica caracteres manuscritos aislados. Se puede decir, que en gran medida este objetivo se
cumpli de manera satisfactoria pues lo resultados as lo avalan.

Tambin se present una metodologa de reconocimiento de caracteres utilizando tcnicas de
gradiente y morfologa matemtica.

Presentamos a las Mquinas de Soporte Vectorial como un mtodo eficiente en aplicaciones de
reconocimiento de caracteres.

Aunque la meta era obtener el 100 % de reconocimiento de todos los caracteres, consideramos
que la eficiencia de la metodologa es buena.

Para la metodologa presentada, los invariantes de Hu, resultaron ineficientes para reconocer
caracteres manuscritos aislados.

De igual forma, tomar a los momentos centrales como vector de rasgos, no resultaron muy
buenos para reconocer caracteres manuscritos aislados.

Tomar los invariantes de Flusser como vector de rasgos para reconocer caracteres en esta
metodologa, resultaron ser un poco mejores que los invariantes de Hu y los momentos
centrales.

La combinacin de invariantes de Flusser con la excentricidad, elongacin, factor de
compacidad y tamao resultaron eficientes para obtener el vector de rasgos y resolver de alguna
forma el problema.

6.2 VENTAJAS

Una de las ventajas que presenta esta metodologa es que utiliza a los invariantes de Flusser, por
lo cual no es necesario realizar operacin de correccin de slant o inclinacin ya que sta
tcnica tiene la propiedad de ser invariantes a transformaciones del objeto.




101

Otra ventaja es que si el carcter a reconocer tiene pequeas fisuras en sus lneas, estas se
cierran al utilizar la operacin de dilatacin. De igual forma pasa si existen pequeos puntos
adyacentes al carcter, pues estos se adhieren al objeto con la misma operacin.

Otra ventaja es que no utiliza tcnicas clsicas para quitar el ruido, ya que se implementa una
metodologa sencilla para hacer esa tarea.

Una ventaja ms es que se pueden utilizar otras tcnicas para extraer rasgos y mejorar la
eficiencia del reconocimiento.


6.3 DESVENTAJAS

Se puede considerar que la principal desventaja de esta metodologa es que est enfocada a un
solo tipo de escritura.

Para reconocer otros tipos de escritura, se tienen que entrenar dichos estilos y muy
probablemente se tiene que tomar otras consideraciones para extraer rasgos.

Otra desventaja es el costo computacional, pues el uso de filtros morfolgicos conlleva un
retardo para realizar sus operaciones.


6.4 APORTACIONES

Se propone una metodologa para reconocer caracteres manuscritos aislados.

Se implementa un algoritmo sencillo para evitar confusiones entre las letras b, d, p, y q.

Se propone utilizar a los invariantes de Flusser para formar parte del vector de caractersticas.

Se propone dividir al carcter en cuatro celdas, y obtener de cada celda los invariantes de
Flusser para formar parte del vector de rasgos.

Se propone un vector de rasgos alterno, suficiente para reconocer caracteres.


6.5 TRABAJO FUTURO

Realizar una extensin de la metodologa para reconocer varios estilos de escritura manuscrita
aislada.

Probar otros mtodos -como la tcnica de kirsh- para obtener el vector de rasgos y mejorar el
reconocimiento.

Utilizar tcnicas conocidas para realizar el umbralado de manera automtica.

Probar la eficiencia de la metodologa con una base de datos de escritura manuscrita extensa
como la NIST.




102

APENDICE A-1


OPERADORES DE GRADIENTE

Los operadores de gradiente, basados en las diferencias parciales de una funcin, cuando son
aplicadas a una imagen digital producen el efecto contrario al que produce el promediado de los
pxeles. Los operadores de gradiente sirven para aumentar la nitidez de la imagen, para detectar
la direccin de mxima variacin de f en x e y, o para detectar los bordes presentes en la imagen
donde esta variacin sea mayor.

El gradiente para la funcin f(x, y) est dado tericamente por:

=
y
f
x
f
Gy
Gx
f (1)
Esta expresin se puede simplificar a:

Gy Gx f + (2)
Una manera muy simple de obtener de forma aproximada el diferencial en una imagen discreta,
se consigue mediante el valor absoluto de la diferencia del valor de un pxel y el valor del pxel
vecino (ya sea superior/inferior, derecha/izquierda o diagonales). Esta resta se realiza
normalmente con los pxeles de una mscara de 2 x 2, donde se involucran 4 pxeles, o con los
pxeles de una mscara de 3 x 3, donde se involucran nueve pxeles.

En este caso los ndices de los pxeles se representan como:

P
i-1 j-1
P
i-1 j
P
i-1 j+1
P
i j-1
P
i j
P
ij+1
P
i+1 j-1
P
i+1 j
P
i+1 j+1

Sobre esta base los gradientes pueden aproximarse a:

(3)


(4)




(5)

) 2 ( ) 2 (
) 2 ( ) 2 (
) ( ) (
) ( ) (
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1
+ + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + +
+ + + +
+ + + + + =
+ + + +
+ + + + + =
+ =
j i ij j i j i ij j i
j i j i j i j i j i j i
j i ij j i j i ij j i
j i j i j i j i j i j i
j i ij j i ij
P P P P P P
P P P P P P f
P P P P P P
P P P P P P f
P P P P f




103

Las matrices formadas con los coeficientes de estas ecuaciones, son conocidas como los
operadores de Roberts (1), Prewitt (2), y Sobel (3), los cuales estn representados en siguiente
figura:



Roberts (a)





Prewitt (b)
0 1
-1 0
-1 0 1
-2 0 2
-1 0 1
0 1
-1 0
-1 -1 -1
0 0 0
1 1 1
-1 -2 -1
0 0 0
1 2 1
-1 0 1
-1 0 1
-1 0 1





Sobel (c)
Figura A-1.1 Operadores de gradiente. a) Roberts, b) Prewitt y c) Sobel

Otro aspecto importante en el manejo de los pixeles es la vecindad, definida con los elementos
que se hallan alrededor de un punto discreto (pxel).

En las imgenes de luminancia o binarias, los mtodos de gradiente son tiles para localizar
puntos de inters, bordes, etc. Para realizar operaciones sobre estas imgenes, se cuenta con
operadores basados en la morfologa matemtica.

MTODO DE CANNY

Uno de los mtodos ms importantes para realizar una deteccin global de bordes sobre una
imagen es el conocido como mtodo de Canny [CA]. Esta tcnica, que se caracteriza por estar
optimizada para la deteccin de bordes diferenciales, consta de tres etapas principales: filtrado,
decisin inicial, e histresis.

La primera etapa consiste en un filtrado de convolucin de la derivada primera de una funcin
gaussiana normalizada discreta sobre la imagen, realizada en dos direcciones: horizontal y
vertical. La funcin gaussiana posee dos parmetros fundamentales, valor medio m, y
desviacin tpica . En este caso, el valor medio es nulo, siendo la ecuacin que define el filtro
gaussiano de la forma:

=
2
2
2
exp ) (

x
k x g (6)

Donde k se elige de manera que el mximo de g(x) sea la unidad en su versin discreta. Para la
realizacin del filtro utilizado en la primera etapa, se deriva (3.1), obtenindose:

= =
2
2
2
2
exp ) ( ) ( '

x
x
k
x g
dx
d
x g (7)
El paso siguiente consiste en realizar la convolucin de dg[x] sobre la imagen U de tamao M x
N, con U(i,j)[0,1], obtenindose dos nuevas matrices de la forma:



104

) ( ), ( U dg abs dy U dg abs dx
T
= = (8)
Donde el superndice T indica una operacin de trasposicin, y * es el operador de convolucin
discreta. Las matrices dx y dy son imgenes M x N donde el valor de nivel de gris de un pxel
determina la variacin o gradiente, en valor absoluto, con los pxeles colindantes, en las
direcciones horizontal y vertical, respectivamente. Estas matrices son el punto de partida para la
etapa siguiente.

La segunda etapa realiza una primera toma de decisiones sobre los posibles bordes de la imagen,
mediante el clculo de los picos de las imgenes obtenidas en la primera etapa, dx y dy,
realizando el siguiente grupo de clculos:

Un pxel de U, U(i, j), se considera candidato a borde si:

dx( i, j) > dx(i-1, j) y dx(i, j) > dx(i+1, j), o bien dy(i, j) > dy(i, j-1)
y
dy(i, j) > dy(i, j+1), Para i =1,...,M y j =1,...,N.

Los pxeles pertenecientes al borde de la imagen no se contabilizan en esta decisin,
y se clasifican como pxeles de fondo.

Para los pxeles (i, j) que cumplan la condicin anterior, se calcula el valor

e(i, j) = (dx
2
(i,j)+dy
2
(i,j))
1/2
.

Para el resto de pxeles, e(i, j) = 0.

Para eliminar efectos de borde, se eliminan los valores de las filas 2, M 2 y
M 1, as como los de las columnas 2, N2 y N1. La matriz M x N as obtenida, posee
los candidatos de borde global (no orientado) de la imagen U.

Para obtener una imagen con valores de gris en el rango [0,1], se normaliza la imagen e.

La ltima etapa de procesamiento realiza una optimizacin de la decisin llevada a cabo en la
etapa anterior, mediante la aplicacin de una funcin de histresis sobre la imagen e. Esta
funcin se basa en la definicin de dos umbrales, T
L
y T
H
, tales que T
L
< T
H.
Valores tpicos para
estos umbrales son 0.1 y 0.5, respectivamente, aunque se recomienda que T
H
y T
L
tengan una
relacin entre 2:1 y 3:1, dependiendo de la relacin seal ruido, en el caso de que este valor sea
conocido [3.1]. Esta etapa realiza los clculos siguientes:

Un pxel de e, e(i, j), se considera borde definitivo si e(i, j) <=T
H.

Un pxel de e, e(i, j), se considera fondo definitivo si e(i, j) < T
L
.
Todos los pxeles en un vecindario 3 x 3 de los pxeles considerados como borde
definitivo, e(k, l), se consideran tambin borde definitivo si e(k, l) >=T
L.


La informacin normalizada no binaria de salida del mtodo de Canny indica la fuerza del borde
a partir de un anlisis del gradiente global entre pxeles vecinos.





105

APENDICE A-2

OPERADORES MORFOLOGICOS

Si A y B son conjuntos de Z2 con sus componentes a = (a1, a2) de una imagen y b = (b1, b2) de
un elemento de estructura, tenemos [Gonzlez et al 199635]:

Traslacin: de A por x = (x1, x2).
(A) x = {c|c = a + x, para a A}

Reflexin: de B.

B = {x|x = -b, para b B}



Complemento: de A.
A
c
= {x|x A}

Diferencia: de A y B.
A - B = {x|x A, x B} = A B
c

Dilatacin: de A por B.
A B = {x| (

B ) x A }

Erosin: de A por B.
A B = {x| (B) x A}

Apertura: de A por B.
A B = (A B) B

Cierre: de A por B.
A B = (A B) B


















106

REFERENCIAS

[1] Gonzalez, R. C., Woods, R. E. (1993), Digital Image Processing, Pag. 518.

[2]R. FENRICH, S. LAM Y S.N. SRIHARI. Encyclopedia of Computer Science and
Engineering, captulo Optical Character Recognition, pginas 9931000. Third ed., Van
Nostrand (1992).

[3]RADMILO M. BOZINOVIC Y SARGUR N. SRIHARI. Off-Line Cursive Script Word
Recognition. IEEE Transactions on Pattern Analysis and Machine Intelligence 11(1), 6883
(enero 1989).

[4]T. PAQUET Y Y. LECOURTIER. Recognition of Handwritten Sentences using a restricted
Lexicon. Patern Recognition 26(3), 391407 (1993).

[5]M. MOHAMED Y P. GADER. Handwritten Word Recognition using Segmentation-Free
Hidden Markov Modeling and Segmentation- Based Dynamic Programming Techniques. IEEE
Transactions onPattern Analysis and Machine Intelligence 18(5), 548554 (mayo 1996).

[6]C. B. BOSE Y SS. KUO. Connected and Degraded Text Recognition using Hidden Markov
Model. Pattern Recognition 27(10), 1345 1363 (1994).

[7]ALESSANDRO VINCIARELLI Y JUERGEN LUETTIN. Off-Line Cursive Script
Recognition Based on Continuous Density HMM. Informe tcnico, IDIAP - Institut Dalle Molle
dIntelligence Artificialle Perceptive, Rue Du Simplon 4, CP 592 - 1920 Martigny, Switzerland
(diciembre 1999).

[8]ANDRS KORNAI, K.M. MOHIUDDIN Y SCOTT D. CONNELL. An HMM-Based Legal
Amount Field OCR System for Checks. En 1995 International Conference on Systems, Man,
and Cybernetics, Vancouver BC, pginas 28002805 (octubre 2000).

[9]DIDIER GUILLEVIC. Unconstrained Handwriting Recognition Applied to the Processing
of Bank Checks. Tesis Doctoral, Department of Compuet Science, Concordia University,
Monteral, Quevec, Canada (septiembre 1995).

[10]E. LECOLINET Y O. BARET. Cursive Word Recognition: Methods and Strategies. En
Fundamentals in Handwriting Recognition, tomo 124 de NATO ASI Series F: Computer and
Systems Sciences, pginas 235263. Springer Verlag (1994).

[11]D. GUILLEVIC Y C. Y. SUEN. Cursive Script Recognition: A Sentence Level Recognition
Scheme. En International Workshop on Frontiers in Handwriting Recognition, pginas 216
223 (1994).

[12]L. BOTTOU, Y. BENGIO Y Y. LE CUN. Global training of document processing systems
using graph transformer networks. En Computer Vision and Pattern Recognition, 1997.
Proceedings., 1997 IEEE Computer Society Conference on , 1997, pginas 489494 (1997).

[13]A. W. SENIOR. Off-line Cursive Handwriting Recognition Using Recurrent Neural
Networks. Tesis Doctoral, University of Cambridge (septiembre 1994).



107


[14]THOMAS M. BREUEL. A System for the Off-Line Recognition of Handwritten Text.
Informe tcnico, IDIAP - Institut Dalle Molle dIntelligence Artificialle Perceptive, IDIAP, C.P.
609, 1920 Martigny Switzerland (enero 1994).

[15]J. CAI Y Z.-Q. LIU. Off-Line Unconstrained Handwritten Word Recognition. International
Journal of Pattern Recognition and ArtificialIntelligence 14(3), 259280 (mayo 2000).

[16]D. GUILLEVIC Y C. Y. SUEN. Cursive Script Recognition: A Sentence Level Recognition
Scheme. En International Workshop on Frontiers in Handwriting Recognition, pginas 216
223 (1994).

[17]T. PAQUET Y Y. LECOURTIER. Recognition of Handwritten Sentences using a restricted
Lexicon. Patern Recognition 26(3), 391407 (1993).

[18] Reconocimiento de Dgitos Escritos Mediante una Red Neuronal Multicapa. Daniel Cruces
lvarez, Fernando Martn Rodrguez.Departamento de Tecnologas de las comunicaciones.
E.T.S.I.T. de Vigo.Universidad de Vigo

[19] Feature extraction methods for character recognition a survey. Oivind Due Trier, Anil K.
Jain and Torfinn Taxt. July 19, 1995

[20] Extraction and recognition of handwritten alphanumeric characters from application forms.
E.Kavallieratos, N.Antoniades, N.Fakotakis and G.Kokkinakis.

[21] Reconocimiento automtico de caracteres manuscritos y marcas, orientado al procesado de
encuestas. Roberto Carlos De armas Domnguez, Lener Samuel Bautista Rodrguez. Noviembre 03,
2005.

[22] Off-line Character Recognition using On-line Character Writing Information. Hiromitsu
NISHIMURA and Takehiko TIMIKAWA

[23] Recognition of On-line Handwritten Mathematical Formulas in the E-Chalk System.
Ernesto Tapia and Ral Rojas, Free University of Berlin Institute of computer Science Takurstr
9, D-14195 (ICDAR 2003).

[24] On-line Handwriting Recognition with Support Vector MachinesA Kernel Approach.
Claus Bahlmann, Bernard Haasdonk and Hans Burkhardt. publ. in Proc. of the 8th Int.
Workshop on Frontiers in Handwriting Recognition (IWFHR), pp. 4954, 2002.

[25] Improving handwritten character segmentation by incorporating bayesian knowledge with
support vector machines. Manolis Maragoudakis, Ergina Kavallieratou and Nikos Fakotakis

[26] Support Vector Machines for Handwritten Numerical String Recognition. Luiz S. Oliveira
and Robert Sabourin, Pontificia Universidade Catlica de Paran, Curitiba, Brazil, Ecole de
Technologie Suprieure Montreal, Canada
[27] Un algoritmo de Inferencia Gramatical mediante Correccin de Errores. Hctor Miguel
Rulot Segovia. Capitulo 1. Valencia, 1992.




108

[28] Batchelor, B. G. (1974) Methods of pattern classification, Practical Approach to Pattern
Classification, London: Plenum Press, pp 35-51.
[29] Rossenblat, F. (1958) The perceptron: a probabilistic model for information storage and
organization in the brain, Psychological Review 65:386-408.
[30] Nakano, K. (1972), Associatron, a model for associative memory, IEEE Transactions on
Systems, Man, and Cybernetics SMC-12: 380-388.
[31] Kohonen, T. (1982) Self-organized formation of topologically correct feature maps,
Biological Cybernetics, 43: 59-69.
[32] Shin Y., and Ghosh, J. (1992) The pi-sigma network: An efficient higher order network
for pattern classification and function approximation, Proceedings of International Joint
Conference on Neural Networks, 11:205-210.
[33] Nilson, N. (1965) Learning Machines, New York, NY: McGraw-Hill, Chapter 1
"Trainable pattern classifiers," pp 1-13; and chapter 2, "Some important discriminate functions:
their properties and their implementations," pp 15-42.
[34] V. Vapnik. Statistical Learning Theory. John Wiley & Sons, New York, 1998.

[35] Support vector machines for pattern classification / Shigeo Abe,

[36] Chady, M. and Poli, R. (1997) Evolution of Cellular-Automaton-based Associative
Memories, Technical Report No, CSRP-97-15, The University Of Birmingham (UK).
[37] Korning, P. G. (1994) Training Neural Networks by means of Genetic Algorithms
Working On Very Long Chromosomes, Computer Science Department, Aarhus University,
Denmark.
[38] Schaffer, J. D., Whitley, D. and Eshelman, L. J. (1992) Combinations of genetic
algorithms and neural networks: A survey of the state of the art, Proceedings of the
International Workshop on Combinations of Genetics Algorithms and Neural Networks, pp 1-
37.
[39] Caputo, B. and Niemann, H. () From Markov Random Fields to Associative Memories
and Back: Spin glass Markov Random Fields, Computer Science Department, University of
Erlangen-Nuremberg, Erlangen Germany.

[40] Amari, S. I. (1972), Learning patterns and patterns sequences by self organizing nets of
threshold elements, IEEE Transactions on Computers, C-21, 11, 1197-1206.
[41] Jiuliun, F. and Winxin, X. (1997) Minimum error thresholding: A note, Pattern
Recognition Letters, 18:705-709.
[42] Kittler, J. and Illingworth, J. (1986) Minimum error thresholding, Pattern Recognition,
19:41-47.
[43] Gonzalez, R. C., Woods, R. E and Eddin, S. L. (2004), Digital Image Processing using
MatLab, Ed. Prentice Hall, First edition.

[44] Gonzalez, R. C. , Woods, R. E. (2002),Digital Image Processing, Second Edition, Ed.
Prentice Hall.




109

[45] Localizacin, recuperacin e identificacin de la capa de caracteres, contenida en los
planos cartogrficos. Aurelio Velsquez. Enero 2002.

[46] Gonzlez, R. C., R. E. Woods. 1993. "Tratamiento digital de imgenes", Addison-
Wesley/Diaz de Santos, pag. 416.

[47]. Gonzlez, R. C., R. E. Woods. 1996. "Tratamiento digital de imgenes", Addison-
Wesley/Diaz de Santos, pp 561-589.

[48] Pattern recognition, 1993, vol. 26, pag. 167 174.

[49] Hu, M. K. (1961) Pattern Recognition by Moment Invariants, Proceeding of the IRE,
49:1428.
[50] Support vector machines for pattern classification / Shigeo Abe, Page 25.

[51] Support vector machines for pattern classification / Shigeo Abe, Page 83.

[52] SCOTT CONNELL. A Comparison of Hidden Markov Model Features for the Recognition
of Cursive Handwriting. Proyecto Fin de Carrera, Michigan State University (mayo 1996).

[53] U.-V. MARTI Y H. BUNKE. Using a Statistical Language Model to improve the preformance of an
HMM-Based Cursive Handwriting Recognition System. International Journal of Pattern Recognition
and Artificial In telligence 15(1), 6590 (2001).

[54] RADMILO M. BOZINOVIC Y SARGUR N. SRIHARI. Off-Line Cursive Script Word Recognition. IEEE
Transactions on Pattern Analysisand Machine Intelligence 11(1), 6883 (enero 1989).

[55] PETR SLAVIK Y VENU GOVINDARAJU. Equivalence of Different Methods for Slant and Skew
Corrections in Words Recognition Applications. IEEE Trabsactions on Pattern Analysis and Machine
Intelligence 23(3) (marzo 2001).

[56] Digital Image Processing. Rafael C. Gonzales. Pag 518.

[57] PREZ Juan Carlos; VIDAL Enrique y SNCHEZ Lourdes. Un sistema geomtrico de
reconocimiento ptico de caracteres. Departamento de Sistemas Informticos y de Computacin
Universidad Politcnica de Valencia. 1992.

[58] Center for Machine Perception, Department of Cybernetics Faculty of Electrical
Engineering, Czech Technical University Technicka 2, 166 27 Prague 6, Czech Republic.

Vous aimerez peut-être aussi