aplicación de las máquinas de soporte vectorial para el

Anuncio
UNIVERSIDAD PONTIFICIA COMILLAS
ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
PROYECTO FIN DE CARRERA
APLICACIÓN DE LAS MÁQUINAS
DE SOPORTE VECTORIAL PARA EL
RECONOCIMIENTO DE MATRÍCULAS
AUTOR: ESTHER GUTIÉRREZ ALONSO
MADRID, Junio 2007
Autorizada la entrega del proyecto al alumno:
Esther Gutiérrez Alonso
LOS DIRECTORES DEL PROYECTO
Eugenio Sánchez Úbeda
Fdo:
Fecha:
Ana Berzosa Muñoz
Fdo:
Fecha:
Vº Bº del Coordinador de Proyectos
Tomás Gómez San Román
Fdo:
Fecha:
RESUMEN DEL PROYECTO
iii
APLICACIÓN DE LAS MÁQUINAS DE SOPORTE VECTORIAL
PARA EL RECONOCIMIENTO DE MATRÍCULAS
Autor: Gutiérrez Alonso, Esther.
Directores: Sánchez Úbeda, Eugenio; Berzosa Muñoz, Ana.
Entidad Colaboradora: ICAI – Universidad Pontificia Comillas.
RESUMEN DEL PROYECTO
En la actualidad, el reconocimiento automático de matrículas tiene numerosas
aplicaciones: identificar vehículos robados, realizar automáticamente el pago en peajes,
controlar el acceso en los aparcamientos, etc. Habitualmente, el reconocimiento se basa
en técnicas de Inteligencia Artificial, siendo el método más utilizado el de las redes
neuronales. Éstas han demostrado tener una buena capacidad para identificar matrículas,
pero no resultan fiables al 100%.
Como alternativa al empleo de redes neuronales artificiales para realizar el
reconocimiento, es posible utilizar otro tipo de técnicas de Inteligencia Artificial. En
concreto, las Máquinas de Soporte Vectorial (también conocidas como SVM) han
demostrado ser superiores en muchos campos como, por ejemplo, el del reconocimiento
facial. Destacan por su gran versatilidad y por sus prestaciones.
Son un método de clasificación que se basa en encontrar el mejor hiperplano que separa
dos conjuntos de datos pertenecientes a dos clases distintas. Para ello, se maximiza la
distancia al punto más cercano de cada clase con el fin de obtener el menor error de
generalización. Para hallar la frontera de separación, es necesario resolver un problema
de optimización usando técnicas de programación cuadrática. A partir del hiperplano
ajustado, se pueden clasificar nuevos datos en una de las dos categorías.
Además, la SVM permite la separación de datos no linealmente separables,
transformando los datos de entrada a un espacio de mayor dimensión conocido como
espacio de características en el que sí pueden ser separados mediante un hiperplano. La
transformación se realiza mediante unas funciones denominadas núcleo o kernels.
Modificando distintos parámetros de las SVM se pueden obtener diferentes tipos de
fronteras de separación. Habitualmente, las SVM se emplean para clasificación binaria.
Para implementar las SVM, se ha utilizado una librería de Matlab específicamente
desarrollada para trabajar con ellas.
RESUMEN DEL PROYECTO
iv
En el reconocimiento de matrículas se tienen más de dos clases, puesto que cada letra y
cada número a reconocer representan una categoría distinta. Para realizar dicha
clasificación, es necesario resolver tantos problemas binarios como clases haya que
identificar. En cada uno de ellos se considera una clase positiva y el resto negativas.
Para ello, se ha desarrollado una aplicación que permite emplear las SVM de
clasificación binaria con datos de más de dos clases.
Antes de estudiar el comportamiento de las SVM en el reconocimiento de matrículas, se
ha partido de un caso sencillo en el que se estudia la clasificación de tres tipos de
figuras para poder analizar con mayor facilidad la capacidad de las SVM en la
identificación de imágenes. Para ello, se ha realizado un generador de imágenes
sintéticas que representan distintos símbolos. Las imágenes se tratan como matrices de
números en las que el valor de cada elemento se corresponde con el color de cada píxel.
Una de las dificultades del problema del reconocimiento de matrículas reside en
encontrar, a partir de dichas matrices, unas variables adecuadas que ayuden a identificar
cada carácter.
Se ha estudiado el porcentaje de error cometido al clasificar las distintas imágenes
utilizando distintos tipos de variables y para diferentes parámetros de la SVM. Para ello,
se parte de un conjunto de datos denominado de aprendizaje con los que se obtiene el
hiperplano de separación. El error se calcula clasificando otro conjunto de datos
(conjunto de test o evaluación) y comparando su clase real con la que determina la
SVM. Se ha podido comprobar que la capacidad de reconocimiento de la SVM depende
en gran medida del tipo de variables empleadas y de los parámetros que permiten
obtener distintos tipos de hiperplanos. Ajustando adecuadamente dichos parámetros, se
ha llegado a conseguir un porcentaje de acierto del 100% en el caso de que las imágenes
no estén contaminadas con ruido. Con niveles elevados de ruido, se obtienen
porcentajes de error inferiores al 15%.
Para la clasificación de las matrículas, se ha desarrollado previamente un generador de
imágenes sintéticas (en escala de grises) que representan distintos caracteres que pueden
aparecer en una matrícula real (letras y números). Para ello se han simulado efectos
como que la matrícula pueda estar parcialmente doblada o inclinada, que la imagen
capturada por la cámara sea poco nítida o que haya habido errores en el proceso de
segmentación de la matrícula y los caracteres aparezcan desplazados.
Utilizando el simulador desarrollado, se han generado del orden de 1000 ejemplos de
caracteres, estudiándose por separado los números y las letras. Cada imagen tiene un
RESUMEN DEL PROYECTO
v
tamaño de 15x15 píxeles, con 256 tonos de gris para cada píxel. Además de utilizar
directamente estos datos como variables de entrada, se han utilizado otras variables
derivadas para ayudar a la clasificación, así como preprocesados previos como la
transformación de la imagen a blanco y negro puros. Entre las variables derivadas se
han considerado las obtenidas al calcular histogramas, diferencias con imágenes patrón,
diferentes reescalados, etc.
Para el caso de los números, se ha logrado un error mínimo de un 8,6% de las imágenes
del conjunto de test, mientras que para las letras se ha alcanzado un 11,3%. Estos
porcentajes son reducidos sobre todo considerando el elevado número de clases a
reconocer, especialmente en el caso de las letras. Además, gracias a haber utilizado
imágenes sintéticas, se ha podido analizar el efecto independiente que tienen las
posibles deformaciones de las matrículas en los errores de clasificación, siendo el
reconocimiento especialmente sensible a las traslaciones de los caracteres.
Imágenes reales
Imágenes sintéticas correctamente reconocidas
2
2
2
2
4
4
4
4
6
6
6
6
8
8
8
8
10
10
10
10
12
12
12
12
14
14
14
14
5
10
15
5
10
15
5
10
15
2
2
2
2
4
4
4
4
6
6
6
6
8
8
8
8
10
10
10
10
12
12
12
12
14
14
14
5
10
15
5
10
15
5
10
15
5
10
15
14
5
10
15
RESUMEN DEL PROYECTO
vi
NUMBER PLATE RECOGNITION USING SUPPORT VECTOR
MACHINES
Automatic Number Plate Recognition can be applied at present for many purposes:
identification of stolen vehicles, automatic toll payments, access control for car parks,
etc. Recognition is usually based on Artificial Intelligence techniques, being neuronal
networks the method most often used. These networks have shown a good capacity for
recognizing number plates, although they are not 100% reliable.
Other Artificial Intelligence techniques can be applied as an alternative to artificial
neuronal networks for recognition purposes. Specifically, Support Vector Machines (or
SVMs) have demonstrated to be superior in many areas such as facial recognition and
they stand out due to their high versatility and features.
They represent a method of classification based on finding the best hyperplane for
separating two sets of data, each of a different class. For this aim, it is necessary to
maximize the distance to the nearest point of each class of data, in order to minimize the
generalisation error. To obtain the boundary of separation, a problem of optimization
has to be solved, applying quadratic programming techniques. With the adjusted
hyperplane, it is possible to classify new data within one of the two categories.
Moreover, SVMs permit the separation of data that are not linearly separable,
transforming input data into a larger space known as feature space which enables it to
be separated via the hyperplane. This transformation is done through functions known
as kernels. It is possible to obtain different types of separation boundaries by modifying
the parameters of the SVM. Support Vector Machines are usually used for binary
classification.
A Matlab toolbox specially developed to work with SVMs has been employed to
implement them.
In the number plate recognition, more than two data classes are present, since each letter
and number to be recognized represent a different category. For this classification, it is
necessary to resolve as many binary problems as there are classes to identify. Within
each one, there is one positive class while the rest are negative. With that purpose, an
application has been developed to employ binary SVMs classification with more than
two classes of data.
Prior to studying the behaviour of SVMs for the recognition of number plates, a simple
case was presented, studying the classification of three types of figures in order to more
RESUMEN DEL PROYECTO
vii
easily analyse the SVM capacity for the identification of images. To this end, a
generator of synthetic images representing different symbols was employed. The images
were treated as matrices of numbers in which the value of each element represents the
colour of each pixel. One of the difficulties of the problem of number plate recognition
lies in finding adequate variables from such matrices that help to identify each
character.
The percentage of error occurring in the classification of images using different types of
variables and for different SVM parameters was studied. For this purpose, a set of data
known as training data was used to obtain the hyperplane of separation. The error is
calculated by classifying another data set (test data) and comparing its real class versus
the one determined by the SVM. It was verified that the SVM’s recognition capacity
depends to a great extent on the type of variables employed and the parameters that
allow to obtain different types of hyperplanes. Once such parameters are adjusted, a
success level of 100% is reached when images are not contaminated with noise. With
high noise levels, error percentages under 15% are obtained.
For number plates classification, a generator of synthetic images (in a spectrum of
greys) representing different real characters of plates (letters and numbers) was
developed. For that, different effects were simulated: the number plate could be partially
bent or inclined, the image caught by the camera is not sharp or errors appeared in the
number plate’s segmentation process and characters are wrongly placed.
By using the developed simulator, around 1000 examples of characters were generated,
separately studying numbers and letters. Each image has a size of 15x15 pixels, with
256 shades of grey for each pixel. Besides the direct utilization of these data as input
variables, other derived ones were used to facilitate the classification, as well as
previous images processing such the character transformation into pure black and white.
Between the derived variables, some as those obtained when calculating histograms,
differences with pattern images or several figure sizes were considered.
For numbers, the minimum error reached was 8.6% of the images tested, while that for
letters was 11.3%. These percentages are low especially if we consider the high number
of data classes to be recognized, particularly in the case of letters. Moreover, the
utilization of synthetic images allowed the analysis of the independent effect that
number plate deformations could have in classification errors, being the recognition
especially sensitive to wrong placed characters.
RESUMEN DEL PROYECTO
viii
Real images
Synthetic images correctly recognized
2
2
2
2
4
4
4
4
6
6
6
6
8
8
8
8
10
10
10
10
12
12
12
12
14
14
14
5
10
15
5
10
15
14
5
10
15
2
2
2
2
4
4
4
4
6
6
6
6
8
8
8
8
10
10
10
10
12
12
12
12
14
14
14
5
10
15
5
10
15
5
10
15
5
10
15
14
5
10
15
Índice
ix
Índice
1 INTRODUCCIÓN .............................................................................................................................. 2
1.1 Reconocimiento automático de matrículas..................................................... 2
1.2 Objetivos del proyecto ....................................................................................... 4
1.3 Metodología ........................................................................................................ 4
2 INTRODUCCIÓN A LAS MÁQUINAS DE SOPORTE VECTORIAL.................................... 6
2.1 Máquinas de soporte vectorial para clasificación binaria ............................ 7
2.1.1
SVM lineal con margen máximo
2.1.2
SVM para la clasificación no lineal
12
2.1.3
SVM lineal con margen blando
14
7
2.2 Máquinas de soporte vectorial para clasificación multiclase..................... 17
2.3 Aplicación de las máquinas de soporte vectorial al reconocimiento de
imágenes ............................................................................................................ 17
3 GENERADOR DE IMÁGENES SINTÉTICAS ........................................................................... 21
3.1 Clasificación de imágenes sin ruido .............................................................. 24
3.1.1
Resultados para el conjunto de variables 1
24
3.1.2
Resultados para el conjunto de variables 2 (histogramas horizontal y vertical)
31
3.1.3
Resultados para el conjunto de variables 3
34
3.1.4
Análisis de los resultados de la clasificación de símbolos sin ruido
37
3.2 Clasificación de imágenes con ruido ............................................................. 38
3.2.1
Resultados de la clasificación entrenando la SVM con imágenes del mismo
porcentaje de ruido que el estudiado
3.2.1.1
Imágenes con un 5% de ruido ...................................................................................39
3.2.1.2
Imágenes con un 15% de ruido .................................................................................40
3.2.1.3
Imágenes con un 25% de ruido .................................................................................41
3.2.2
Resultados de la clasificación entrenando la SVM con imágenes sin ruido
3.2.3
Comparación de los resultados obtenidos para datos de aprendizaje con ruido y sin
3.2.4
39
42
ruido
43
Resultados de la clasificación conjunta de datos con diversos niveles de ruido
46
3.3 Análisis de los resultados de la clasificación de imágenes generadas
sintéticamente ................................................................................................... 46
4 APLICACIÓN DE LAS SVM AL RECONOCIMIENTO DE MATRÍCULAS ...................... 50
4.1 Aplicación de las SVM al reconocimiento de números .............................. 51
Índice
x
4.1.1
Clasificación de números centrados en la imagen con distintos niveles de ruido
55
4.1.1.1
Resultados de la clasificación ....................................................................................55
4.1.1.2
Análisis de los resultados de la clasificación de los números centrados en la
imagen .......................................................................................................................................61
4.1.2
Clasificación de números deformados
62
4.1.2.1
Tipo de imágenes generadas .....................................................................................62
4.1.2.2
Resultados de la clasificación ....................................................................................64
4.1.2.3
Análisis de los resultados de números deformados...............................................68
4.2 Aplicación de las SVM al reconocimiento de letras .................................... 69
4.2.1
4.2.2
Clasificación de letras con distintos niveles de ruido
69
4.2.1.1
Resultados obtenidos..................................................................................................69
4.2.1.2
Análisis de los resultados de la clasificación de las letras con distintos niveles de
ruido
.......................................................................................................................................73
Clasificación de letras deformadas
73
4.2.2.1
Resultados de la clasificación de letras deformadas...............................................74
4.2.2.2
Análisis de los resultados de la clasificación de letras deformadas .....................76
4.3 Análisis de los resultados de la clasificación de los caracteres de las
matrículas .......................................................................................................... 77
5 CONCLUSIONES............................................................................................................................. 79
5.1 Conclusiones sobre los resultados ................................................................. 79
5.2 Recomendaciones para futuros estudios ...................................................... 80
6 BIBLIOGRAFÍA................................................................................................................................ 82
6.1 Documentos ...................................................................................................... 82
6.2 Direcciones de Internet .................................................................................... 82
A TABLAS DE RESULTADOS DE LA CLASIFICACIÓN DE LAS LETRAS .......................... 85
B MANUAL DE USUARIO................................................................................................................ 94
Índice de Figuras
xi
Índice de Figuras
Figura 1. Imagen de una matrícula borrosa........................................................................................... 2
Figura 2. Imagen de una matrícula mal iluminada. ............................................................................. 2
Figura 3. Localización de la matrícula en la imagen del vehículo. ..................................................... 3
Figura 4. Segmentación de la imagen de una matrícula. ..................................................................... 3
Figura 5. Separación de un conjunto de datos mediante SVM. .......................................................... 7
Figura 6. SVM con margen máximo (en negro están representados los vectores soporte)............. 9
Figura 7. Ejemplo de clasificación con SVM de margen máximo..................................................... 11
Figura 8. Ejemplo de un conjunto de datos no linealmente separables. .......................................... 12
Figura 9. Transformación de los datos de entrada a un espacio de mayor dimensión.................. 12
Figura 10. Fronteras de decisión obtenidas con una función núcleo gaussiana para σ=4 y σ=1.. 14
Figura 11. Clasificación con SVM de margen máximo de un conjunto de datos en el que
existe un outlier. ........................................................................................................................... 15
Figura 12. Clasificación con SVM de margen blando......................................................................... 16
Figura 13. Fronteras de decisión para distintos valores de C............................................................ 17
Figura 14. Tratamiento de la fotografía de una matrícula oscura..................................................... 18
Figura 15. Tratamiento de las imágenes y conversión en matrices. ................................................. 18
Figura 16. Imágenes del conjunto de aprendizaje y valores de sus variables................................. 19
Figura 17. Frontera de decisión obtenida en la clasificación de las imágenes. ............................... 19
Figura 18. Representación de distintos símbolos obtenidos con el generador. .............................. 21
Figura 19. Imágenes con distinto nivel de ruido................................................................................. 23
Figura 20. Imágenes no reconocidas por la SVM cuando σ = 10 y cuando σ = 20.......................... 25
Figura 21. Valores de h(x) de las figuras de entrenamiento cuando σ= 1........................................ 28
Figura 22. Valores de h(x) de las figuras que forman el conjunto de validación............................ 29
Figura 23. Valores de h(x) de las figuras de entrenamiento. ............................................................. 30
Figura 24. Valores de h(x) de las figuras que forman el conjunto de validación............................ 30
Figura 25. Valores de h(x) de las figuras que forman el conjunto de aprendizaje para σ = 10. .... 32
Figura 26. Valores de h(x) de las figuras que forman el conjunto de validación σ = 10. ............... 33
Figura 27. Valores de h(x) de las figuras que forman el conjunto de validación para σ = 1. ....... 33
Figura 28. Fronteras de decisión obtenidas para la variable 3 y σ = 3 para símbolos sin ruido. .. 34
Figura 29. Fronteras de decisión obtenidas para la variable 3 y σ = 20 para símbolos sin
ruido............................................................................................................................................... 36
Figura 30. Fronteras de decisión obtenidas para la variable 3 y σ = 10 para símbolos sin
ruido............................................................................................................................................... 36
Figura 31. Ejemplo de figuras utilizadas para entrenar la SVM. ...................................................... 39
Figura 32. Fronteras de decisión para el conjunto de variables 3 y σ = 2. ...................................... 40
Índice de Figuras
xii
Figura 33. Imágenes de una circunferencia, de una vertical y de una horizontal con un 15%
de ruido. ........................................................................................................................................ 40
Figura 34. Valores de h(x) para cada figura utilizada en el entrenamiento de la SVM. ................ 41
Figura 35. Símbolos con un 25% de ruido............................................................................................ 42
Figura 36. Error cometido en función del ruido para cada conjunto de variables. ........................ 42
Figura 37. Comparación de los resultados para el conjunto de variables 1. ................................... 43
Figura 38. Comparación de los resultados para el conjunto de variables 2. ................................... 44
Figura 39. Comparación de los resultados para el conjunto de variables 3. ................................... 44
Figura 40. Imágenes de una recta vertical y de una circunferencia clasificadas como círculos. . 45
Figura 41. Porcentaje de error en función del ruido para distintos valores de σ............................ 47
Figura 42. Ejemplo de las imágenes de números y letras empleadas en la clasificación............... 50
Figura 43. Fotografías reales de matrículas. ........................................................................................ 50
Figura 44. Imágenes de dos números con distinto número de píxeles. ........................................... 52
Figura 45. Imagen original e imagen modificada con la función imresize...................................... 52
Figura 46. Número antes de realizar un tratamiento de la imagen.................................................. 53
Figura 47. Histograma de los colores de la imagen. ........................................................................... 53
Figura 48. Figura tratada. ....................................................................................................................... 54
Figura 49. Imágenes patrón empleadas en la clasificación de números. ......................................... 54
Figura 50. Ejemplo de dos figuras pertenecientes a la misma clase. ................................................ 55
Figura 51. Imágenes con ruido empleadas en la clasificación........................................................... 55
Figura 52. Imagen de 15x15 píxeles e imagen correspondiente de 3x3............................................ 58
Figura 53. Comparación de los resultados obtenidos para el conjunto nº 4, el nº 5 y la
combinación de ambos. ............................................................................................................... 61
Figura 54. Porcentaje de error cometido para cada conjunto de variables en función del
ruido............................................................................................................................................... 62
Figura 55. Imagen rotada con la función imrotate e imagen corregida. .......................................... 63
Figura 56. Ejemplos de imágenes desplazadas. .................................................................................. 63
Figura 57. Ejemplo de imágenes dobladas horizontalmente............................................................. 63
Figura 58. Ejemplo de imágenes dobladas verticalmente.................................................................. 64
Figura 59. Ejemplo de imágenes deformadas con ruido.................................................................... 64
Figura 60. Números clasificados incorrectamente cuando se utilizan como variables los
histogramas................................................................................................................................... 66
Figura 61. Imágenes que representan el número 6 mal clasificadas. ............................................... 67
Figura 62. Imágenes mal clasificadas.................................................................................................... 67
Figura 63. Porcentaje de error cometido para cada conjunto de variables...................................... 68
Figura 64. Imágenes patrón empleadas en la clasificación de las letras. ......................................... 69
Figura 65. Histograma del porcentaje de imágenes indeterminadas de cada tipo de letra. ......... 70
Figura 66. Histograma del porcentaje de imágenes incorrectamente clasificadas de cada letra.. 70
Índice de Figuras
xiii
Figura 67. Imágenes con un 20% de ruido mal clasificadas empleando el conjunto de
variables nº5.................................................................................................................................. 71
Figura 68. Histograma del porcentaje de imágenes incorrectamente clasificadas de cada letra
para el conjunto nº4. .................................................................................................................... 71
Figura 69. Histograma del porcentaje de imágenes incorrectamente clasificadas de cada letra
para el conjunto nº5. .................................................................................................................... 72
Figura 70. Comparación del porcentaje de letras incorrectamente clasificadas tomando 500 y
750 imágenes de aprendizaje...................................................................................................... 72
Figura 71. Porcentaje de error cometido para cada conjunto de variables al variar el ruido. ...... 73
Figura 72. Ejemplos de figuras mal clasificadas al utilizar los elementos de la matriz como
variables. ....................................................................................................................................... 75
Figura 73. Histograma de las figuras giradas mal clasificadas para los distintos ángulos de
giro. ................................................................................................................................................ 76
Figura 74. Número de figuras no reconocidas para cada letra y cada conjunto de variables. ..... 76
Figura 75. Error en función del ruido en la clasificación de las letras y de los números............... 77
Índice de Tablas
xiv
Índice de Tablas
Tabla 1. Resultados de la clasificación utilizando el conjunto de variables 1 para distintos
valores de σ y de C....................................................................................................................... 25
Tabla 2. Número de vectores soporte de cada modelo sobre un conjunto de entrenamiento de
90 ejemplos.................................................................................................................................... 26
Tabla 3. Resultados de la clasificación utilizando el conjunto de variables 2 para distintos
valores de σ. .................................................................................................................................. 31
Tabla 4. Número de vectores soporte de los tres modelos para el conjunto de variables 2 y
C=100000, sobre un conjunto de entrenamiento de 90 ejemplos........................................... 32
Tabla 5. Número de vectores soporte de los tres modelos para el conjunto de variables 3.......... 37
Tabla 6. Comparación de los resultados obtenidos con el conjunto de variables 1 y 3. ............... 38
Tabla 7. Resultados de la clasificación de símbolos con un 5% de ruido. ....................................... 39
Tabla 8. Resultados de la clasificación de símbolos con un 15% de ruido. ..................................... 40
Tabla 9. Resultados de la clasificación de símbolos con un 25% de ruido. ..................................... 42
Tabla 10. Resultados de la clasificación de un conjunto de datos con distintos niveles de
ruido............................................................................................................................................... 46
Tabla 11. Resultados de la clasificación de números con un 20% de ruido empleando el
conjunto de variables nº 4. .......................................................................................................... 56
Tabla 12. Resultados de la clasificación de números con un 40% de ruido empleando el
conjunto de variables nº 2. .......................................................................................................... 57
Tabla 13. Resultados de la clasificación de números con un 40% de ruido empleando el
conjunto de variables nº 4. .......................................................................................................... 57
Tabla 14. . Resultados de la clasificación de números con un 40% de ruido empleando el
conjunto de variables nº 5. .......................................................................................................... 58
Tabla 15. Resultados de la clasificación de números con un 40% de ruido empleando los
elementos de matrices 3x3. ......................................................................................................... 59
Tabla 16. Resultados de la clasificación para números con un 70% de ruido empleando el
conjunto de variables nº 2. .......................................................................................................... 59
Tabla 17. Resultados de la clasificación para números con un 70% de ruido empleando el
conjunto de variables nº 4. .......................................................................................................... 60
Tabla 18. Resultados de la clasificación para números con un 70% de ruido empleando el
conjunto de variables nº 5. .......................................................................................................... 60
Tabla 19. Resultados de la clasificación para números con un 70% de ruido empleando los
conjuntos 4 y 5. ............................................................................................................................ 61
Tabla 20. Clasificación realizada por la SVM para cada número. .................................................... 65
Tabla 21. Clasificación realizada por la SVM para cada número. .................................................... 66
Índice de Tablas
xv
Tabla 22. Imágenes no reconocidas por la SVM para cada tipo de deformación. .......................... 68
Tabla 23. Imágenes no reconocidas por la SVM para cada tipo de deformación. .......................... 74
Tabla 24. Imágenes no reconocidas por la SVM para cada tipo de deformación. .......................... 75
Tabla 25. Resultados de la clasificación de imágenes con un 20% de ruido empleando los
histogramas de la matriz en blanco y negro............................................................................. 85
Tabla 26. Resultados de la clasificación de imágenes con un 40% de ruido empleando los
elementos de la matriz en blanco y negro. ............................................................................... 86
Tabla 27. Resultados de la clasificación de imágenes con un 40% de ruido empleando los
histogramas de la matriz en blanco y negro............................................................................. 87
Tabla 28. Resultados de la clasificación de imágenes con un 40% de ruido empleando el
conjunto de variables nº 5. .......................................................................................................... 88
Tabla 29. Resultados de la clasificación de imágenes con un 70% de ruido empleando los
elementos de la matriz en blanco y negro. ............................................................................... 89
Tabla 30. Resultados de la clasificación de imágenes con un 70% de ruido empleando los
histogramas de la matriz en blanco y negro............................................................................. 90
Tabla 31. Resultados de la clasificación de imágenes con un 70% de ruido empleando el
conjunto de variables n º5. .......................................................................................................... 91
Tabla 32. Resultados de la clasificación de imágenes con un 70% de ruido empleando el
conjunto de variables nº 5 y un 750 imágenes de aprendizaje............................................... 92
1
Introducción
1 Introducción
1
2
Introducción
1.1
Reconocimiento automático de matrículas
Detectar los automóviles que cometen una infracción de tráfico, identificar
vehículos robados, realizar automáticamente el pago en peajes o controlar el acceso en
los aparcamientos es posible gracias al reconocimiento automático de matrículas. Éste
combina la aplicación de técnicas de tratamiento de imágenes con técnicas de
reconocimiento de patrones, típicamente basadas en Inteligencia Artificial.
En la actualidad, existen distintos métodos para el reconocimiento automático de
matrículas (también conocido como ANPR: Automatic Number Plate Recognition). Éstos
están basados fundamentalmente en redes neuronales, aunque no resultan fiables al
100%. Los casos en los que suelen fallar en mayor medida se producen cuando:
- Los caracteres no son suficientemente nítidos debido a suciedad en la matrícula
o porque algún objeto obstaculiza la visión.
- La resolución de la fotografía es mala o la imagen está desenfocada y los
caracteres aparecen borrosos (Figura 1).
Figura 1. Imagen de una matrícula borrosa.
- La iluminación no es la adecuada (Figura 2).
Figura 2. Imagen de una matrícula mal iluminada.
Como alternativa al empleo de redes neuronales artificiales para realizar el
reconocimiento, es posible utilizar otro tipo de técnicas de Inteligencia Artificial. En
concreto, las máquinas de soporte vectorial (también conocidas como SVM) han
demostrado ser superiores en muchos campos, especialmente en el del reconocimiento
facial. Una de las ventajas que presentan las SVM frente a las redes neuronales es su
capacidad para minimizar el error de generalización (ver el capítulo 2).
1 Introducción
3
Además, resultan mucho más versátiles debido a los parámetros que se pueden
ajustar y que permiten optimizar la clasificación. Por estas razones, las SVM podrían
ser una buena solución en el reconocimiento de matrículas, incluso en situaciones en
las que otros clasificadores presentan un alto porcentaje de error.
La primera etapa del reconocimiento de matrículas es realizar una fotografía del
vehículo. Una vez capturada la imagen, es necesario localizar la matrícula dentro de
dicha imagen y aislarla (Figura 3).
Figura 3. Localización de la matrícula en la imagen del vehículo.
A continuación, utilizando un segmentador se divide la fotografía de la matrícula
en los diferentes caracteres que la forman como se puede observar en la Figura 4.
Figura 4. Segmentación de la imagen de una matrícula.
Los procesos de localización y segmentación se realizan combinando técnicas
estadísticas (basadas en el análisis de histogramas) y de tratamiento de imágenes para
obtener una imagen en blanco y negro puros.
Una vez segmentada la matrícula, se identifican los diferentes caracteres que la
forman, reconociendo cada uno de ellos por separado. Este proceso se realiza
normalmente utilizando un modelo de clasificación que, a partir de la información de
la imagen, decide el carácter al que corresponde. En el proyecto que nos ocupa, esta
clasificación se va a realizar utilizando SVM.
1 Introducción
1.2
4
Objetivos del proyecto
Los objetivos de este proyecto son los siguientes:
- Estudiar y determinar las ventajas e inconvenientes de las máquinas de soporte
vectorial en procesos de clasificación y su aplicación al reconocimiento de
imágenes.
- Desarrollar un prototipo que permita aplicar las SVM al reconocimiento de
matrículas.
- Desarrollar un generador automático de imágenes sintéticas para alimentar al
reconocedor.
- Evaluar los resultados obtenidos tanto en un caso sintético como en un caso
real, discutiendo ventajas e inconvenientes del enfoque propuesto.
1.3
Metodología
El entorno de programación que se ha utilizada es Matlab. La ventaja que
proporciona es que posee una librería destinada a la manipulación y el procesado de
imágenes (la Image Processing Toolbox). Las funciones que contiene permiten trabajar
fácilmente con el elevado número de fotografías que se han tenido que manejar para la
realización de este proyecto.
Para implementar las máquinas de soporte vectorial se ha usado una librería de
Matlab desarrollada por la Universidad de Southampton disponible en la página Web
www.isis.ecs.soton.ac.uk/resources/svminfo/.
Se han desarrollado un conjunto de funciones que permiten aplicar esta librería al
reconocimiento de imágenes para, posteriormente, poder llevar a cabo las simulaciones
necesarias para cumplir con los objetivos del proyecto.
En este proyecto primero se ha estudiado la aplicación de las SVM a la
identificación de figuras sencillas para analizar su capacidad de reconocer imágenes.
Posteriormente, se han empleado para el reconocimiento de los caracteres de las
matrículas.
2
Introducción a las Máquinas de
Soporte Vectorial
2 Introducción a las máquinas de soporte vectorial
2
6
Introducción a las máquinas de soporte vectorial
Las máquinas de soporte vectorial surgieron como un método de clasificación
basado en la teoría de minimización del riesgo estructural de Vapnik. En la actualidad,
tienen numerosas aplicaciones debido a su versatilidad y a sus prestaciones. Las SVM
se han utilizado con éxito en campos como la recuperación de información, la
categorización de textos, el reconocimiento de escritura o la clasificación de imágenes.
Para poder clasificar con las máquinas de soporte vectorial, se comienza
realizando una etapa de aprendizaje. Consiste en encontrar el hiperplano h(x) = 0 que
mejor separe un conjunto de datos X ∈ ℜ d según la clase Y ∈ {-1,1} a la que
pertenecen. Dicho hiperplano se corresponde con el que maximiza la distancia al punto
más próximo de cada clase, por lo tanto, estará a la misma distancia de los ejemplos
más cercanos entre ellos de cada categoría.
Según la teoría de Vapnik, el separador lineal que maximiza el margen (2 veces la
distancia al punto más próximo de cada clase) es el que nos da la mayor capacidad de
generalización, es decir, la capacidad de distinguir características comunes de los datos
de cada clase que permitan clasificar imágenes que no sean las del conjunto de
entrenamiento.
Para hallarlo, es necesario resolver un problema de optimización usando técnicas
de programación cuadrática.
A los datos que se utilizan para hallar la frontera de decisión (el hiperplano), se les
conoce como vectores de entrenamiento o de aprendizaje.
A partir de unos datos de entrada xi, las SVM nos proporcionarán su clase según
la regla de clasificación f(xi) = signo(h(xi)).
2 Introducción a las máquinas de soporte vectorial
7
Hiperplano separador
Clase 1
Clase 2
Margen
Figura 5. Separación de un conjunto de datos mediante SVM.
Tras la fase de aprendizaje, se comprueba el error cometido tomando otra muestra
de datos (denominados conjunto de test o validación) y comparando la salida que
obtenemos con su clase real.
De una muestra de datos se suele tomar habitualmente un 75% como vectores de
aprendizaje y el 25% restante se utiliza para poder comprobar la fiabilidad de la
frontera de decisión obtenida.
2.1
Máquinas de soporte vectorial para clasificación binaria
En los procesos de clasificación binaria sólo existen 2 clases: una es considerada
como la positiva (y = 1) y la otra como la negativa (y = -1). Puede ocurrir que los datos
no sean linealmente separables o que exista un cierto nivel de ruido. Según esto se
pueden emplear distintos tipos de SVM: SVM lineal con margen máximo, SVM para la
clasificación no lineal o SVM con margen blando.
2.1.1
SVM lineal con margen máximo
Sólo se debe emplear cuando los datos son linealmente separables, es decir,
cuando se puede usar como frontera de decisión un hiperplano h(x) tal que:
h( x ) = ω T x + b = 0
donde ω y x ∈ ℜ d, siendo d la dimensión del espacio de entrada.
2 Introducción a las máquinas de soporte vectorial
8
Supongamos que se tiene un conjunto de n datos linealmente separables {(x1, y1),
(x2,y2),…, (xn, yn)} donde xi ∈ ℜ d e yi ={-1,1}. Entonces, según el lado en el que se
encuentren respecto del hiperplano, se cumplirá:
ω T x i + b > 0 , para yi = 1, i = 1,…, n
ω T x i + b < 0 , para yi = − 1 , i = 1,…, n
Estas 2 ecuaciones pueden reducirse a:
yi (ω T x i + b) > 0 ,
i = 1,…, n
Para la resolución del problema, se considera que los puntos más cercanos al
hiperplano, denominados vectores soporte, cumplen:
h( x i ) = 1 ,
para yi = 1
h(x i ) = −1 , para yi = − 1
Por tanto, como no puede haber datos del conjunto de aprendizaje dentro del
margen, la ecuación yi (ω T x i + b) > 0 quedaría:
y i (ω T x i + b) ≥ 1 , i = 1,…, n
La distancia dist(h,x) de un punto a un hiperplano es:
dist (h, x) =
h ( x)
ω
xxxx
Como se ha visto, los puntos más cercanos al hiperplano cumplen h( ) = 1 , por lo
que su distancia al hiperplano sería:
dist (h, x ) =
1
ω
Para hallar la frontera de decisión que mejor separa un conjunto de puntos según
las SVM (es decir, encontrar los valores de ω y b), se resuelve un problema de
2 Introducción a las máquinas de soporte vectorial
9
optimización que consiste en maximizar la distancia dist(h,x) entre el hiperplano y el
punto de entrenamiento más próximo:
1
ω
Max
Sujeto a: y i (ω T x i + b) ≥ 1
i = 1,…, n
h ( x) = 0
y=1
h( x) = 1
1
ω
h( x) = −1
y = −1
1
ω
Figura 6. SVM con margen máximo (en negro están representados los vectores soporte).
Se puede demostrar que al minimizar ω
2
/ 2 se obtiene la misma solución que al
maximizar 1 / ω .
El problema se puede expresar en su formulación dual que es más fácil de
resolver. Para ello, se utiliza la ecuación de Lagrange y las condiciones de KarushKuhn-Tucker:
L(ω, b, α ) =
1
ω
2
2
n
(
(
+ ∑ α i 1 − yi ωT x i + b
i =1
n
∂L(ω, b, α )
= 0 → ω = ∑ yiα i x i
∂ω
i =1
n
∂L(ω, b, α )
= 0 → ∑ yiα i = 0
∂b
i =1
α i (1 − y i (ω T x i + b )) = 0
1≤ i ≤ n
))
2 Introducción a las máquinas de soporte vectorial
α i (1 − y i (ω T x i + b )) = 0
1≤ i ≤ n
(1 − y (ω
1≤ i ≤ n
i
T
))
xi + b ≤ 0
αi ≥ 0
10
1≤ i ≤ n
Las condiciones de Karush-Kuhn-Tucker implican que, sólo en el caso en el que
los datos no son vectores soporte, α i = 0 .
Sustituyendo en la ecuación de Lagrange, se obtiene la función objetivo de la
formulación dual:
n
L(ω, b,α ) = ∑ α i −
i =1
1 n
T
y i y j α iα j x i x j
∑
2 i , j =1
n
Maximizar
∑α i −
i =1
n
Sujeto a
∑yα
i =1
i
i
1 n
T
y i y jα iα j x i x j
∑
2 i , j =1
=0
αi ≥ 0
1≤ i ≤ n
Al resolverlo, se obtiene la siguiente solución:
n
ω = ∑ y iα i x i
i =1
n
h ( x ) = ω T x + b = ∑ y iα i x i x + b
T
i =1
b=−
(
{
}
{
1
max yi = −1 ω T x j + min yi =1 ω T x j
2
})
En la ecuación del hiperplano se puede observar que éste sólo depende de los
vectores soporte ya que el resto de los puntos cumplen α = 0 . Esto significa que si se
volviera a calcular la frontera de decisión únicamente con los vectores soporte, se
llegaría a la misma solución.
2 Introducción a las máquinas de soporte vectorial
11
Ejemplo:
En la Figura 7 se muestra un ejemplo de clasificación con SVM de margen
máximo. Los cuadrados simbolizan y = 1 y los círculos y = -1.
7
6
5
4
3
2
1
0
0
1
2
3
4
5
6
7
8
Figura 7. Ejemplo de clasificación con SVM de margen máximo.
Al resolver el problema de optimización con los datos de la figura se obtuvieron
los siguientes resultados: b = −7 , α (4 , 2 ) = 1 , α (4 , 4 ) = 0.5 y α (6 , 2 ) = 1 (para el resto de los
puntos α vale 0). Con estos valores se obtienen ω y h(x):
n
ω = ∑ yiα i x i = −1 ⋅1 ⋅ (4,2 ) + 1 ⋅ 0.5 ⋅ (4,4 ) + 1 ⋅ 0.5 ⋅ (6,2) = (1,1)
i =1
h( x) = ω1 x1 + ω 2 x2 + b = x1 + x2 − 7
Los vectores soporte son los puntos (4,2), (4,4) y (6,2) puesto que son los únicos
para los que α no es nulo. La distancia de estos puntos al hiperplano es:
dist (h, x) =
h(x )
ω
=
1
1 +1
2
2
=
1
2
Para conocer la clase a la que pertenece un vector cualquiera, se aplica la regla
f(xi)= signo(h(xi)). Por ejemplo, la clase de un vector xi cuyas coordenadas son (3,2) sería:
f (x i ) = signo(h(x i )) = signo(3 + 2 − 7) = −1 → yi = −1
2 Introducción a las máquinas de soporte vectorial
2.1.2
12
SVM para la clasificación no lineal
Puede ocurrir que los puntos no sean linealmente separables en el espacio de
entrada, como se muestra en el ejemplo de la Figura 8.
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Figura 8. Ejemplo de un conjunto de datos no linealmente separables.
Cuando esto sucede, existe la posibilidad de transformar los datos a un espacio ℑ
de mayor dimensión (el espacio de características) en el que los puntos sí pueden ser
separados por un hiperplano (Figura 9). Para ello, se utiliza una función Φ , tal que:
Φ:
ℜD → ℑ
x → Φ(x)
La frontera de decisión resultante en el espacio de entrada ya no será lineal.
Espacio de entrada
Espacio de características
Figura 9. Transformación de los datos de entrada a un espacio de mayor dimensión.
Las funciones que se usan para poder realizar esta transformación se llaman
funciones núcleo o kernels. Representan el producto vectorial en el espacio de
características.
2 Introducción a las máquinas de soporte vectorial
Si,
por
(
ejemplo,
13
tuviéramos
una
)
transformación
de
Φ
ℜ2
en
ℜ3 :
Φ( x1 , x2 ) = x1 , 2 x1 x2 , x2 , el producto escalar < Φ ( x), Φ ( x ′) > en el espacio de
2
2
características sería:
(
)(
< Φ (x), Φ (x ′) >= x1 , 2 x1 x 2 , x 2 ⋅ x1′ , 2 x1′ x 2′ , x 2′
2
2
2
) = ((x , x ) ⋅ (x′ , x′ ) )
2 T
T 2
1
2
1
2
=< x, x ′ > 2
Por lo tanto, el producto escalar < Φ ( x), Φ ( x ′) > en el espacio de características se
puede calcular como < x, x ′ > 2 , es decir, a partir del producto escalar en el espacio de
entrada. En este caso el kernel asociado al espacio de características es
K (x, x ′) =< x, x ′ > 2 . La función núcleo permite calcular el producto escalar
< Φ (x), Φ (x ′) > sin tener que calcular la transformación Φ.
En las SVM de margen máximo, la solución que se obtenía era:
n
h ( x ) = ∑ y iα i x i x + b
T
i =1
Para obtener la frontera de decisión para la SVM no lineal, se sustituye el producto
T
vectorial del espacio de entrada x i x por el del espacio de características que se
corresponde con la función núcleo:
n
h(x ) = ∑ yiα i K (x i , x ) + b
i =1
Entre las funciones núcleo más utilizadas destacan:
- La polinómica:
(
K (x, x ′) = x T ⋅ x ′ + c
)
d
c ∈ ℜ, d ∈ ℵ
- La gaussiana:
 − x − x′
K (x, x′) = exp
 2σ 2

2




σ >0
2 Introducción a las máquinas de soporte vectorial
14
- La sigmoidal:
((
) )
K (x, x ′) = tanh s x T ⋅ x' + r
s, r ∈ ℜ
Cuando se habla de kernel lineal se hace referencia al producto vectorial en el
espacio de entrada que equivale a emplear la SVM de margen máximo:
K (x, x ′) = x T ⋅ x
Según el tipo de función núcleo y de los valores de sus parámetros, se pueden
obtener distintas fronteras de decisión. En la Figura 10 se muestran fronteras obtenidas
con una función gaussiana para el mismo conjunto de datos pero con dos valores de σ
distintos.
σ =4
σ =1
Figura 10. Fronteras de decisión obtenidas con una función núcleo gaussiana para σ=4 y σ=1.
A partir de un conjunto de datos no se puede saber de antemano cuál será el mejor
kernel y los mejores valores de sus parámetros para hallar el separador óptimo. Para
conocer cuáles son los parámetros de la SVM más indicados se resuelve el problema
para un conjunto de datos y con otro conjunto de test se analiza el error. La función
que se usará para la clasificación será aquella con la que se consiga la menor cantidad
de puntos incorrectamente clasificados.
Generalmente, la función gaussiana es la que permite conseguir los separadores
que mejor se adaptan a los datos.
2.1.3
SVM lineal con margen blando
En algunos casos, puede existir ruido debido a errores en la recogida de datos o
por la presencia de algún outlier (dato atípico). En este caso no es conveniente que la
SVM se ajuste totalmente a los datos.
2 Introducción a las máquinas de soporte vectorial
15
En la Figura 11 se observan dos conjuntos de datos y la frontera de decisión que se
obtendría con la SVM de margen máximo. Cada conjunto está agrupado excepto por
un punto que se encuentra muy próximo de los de la otra clase. Éste se puede
corresponder con un dato atípico o que ha sido clasificado erróneamente. Este punto
no debería ser considerado para hallar la frontera de decisión ya que al ser una
excepción podría alterar los resultados deseados y nos llevaría a clasificar
incorrectamente nuevos datos.
Figura 11. Clasificación con SVM de margen máximo de un conjunto de datos en el que existe un outlier.
La SVM tiene que ser más robusta para tener una mayor capacidad de
generalización. Esto se consigue introduciendo unas variables de holgura ξ en el
problema de optimización:
Minimizar
n
1 T
ω ω + C∑ξi
2
i =1
Sujeto a:
yi (ω T x i + b) ≥ 1 − ξ i
1≤ i ≤ n
ξi ≥ 0
1≤ i ≤ n
Siendo la formulación dual del problema la siguiente:
n
Maximizar
∑α
i =1
i
−
n
Sujeto a:
∑yα
i =1
i
i
(
1 n
∑ y i y jα iα j K x i , x j
2 i , j =1
=0
)
2 Introducción a las máquinas de soporte vectorial
16
0 ≤ αi ≤ C
1≤ i ≤ n
Las variables ξ i permiten que las restricciones no se cumplan de manera estricta:
puede haber datos que cumplan yi h( x) < 1 . Si yi h( x) < 0 , significa que x está en el
lado incorrecto del hiperplano.
h( x ) = 0
0 < y ⋅ h( x) < 1
0 < ξ <1
y ⋅ h( x) < 0
1<ξ
h( x) = −1
h( x) = 1
Figura 12. Clasificación con SVM de margen blando.
La única diferencia con la SVM de margen máximo está en que α no puede ser
mayor que un valor C. Este parámetro permite controlar el número de errores de
clasificación permitidos en la etapa de aprendizaje. Cuanto mayor es C menos ejemplos
de entrenamiento serán mal clasificados. La SVM de margen máximo se corresponde
con el caso en el que C = ∞ .
Los datos x para los que y ⋅ h( x) = 1 cumplen α < C , mientras que para los que
y ⋅ h(x) < 1 , α = C . Todos ellos son considerados vectores soporte.
En la Figura 13 se puede observar un caso real en donde se ha ajustado un SVM
con kernel lineal y varios valores de C. Los vectores soporte de este problema son:
- Para C = ∞: los vectores 9, 10 y 16.
- Para C = 2 y C = 0.2: los vectores 6, 9, 10 y 16.
2 Introducción a las máquinas de soporte vectorial
17
10
5
9
C = 0.2
7
4
8
C=2
C = inf
8
3
7
6
16
6
5
2
4
1
14 15
9
11
13
3
10
2
12
1
0
0
2
4
6
8
10
12
14
16
Figura 13. Fronteras de decisión para distintos valores de C.
2.2
Máquinas de soporte vectorial para clasificación multiclase
Las SVM se usan habitualmente para problemas de tipo binario. En la cuestión
que se va a intentar solucionar en este proyecto tenemos más de dos clases, puesto que
cada letra o número representa una categoría distinta.
Una de las soluciones para resolver este problema multiclase es convertirlo en
varios binarios. Para ello, existen 2 métodos distintos:
- Clasificación 1-v-r (del inglés one-versus-rest): en cada uno de los problemas se
considera una clase positiva y las demás negativas, por lo que habrá que hallar
tantos hiperplanos como clases existan.
- Clasificación 1-v-1 (del inglés one-versus-one): para cada problema se toman 2
clases de las K totales. Se compara cada clase con cada una de las restantes, lo
que supone realizar K(K - 1)/2 clasificaciones.
El primer enfoque es el más habitual y el que se ha seguido en este trabajo.
2.3
Aplicación de las máquinas de soporte vectorial al reconocimiento de
imágenes
En el proceso de clasificación de una imagen existen tres fases principales:
- Tratamiento de la imagen para mejorar la nitidez (Figura 14).
2 Introducción a las máquinas de soporte vectorial
18
Figura 14. Tratamiento de la fotografía de una matrícula oscura.
- Búsqueda de variables representativas a partir de los valores del color de cada
pixel.
- Selección de los parámetros adecuados de las SVM (función kernel, valor del
parámetro C…).
El objetivo de estas etapas es facilitar la identificación de las imágenes a las SVM
para conseguir minimizar el error al clasificarlas.
A continuación se muestra un ejemplo de cómo aplicar las SVM al reconocimiento
de la imagen de una línea horizontal y de una línea vertical. Primero se tratan las
imágenes y se convierten en matrices (Figura 15).
Tratamiento
de imagen
Conversión
en matriz
1

1
1

0

0
1

1
1

1 1 1 1 1 1 1

1 1 1 1 1 1 1
1 1 1 1 1 1 1

0 0 0 0 0 0 0

0 0 0 0 0 0 0
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 0 0 1
1 1 1 1 0 0 1

1 1 1 1 0 0 1
1 1 1 1 0 0 1
1 1 1 1 0 0 1

1 1 1 1 0 0 1
1 1 1 1 0 0 1
Figura 15. Tratamiento de las imágenes y conversión en matrices.
A partir de la información contenida en las matrices es necesario encontrar las
variables que permitan que la SVM reconozca fácilmente las figuras. En este caso se
podrían usar dos variables (x,y) tal que:
- x: nº de columnas en el que al menos uno de sus elementos es 0.
2 Introducción a las máquinas de soporte vectorial
19
- y: nº de filas en el que al menos uno de sus elementos es 0.
Las imágenes utilizadas en el entrenamiento de la SVM aparecen en la Figura 16.
(6,2)
(8,1)
(7,3)
(3,7)
(1,5)
(2,7)
Figura 16. Imágenes del conjunto de aprendizaje y valores de sus variables.
En la Figura 17 se muestran las imágenes en el espacio de entrada. Como se puede
observar con las variables empleadas los datos de cada clase aparecen agrupados y son
linealmente separables por lo que dichas variables son las adecuadas para la
identificación de líneas horizontales y verticales. La SVM puede encontrar fácilmente
un hiperplano que separe cada clase. Si se tuviera una imagen desconocida
(representada en rojo en la imagen) pero cuyas variables son conocidas, según en qué
lado del hiperplano se encuentre se podrá saber qué tipo de figura es. En este caso sería
una línea vertical.
8
7
Línea horizontal
6
Línea vertical
y
5
4
3
2
1
0
0
1
2
3
4
5
6
7
8
9
10
x
Figura 17. Frontera de decisión obtenida en la clasificación de las imágenes.
3
Generador de imágenes sintéticas
3 Generador de imágenes sintéticas
3
21
Generador de imágenes sintéticas
Para comprobar la viabilidad de las máquinas de soporte vectorial en el
reconocimiento de caracteres, inicialmente se ha construido un generador de
imágenes sintéticas usando el programa Matlab. Éstas se corresponden con matrices
de 20x20 de unos y ceros que representan varios símbolos diferentes cuyo grosor y
posición son aleatorios.
En la Figura 18 se pueden observar algunos símbolos obtenidos con el
generador. La representación se ha realizado con el comando pcolor de Matlab. Las
casillas rojas simbolizan los elementos de la matriz cuyo valor es 1 y las azules los
que tienen por valor 0.
Figura 18. Representación de distintos símbolos obtenidos con el generador.
Con estos ejemplos de símbolos se alimentará a las SVM y se comprobará el
porcentaje de error cometido al intentar identificar el tipo de figura.
3 Generador de imágenes sintéticas
22
Este es un caso de clasificación con más de 2 clases. Para resolver el problema
se va emplear el método 1-v-r: al tener 3 clases distintas, hay que hallar 3
hiperplanos distintos, por lo que es necesario ajustar 3 modelos. En cada uno de
ellos se considera un tipo de símbolo como clase positiva y el resto como negativo:
hay un modelo para determinar si el símbolo es un círculo o no, otro para la recta
horizontal y otro para la vertical. Al clasificar finalmente un ejemplo a partir de la
estimación realizada por cada uno de estos 3 modelos binarios se pueden dar los
siguientes casos:
- Figura correctamente clasificada: ha sido clasificada en una sola simulación
como clase positiva, y ésta coincide con la real.
- Figura mal clasificada: uno de los modelos estima que corresponde a su
símbolo (ha sido categorizada como clase positiva), aunque dicha
clasificación parcial no es la correcta.
- Figura indeterminada. Puede ser debido a 2 razones:
•
Ha sido clasificada como positiva por más de un modelo binario.
•
En ningún caso ha sido clasificada como positiva.
Para asemejarlo al caso real, en el que los caracteres no son totalmente nítidos,
se han simulado imágenes con diferentes niveles de ruido. Se pretende estudiar
cómo influye éste a la hora de identificar las distintas figuras.
Si una figura tiene un porcentaje p de ruido, significa que un p% de los
elementos de la matriz están cambiados (donde debía haber un 1 hay un 0 y
viceversa).
Se han estudiado símbolos con porcentajes de ruido del 0, 5, 15 y 25% (Figura
19). Para cada caso se generan 240 figuras, excepto para el primero, en el que se
trabaja con 120. De cada conjunto de matrices con el mismo nivel de ruido, se toma
un 75% para encontrar el hiperplano clasificador (conjunto de aprendizaje). El resto
(conjunto de validación) se emplea para calcular el porcentaje de error que comete la
SVM al clasificarlo y así poder comprobar si el modelo estudiado es el adecuado.
3 Generador de imágenes sintéticas
23
En la Figura 19 se muestra, a modo de ejemplo, un símbolo original (sin ruido)
y cómo queda alterado al añadir diferentes niveles de ruido.
Porcentaje ruido = 0%
Porcentaje ruido = 5%
20
20
15
15
10
10
5
5
5
10
15
20
5
Porcentaje ruido = 15%
20
15
15
10
10
5
5
10
15
15
20
Porcentaje ruido = 25%
20
5
10
20
5
10
15
20
Figura 19. Imágenes con distinto nivel de ruido.
Es necesario escoger las variables que se van a utilizar para caracterizar los
ejemplos y que formarán el espacio de entrada para las SVM. Según las variables
que se usen podremos facilitar el proceso de decisión. Para este problema, se han
empleado tres conjuntos de variables:
1.
Los elementos de la matriz. Al tener matrices de 20x20, cada figura estará
representada por 400 variables. Esto significa que el espacio de entrada
tendrá 400 dimensiones.
2.
El histograma vertical de la matriz (suma de cada columna) junto con el
histograma horizontal (suma de cada fila): espacio de entrada de
dimensión 20+20=40.
3.
El número de columnas y el número de filas que no tengan ningún
elemento igual a 1: espacio de entrada de dimensión 2.
3 Generador de imágenes sintéticas
24
Para ilustrar estos procedimientos, se toma la siguiente matriz M4x4 de unos y
ceros:
1

1
M =
1

1

1 0 0

1 0 0
1 0 0

1 0 0 
Las variables de cada conjunto tomarán los siguientes valores para este
ejemplo:
1.
v = (M 11 , M 12 ,..., M 43 , M 44 ) = (1,1,0,0,1,1,0,0,1,1,0,01,1,0,0 )
2.
4
4
4
 4

v =  ∑ M i1 ,..., ∑ M i 4 , ∑ M 1i ,...,∑ M 4i  = (4,4,0,0,2,2,2,2 )
i =1
i =1
i =1
 i =1

4
3.
v = ( nº columnas j tal que ∑ M ij = 0, nº filas i tal que
i =1
3.1
4
∑M
j =1
ij
= 0) = (2,0 )
Clasificación de imágenes sin ruido
Para realizar las distintas simulaciones se toman 90 símbolos sin ruido (30 de
cada clase) para hallar los separadores y 30 (10 de cada clase) para realizar la
evaluación.
Como ya se ha comentado, hay que resolver tres problemas distintos para la
clasificación de las figuras: un modelo se emplea para saber si el símbolo es un
círculo o no, otro para la recta horizontal y otro para la recta vertical.
3.1.1
Resultados para el conjunto de variables 1
Después de realizar distintas simulaciones, se comprueba que la función kernel
con la que el número de figuras mal clasificadas es mínimo es la función gaussiana:
 − x − x′
K (x, x′) = exp
 2σ 2

2




σ >0
3 Generador de imágenes sintéticas
25
En la Tabla 1 se muestra el error de clasificación de los símbolos para valores de σ
de 1, 3, 10 y 20 y para C = 100 y C = 100000.
Nº de símbolos mal
Nº de símbolos
Porcentaje de
clasificados
indeterminados
acierto
100
0
0
100
100000
0
0
100
100
0
0
100
100000
0
0
100
100
3
2
83,3
100000
3
2
83,3
100
5
0
83,3
100000
5
0
83,3
σ
1
3
10
20
C
Tabla 1. Resultados de la clasificación utilizando el conjunto de variables 1 para distintos valores de σ y de C.
Como se puede apreciar, para σ = 1 y σ = 3, se consiguen clasificar
correctamente todas las imágenes. Para valores de σ = 10 y σ = 20, clasifica
incorrectamente un 16,7% de ellas. También se observa que, para un σ dado, el
parámetro C no influye en la cantidad de símbolos bien clasificados, lo que puede
significar que la SVM no identifica ningún dato atípico.
Las figuras que no son reconocidas por la SVM para σ = 10 y σ = 20 son las
mismas y se corresponden con verticales (Figura 20). El clasificador las confunde
con horizontales.
Figura 20. Imágenes no reconocidas por la SVM cuando σ = 10 y cuando σ = 20.
3 Generador de imágenes sintéticas
26
Estas imágenes no presentan ninguna característica especial por lo que la SVM
no debería haber tenido dificultades para clasificarlas. Esto nos lleva a afirmar que
los modelos para los que σ = 10 y σ = 20 no son apropiados para realizar la
clasificación.
En la Tabla 2 se muestra el número de vectores soporte para cada modelo, es
decir, el número de figuras que la SVM ha utilizado para calcular cada uno de las
tres fronteras de decisión. En el primero realizado se considera como clase positiva
el círculo, en el siguiente la recta vertical y en el último la horizontal.
σ
1
3
10
20
Nº de vectores
Nº de vectores
Nº de vectores
soporte del 1er
soporte del 2º
soporte del 3º
modelo
modelo
modelo
100
90
90
90
100000
90
90
90
100
90
90
90
100000
85
88
88
100
39
48
45
100000
38
48
45
100
30
47
42
100000
30
47
42
C
Tabla 2. Número de vectores soporte de cada modelo sobre un conjunto de entrenamiento de 90 ejemplos.
El número de vectores soporte es similar para los tres modelos. Depende del
valor de σ y muy poco de C excepto para σ = 3. Para σ = 1 y para σ = 3 y C = 100.000
el 100% de los datos del conjunto de entrenamiento son vectores soporte.
Como ya se vio en la introducción, existen dos tipos de vectores soporte:
- Vectores soporte normales: aquellos vectores xi que cumplen h(x i ) = 1 .
- Vectores xi tal que -1 < h( x i ) <1. Sólo existen cuando C ≠ ∞. La SVM
considera que pueden ser datos atípicos por lo que reduce su influencia para
hallar la frontera de decisión.
3 Generador de imágenes sintéticas
27
El espacio de entrada tiene 400 dimensiones para este conjunto de variables.
Esto nos impide poder visualizar cómo quedarían los símbolos en dicho espacio. Sin
embargo, sí se puede conocer la distancia a la que se encuentra cada imagen del
hiperplano separador h(x). Esto puede ayudar a dar una idea aproximada de cómo
están distribuidas las imágenes.
El hiperplano separador h(x) tiene por ecuación:
h( x ) = ω T x + b = 0 ,
donde ω y x ∈ ℜ d
Los parámetros ω y b son conocidos, por lo tanto se puede conocer la distancia
de un vector cualquiera x al hiperplano con la siguiente ecuación:
dist (h, x) =
h ( x)
ω
En las siguientes figuras se han representado los valores de h(x) de cada punto.
Aunque no coincide con la distancia real de cada imagen al hiperplano, considerar
este valor es equivalente a realizar un cambio de escala del espacio de entrada de
valor ω , por lo que la distribución aproximada de las imágenes no variará. El
objetivo de usar este valor y no la distancia real es que nos permite distinguir más
fácilmente los vectores soporte.
El conocer la distribución ayudará a determinar cuál de los dos modelos con los
que se obtiene error nulo en la clasificación (σ = 1 y σ = 3) es el mejor para reconocer
los símbolos para el conjunto de variables nº1.
En la Figura 21 se puede ver cómo quedarían los puntos de aprendizaje
respecto del hiperplano para σ = 1 y C = 100.000. Cada gráfica de la figura
representa un modelo distinto. La línea azul simboliza la frontera de decisión y en el
eje y se muestran los índices de las imágenes utilizadas.
3 Generador de imágenes sintéticas
28
Clase positiva: vertical
Clase positiva: horizontal
100
90
90
90
80
80
80
70
70
70
60
60
60
50
Índice
100
Índice
Índice
Clase positiva: círculo
100
50
50
40
40
40
30
30
30
20
20
20
10
10
10
0
-2
0
h(x)
2
0
-2
0
h(x)
2
0
-2
Horiz ontal
V ertic al
Circ unferenc ia
0
h(x)
2
Figura 21. Valores de h(x) de las figuras de entrenamiento cuando σ= 1.
El conjunto de datos perteneciente a la clase positiva considerada en cada
modelo queda en la zona h(x) > 0.
Puesto que todas las figuras quedan a distancia h( x) = 1 del hiperplano, son
vectores soporte normales en todos los modelos, lo que significa que todas ellas son
necesarias para encontrar la mejor frontera de decisión. Que el total de los símbolos
sean vectores soporte implica que la SVM ha tenido dificultades, con las variables
con las que han sido representadas las imágenes, para hallar el hiperplano, es decir,
para identificar los rasgos comunes de cada clase. Aún así, para σ = 1, el clasificador
ha reconocido correctamente las figuras del conjunto de validación.
La SVM no detecta ningún outlier puesto que no existen puntos con valores de
h(x) comprendidos entre -1 y 1.
En la Figura 22, al igual que en la anterior, se representan los valores de h(x)
pero de las figuras utilizadas en la etapa de validación.
3 Generador de imágenes sintéticas
29
Clas e positiva: círculo
Clas e positiva: vertic al
Clase pos itiva: horiz ontal
40
40
35
35
30
30
30
25
25
25
20
Índice
35
Índice
Índice
40
20
20
15
15
15
10
10
10
5
5
5
0
-0.5
0
0.5
h(x)
1
1.5
0
-1.5
-1
-0.5
h(x )
0
0.5
Horizontal
Vertical
Circunferencia
0
-1.5
-1
-0.5
h(x)
0
0.5
Figura 22. Valores de h(x) de las figuras que forman el conjunto de validación.
Los puntos de validación quedan muy próximos de los hiperplanos. Aunque
los clasifica adecuadamente, la SVM tiene dificultades para reconocerlos. Se observa
también que dos imágenes que representan circunferencias cumplen que, para los
tres modelos, h(x i ) = 1 . Esto también se da para todas las circunferencias del
conjunto de entrenamiento, lo que implica que esas figuras forman parte de las
imágenes de aprendizaje.
Para σ = 1 y C = 100 se comprobó que la distribución de los símbolos tanto para
el conjunto de aprendizaje como para el de test es la misma que cuando C = 100.000.
En la Figura 23 y en la Figura 24, se observa la distribución de las figuras de
aprendizaje y la de las imágenes de validación respectivamente para σ = 3 y
C = 100.000 . Al igual que con σ = 1, el error obtenido con estos parámetros fue
nulo. La única diferencia que se observó con el caso en el que σ = 1 es el número de
vectores soporte en cada uno de ellos.
3 Generador de imágenes sintéticas
30
C las e pos itiva: vertic al
Clas e pos itiva: horiz ontal
100
90
90
90
80
80
80
70
70
70
60
60
60
50
Índice
100
Índice
Índice
Clas e pos itiva: c írc ulo
100
50
50
40
40
40
30
30
30
20
20
20
10
10
10
0
-2
0
h(x )
0
-2
2
0
h(x )
H oriz ontal
V ertic al
C irc unferenc ia
0
-2
2
0
h(x )
2
Figura 23. Valores de h(x) de las figuras de entrenamiento.
En las simulaciones se comprobó que en los 3 modelos había figuras que no
eran vectores soporte. Sin embargo se observa que incluso para ellas la distancia al
hiperplano es prácticamente 1, al igual que cuando σ = 1. En este caso, la SVM
tampoco ha detectado ningún dato atípico.
Clase positiva: vertic al
Clas e pos itiva: horiz ontal
40
35
35
35
30
30
30
25
25
25
20
Índice
40
Índice
Índice
Clas e positiva: círc ulo
40
20
20
15
15
15
10
10
10
5
5
5
0
-2
-1
0
h(x )
1
2
0
-2
-1
0
h(x)
1
Horizontal
V ertical
Circ unferencia
0
-2
-1
0
h(x)
Figura 24. Valores de h(x) de las figuras que forman el conjunto de validación.
1
3 Generador de imágenes sintéticas
31
La distribución de las imágenes del conjunto de validación es distinta que para
σ = 1 . Las figuras de entrenamiento están más alejadas del hiperplano por lo que la
SVM las ha clasificado con mayor seguridad que para σ = 1.
Por lo tanto, cuando se emplea el conjunto de variables 1, es decir los elementos
de la matriz, el modelo de SVM más fiable es el que utiliza la función kernel
gaussiana con σ = 3.
3.1.2
Resultados para el conjunto de variables 2 (histogramas horizontal y vertical)
Para este caso, sólo se muestran los resultados para distintos valores de σ pero
para el mismo C puesto que, al igual que en el caso anterior, se comprobó que el
porcentaje de error que se comete no depende de él.
Nº de símbolos
Nº de símbolos
Porcentaje
mal clasificados
indeterminados
de acierto
0.5
0
5
83,3
1
1
0
96,7
10
0
1
96,7
20
1
1
93,3
σ
Tabla 3. Resultados de la clasificación utilizando el conjunto de variables 2 para distintos valores de σ.
Cuando se representan los símbolos según los histogramas vertical y horizontal
no se llega a un porcentaje de acierto del 100%. Para σ = 1 y σ = 10 solamente un
símbolo (el de una recta vertical) no es identificado por la SVM. Para σ = 1 esa figura
es clasificada incorrectamente por la SVM mientras que para σ = 10 queda
indeterminada.
3 Generador de imágenes sintéticas
32
El número de vectores soporte se puede ver en la Tabla 4.
σ
Nº de vectores soporte
del 1er modelo
Nº de vectores soporte
del 2º modelo
Nº de vectores soporte
del 3º modelo
0.5
90
90
90
1
90
90
90
10
71
71
73
20
55
49
46
Tabla 4. Número de vectores soporte de los tres modelos para el conjunto de variables 2 y C=100000, sobre un
conjunto de entrenamiento de 90 ejemplos.
Para σ = 1 se comprobó que los vectores soporte eran del tipo normal. Para σ =
10 se puede observar que el tipo de símbolo para el que la SVM necesita menos
vectores soporte para determinar el hiperplano es el círculo (Figura 25). El conjunto
de variables nº2 (histogramas) permite identificar con mayor facilidad esta clase
pero no resulta tan adecuada para el resto de los símbolos.
Clas e pos itiva: vertic al
Clas e pos itiva: horiz ontal
100
90
90
90
80
80
80
70
70
70
60
60
60
50
Índice
100
Índice
Índice
Clas e pos itiva: c írc ulo
100
50
50
40
40
40
30
30
30
20
20
20
10
10
10
0
-2
0
h(x )
2
0
-2
0
h(x )
2
0
-2
Horiz ontal
V ertic al
Circ
unferencia
Círculo
0
h(x )
2
Figura 25. Valores de h(x) de las figuras que forman el conjunto de aprendizaje para σ = 10.
Para las imágenes de validación también son los círculos los que quedan a la
mayor distancia del hiperplano (Figura 26). El símbolo de índice 16 es el que ha sido
clasificado incorrectamente pero se puede ver que en todos los modelos queda
aproximadamente sobre el hiperplano.
3 Generador de imágenes sintéticas
33
Clas e pos itiva: vertic al
Clas e pos itiva: horiz ontal
40
35
35
35
30
30
30
25
25
25
20
Índice
40
Índice
Índice
Clas e pos itiva: c írc ulo
40
20
20
15
15
15
10
10
10
5
5
5
0
-1
0
1
0
-2
2
-1
h(x )
0
Horizontal
Vertical
Circunferencia
Círculo
0
-2
1
-1
h(x )
0
1
h(x )
Figura 26. Valores de h(x) de las figuras que forman el conjunto de validación σ = 10.
Con σ = 1 las imágenes clasificadas quedan prácticamente sobre el hiperplano
excepto las imágenes de índices 2 y 3 para las que se había llegado a la conclusión
de que pertenecían al conjunto de aprendizaje. La imagen 16 es clasificada a la vez
como círculo y como vertical.
Clas e pos itiva: vertic al
Clas e pos itiva: horiz ontal
40
35
35
35
30
30
30
25
25
25
20
Índice
40
Índice
Índice
Clas e pos itiva: c írc ulo
40
20
20
15
15
15
10
10
10
5
5
5
0
-0.5
0
0.5
h(x )
1
1.5
0
-1.5
-1
-0.5
h(x )
0
0.5
Horiz ontal
V ertic al
Circ
unferenc ia
Círculo
0
-1.5
-1
-0.5
h(x )
0
Figura 27. Valores de h(x) de las figuras que forman el conjunto de validación para σ = 1.
0.5
3 Generador de imágenes sintéticas
34
Al obtener una mayor distancia de las imágenes al hiperplano con σ = 10, este
valor es el mejor para realizar la clasificación con el segundo tipo de variables.
Como para el conjunto de variables 1, cuando se obtiene el mismo porcentaje de
acierto para distintos valores de σ, se comprueba que la SVM clasifica mejor cuando
se tiene el menor número de vectores soporte.
3.1.3
Resultados para el conjunto de variables 3
Éste es el único conjunto de variables de entre los que se estudian en el que es
posible representar los hiperplanos obtenidos ya que el espacio de entrada sólo es
de 2 dimensiones.
Se comprueba que modificando los distintos parámetros, la SVM es capaz de
identificar correctamente todos los datos.
Al variar σ los hiperplanos que se
obtienen son distintos pero estos no cambian, para un mismo σ, cuando se modifica
C.
En la Figura 28 se pueden observar las fronteras de decisión obtenidas con la
variable 3 y para σ = 3 cuando no existe ruido en las imágenes. El eje horizontal
representa el número de filas en el que todos los elementos son 0 y el vertical el de
las columnas. Sólo están representados los símbolos que forman el conjunto de
aprendizaje. La representación se ha hecho utilizando la función svcplot de la
toolbox de SVM utilizada.
Modelo 1
Modelo 2
Modelo 3
Figura 28. Fronteras de decisión obtenidas para la variable 3 y σ = 3 para símbolos sin ruido.
3 Generador de imágenes sintéticas
35
Las circunferencias se caracterizan por tener el mismo número de filas y de
columnas sin ningún 1 por lo que quedan en la parte central. Las verticales aparecen
en la gráfica en la parte de abajo a la derecha puesto que tienen más columnas sin
ningún 1 que filas, mientras que para las horizontales es al contrario.
Se puede ver claramente que el conjunto de variables que se ha escogido para
caracterizar los distintos tipos de símbolos es el adecuado ya que cada clase aparece
agrupada en distintas zonas. Esto demuestra que son variables representativas de
cada símbolo y se consigue, por lo tanto, que la SVM encuentre sin dificultades un
hiperplano que las separe. En los modelos 2 y 3 las clases son linealmente
separables. Además se comprueba que muchos de los datos de aprendizaje de una
misma clase tienen las mismas variables ya que no se distinguen los 90 símbolos que
forman el conjunto de entrenamiento, lo que significa que están superpuestos.
En la primera figura se representa la frontera de decisión entre las imágenes de
los símbolos de los círculos y las dos otras clases, en la segunda la que separa las
verticales del resto y, en la última, la clase positiva se corresponde con las
horizontales. Las zonas de color amarillo simbolizan la zona donde la SVM
considera que estarían todas las figuras pertenecientes a la clase positiva.
Si se superpusieran las tres gráficas veríamos cómo los hiperplanos separadores
de cada una de ellas coincidirían. Las zonas de color amarillo no se solapan. Esto
significa que no puede haber símbolos que sean clasificados como más de una clase
a la vez. Tampoco existirían figuras que no fueran clasificadas como positivas en
ninguno de los tres problemas ya que las zonas amarillas, además de no solaparse,
cubren todo el espacio de entrada. Por tanto, no existe la posibilidad de que haya
figuras indeterminadas.
Si se tuvieran circunferencias de menor tamaño en las que el número de filas y
de columnas sin ningún cero fuera más elevado la SVM no lo reconocería ya que la
zona amarilla del primer modelo se va cerrando al desplazarse hacia arriba y hacia
la derecha. Lo mismo sucedería para una raya horizontal o vertical que tuvieran un
número de filas y de columnas parecido ya que podría llegar a ser considerado
como una circunferencia.
3 Generador de imágenes sintéticas
36
Para σ = 20 las fronteras del modelo 2 y del 3 son lineales (Figura 29). En el
modelo 1 el hiperplano se aproxima más a las figuras de la clase positiva que para el
valor anterior de σ.
Modelo 1
Modelo 2
Modelo 3
Figura 29. Fronteras de decisión obtenidas para la variable 3 y σ = 20 para símbolos sin ruido.
Si existiera una imagen con un número alto de filas y columnas sin ningún 1,
quedaría indeterminada ya que, como se puede observar, en la zona superior
derecha de los gráficos se considera como clase negativa en los tres modelos. Las
zonas asociadas a la clase positiva (zona amarilla) se solapan en la parte inferior e
izquierda de los gráficos por lo que podría haber puntos que fueran clasificados
como más de una clase a la vez.
Tomando un valor intermedio de σ entre los dos anteriores (σ = 10) se
consiguen los separadores de la Figura 30.
Modelo 1
Modelo 2
Modelo 3
Figura 30. Fronteras de decisión obtenidas para la variable 3 y σ = 10 para símbolos sin ruido.
En el primer modelo se consigue generalizar mejor que para σ = 20 ya que
también considera como circunferencias aquéllas cuyas variables tengan un valor
3 Generador de imágenes sintéticas
37
elevado. Los hiperplanos de los modelos 2 y 3 son más lineales que los conseguidos
con σ = 3. Aunque para los tres valores de σ la SVM acierta en todos los casos, el
mejor de los 3 es σ = 10 por las fronteras de decisión obtenidas.
En la Tabla 5 se puede observar el número de vectores soporte para cada uno
de los 3 valores de σ estudiados.
Nº de vectores soporte
Nº de vectores soporte
Nº de vectores soporte
del 1er modelo
del 2º modelo
del 3º modelo
3
26
26
28
10
7
6
6
20
6
3
4
σ
Tabla 5. Número de vectores soporte de los tres modelos para el conjunto de variables 3.
Para cualquier valor de σ el número de vectores soporte es muy inferior al de
los otros conjuntos de variables estudiados.
3.1.4
Análisis de los resultados de la clasificación de símbolos sin ruido
Para el conjunto de variables 2, el máximo porcentaje de acierto es del 96,7%,
mientras que tanto para el conjunto 1 como para el 3 se puede llegar a un 100% de
acierto escogiendo los parámetros adecuados. La mayor diferencia entre los
resultados que se obtienen con estas dos últimas variables es el número de vectores
soporte necesarios para encontrar el hiperplano separador. Para el primer conjunto
de variables es muy elevado. Esto puede significar que la SVM no ha conseguido
distinguir los rasgos comunes de cada clase porque las variables empleadas no son
las adecuadas y, por lo tanto, se aprende “de memoria” los datos de entrada. El
resultado será que sólo se clasifican correctamente aquellas figuras que sean muy
parecidas a alguna perteneciente al conjunto de aprendizaje. En este caso, si la
variabilidad de los datos fuera mayor, el porcentaje de error aumentaría.
Un número elevado de vectores soporte también podría significar que el
conjunto de variables sí que puede servir para caracterizar los datos pero que, por la
forma en que estén distribuidos, sea más difícil de delimitar una clase de otra y
necesite más puntos para poder encontrar el hiperplano.
3 Generador de imágenes sintéticas
38
Para ver qué modelo es más fiable, se repiten las simulaciones para los valores
de σ con los que se consiguieron los mejores resultados, pero partiendo de un
número inferior de puntos de entrenamiento. El conjunto de datos entrenamiento
está formado por 15 símbolos (5 de cada tipo) y el conjunto de test es el mismo que
en los apartados anteriores.
Nº del conjunto
σ
C
1
3
100000
3
10
10000
de variables
Nº de figuras del conjunto de
Porcentaje de
entrenamiento
acierto
90
100
15
73,3
90
100
15
100
Tabla 6. Comparación de los resultados obtenidos con el conjunto de variables 1 y 3.
Al modelo que usa el conjunto de variables 3 no le ha afectado la reducción del
número de figuras de aprendizaje puesto que el porcentaje de acierto sigue siendo
del 100%.
Se demuestra por lo tanto que el modelo con el conjunto de variables 3 resulta
mucho más robusto por lo que sería el más indicado para la clasificación de
símbolos en los que no hay presencia de ruido.
3.2
Clasificación de imágenes con ruido
Se realizan simulaciones para un 5, un 15 y un 25% de ruido a partir de un
conjunto de entrenamiento de 180 figuras y comprobando el modelo con otras 60
imágenes. Se estudiará si es mejor partir de un conjunto de datos similares a los que
se intentan clasificar o si, por el contrario, es más conveniente entrenar la SVM con
figuras nítidas. Al añadir ruido a la imagen se obtiene un conjunto mucho más
variado que en el caso anterior. Por esta razón, no se tiene en cuenta el número de
vectores soporte a la hora de decidir cuál es el mejor modelo.
3 Generador de imágenes sintéticas
3.2.1
39
Resultados de la clasificación entrenando la SVM con imágenes del mismo
porcentaje de ruido que el estudiado
A continuación se muestran los mejores resultados para cada porcentaje de
ruido y para cada conjunto de variables.
3.2.1.1
Imágenes con un 5% de ruido
En la Figura 31 se muestran tres figuras del conjunto de aprendizaje que se ha
utilizado.
Figura 31. Ejemplo de figuras utilizadas para entrenar la SVM.
En la Tabla 7 se muestran los mejores resultados para cada conjunto de
variables.
Nº de símbolos
Nº de símbolos
Porcentaje de
mal clasificados
indeterminados
acierto
100000
0
0
100
1
10000
1
0
98,3
2
100000
4
0
93,3
Tipo de var.
σ
C
1
2
2
3
Tabla 7. Resultados de la clasificación de símbolos con un 5% de ruido.
Utilizando como variables los elementos de la matriz el error en la clasificación
es nulo. Para clasificar imágenes sin ruido el mejor conjunto de variables era el 3,
mientras que en este problema el mejor porcentaje de acierto con él es del 93,3%.
Para este conjunto la mejor función kernel no fue la gaussiana, sino una variante de
ésta:
 − x − x′
K (x, x′) = exp
2
 2σ




σ >0
3 Generador de imágenes sintéticas
40
Los datos de la misma clase con el tercer conjunto de variables ya no aparecen
tan agrupados como en el problema de la clasificación de imágenes sin ruido.
Modelo 1
Modelo 2
Modelo 3
Figura 32. Fronteras de decisión para el conjunto de variables 3 y σ = 2.
En el entrenamiento la SVM no encuentra una frontera de separación que
delimite todas las figuras de las clases por lo que considera que hay varias figuras
atípicas que deja en el lado incorrecto del hiperplano.
3.2.1.2
Imágenes con un 15% de ruido
Con imágenes con un 15% de ruido (Figura 33) se llega a conseguir que el
clasificador sólo clasifique mal un 5% de las imágenes (Tabla 8).
Figura 33. Imágenes de una circunferencia, de una vertical y de una horizontal con un 15% de ruido.
Tipo de
Nº de símbolos
Nº de símbolos
Porcentaje de
mal clasificados
indeterminados
acierto
100000
3
0
95
5
10000
2
1
95
2
100000
7
35
30
σ
C
1
1
2
3
variables
Tabla 8. Resultados de la clasificación de símbolos con un 15% de ruido.
3 Generador de imágenes sintéticas
41
El número de figuras que la SVM no consigue identificar cuando el conjunto de
variables utilizado es el 3, es más de 10 veces mayor que cuando las imágenes tenían
un 5% de ruido. No se realiza la etapa de entrenamiento correctamente ya que los
datos en el espacio de entrada están entremezclados por lo que la SVM no es capaz
de definir un hiperplano de separación (Figura 34). El hecho de que se entremezclen
significa que no se puede hallar una característica común a cada clase.
Clas e pos itiva: vertic al
Clas e positiva: horizontal
200
180
180
180
160
160
160
140
140
140
120
120
120
100
Índice
200
Índice
Índice
Clas e positiva: c írc ulo
200
100
100
80
80
80
60
60
60
40
40
40
20
20
20
0
-1.5
-1
-0.5
h(x )
0
0
-2
0
h(x )
2
0
-5
Horiz ontal
Vertic al
Circ unferenc ia
0
h(x )
5
Figura 34. Valores de h(x) para cada figura utilizada en el entrenamiento de la SVM.
Los vectores rojos son aquellos que se encuentran en el lado incorrecto del
separador. En el primer modelo en el que se tiene que hallar la frontera que separa
los círculos del resto de símbolos la SVM no consigue separar ninguna figura de
círculo quedando todas ellas al mismo lado del hiperplano.
3.2.1.3
Imágenes con un 25% de ruido
Con imágenes de un 25% de ruido (Figura 35) la SVM se equivoca en menos de
un 15% de las imágenes con los tipos de variables 1 y 2 mientras que con el conjunto
3 no reconoce prácticamente ninguna imagen (Tabla 9).
3 Generador de imágenes sintéticas
42
Figura 35. Símbolos con un 25% de ruido
Tipo de
Nº de símbolos
Nº de símbolos
Porcentaje de
mal clasificados
indeterminados
acierto
10000
7
0
88,3
10
100000
3
8
81,7
10
100000
2
55
5
σ
C
1
0.5
2
3
var.
Tabla 9. Resultados de la clasificación de símbolos con un 25% de ruido.
3.2.2
Resultados de la clasificación entrenando la SVM con imágenes sin ruido
Para cada nivel de ruido se ha realizado el aprendizaje con el mismo conjunto
de imágenes sin ruido. El número de figuras de test y de entrenamiento que se han
utilizado es el mismo que en el caso anterior. Se realizaron distintas simulaciones
para distintos valores de σ. Los mejores resultados conseguidos para cada tipo de
variables y para cada porcentaje de ruido se representan en la Figura 36.
Variables1
Variables2
Variables3
80
70
60
Error(%)
50
40
30
20
10
0
0
5
10
15
20
25
Ruido(% )
Figura 36. Error cometido en función del ruido para cada conjunto de variables.
3 Generador de imágenes sintéticas
43
Se ha comprobado que el mayor grado de acierto para símbolos con ruido de
un 5, 15 y 25% con los conjuntos de variables 1 y 2 se obtiene para σ = 1. El
porcentaje de error máximo que se comete es de un 5% (3 figuras) para el mayor
nivel de ruido estudiado.
En la figura también se muestran los resultados para un porcentaje de ruido
nulo. El caso de las imágenes sin ruido ya se había estudiado anteriormente. Se han
vuelto a realizar las simulaciones con el mismo conjunto de datos de entrenamiento
que el utilizado para los casos con ruido para que los resultados sean coherentes. Al
utilizar un mayor número de imágenes de aprendizaje, el porcentaje de acierto
cometido ya no es, como se había visto, de un 96,7%, sino del 100% en el caso del
conjunto de variables 2.
Para el conjunto de variables 3, para cualquier nivel de ruido distinto de 0 y
para cualquier valor de σ se obtiene siempre el mismo porcentaje de figuras mal
clasificadas: el 66,7%.
3.2.3
Comparación de los resultados obtenidos para datos de aprendizaje con ruido y sin
ruido
En la Figura 37, en la Figura 38 y en la Figura 39, se comparan los resultados
obtenidos cuando la fase de entrenamiento se realiza con imágenes con ruido y sin
ruido para cada conjunto de variables 1, 2 y 3 respectivamente.
60
Entrenamiento con imágenes sin ruido
Entrenamiento con imágenes con ruido
50
Error(%)
40
30
20
10
0
0
5
10
15
20
25
Ruido(%)
Figura 37. Comparación de los resultados para el conjunto de variables 1.
3 Generador de imágenes sintéticas
44
Para los dos tipos de entrenamiento se tiene para un 5% de ruido error nulo
cuando el tipo de variables utilizado es el nº1. Los dos crecen al aumentar el ruido
pero cuando se entrena el clasificador con imágenes sin ruido crece con una mayor
pendiente. Para un 25% de ruido sólo se clasifican mal un 5% de las imágenes. Se
consigue un porcentaje de error inferior a la mitad del que se obtiene con la otra
forma de entrenamiento.
80
Entrenamiento con imágenes sin ruido
Entrenamiento con imágenes con ruido
70
60
Error(%)
50
40
30
20
10
0
0
5
10
15
20
25
Ruido(% )
Figura 38. Comparación de los resultados para el conjunto de variables 2.
Para el conjunto de variables 2, al contrario que para el conjunto anterior, el
tipo de entrenamiento con el que se obtienen los mejores resultados es el realizado
con las imágenes con ruido. Únicamente para un ruido del 5% el error es menor
para la otra forma.
100
90
80
70
Error(%)
60
50
40
30
20
Entrenamiento con imágenes sin ruido
Entrenamiento con imágenes con ruido
10
0
0
5
10
15
20
25
Ruido(%)
Figura 39. Comparación de los resultados para el conjunto de variables 3.
Al igual que en los otros casos, el porcentaje de error cometido al realizar el
aprendizaje a partir de símbolos con ruido depende del ruido. Sin embargo, para la
3 Generador de imágenes sintéticas
45
otra gráfica, el número de fallos siempre es constante. En todos los casos clasifica
todas las verticales y todas las horizontales como círculos, es decir que la SVM ha
clasificado todo el conjunto de figuras de validación como dicho símbolo. Esto se
debe a que al aumentar el ruido se asemeja mucho el número de filas y el número de
columnas sin ningún 1 ya que ambos tienden a ser 0. El hecho de que los valores de
estos dos números sean similares es la característica que identifica los círculos en
ausencia de ruido. Por esta razón, la SVM identifica tanto las verticales y las
horizontales como si pertenecieran a dicha clase. En la Figura 40 se muestran dos
ejemplos de símbolos que este modelo no ha sido capaz de reconocer. Como se
puede observar para los dos símbolos su conjunto de variables asociadas sería (0,0)
puesto que todas las columnas y todas las filas tienen píxeles rojos (valor 1 del
elemento de la matriz).
Figura 40. Imágenes de una recta vertical y de una circunferencia clasificadas como círculos.
Como se demuestra en el caso del conjunto de variables 3 según aumenta el
ruido puede que las características que sirven para reconocer imágenes sin ruido no
sean las mismas que las que servirían para identificar imágenes con distinto nivel de
ruido. Por esta razón, es mejor entrenar la máquina con figuras que tengan
semejanzas con las que se pretende clasificar.
El hecho de que para el primer conjunto el error entrenando con imágenes
similares sea mucho mayor se puede deber a que la SVM tiene dificultades para
hallar la frontera de decisión. Tendrá que dejar muchos datos de entrenamiento en
el lado del hiperplano que no les corresponde. El no tener en cuenta estas figuras
implica que se clasificarán mal las imágenes que tengan unas variables similares a
ellas.
3 Generador de imágenes sintéticas
3.2.4
46
Resultados de la clasificación conjunta de datos con diversos niveles de ruido
Para realizar el entrenamiento se emplearon 180 imágenes (60 de cada tipo de
símbolo) y para la evaluación por 60. Ambos conjuntos de datos están formados por
imágenes con distintos niveles de ruido. La SVM también es capaz de distinguir
correctamente todas las figuras con el conjunto 1 (Tabla 10). Con la variable 2 el
error es siempre inferior al 10%.
Tipo de conjunto de
variables
1
2
3
σ
Nº de figuras mal
clasificadas
Nº de figuras
indeterminadas
Porcentaje de
acierto
1
0
0
100
5
1
18
68.3
10
8
9
71
1
4
0
93,3
5
4
1
91,7
10
2
3
91,7
1
3
28
48.3
5
2
29
48,3
10
2
29
48,3
Tabla 10. Resultados de la clasificación de un conjunto de datos con distintos niveles de ruido.
3.3
Análisis de los resultados de la clasificación de imágenes generadas
sintéticamente
En los estudios realizados en este problema se ha comprobado que los mejores
resultados se obtienen con la función núcleo gaussiana y que el valor del parámetro
C no influye prácticamente en el número de fallos que se comete.
En la Figura 41 se representa el porcentaje de error en función del nivel de
ruido empleando un núcleo gaussiano para los distintos conjuntos de variables y
para distintos valores del parámetro σ del kernel. Se comprueba que ajustando
adecuadamente los distintos parámetros (C, función kernel,…) se obtienen unos
errores tolerables incluso para un ruido elevado. Además, se ha podido comprobar
que la capacidad para reconocer las figuras depende en gran medida de las
variables de entrada elegidas.
3 Generador de imágenes sintéticas
47
σ = 10
100
var1
var2
var3
90
80
80
70
60
60
50
50
40
40
30
30
20
20
10
10
0
5
10
15
20
25
σ =1
100
90
0
0
70
60
50
50
40
40
30
30
20
20
10
10
5
15
20
25
σ = 0.1
80
60
0
10
90
70
0
5
100
var=1
var=2
var=3
80
var1
var2
var3
90
70
0
σ =5
100
10
15
20
25
0
var=1
var=2
var=3
0
5
10
15
20
25
Figura 41. Porcentaje de error en función del ruido para distintos valores de σ.
Para valores muy bajos de ruido, los conjuntos de variables que mejores
resultados dan son el 1 (elementos de la matriz) y el 3 (número de filas y número de
columnas que no tengan ningún elemento igual a 1), llegando incluso a clasificar
correctamente el 100% de los datos en ausencia de ruido.
Pero, para las variables del grupo 3, a medida que éste crece el porcentaje de
figuras que no reconoce aumenta muy rápidamente. Habrá que escoger el tipo de
variable que minimice el error medio para cualquiera de los casos. En este
problema, el conjunto de variables que mejores resultados proporciona es el 1. Con
un kernel gaussiano y σ = 1 conseguimos que el error máximo sea de un 14%. Se
comprobó que este valor de σ también es el que permite obtener los mejores
resultados clasificando a la vez imágenes con distintos niveles de ruido.
Para cada uno de los 3 modelos SVM se deberían escoger los mejores
parámetros, pero debido al elevado número de variables a determinar (valor de C,
tipo de kernel y parámetros de la función, variables de los datos) resulta muy difícil
tomar los mejores valores para cada caso. Por esta razón, se consideraron los
3 Generador de imágenes sintéticas
48
mismos parámetros para los 3. Sin embargo se observó en la clasificación de
imágenes sin ruido que el número de vectores soporte fue muy similar para cada
uno de los 3 modelos para un conjunto de parámetros dado. La SVM tuvo
aproximadamente las mismas dificultades en cada uno de ellos para encontrar la
mejor frontera de decisión.
La SVM ha demostrado ser un método de clasificación robusto para la
clasificación de imágenes sintéticas incluso cuando éstas son poco nítidas. A
continuación se va a estudiar su aplicación en la clasificación de imágenes de
caracteres. Las conclusiones que se sacan de este capítulo servirán para ser aplicadas
al reconocimiento de matrículas.
4
Aplicación de las SVM al
reconocimiento de matrículas
4 Aplicación de las SVM al reconocimiento de matrículas
4
50
Aplicación de las SVM al reconocimiento de matrículas
Se parte de un conjunto de imágenes de todos los números y letras generadas
artificialmente similares a los que se obtendrían en la realidad. En la Figura 42 se
puede observar una muestra de los datos utilizados en el estudio y en la Figura 43
fotografías reales de matrículas.
2
2
2
2
4
4
4
4
6
6
6
6
8
8
8
8
10
10
10
10
12
12
12
12
14
14
14
2
4
6
8
10
12
14
2
4
6
8
10
12
14
14
2
4
6
8
10
12
14
2
2
2
2
4
4
4
4
6
6
6
6
8
8
8
8
10
10
10
10
12
12
12
12
14
14
14
2
4
6
8
10
12
14
2
4
6
8
10
12
14
2
4
6
8
10
12
14
2
4
6
8
10
12
14
14
2
4
6
8
10
12
14
Figura 42. Ejemplo de las imágenes de números y letras empleadas en la clasificación.
Figura 43. Fotografías reales de matrículas.
Las diferencias principales con el estudio realizado en el capítulo anterior son el
mayor número de clases a reconocer (cada letra y cada número representa un tipo
distinto) y que las imágenes no están en blanco y negro, sino en escala de grises
(valores de los elementos de la matriz entre 0 y 255). Al ser un problema más complejo
se necesitarán más imágenes para entrenar la SVM y así poder facilitar que el
clasificador encuentre la mejor frontera de decisión.
4 Aplicación de las SVM al reconocimiento de matrículas
51
En cada una de las imágenes no aparece la matrícula completa. Sólo muestra un
carácter puesto que la SVM recibiría las fotografías del segmentador. Éste se encarga de
fragmentar la imagen de la matrícula completa en otras en las que sólo aparece un
número o una letra.
Los problemas de reconocer los números y las letras se resuelven por separado.
Esto puede hacerse así ya que normalmente se conocen las posiciones que ocupan los
caracteres en la placa de la matrícula, por lo que será conocido a priori el tipo de
problema. Las conclusiones que se obtuvieron de la clasificación de las imágenes
generadas sintéticamente se van utilizar para la clasificación de los caracteres:
- Tanto para la clasificación de los números como para la de las letras se va a
utilizar la función kernel gaussiana ya que se comprobó que es la que permite
obtener las fronteras de decisión que mejor se adaptan al conjunto de datos.
- Se demostró que cuando σ = 1 se obtienen los mejores resultados, por lo que las
simulaciones se han realizado con dicho valor.
- El valor de C no influyó prácticamente en los resultados ya que no existían
datos atípicos, por lo que en este problema se ha tomado el mismo valor para la
resolución de todos los problemas (C = 10.000).
- El entrenamiento cuando se quieren reconocer imágenes con ruido se hace
usando imágenes similares.
Por lo tanto, para realizar la clasificación, sólo queda por establecer el tipo de
variables con las que identificar las imágenes del conjunto de entrenamiento y del de
evaluación. En el estudio que se va a llevar a cabo se valorará el error que se comete
con cada uno de ellos y se determinará cuál es el mejor para el reconocimiento de los
números y de las letras.
4.1
Aplicación de las SVM al reconocimiento de números
El conjunto de imágenes del que se parte es de 3840 figuras (384 de cada número).
Debido a los elevados tiempos de simulación para resolver los distintos problemas de
optimización cuando se tomaron, como es habitual, el 75% de los datos (2880
imágenes), se redujo el número de imágenes de aprendizaje a 300. Se emplea siempre
el mismo conjunto de entrenamiento y de validación para todas las variables.
4 Aplicación de las SVM al reconocimiento de matrículas
52
No todas las imágenes tienen la misma cantidad de píxeles ya que el tamaño de la
imagen de cada carácter obtenida por el segmentador dependerá del tamaño de cada
número. En la Figura 44 se muestra un ejemplo de la imagen de un número uno de
16x10 píxeles y de la de un ocho de 16x12.
2
2
4
4
6
6
8
8
10
10
12
12
14
14
16
16
2
4
6
8
10
2
4
6
8
10
12
Figura 44. Imágenes de dos números con distinto número de píxeles.
Para poder usar como conjunto de variables explicativas los elementos de las
matrices es necesario que todas las imágenes tengan el mismo número de píxeles ya
que todos los datos deben tener el mismo número de variables para poder ser
clasificados por las SVM.
Con la función imresize de Matlab se puede conseguir modificar el tamaño de la
imagen al valor deseado utilizando distintos métodos de interpolación bidimensional.
Para igualar los tamaños se ha utilizado el método de interpolación bicúbica que
permite obtener una imagen en la que el valor de cada píxel es una media ponderada
de los 4x4 píxeles más próximos en la imagen original.
Para este problema se han tomado matrices 15x15 (Figura 45). No se utilizan
figuras con una mayor cantidad de píxeles par no ralentizar en exceso el proceso de
entrenamiento.
2
2
4
4
6
6
8
8
10
10
12
12
14
14
16
2
4
6
8
10
2
4
6
8
10
12
14
Figura 45. Imagen original e imagen modificada con la función imresize.
4 Aplicación de las SVM al reconocimiento de matrículas
53
Al igual que en el caso de la clasificación de imágenes sintéticas, se realizaron las
simulaciones para distintos tipos de variables. Además, también se han estudiado los
resultados cuando se realiza un tratamiento de la imagen antes de ser clasificada.
El tratamiento utilizado permite pasar la imagen original en escala de grises a otra
en blanco y negro para poder reducir el efecto del ruido. Para ello, se calcula la media
de los valores de la matriz. Los píxeles de la imagen que tengan un valor inferior al de
dicha media pasarán a valer 0 y los de valor superior valdrán 1.
A continuación, se muestra el ejemplo de una imagen que se quiere tratar (Figura
46).
2
4
6
8
10
12
14
16
2
4
6
8
10
12
Figura 46. Número antes de realizar un tratamiento de la imagen.
En el histograma obtenido con la función imhist se puede ver la cantidad de
píxeles con un color determinado. La media está representada con una línea roja y
tiene por valor 115.
7
6
5
4
3
2
1
0
0
5 0
1 0 0
1 5 0
2 0 0
2 5 0
Figura 47. Histograma de los colores de la imagen.
Los píxeles más oscuros, es decir, por debajo del valor de esa media se
considerarán negros y por encima blancos (Figura 48).
4 Aplicación de las SVM al reconocimiento de matrículas
54
2
4
6
8
10
12
14
2
4
6
8
10
12
14
Figura 48. Figura tratada.
Los conjuntos de variables que se han estudiado en este problema han sido:
1.
Los elementos de la matriz en escala de grises: espacio de entrada de 225
dimensiones.
2.
Los elementos de la matriz después de haber realizado el tratamiento para
pasarla a blanco y negro (225 dimensiones).
3.
Los histogramas vertical y horizontal de las imágenes en escala de grises. El
espacio de entrada tiene 30 dimensiones.
4.
Los histogramas vertical y horizontal de las imágenes en blanco y negro (30
dimensiones).
5.
Número de puntos en común de la imagen con una figura patrón. El espacio
de entrada es de 10 dimensiones.
Para calcular el conjunto de variables nº 5, primero hay que pasar la imagen a
blanco y negro con el tratamiento ya visto para posteriormente compararlas con unas
imágenes patrón de cada uno de los números. Esas figuras se muestran en la Figura 49.
5
5
5
5
5
10
10
10
10
10
15
15
5
10
15
15
5
10
15
15
5
10
15
15
5
10
15
5
5
5
5
5
10
10
10
10
10
15
15
5
10
15
15
5
10
15
15
5
10
15
5
10
15
5
10
15
15
5
10
15
Figura 49. Imágenes patrón empleadas en la clasificación de números.
4 Aplicación de las SVM al reconocimiento de matrículas
55
Lo que se quiere conocer es el número de píxeles en los que la figura patrón y la
imagen tienen el mismo color. Para obtener la primera variable, se resta el patrón del
número cero menos la matriz a clasificar. La primera variable es el número de los
elementos de la matriz obtenida que tienen un valor igual a cero. Se realiza la misma
operación para el resto de las imágenes patrón con lo que se obtienen 9 variables más.
Cuanto más se parezcan dos imágenes mayor será el valor de la variable.
4.1.1
Clasificación de números centrados en la imagen con distintos niveles de ruido
Inicialmente, se toman imágenes en las que el carácter aparece siempre en la
misma posición. Las imágenes de cada clase se diferencian por los tonos de gris del
número (Figura 50).
2
2
4
4
6
6
8
8
10
10
12
12
14
14
2
4
6
8
10
12
2
14
4
6
8
10
12
14
Figura 50. Ejemplo de dos figuras pertenecientes a la misma clase.
4.1.1.1
Resultados de la clasificación
Imágenes sin ruido
Para los 5 tipos de variables la SVM clasificó correctamente todos los números y
todas las imágenes de entrenamiento fueron vectores soporte.
Ruido = 20%
Ruido = 40%
Ruido = 70%
2
2
2
4
4
4
6
6
6
8
8
8
10
10
10
12
12
12
14
14
5
10
15
14
5
10
15
5
Figura 51. Imágenes con ruido empleadas en la clasificación.
10
15
4 Aplicación de las SVM al reconocimiento de matrículas
56
Imágenes con un 20% de ruido:
Utilizando los conjuntos de variables nº 1 y 3, el clasificador no reconoce ningún
número. Todas las imágenes quedan indeterminadas puesto que la SVM las clasifica
como negativas en los 10 modelos distintos. Para el reconocimiento de las imágenes
con más porcentaje de ruido no se va a utilizar este conjunto de variables ya que los
resultados no mejorarían al ser imágenes aún más difíciles de reconocer.
Sin embargo, si se emplean los elementos de la matriz después de realizar el
tratamiento de la imagen o el conjunto nº 5, todas las figuras son identificadas
correctamente por el clasificador.
Empleando los histogramas a partir de las matrices en blanco y negro la SVM se
confunde un 0,4% de las veces. El número que más dificultades tiene para clasificar es
el 0 que clasifica 3 veces como un 6 y 2 veces como un 9 (Tabla 11).
Figura clasificada como:
0
1
2
3
4
5
6
7
8
9
indet.
0
349
0
0
0
0
0
3
0
0
2
0
1
0
354
0
0
0
0
0
0
0
0
0
2
0
0
354
0
0
0
0
0
0
0
0
3
0
0
0
354
0
0
0
0
0
0
0
4
0
0
0
0
354
0
0
0
0
0
0
5
0
0
0
0
0
354
0
0
0
0
0
6
2
0
0
0
0
0
350
0
2
0
0
7
0
0
0
0
0
0
0
354
0
0
0
8
1
0
0
0
0
0
1
0
351
1
0
9
0
0
0
0
0
0
2
0
0
352
0
Tabla 11. Resultados de la clasificación de números con un 20% de ruido empleando el conjunto de variables nº 4.
Imágenes con un 40% de ruido:
Al clasificar con los elementos de la matriz en blanco y negro se obtienen los
resultados de la Tabla 12. Un total de 1287 figuras quedan indeterminadas (el 36,36%
del conjunto de test). El número que más veces no ha sido identificado es el 6 (308
veces), mientras que de las figuras que representan el 7, sólo una ha quedado
indeterminada.
4 Aplicación de las SVM al reconocimiento de matrículas
57
Figura clasificada como:
0
1
2
3
4
5
6
7
8
9
indet.
0
186
0
0
0
0
0
0
0
0
0
168
1
0
345
0
0
0
0
0
0
0
0
9
2
0
0
309
0
0
0
0
0
0
0
45
3
0
0
0
171
0
0
0
0
0
0
183
4
0
0
0
0
348
0
0
0
0
0
6
5
0
0
0
0
0
251
0
0
0
0
103
6
0
0
0
0
0
0
46
0
0
0
308
7
0
0
0
0
0
0
0
353
0
0
1
8
0
0
0
0
0
0
0
0
138
0
216
9
0
0
0
0
0
0
0
0
0
106
248
Tabla 12. Resultados de la clasificación de números con un 40% de ruido empleando el conjunto de variables nº 2.
Con los histogramas de la matriz en blanco y negro, el porcentaje de números mal
clasificados es del 8.02% y el de imágenes indeterminadas 4.01% (Tabla 13). El 8 ha sido
el número que la SVM ha tenido más dificultades para reconocer. El único número que
siempre ha clasificado bien es el 1.
Figura clasificada como:
0
1
2
3
4
5
6
7
8
9
indet.
0
298
0
0
0
0
0
13
0
4
15
24
1
0
354
0
0
0
0
0
0
0
0
0
2
0
0
320
23
0
2
0
3
2
1
3
3
3
1
11
320
3
2
2
0
5
1
6
4
0
0
0
1
348
0
1
0
1
0
3
5
7
0
1
3
0
320
8
0
2
5
8
6
33
0
1
0
0
3
256
0
13
8
40
7
0
0
0
3
0
0
0
351
0
0
0
8
9
0
0
2
2
1
20
0
289
7
24
9
28
0
0
0
0
6
18
0
10
258
34
Tabla 13. Resultados de la clasificación de números con un 40% de ruido empleando el conjunto de variables nº 4.
Utilizando el conjunto nº 5 el porcentaje de error es del 0,56%. Ninguna figura
queda indeterminada, el error se debe a imágenes mal clasificadas (Tabla 14). En este
caso es el número 0 el que la SVM tiene más dificultades para distinguir.
4 Aplicación de las SVM al reconocimiento de matrículas
58
Figura clasificada como:
0
1
2
3
4
5
6
7
8
9
indet.
0
345
0
0
0
0
0
4
0
0
5
0
1
0
354
0
0
0
0
0
0
0
0
0
2
0
0
354
0
0
0
0
0
0
0
0
3
0
0
0
354
0
0
0
0
0
0
0
4
0
0
0
0
354
0
0
0
0
0
0
5
0
0
0
0
0
349
5
0
0
0
0
6
1
0
0
0
0
0
353
0
0
0
0
7
0
0
0
0
0
0
0
354
0
0
0
8
0
0
0
0
0
0
1
0
352
1
0
9
3
0
0
0
0
0
0
0
0
351
0
Tabla 14. . Resultados de la clasificación de números con un 40% de ruido empleando el conjunto de variables nº 5.
También se estudió el caso de emplear como variables los elementos de una matriz
de 3x3 píxeles obtenida a partir de la imagen en blanco y negro de 15x15. De esta forma
se analiza si se facilita la clasificación al pasar de 225 variables a 9. En la Figura 52 se
puede ver el ejemplo de una figura después de reducir el número de píxeles.
0.5
2
1
4
1.5
6
8
2
10
2.5
12
3
14
5
10
15
3.5
0.5
1
1.5
2
2.5
3
3.5
Figura 52. Imagen de 15x15 píxeles e imagen correspondiente de 3x3.
En la Tabla 15 se puede comprobar que no se mejoran los resultados con respecto
a los casos anteriores. El porcentaje de error alcanza un 84,07%. Esto significa que al
reducir el tamaño de las imágenes se pierde información que sirve a la SVM para
reconocer cada número.
4 Aplicación de las SVM al reconocimiento de matrículas
59
Figura clasificada como:
0
1
2
3
4
5
6
7
8
9
indet.
0
59
0
0
0
0
1
5
0
0
1
288
1
0
70
0
0
0
0
0
0
0
0
284
2
0
0
68
0
0
0
0
4
3
1
278
3
1
0
3
63
0
0
0
0
8
1
278
4
0
0
0
0
72
0
0
0
0
0
282
5
1
0
0
1
0
46
1
0
0
4
301
6
6
2
0
0
0
2
41
0
0
0
303
7
0
0
0
0
0
0
0
17
0
0
337
8
1
0
0
6
0
1
0
1
61
3
281
9
2
0
0
0
0
12
1
0
1
67
271
Tabla 15. Resultados de la clasificación de números con un 40% de ruido empleando los elementos de matrices 3x3.
Imágenes con un 70% de ruido
Para este caso se han utilizado 500 figuras de aprendizaje en vez de las 300 que se
han utilizado para los demás porcentajes de ruido. Las figuras son mucho menos
nítidas por lo que son necesarias más imágenes para que la SVM pueda entrenarse
correctamente.
El porcentaje de imágenes a las que la SVM no ha asignado su clase correcta es de
un 67,03% cuando el conjunto de variables utilizado es el 2. En el caso del número 0 el
error asciende a un 82,03% (Tabla 16): sólo se consiguen identificar 60 de las 334
imágenes totales.
Figura clasificada como:
0
1
2
3
4
5
6
7
8
9
indet.
0
60
2
4
2
5
12
22
0
19
39
169
1
4
159
11
6
15
8
3
5
4
6
113
2
3
8
101
22
3
5
2
18
13
7
152
3
1
2
12
107
5
4
6
3
30
4
160
4
6
14
2
8
146
5
8
2
11
6
126
5
11
6
0
15
5
117
18
5
16
11
130
6
30
2
3
8
7
16
86
3
16
8
155
7
2
7
26
11
3
2
2
167
4
5
105
8
15
4
11
25
3
10
16
3
67
12
168
9
22
3
4
7
1
10
20
2
14
91
160
Tabla 16. Resultados de la clasificación para números con un 70% de ruido empleando el conjunto de variables nº 2.
4 Aplicación de las SVM al reconocimiento de matrículas
60
Para el caso de los histogramas vertical y horizontal de las matrices en blanco y
negro el porcentaje de error es de un 74,55%: 1304 imágenes mal clasificadas y 1186
indeterminadas (Figura 20).
Figura clasificada como:
0
1
2
3
4
5
6
7
8
9
indet.
0
42
1
5
10
14
14
42
2
26
33
145
1
10
122
25
29
23
8
9
4
6
5
93
2
14
5
95
42
6
10
10
14
14
6
118
3
9
9
41
73
5
11
13
19
22
11
121
4
9
16
9
38
117
8
24
5
21
5
82
5
22
6
8
27
6
59
19
5
32
17
133
6
21
2
5
30
10
13
68
7
28
20
130
7
3
15
38
18
3
7
7
127
10
6
100
8
13
4
10
32
4
9
30
1
82
24
125
9
16
0
12
16
7
10
39
2
28
65
139
Tabla 17. Resultados de la clasificación para números con un 70% de ruido empleando el conjunto de variables nº 4.
Para el conjunto de variables nº 5 el error es de un 22,55% (Tabla 18).
Figura clasificada como:
0
1
2
3
4
5
6
7
8
9
indet.
0
210
1
0
0
1
4
54
1
25
35
3
1
1
300
2
6
12
7
5
0
1
0
0
2
1
0
267
14
5
1
2
29
8
6
1
3
2
3
12
252
5
8
8
4
36
4
0
4
4
9
1
5
309
0
1
2
2
1
0
5
10
2
1
10
1
278
19
0
10
2
1
6
50
2
1
4
1
25
219
0
24
7
1
7
0
3
9
6
1
0
0
313
0
2
0
8
21
3
4
18
3
9
28
4
229
13
2
9
56
2
3
3
2
14
24
0
17
210
3
Tabla 18. Resultados de la clasificación para números con un 70% de ruido empleando el conjunto de variables nº 5.
Para intentar mejorar los resultados se utilizaron a la vez las variables del conjunto
nº 5 seguido de las del nº 4. No se consiguió reducir el porcentaje de error, incluso es
algo mayor que cuando se utilizó únicamente el conjunto nº 5 (23,02%).
4 Aplicación de las SVM al reconocimiento de matrículas
61
Figura clasificada como:
0
1
2
3
4
5
6
7
8
9
indet.
0
211
0
1
0
0
4
54
1
24
38
1
1
2
302
4
7
8
5
4
1
0
0
1
2
0
1
274
13
4
1
2
26
7
5
1
3
4
5
13
241
5
6
8
5
42
4
1
4
5
6
1
7
306
1
2
3
3
0
0
5
10
1
1
12
1
267
28
0
10
2
2
6
50
2
1
5
1
30
218
0
21
3
3
7
0
1
12
8
1
0
0
308
0
4
0
8
21
3
4
23
3
11
25
3
232
7
2
9
58
1
3
2
2
14
19
1
18
212
4
Tabla 19. Resultados de la clasificación para números con un 70% de ruido empleando los conjuntos 4 y 5.
En la Figura 53 se comparan los errores cometidos en cada número para los
conjuntos 4, 5 y la combinación de ambos. Para los números 3, 5 y 7 el error aumenta
empleando el último conjunto. Añadir el histograma no ayuda a mejorar el
reconocimiento.
100
90
80
Error (%)
70
60
Conjunto nº 4
50
Conjunto nº 5
40
Conjuntos nº 4 y 5
30
20
10
0
0
1
2
3
4
5
6
7
8
9
Número
Figura 53. Comparación de los resultados obtenidos para el conjunto nº 4, el nº 5 y la combinación de ambos.
4.1.1.2
Análisis de los resultados de la clasificación de los números centrados en la
imagen
Con todos los conjuntos de variables, todas las imágenes sin ruido son reconocidas
correctamente (Figura 54). Al empeorar ligeramente la nitidez de los números, con los
conjuntos 1 y 3 la SVM ya no es capaz de distinguir ningún número. Un aumento tan
elevado puede ser debido a que las imágenes sin ruido fueron clasificadas
adecuadamente por ser muy similares a las del conjunto de aprendizaje. Para el resto
de variables un ligero incremento del ruido no afecta prácticamente a la clasificación.
4 Aplicación de las SVM al reconocimiento de matrículas
62
El error cometido por el conjunto nº 5 siempre es inferior al del resto de variables. Sólo
presenta un incremento significativo del error a partir de un 40% de ruido.
100
Conjunto
Conjunto
Conjunto
Conjunto
Conjunto
90
80
70
1
2
3
4
5
Error(%)
60
50
40
30
20
10
0
0
10
20
30
40
Ruido(% )
50
60
70
80
Figura 54. Porcentaje de error cometido para cada conjunto de variables en función del ruido.
4.1.2
Clasificación de números deformados
Puede ocurrir que las matrículas fotografiadas estén torcidas o dobladas. También
puede suceder que el segmentador no haya dividido correctamente la imagen y el
carácter no aparezca centrado en la imagen, sino desplazado. Mediante distintos tipos
de transformaciones se generan imágenes que simulan estos efectos.
4.1.2.1
Tipo de imágenes generadas
A partir de las imágenes originales, éstas se deforman. El conjunto de datos está
formado por:
- Imágenes con ruido: las imágenes tienen un porcentaje p de ruido aleatorio
entre 0 y un 20%. Significa que a un porcentaje p de los elementos de la matriz
se le asigna un valor al azar entre 0 y 255.
- Imágenes giradas: para obtener imágenes rotadas se utiliza la función imrotate.
Las figuras tienen un ángulo máximo de giro de 30º. Al rotar el número, en la
imagen que se obtiene aparece negro en las esquinas que es necesario eliminar
para que la imagen resulte más parecida al caso real (Figura 55).
4 Aplicación de las SVM al reconocimiento de matrículas
63
2
2
4
4
6
6
8
8
10
10
12
12
14
14
2
4
6
8
10
12
2
14
4
6
8
10
12
14
Figura 55. Imagen rotada con la función imrotate e imagen corregida.
- Imágenes desplazadas: el carácter no aparece centrado en la figura o aparece
más pequeño de lo que debería. No se consideran desplazamientos
excesivamente grandes ya que se considera que el segmentador es lo
suficientemente fiable.
2
2
4
4
6
6
8
8
10
10
12
12
14
14
2
4
6
8
10
12
2
14
4
6
8
10
12
14
Figura 56. Ejemplos de imágenes desplazadas.
- Imágenes dobladas horizontalmente: el efecto de matrículas dobladas se
consigue eliminando filas de la matriz aleatoriamente y deformando una parte
de la imagen realizando una transformación matemática (Figura 57).
2
2
4
4
6
6
8
8
10
10
12
12
14
14
2
4
6
8
10
12
14
2
4
6
8
10
12
14
Figura 57. Ejemplo de imágenes dobladas horizontalmente.
- Imágenes dobladas verticalmente. Se muestra un ejemplo a continuación
(Figura 58).
4 Aplicación de las SVM al reconocimiento de matrículas
64
2
2
4
4
6
6
8
8
10
10
12
12
14
14
2
4
6
8
10
12
14
2
4
6
8
10
12
14
Figura 58. Ejemplo de imágenes dobladas verticalmente.
Tanto a las imágenes desplazadas como a las giradas y a las dobladas se les añade
ruido con un porcentaje aleatorio (Figura 59). Esto nos permite obtener un conjunto
más variado para conseguir que los resultados sean más fiables. Si las imágenes fueran
demasiado similares la SVM podría identificar correctamente una figura no porque
haya demostrado una buena capacidad de generalización, sino porque las imágenes
que se quieren reconocer sean muy parecidas a las del conjunto de entrenamiento.
2
2
4
4
6
6
8
8
10
10
12
12
14
14
2
4
6
8
10
12
14
2
4
6
8
10
12
14
Figura 59. Ejemplo de imágenes deformadas con ruido.
El conjunto de datos de entrenamiento utilizado está formado por 250 imágenes: 5
imágenes para cada tipo de deformación y para cada número.
4.1.2.2
Resultados de la clasificación
Para la clasificación de las imágenes deformadas no tiene sentido utilizar las
variables que están relacionadas con los puntos en común con un patrón ya que en este
caso las imágenes no aparecen siempre en la misma posición.
A continuación se indican los resultados obtenidos según las variables
consideradas:
Elementos de la matriz:
El porcentaje de error que se comete es de 99,4% (497 imágenes) para σ =1, por lo
que este conjunto de variables no resulta adecuado para reconocer los números
4 Aplicación de las SVM al reconocimiento de matrículas
65
deformados. Las imágenes que no han sido reconocidas han sido imágenes
indeterminadas y no han sido clasificadas como positivas en ninguno de los modelos.
Ha clasificado correctamente dos imágenes del número 5 y una de un 8. Las tres eran
figuras únicamente con ruido y éste para todas era inferior a un 0,5%.
Histogramas vertical y horizontal de la matriz en escala de grises:
El porcentaje de error coincide con el del caso anterior. Este conjunto de variables
tampoco podría ser usado para identificar los números. Las figuras que reconoce
también coinciden con las que no reconoce la SVM cuando el tipo de variables usado
son los elementos de la matriz. Esto demuestra que la SVM las clasifica correctamente
porque existen unas figuras similares en el conjunto de entrenamiento. Tampoco se
puede usar esta variable para la clasificación.
Histogramas vertical y horizontal de la matriz en blanco y negro:
La SVM no clasifica correctamente un 14,6% de los números (70 figuras mal
clasificadas y 3 figuras indeterminadas). Uno de los números en el que mayor error
comete al clasificar es el 6 (Tabla 20). Los números que más confunde el clasificador
son el 6 y el 0, y el 8 y el 9. De este último caso se puede ver un ejemplo en la Figura 60.
Figura clasificada como:
0
1
2
3
4
5
6
7
8
9
indet.
0
41
0
0
1
1
0
4
0
1
2
0
1
0
48
0
1
0
0
0
1
0
0
0
2
0
0
42
2
0
1
1
2
2
0
0
3
0
0
1
44
1
0
0
1
1
0
2
4
0
2
0
1
46
0
1
0
0
0
0
5
1
0
1
2
0
44
2
0
0
0
0
6
6
0
0
1
0
0
34
0
8
1
0
7
0
0
0
2
0
0
0
48
0
0
0
8
0
0
0
0
0
0
3
0
43
4
0
9
3
0
0
1
0
1
2
0
5
37
1
Tabla 20. Clasificación realizada por la SVM para cada número.
4 Aplicación de las SVM al reconocimiento de matrículas
66
2
2
4
4
6
6
8
8
10
10
12
12
14
14
2
4
6
8
10
12
14
2
4
6
8
10
12
14
Figura 60. Números clasificados incorrectamente cuando se utilizan como variables los histogramas.
Elementos de la matriz pasada a blanco y negro:
Para σ = 1, la SVM ha asignado una clase incorrecta a 34 imágenes (6,8%), menos
de la mitad del caso anterior. Nueve figuras han quedado indeterminadas (1,8%), todas
ellas fueron clasificadas como clase negativa en todos los modelos, es decir, que la SVM
no dudó entre varias clases. Se necesitaron todas las figuras de entrenamiento para
calcular la frontera de decisión ya que todas son vectores soporte. También se ha
comprobado que esto se da tomando el doble de imágenes de aprendizaje.
En la Tabla 21 se muestran más en detalle los resultados de la clasificación para
cada número.
Figura clasificada como:
0
1
2
3
4
5
6
7
8
9
indet.
0
44
0
0
0
0
0
5
0
0
0
1
1
0
50
0
0
0
0
0
0
0
0
0
2
0
0
43
1
0
0
0
4
0
0
2
3
0
1
0
48
0
0
0
0
0
0
1
4
0
1
0
0
46
0
1
0
1
0
1
5
0
0
0
1
0
45
3
0
1
0
0
6
2
0
0
0
0
1
41
0
3
0
3
7
0
0
0
1
0
0
0
49
0
0
0
8
0
0
0
1
0
0
2
0
47
0
0
9
2
0
0
0
0
1
1
0
1
44
1
Tabla 21. Clasificación realizada por la SVM para cada número.
Los números que mejor reconoce son el 1 y el 7. El número que la SVM tiene más
dificultades para reconocer es el 6. Comparando la Tabla 20 y la Tabla 21 se puede
comprobar que la SVM se equivoca aproximadamente en las mismas figuras aunque
para el tipo de variables que se estudia en este apartado el error es menor. Esto puede
4 Aplicación de las SVM al reconocimiento de matrículas
67
ocurrir porque las dos variables estén relacionadas o porque las imágenes estén muy
deformadas y sean difíciles de reconocer.
En la Figura 61 aparece un ejemplo de dos imágenes del número 6 que la SVM no
ha identificado (se muestran las imágenes antes de haber realizado el tratamiento). La
primera imagen fue clasificada como un 8 y la segunda como un 0.
2
2
4
4
6
6
8
8
10
10
12
12
14
14
2
4
6
8
10
12
14
2
4
6
8
10
12
14
Figura 61. Imágenes que representan el número 6 mal clasificadas.
Se comprueba que incluso para una persona estas imágenes serían complicadas de
distinguir. La SVM ha considerado que los caracteres pertenecían al conjunto de los
números a los que realmente se parecen las imágenes. Esto demuestra que la SVM ha
sido capaz de generalizar correctamente las características de cada clase con las
variables utilizadas en este caso, aunque el número de vectores soporte haya sido
elevado.
También hay imágenes más nítidas que la SVM ha clasificado mal, como las de la
Figura 62 que muestra imágenes del número 0 que el clasificador ha identificado como
un 6. Aún en este ejemplo que resulta más fácil de distinguir, la imagen guarda cierta
similitud en forma con la clase a la que la SVM ha considerado que pertenecía.
2
2
2
4
4
4
6
6
6
8
8
8
10
10
10
12
12
12
14
14
14
2
4
6
8
10
12
14
2
4
6
8
10
12
14
Figura 62. Imágenes mal clasificadas.
2
4
6
8
10
12
14
4 Aplicación de las SVM al reconocimiento de matrículas
68
Tipo de deformación de la imagen:
Ruido
Girada
Desplazada
Doblada
horizontalmente
Doblada
verticalmente
0
0
0
6
0
0
1
0
0
0
0
0
2
0
0
5
2
0
3
0
0
2
0
0
4
0
0
4
0
0
5
0
0
4
1
0
6
0
0
5
2
2
7
0
0
1
0
0
8
0
1
1
0
1
9
0
0
5
1
0
Total
0
1
33
6
3
Tabla 22. Imágenes no reconocidas por la SVM para cada tipo de deformación.
El tipo de deformaciones que la SVM tiene más problemas para identificar es el de
las imágenes desplazadas. Esto significa que la SVM reconoce los diferentes números
según su posición. Es la característica que considera común a cada una de las clases.
4.1.2.3
Análisis de los resultados de números deformados
Comparando los resultados obtenidos para las distintas variables (Figura 63), se
comprueba que con el conjunto nº 2 se consigue el menor error. El segundo tipo con el
que mejor se realiza la clasificación es el nº 4. Ambos conjuntos se obtuvieron a partir
de las imágenes tratadas. Las variables calculadas a partir de las matrices en escala de
grises no permiten reconocer prácticamente ningún número.
100
Error (%)
80
60
40
20
0
Conjunto nº 1
Conjunto nº 2
Conjunto nº 3
Conjunto nº 4
Figura 63. Porcentaje de error cometido para cada conjunto de variables.
4 Aplicación de las SVM al reconocimiento de matrículas
4.2
69
Aplicación de las SVM al reconocimiento de letras
La SVM se ha entrenado con todas las letras excepto con la Q y con la Ñ, caracteres
que no están presentes en las matrículas, por lo que se tiene un total de 25 clases.
5
10
15
5
5
5
5
10
10
10
10
15
15
15
15
5 10 15
5 10 15
5 10 15
5 10 15
5 10 15
5
10
15
5
5
5
5
10
10
10
10
15
15
15
15
5 10 15
5 10 15
5 10 15
5 10 15
5 10 15
5
10
15
5
5
5
5
10
10
10
10
15
15
15
15
5 10 15
5 10 15
5 10 15
5 10 15
5 10 15
5
10
15
5
5
5
5
10
10
10
10
15
15
15
15
5 10 15
5 10 15
5 10 15
5 10 15
5 10 15
5
10
15
5
5
5
5
10
10
10
10
15
15
15
15
5 10 15
5 10 15
5 10 15
5 10 15
5 10 15
Figura 64. Imágenes patrón empleadas en la clasificación de las letras.
4.2.1
Clasificación de letras con distintos niveles de ruido
El entrenamiento de la SVM se realizó con 500 imágenes. Para la evaluación se
emplearon 8524 letras. Al tener más clases que en la clasificación de números se
necesitan más imágenes.
4.2.1.1
Resultados obtenidos
Imágenes sin ruido:
Para los elementos de la matriz en escala de grises se consigue un porcentaje de
acierto del 74,38%. Todas las imágenes que el clasificador no ha identificado han sido
letras indeterminadas y fueron clasificadas como clase negativa en todos los modelos,
por lo que la SVM no ha podido decidirse por ninguna clase. Para siete tipos de letras
no se ha confundido en ningún caso: la B, la F, la H, la I, la L, la T y la W.
Si se utiliza el conjunto nº 5, el porcentaje de error se reduce a un 0,06%, es decir, a
5 letras. La SVM ha confundido una G con una O, tres G con una C y una N con una H.
4 Aplicación de las SVM al reconocimiento de matrículas
70
En el caso de las variables 4 y 3 todas las letras son reconocidas adecuadamente,
mientras que para la 2 tan sólo son reconocidas el 47,54% de ellas.
Imágenes con un 20% de ruido
Para el conjunto nº 1 al igual que para el conjunto nº 3, el 100% de las figuras
quedan indeterminadas por lo que no se van a estudiar los casos de imágenes con más
ruido para dichas variables. Para el conjunto nº 2 este valor se reduce a un 0,6%, es
decir, a 51 figuras. La mayoría de las imágenes indeterminadas se corresponden con
imágenes de la B. La SVM no reconoce más de un 6% de ellas (Figura 65). Para el resto
de las letras no indicadas en el histograma el error es nulo.
Imágenes inderminadas (%)
7
6
5
4
3
2
1
0
B
C
D
G
H
Le tra
O
P
R
U
Figura 65. Histograma del porcentaje de imágenes indeterminadas de cada tipo de letra.
Empleando como variables los histogramas de la imagen en blanco y negro asigna
una clase incorrecta a 95 imágenes y 3 se quedan sin ser determinadas (una B, una S y
una X). Las letras en las que se ha cometido el mayor porcentaje de error en su
clasificación son la X y la D (Figura 66). Como se puede observar, las letras en las que
más se equivoca la SVM no coinciden con las del conjunto de variables nº 2.
7
6
Error (% )
5
4
3
2
1
0
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
R
S
T
U
V
W
Letra
Figura 66. Histograma del porcentaje de imágenes incorrectamente clasificadas de cada letra.
X
Y
Z
4 Aplicación de las SVM al reconocimiento de matrículas
71
Para este conjunto de variables, los errores más frecuentes cometidos por la SVM
han sido clasificar la letra X como una A (11 veces), la A como una X (9 veces) e
imágenes de la letra D como una U (10 veces). Sin embargo no ha tenido tantos
problemas para distinguir imágenes de la U de la D (sólo se equivocó en 2 ocasiones).
Los resultados más en detalle se muestran en la Tabla 25 de los anexos.
Con el conjunto nº 5, la SVM clasificó dos letras D como una B y una G como una
O (Figura 67). Además otras 6 imágenes fueron indeterminadas. Esto supone un error
del 0,11%.
2
2
2
4
4
4
6
6
6
8
8
8
10
10
10
12
12
12
14
14
5
10
14
15
5
10
15
5
10
15
Figura 67. Imágenes con un 20% de ruido mal clasificadas empleando el conjunto de variables nº5.
Imágenes con un 40% de ruido:
Con el conjunto nº 2, el clasificador asigna una clase incorrecta a 146 imágenes y
no es capaz de determinar la clase de otras 64 (2,58% de error). La SVM tiene
dificultades para distinguir la letra C y la G, y la H y la N (Tabla 26).
El error cometido clasificando con el conjunto nº 4 asciende a un 21,72%. La SVM
nunca se equivoca al reconocer la L, mientras que no es capaz de identificar casi un
50% de las letras D y G (Figura 68.). La primera la confunde sobre todo con la letra U y
la segunda con la O (Tabla 27).
60
Error (%)
50
40
30
20
10
0
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
R
S
T
U
V
W
X
Y
Z
Letra
Figura 68. Histograma del porcentaje de imágenes incorrectamente clasificadas de cada letra para el conjunto nº4.
4 Aplicación de las SVM al reconocimiento de matrículas
72
Un 2,76% de las letras son clasificadas incorrectamente cuando el conjunto de
variables utilizado es el nº 5. La letra que más dificultades tiene para reconocer es la C
Error (%)
(Figura 69), confundiéndola en 48 ocasiones con la G (Tabla 28).
18
16
14
12
10
8
6
4
2
0
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
R
S
T
U
V
W
X
Y
Z
Letra
Figura 69. Histograma del porcentaje de imágenes incorrectamente clasificadas de cada letra para el conjunto nº5.
Imágenes con un 70% de ruido:
Con el conjunto nº 2 la SVM sólo identifica correctamente un 16,78% de las
imágenes. Para todas las letras, excepto la A, el porcentaje de error supera el 70%
(Tabla 29). Con el conjunto nº 4, el clasificador reconoce un 18,55% de las imágenes.
Para las letras F, J y T, el error es próximo al 65%, para el resto supera el 70% (Tabla 30).
Aproximadamente un 50% de las letras no son identificadas por el clasificador
empleando el conjunto nº 5. Si se toman 750 imágenes de aprendizaje en vez de 500, el
error es de 45,05%. En la Figura 70 se puede observar que para la mayoría de las letras
el porcentaje de error cometido desciende al aumentar el conjunto de entrenamiento.
Sin embargo para otras como la A, la C, la K, la N, la V y la X la SVM tiene más
dificultades para reconocerlas.
nº puntos de aprendizaje = 500
250
nº puntos de aprendizaje = 750
Error (%)
200
150
100
50
0
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
R
S
T
U
V
W
X
Y
Z
Letra
Figura 70. Comparación del porcentaje de letras incorrectamente clasificadas tomando 500 y 750 imágenes de
aprendizaje.
4 Aplicación de las SVM al reconocimiento de matrículas
4.2.1.2
73
Análisis de los resultados de la clasificación de las letras con distintos niveles
de ruido
En la Figura 71 se compara el error que comete la SVM para cada tipo de variables.
Los conjuntos 1 y 3 no sirven para la identificación de las letras debido al elevado
número de imágenes que no son reconocidas incluso para niveles bajos de ruido. Para
los tres otros conjuntos el error es similar hasta un 20% de ruido. Tanto el 3 como el 5
se mantienen por debajo de un 3% hasta un 40% de ruido. Si las imágenes tuvieran un
elevado porcentaje de ruido, el tipo de variables más adecuado para realizar la
clasificación sería el 5. El porcentaje de error es aceptable considerando que se tiene un
total de 25 clases, por lo que la probabilidad de equivocarse en al menos uno de los 25
problemas de clasificación es mayor que en el caso de los números.
100
90
80
70
Error(%)
60
50
40
30
C onjunto
C onjunto
C onjunto
C onjunto
C onjunto
20
10
0
0
10
20
30
40
R uido(% )
50
60
70
1
2
3
4
5
80
Figura 71. Porcentaje de error cometido para cada conjunto de variables al variar el ruido.
4.2.2
Clasificación de letras deformadas
Los tipos de deformaciones de las imágenes estudiadas son los mismos que los
utilizados para la clasificación de los números. Se han tomado 500 figuras para el
entrenamiento (20 imágenes de cada letra) de la SVM y 1000 para la evaluación (20
imágenes de cada letra).
Se comprobó en el caso de los números que la clasificación de las imágenes a
partir de los histogramas y de los elementos de la matriz en escala de grises no dio
buenos resultados. Por esta razón, únicamente se van a analizar los resultados
utilizando los conjuntos de variables nº 2 y 4 (elementos e histogramas de la matriz en
blanco y negro).
4 Aplicación de las SVM al reconocimiento de matrículas
4.2.2.1
74
Resultados de la clasificación de letras deformadas
Histogramas vertical y horizontal de las matrices en blanco y negro:
La SVM clasifica mal 165 letras y otras 3 quedan indeterminadas, por lo que el
error es de un 16,8%. En la Tabla 23 se muestra el número de imágenes no reconocidas
de cada letra para cada tipo de deformación. La SVM ha sido incapaz de identificar 110
letras desplazadas, lo que supone más de un 65% de las imágenes totales no
reconocidas. Las letras en las que se comete el mayor error son la H, la R, la B y la D.
Tipo de deformación de la imagen:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
R
S
T
U
V
W
X
Y
Z
Total
Ruido
Girada
Desplazada
Doblada
horizontalmente
Doblada
verticalmente
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
2
0
0
1
0
0
0
0
0
1
1
1
0
0
0
0
0
0
7
2
8
4
7
5
4
2
6
3
2
7
1
8
6
4
4
6
6
4
3
0
5
6
1
6
110
1
1
1
0
1
2
2
2
0
0
1
0
0
1
0
0
2
0
0
0
2
0
2
0
0
18
1
3
0
5
0
0
1
4
2
0
1
0
0
2
1
0
3
0
2
5
1
1
0
1
0
33
Tabla 23. Imágenes no reconocidas por la SVM para cada tipo de deformación.
Elementos de la matriz de las matrices en blanco y negro:
Para este caso, el número de imágenes indeterminadas aumenta con respecto al
anterior (22 imágenes). Sin embargo, el porcentaje de error es menor puesto que sólo
asigna una clase incorrecta a 91 letras frente a las 165 para la variable anterior. Por lo
tanto, la SVM se equivocó en un 11,3% de las veces.
4 Aplicación de las SVM al reconocimiento de matrículas
75
Los errores que más se repiten son confundir las imágenes de la letra H con la N (8
veces), las de la C con la G (4 veces) y las de la T con la Y (4 veces). Se muestra un
ejemplo de cada uno de estos casos en la Figura 72.
2
2
2
4
4
4
6
6
6
8
8
8
10
10
10
12
12
12
14
14
14
2
4
6
8
10
12
14
2
4
6
8
10
12
14
2
4
6
8
10
12
14
Figura 72. Ejemplos de figuras mal clasificadas al utilizar los elementos de la matriz como variables.
Las imágenes menos reconocidas son las imágenes desplazadas, mientras que
todas las imágenes con sólo ruido han sido bien clasificadas (Tabla 24).
Tipo de deformación de la imagen:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
R
S
T
U
V
W
X
Y
Z
Total
Ruido
Girada
Desplazada
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
3
2
0
0
0
0
0
0
0
0
0
1
2
2
0
0
2
0
0
13
0
6
3
5
5
3
3
6
2
0
5
1
5
5
4
3
5
3
2
3
0
2
4
1
5
81
Doblada
horizontalmente
1
1
3
0
1
0
0
0
0
0
1
0
0
2
0
0
0
1
0
0
0
0
0
0
0
10
Doblada
verticalmente
0
0
0
2
0
0
0
3
0
0
0
0
0
2
0
0
0
0
0
2
0
0
0
0
0
9
Tabla 24. Imágenes no reconocidas por la SVM para cada tipo de deformación.
Para las imágenes desplazadas cuando el ángulo de giro es inferior a 10º la SVM
no se equivocó en ningún caso (Figura 73). Casi el 50% de las que no reconoce el
clasificador tienen un ángulo de rotación comprendido entre 25 y 30º.
Imágenes mal clasificadas (%)
4 Aplicación de las SVM al reconocimiento de matrículas
76
50
45
40
35
30
25
20
15
10
5
0
[0º,5º)
[5º,10º)
[10º,15º)
[15º,20º)
[20º,25º)
[25º,30º]
Ángulo de giro
Figura 73. Histograma de las figuras giradas mal clasificadas para los distintos ángulos de giro.
Las letras que el clasificador tiene más problemas para reconocer son las letras H y
N con más de un 20% de error. Las letras que la SVM tiene más facilidades para
distinguir son la J y la V.
4.2.2.2
Análisis de los resultados de la clasificación de letras deformadas
Empleando los histogramas la SVM identifica correctamente un 83,2% de las
letras, mientras que para los elementos de la matriz el porcentaje es mayor: 88,7%. Por
lo tanto este último conjunto es el más indicado para clasificar las letras. Para cada tipo
de deformación el error que comete permanece igual o es menor que para el otro
conjunto de variables anterior excepto para el error en las imágenes giradas (el número
de figuras no reconocidas aumenta de 7 a 13 letras). Para ambos tipos de variables las
imágenes menos reconocidas son las desplazadas.
Para todas las letras el error es menor utilizando los elementos de la matriz
(Figura 74). La letra en la que más se equivocan al ser clasificada coincide para los dos
conjuntos y se corresponde con la H.
Nº de figuras no reconocidas
16
14
Histogramas
12
Elementos de la matriz
10
8
6
4
2
0
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
R
S
T
U
V
W
X
Y
Letra
Figura 74. Número de figuras no reconocidas para cada letra y cada conjunto de variables.
Z
4 Aplicación de las SVM al reconocimiento de matrículas
4.3
77
Análisis de los resultados de la clasificación de los caracteres de las
matrículas
Se comprobó que los mejores tipos de variables para realizar la clasificación son
los mismos para los números y para las letras. Para las imágenes centradas con
distintos niveles de ruido los mejores resultados se han obtenido con el conjunto nº 5
(variables que permiten conocer las diferencias con imágenes patrón). En la Figura 75
se comparan los resultados obtenidos en las dos clasificaciones para ese tipo de
variables. Cuando el ruido es elevado, el error es mucho mayor en el caso de las letras.
Esto se debe a que el problema es más complejo puesto que se tiene un mayor número
de clases por lo que la probabilidad de equivocarse en alguno de los modelos es mayor.
70
Letras
Núm eros
60
Error(%)
50
40
30
20
10
0
0
10
20
30
40
Ruido(% )
50
60
70
80
Figura 75. Error en función del ruido en la clasificación de las letras y de los números.
Sin embargo en el caso de la clasificación de caracteres deformados los resultados
obtenidos fueron más similares habiéndose conseguido un porcentaje de acierto de 91,4
y 88,7% en el reconocimiento de los números y de las letras respectivamente.
6
Conclusiones
5 Conclusiones
5
79
Conclusiones
5.1
Conclusiones sobre los resultados
Tanto en el caso de la clasificación de imágenes sintéticas como en el de los
caracteres de las matrículas, se obtuvieron unos porcentajes elevados de acierto. En el
caso del reconocimiento de letras y números los resultados son más significativos, ya
que se tuvo que reducir el número de datos de aprendizaje por los elevados tiempos de
simulación.
Se demostró que las SVM tienen una gran capacidad para reconocer las imágenes,
siempre y cuando se empleen las variables adecuadas. Se comprobó que si éstas se
obtienen a partir de las imágenes en escala de grises (y no en blanco y negro puros) el
porcentaje de error cometido es alto. Realizar un tratamiento de la imagen es, por lo
tanto, imprescindible para un mejor reconocimiento. Además, es importante escoger
adecuadamente la cantidad y el tipo de datos del conjunto de test y del de
entrenamiento para no sacar conclusiones erróneas sobre los resultados. Las imágenes
de evaluación no deben ser muy similares a las de aprendizaje. Esto conllevaría un
porcentaje de acierto muy elevado sin que la SVM haya demostrado una buena
capacidad de generalización que es el motivo por el que se emplea como método de
clasificación. Además, el número de imágenes de entrenamiento tiene que ser lo
suficientemente elevado para que la SVM sea capaz de “aprenderse” las características
de cada clase y así no obtener un porcentaje de error indebido.
Una de las principales dificultades encontradas a la hora de clasificar con las SVM
fue el tiempo de simulación requerido para resolver los problemas de optimización y
evaluar el conjunto de test. Esto es debido a la elevada cantidad de variables, de clases
y de datos utilizados. Otro inconveniente que presenta el clasificador en problemas
multiclase es que al evaluar una imagen y hacerla pasar por varios modelos, la SVM
puede categorizar un dato como clase positiva en más de uno de ellos o en ninguno. En
este caso no puede decidirse por ninguna clase y la imagen queda indeterminada. Aún
así es mejor obtener este tipo de figuras que otras incorrectamente clasificadas. En la
indeterminada se puede saber que algo no es correcto y se puede pasar a otro
procedimiento como, por ejemplo, el reconocimiento manual.
5 Conclusiones
5.2
80
Recomendaciones para futuros estudios
Se comprobó que, en el caso de las imágenes sintéticas, cuando se escogen unas
variables que caracterizan cada clase se puede llegar a unos muy buenos resultados. En
este sentido, se puede seguir investigando en otras variables de las que aquí se han
propuesto que sean capaces de identificar mejor los distintos caracteres.
Para todos los modelos de un mismo problema, se han utilizado iguales
parámetros (función kernel, C…) y conjuntos de variables. Podría ocurrir que los
parámetros que son adecuados para obtener el hiperplano de uno de esos modelos no
lo sean para otro o que un mismo conjunto de variables permita identificar un tipo de
carácter, pero no otros. Por esta razón, se podría estudiar si se pueden mejorar los
resultados empleando distintos parámetros para cada modelo.
En determinados problemas, el alto porcentaje de error se debe a un número
elevado de datos que han sido clasificados como clase positiva en varios modelos. Se
puede investigar sobre un método para escoger la mejor de las clases basándose, por
ejemplo, en la distancia relativa a la que se encuentra dicho dato del hiperplano
separador de cada uno de los modelos en los que ha sido clasificada como positiva.
También se puede realizar una SVM específica para separar dos clases concretas entre
las que el grado de confusión suele ser alto.
En este proyecto, se realizó la clasificación multiclase con el método 1-v-r en el que
hay que resolver tantos modelos como clases a reconocer. Existe otro sistema para la
resolución de este tipo de problemas conocida como 1-v-1. Consiste en llevar a cabo
K(K - 1)/2 clasificaciones siendo K el número total de clases. En cada una de ellas se
toman dos clases de las K totales. Es recomendable estudiar si con este último método
se mejora la capacidad de reconocimiento por parte de las SVM.
7
Bibliografía
6 Bibliografía
6
82
Bibliografía
6.1
Documentos
[ORAL04]
Orallo, J.H., M.J. Ramírez Quintana, C. Ferri Ramírez. Introducción a la
Minería de Datos. PEARSON EDUCACIÓN, S.A. Madrid 2004.
[HAST01]
Hastie, T., R. Tibshirani, J. Friedman. The Elements of Statistical
Learning: Data Mining, Interference and Prediction (Capítulo 12:
Support Vector Machines and Flexible Discriminants). Ed. Springer
Series in Statistics, 2001
[ANGU01]
Angulo Bahón, C. Aprendizaje con Máquinas Núcleo en Entornos de
Multiclasificación (Capítulo 4: Clasificación Multiclase con Máquinas de
Soporte Vectorial). Tesis Doctoral, Universidad Politécnica de Cataluña,
2001.
[GUNN98]
Gunn, S. R. Support Vector Machines for Classification and Regression.
Universidad de Southampton, 1998.
[BURG98]
Burges, C. A Tutorial on Support Vector Machines for Pattern
Recognition. Data Mining and Knowledge Discovery, vol. 2, No. 2, pp.
121-167, 1998.
[JALO05]
Jalón, J.C., J.I. Rodríguez, J. Vidal. Aprenda Matlab 7.0 como si estuviera
en primero. Universidad Politécnica de Madrid, 2005.
6.2
Direcciones de Internet
•
http://www.isis.ecs.soton.ac.uk/
•
http://www.csie.ntu.edu.tw/~cjlin/libsvm/
•
http://www.licenseplaterecognition.com/
Anexos
A
Tablas de resultados de la
clasificación de las letras
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
R
S
T
U
V
W
X
Y
Z
indet.
Porcentaje de
imágenes no
reconocidas
A
323
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
0
0
0
2,71
B
0
342
0
3
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
1
1,73
C
0
0
329
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0,90
D
0
8
0
330
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
10
0
0
0
0
0
0
5,17
E
0
0
0
0
364
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
F
0
0
0
0
0
380
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
G
0
0
0
0
0
0
310
0
0
0
0
0
0
0
6
0
0
0
0
0
0
0
0
0
0
0
1,90
H
0
0
0
1
0
0
0
328
0
0
0
0
0
1
0
0
0
0
0
2
0
0
0
0
0
0
1,20
I
0
0
0
0
0
0
0
0
364
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
J
0
0
0
0
0
0
0
0
0
380
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
K
0
0
0
0
0
0
0
0
0
0
332
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
L
0
0
0
0
0
0
0
0
0
0
0
380
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
M
0
0
0
0
0
0
0
0
0
0
0
0
300
0
0
0
0
0
0
0
0
0
0
0
0
0
0
N
0
0
0
0
0
0
0
2
0
0
0
0
0
329
0
0
0
0
0
1
0
0
0
0
0
0
0,90
O
0
0
2
0
0
0
4
0
0
0
0
0
0
0
310
0
0
0
0
0
0
0
0
0
0
0
1,90
P
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
348
0
0
0
0
0
0
0
0
0
0
0
R
0
6
0
0
0
0
0
0
0
0
3
0
0
0
0
0
323
0
0
0
0
0
0
0
0
0
2,71
S
0
0
0
0
0
0
4
0
0
0
0
0
0
0
0
0
0
343
0
0
0
0
0
0
0
1
1,44
T
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
364
0
0
0
0
0
0
0
0
U
0
0
0
2
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
328
0
0
0
0
0
0
1,20
V
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
327
0
3
1
0
0
1,51
W
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
284
0
0
0
0
0
X
11
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
0
312
0
0
1
6,04
Y
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
332
0
0
0
Z
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
364
0
0
A Tablas de resultados de la clasificación de las letras
A
A Tablas de resultados de la clasificación de las letras
blanco y negro.
85
Tabla 25. Resultados de la clasificación de imágenes con un 20% de ruido empleando los histogramas de la matriz en
Imágenes clasificadas como:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
R
S
T
U
V
W
X
Y
Z
indet.
Porcentaje de
imágenes no
reconocidas
A
332
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
B
0
335
0
3
0
0
0
0
0
0
0
0
1
0
0
3
1
0
0
0
0
0
0
0
0
5
3,79
C
0
0
299
0
0
0
25
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
6
10,12
D
0
10
0
318
0
0
1
0
0
0
0
0
0
0
3
0
0
0
0
1
0
0
0
0
0
15
9,01
E
0
0
0
0
362
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0,55
F
0
0
0
0
0
376
0
0
0
0
0
0
0
0
0
4
0
0
0
0
0
0
0
0
0
0
1,05
G
0
0
15
0
0
0
291
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
8
8,12
H
0
0
0
0
0
0
0
313
0
0
0
0
0
10
0
0
0
0
0
2
0
0
0
0
0
7
5,85
I
0
0
0
0
0
0
0
0
364
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
J
0
0
0
0
0
0
0
0
0
380
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
K
0
0
0
0
0
0
0
0
0
0
332
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
L
0
0
0
0
0
0
0
0
0
0
0
380
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
M
0
0
0
0
0
0
0
0
0
0
0
0
300
0
0
0
0
0
0
0
0
0
0
0
0
0
0
N
0
0
0
0
0
0
0
14
0
0
0
0
0
313
0
0
0
0
0
0
0
0
0
0
0
5
5,81
O
0
0
4
5
0
0
7
0
0
0
0
0
0
0
285
0
0
0
0
1
0
0
0
0
0
14
10,26
P
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
337
4
0
0
0
0
0
0
0
0
6
3,22
R
0
1
0
0
0
0
0
0
0
0
1
0
0
2
0
1
326
0
0
0
0
0
0
0
0
1
1,81
S
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
346
0
0
0
0
0
0
0
0
0,57
T
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
358
0
0
0
0
6
0
0
1,65
U
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
324
0
0
0
0
0
5
2,45
V
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
330
0
0
2
0
0
0,60
W
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
283
0
0
0
0
0,35
X
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
331
0
0
1
0,30
Y
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
0
2
0
0
325
0
0
2,11
Z
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
364
0
0
A Tablas de resultados de la clasificación de las letras
blanco y negro.
86
Tabla 26. Resultados de la clasificación de imágenes con un 40% de ruido empleando los elementos de la matriz en
Imágenes clasificadas como:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
R
S
T
U
V
W
X
Y
Z
indet.
Porcentaje de
imágenes no
reconocidas
A
193
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
11
0
0
23
0
95
2
0
6
42,64
B
0
213
0
31
0
0
2
1
0
0
3
0
5
45
5
1
31
1
0
4
0
0
0
0
0
6
39,47
C
1
0
245
0
0
0
26
0
0
0
0
0
0
0
37
0
4
6
0
1
5
1
1
0
1
4
26,52
D
0
41
1
180
1
0
0
11
0
0
0
0
0
26
14
0
23
1
0
40
0
0
0
0
0
10
49,70
E
0
0
0
0
359
1
0
0
0
0
0
1
0
0
1
1
1
0
0
0
0
0
0
0
0
0
1,37
F
0
0
0
0
2
356
0
0
0
0
0
0
0
0
0
21
1
0
0
0
0
0
0
0
0
0
6,32
G
1
0
23
17
0
0
171
0
0
0
3
0
0
2
57
2
3
17
0
5
1
1
1
0
1
11
47,54
H
0
6
0
5
0
0
0
214
0
0
0
0
0
27
1
0
0
0
0
73
0
0
0
0
0
6
36,20
I
0
0
0
0
0
0
0
0
354
0
1
0
1
0
0
0
0
2
0
0
1
0
4
0
1
0
2,75
J
0
0
1
0
0
0
0
0
0
376
0
0
0
0
1
0
0
1
0
1
0
0
0
0
0
0
1,05
K
1
3
0
3
0
0
1
0
0
0
256
0
0
0
6
4
50
2
0
1
0
2
1
0
0
2
23,03
L
0
0
0
0
0
0
0
0
0
0
0
380
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
M
0
3
0
5
1
0
0
0
0
0
0
0
271
12
0
0
3
0
0
0
0
5
0
0
0
0
9,67
N
0
9
0
15
0
0
0
23
0
0
0
0
7
237
0
1
2
0
0
33
0
0
0
0
0
5
29,05
O
0
0
24
6
0
0
30
0
0
0
1
0
0
5
202
3
0
14
0
15
4
1
1
0
0
10
37,25
P
0
3
0
0
0
10
0
0
0
0
1
0
0
0
4
318
10
0
0
0
0
0
0
0
0
2
8,67
R
0
24
0
12
0
0
5
0
0
0
36
0
0
4
4
6
230
1
0
3
1
2
0
0
0
4
31,10
S
8
1
1
0
0
0
29
0
2
0
4
0
1
0
26
0
2
241
0
0
7
2
13
0
4
7
31,38
T
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
332
0
0
0
0
27
5
0
8,79
U
0
1
5
35
0
0
2
29
0
0
0
0
0
15
12
1
0
1
0
226
0
0
0
0
0
5
32,42
V
9
0
3
0
0
0
0
0
0
0
3
0
0
0
3
0
0
1
0
0
244
3
59
5
1
1
26,59
W
0
0
0
2
0
0
1
0
2
0
2
0
13
1
3
1
6
6
0
1
1
240
0
1
0
4
15,71
X
37
0
4
0
0
0
2
0
0
0
1
0
0
0
3
0
0
6
0
0
56
1
211
1
8
2
36,67
Y
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
19
0
24
0
1
282
1
3
15,20
Z
4
0
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
8
0
0
3
0
2
2
341
1
6,34
A Tablas de resultados de la clasificación de las letras
blanco y negro.
87
Tabla 27. Resultados de la clasificación de imágenes con un 40% de ruido empleando los histogramas de la matriz en
Imágenes clasificadas como:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
R
S
T
U
V
W
X
Y
Z
indet.
Porcentaje de
imágenes no
reconocidas
A
332
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
B
0
335
0
7
0
0
0
0
0
0
0
0
2
0
0
2
2
0
0
0
0
0
0
0
0
0
3,74
C
0
0
278
0
0
0
48
0
0
0
0
0
0
0
6
0
0
0
0
0
0
0
0
0
0
0
16,27
D
0
6
0
340
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
2,30
E
0
0
0
0
360
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1,10
F
0
0
0
0
2
372
0
0
0
0
0
0
0
0
0
6
0
0
0
0
0
0
0
0
0
0
2,11
G
0
0
14
0
0
0
284
0
0
0
0
0
0
0
18
0
0
0
0
0
0
0
0
0
0
0
10,13
H
0
1
0
0
0
0
0
312
0
0
0
0
0
18
0
0
1
0
0
0
0
0
0
0
0
0
6,02
I
0
0
0
0
0
0
0
0
362
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0,55
J
0
0
0
0
0
0
0
0
0
380
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
K
0
0
0
0
0
0
0
0
1
0
327
0
0
0
0
0
4
0
0
0
0
0
0
0
0
0
1,51
L
0
0
0
0
0
0
0
0
0
0
0
380
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
M
0
0
0
0
0
0
0
0
0
0
0
0
300
0
0
0
0
0
0
0
0
0
0
0
0
0
0
N
0
0
0
0
0
0
0
11
0
0
0
0
0
320
0
0
1
0
0
0
0
0
0
0
0
0
3,61
O
0
0
2
2
0
0
28
0
0
0
0
0
0
0
284
0
0
0
0
0
0
0
0
0
0
0
10,13
P
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
344
2
0
0
0
0
0
0
0
0
0
1,15
R
0
5
0
0
0
0
0
1
0
0
0
0
0
2
0
1
323
0
0
0
0
0
0
0
0
0
2,71
S
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
348
0
0
0
0
0
0
0
0
0
T
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
349
0
0
0
0
15
0
0
4,12
U
0
0
0
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
325
0
0
0
0
0
0
2,11
V
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
330
0
0
2
0
0
0,60
W
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
284
0
0
0
0
0
X
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
332
0
0
0
0
Y
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
0
0
0
0
324
0
0
2,41
Z
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
364
0
0
A Tablas de resultados de la clasificación de las letras
88
Tabla 28. Resultados de la clasificación de imágenes con un 40% de ruido empleando el conjunto de variables nº 5.
Imágenes clasificadas como:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
R
S
T
U
V
W
X
Y
Z
indet.
Porcentaje de
imágenes no
reconocidas
A
103
1
3
2
3
1
3
1
14
4
4
0
0
1
7
3
4
5
1
0
2
0
15
5
2
148
68,98
B
2
46
3
9
3
3
9
9
7
1
1
5
1
4
1
8
7
5
1
12
2
1
1
0
2
205
86,78
C
1
2
43
6
5
1
20
2
4
0
1
11
0
0
21
2
3
4
2
10
3
1
0
1
1
188
87,05
D
1
11
9
60
5
1
9
2
1
3
0
6
0
6
9
3
2
1
2
8
0
0
1
0
0
208
82,76
E
3
3
8
3
47
12
2
4
3
2
4
11
1
9
2
9
8
4
0
5
2
4
2
2
2
212
87,09
F
2
6
5
3
17
60
3
7
2
0
12
8
3
5
1
13
7
3
3
1
7
5
1
1
0
205
84,21
G
0
5
33
4
2
1
31
2
5
4
1
3
4
3
25
1
3
9
0
8
1
0
1
0
1
169
90,19
H
3
8
1
11
6
2
0
24
4
1
7
3
3
33
3
1
9
1
0
20
1
2
0
0
0
189
92,77
I
11
4
5
2
7
1
0
1
59
0
4
3
3
1
1
2
7
5
4
3
9
5
11
5
1
210
83,79
J
0
5
5
4
4
2
10
4
4
112
1
0
1
0
17
7
5
3
2
16
2
3
2
4
3
164
70,53
K
5
3
0
0
6
1
0
6
3
1
53
9
4
2
3
1
11
2
2
0
5
5
5
1
2
202
84,04
L
4
6
10
3
16
5
1
5
1
2
6
70
2
6
1
1
2
6
1
7
2
1
1
2
2
217
81,58 €
M
0
4
1
6
4
4
1
7
2
2
6
6
50
10
0
5
5
3
0
6
6
1
0
2
3
166
83,33
N
0
6
0
5
3
5
2
10
4
3
4
3
5
59
1
3
9
0
0
6
5
1
4
1
2
191
82,23
O
0
4
8
10
1
5
26
0
3
5
0
1
1
0
58
2
0
4
1
8
2
1
0
0
1
175
81,65
P
0
15
5
13
4
20
1
11
2
3
2
6
3
7
0
22
13
1
1
4
3
2
0
1
3
206
93,68
R
0
8
3
12
9
4
3
4
1
0
6
4
1
9
4
13
25
2
1
3
2
3
5
0
2
208
92,47
S
3
13
7
4
7
1
7
1
7
5
7
2
1
3
10
2
3
40
2
4
4
2
3
0
3
207
88,51
T
4
1
2
0
0
0
4
0
9
2
1
0
4
1
0
1
0
2
76
0
9
6
5
32
14
191
79,12
U
0
6
7
12
1
2
10
6
1
9
1
3
3
8
4
1
5
2
2
53
6
1
1
1
0
187
84,04
V
4
1
2
0
4
2
2
3
9
6
1
1
1
3
4
4
0
2
1
2
85
2
3
25
3
162
74,40
W
6
5
0
1
4
5
3
2
9
1
4
3
3
7
2
2
4
4
3
4
2
23
4
0
1
182
91,90
X
14
2
1
1
1
1
0
1
7
2
11
1
3
1
1
3
2
2
4
0
4
5
71
9
7
178
78,61
Y
1
0
1
0
2
0
1
1
15
2
2
0
2
4
4
0
0
0
25
1
24
1
9
70
5
162
78,92
Z
6
0
4
1
7
4
4
2
12
2
4
4
1
1
2
1
2
1
5
5
2
0
5
10
90
189
75,27
A Tablas de resultados de la clasificación de las letras
blanco y negro.
89
Tabla 29. Resultados de la clasificación de imágenes con un 70% de ruido empleando los elementos de la matriz en
Imágenes clasificadas como:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
R
S
T
U
V
W
X
Y
Z
indet.
Porcentaje de
imágenes no
reconocidas
60
1
7
1
6
5
11
3
15
2
9
0
2
0
12
2
2
35
3
7
50
5
42
13
21
18
81,93
B
5
44
18
31
18
8
26
8
2
2
8
4
14
38
5
5
14
10
1
35
5
9
7
1
4
26
87,36
C
10
5
55
7
4
6
21
11
6
6
7
10
3
1
35
16
8
13
4
17
12
10
20
5
11
29
83,43
D
0
37
23
60
16
7
17
19
2
8
8
2
8
35
15
7
11
4
0
29
1
1
4
0
1
33
82,76
E
0
13
10
29
91
52
2
8
12
0
8
21
8
7
11
14
7
7
5
9
11
8
3
3
6
19
75,00
F
6
5
17
17
35
137
4
3
1
0
12
19
6
1
3
28
5
3
10
15
3
11
5
5
1
28
63,95
G
18
7
33
14
5
7
34
5
1
5
11
7
2
4
42
5
13
11
4
26
7
8
14
1
7
25
89,24
H
0
23
0
28
5
11
14
78
1
6
2
5
8
58
8
9
10
1
1
38
1
4
1
0
0
20
76,51
I
17
3
4
5
11
3
3
0
88
0
5
0
5
2
11
2
3
76
1
2
17
20
52
5
7
22
75,82
J
31
16
9
1
2
0
23
3
1
135
6
1
2
8
33
1
7
3
8
12
10
3
40
2
6
17
64,47
K
9
17
8
9
18
15
9
7
12
1
33
8
11
6
13
24
16
14
7
12
13
15
17
3
1
34
90,06
L
6
6
23
13
56
39
20
11
2
3
1
95
1
10
9
7
5
9
4
13
5
2
7
3
3
27
75,00
M
2
14
5
19
4
6
6
21
12
2
6
4
52
37
12
9
10
6
2
14
5
28
1
0
1
22
82,67
83,73
A
N
0
30
9
36
5
10
11
50
3
4
2
2
12
54
11
4
9
6
0
34
2
13
2
0
1
22
O
6
17
16
16
7
6
19
12
5
12
10
4
7
7
46
10
15
18
2
21
13
10
9
2
6
20
85,44
P
2
25
21
29
16
56
4
14
2
0
9
9
7
8
7
38
17
5
7
16
7
14
2
3
1
29
89,08
R
3
56
14
29
18
9
27
1
4
3
20
3
9
13
18
13
20
8
3
21
4
10
4
0
2
20
93,98
S
8
8
28
12
15
3
24
6
16
7
12
2
7
4
29
6
8
40
7
7
20
14
19
5
1
40
88,51
T
3
1
2
3
6
6
2
0
3
3
12
0
6
0
7
2
0
10
116
3
25
1
15
105
15
18
68,13
U
2
25
18
36
6
5
20
33
1
10
5
11
8
31
11
17
14
1
0
48
1
2
3
0
2
22
85,54
V
18
4
12
1
12
6
11
3
5
9
8
3
3
0
18
9
3
20
13
3
51
11
52
15
26
16
84,64
W
11
13
6
2
8
9
23
8
14
0
7
1
21
13
11
14
10
21
7
3
11
33
14
3
5
16
88,38
X
44
5
8
4
7
4
6
1
13
1
11
0
9
0
16
6
7
30
4
2
39
3
65
11
13
23
80,42
Y
13
2
7
3
4
8
6
2
5
3
14
1
3
1
8
5
1
12
39
3
54
1
23
74
19
21
77,71
Z
21
4
19
9
15
5
16
3
15
5
14
4
7
3
18
5
6
11
14
17
26
5
39
36
34
13
90,66
A Tablas de resultados de la clasificación de las letras
blanco y negro.
90
Tabla 30. Resultados de la clasificación de imágenes con un 70% de ruido empleando los histogramas de la matriz en
Imágenes clasificadas como:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
R
S
T
U
V
W
X
Y
Z
indet.
Porcentaje de
imágenes no
reconocidas
A
224
0
1
0
1
0
3
1
21
1
1
3
0
0
0
0
1
6
1
0
1
15
33
0
7
12
32,53
B
0
104
13
43
26
9
10
13
9
4
1
2
9
15
7
20
23
9
1
22
0
3
1
0
0
4
70,11
C
0
3
145
10
3
0
84
0
6
3
1
9
0
0
43
0
0
7
2
8
3
0
0
0
0
5
56,33
D
0
41
26
138
3
3
26
6
2
0
0
11
2
3
20
5
3
1
0
51
0
1
0
0
0
6
60,34
E
1
7
2
3
168
65
3
3
10
0
5
44
7
4
2
17
7
2
0
1
2
5
0
0
1
5
53,85
F
0
3
2
1
44
228
1
5
1
0
7
11
2
3
0
35
4
2
2
2
2
11
0
0
4
10
40,00
G
0
6
83
10
0
1
118
1
0
9
0
3
1
0
55
2
1
9
0
14
0
0
1
0
0
2
62,66
H
0
14
0
8
9
2
3
126
0
1
2
0
11
83
0
8
14
8
0
35
0
3
1
0
0
4
62,05
I
22
0
3
0
9
2
5
0
195
0
7
0
1
1
1
4
3
34
4
0
7
9
44
1
3
9
46,43
J
4
10
3
2
0
0
9
2
0
292
0
0
0
0
23
0
0
6
0
5
7
0
0
0
2
15
23,16
K
3
1
3
0
3
6
0
7
10
0
227
4
1
12
0
8
12
1
4
0
2
9
11
0
2
6
31,63
L
1
4
16
5
36
15
1
6
2
0
4
240
4
5
2
0
1
3
4
13
2
0
4
0
0
12
36,84
M
0
6
2
2
11
0
4
9
5
0
1
2
195
20
1
7
7
2
0
11
6
2
1
1
1
4
35,00
N
0
5
1
6
2
2
0
54
1
0
15
1
17
178
0
9
18
2
0
5
1
6
1
0
1
7
46,39
O
0
9
36
23
2
1
99
1
0
13
0
3
1
0
96
0
1
12
0
18
0
0
0
0
0
1
69,62
P
0
18
1
20
28
56
1
14
3
0
4
2
6
10
1
124
41
1
5
5
1
1
0
0
0
6
64,37
R
0
26
3
16
18
7
1
11
8
0
32
4
2
30
0
40
110
3
1
2
0
5
4
0
2
7
66,87
S
1
12
34
3
10
2
28
2
25
5
3
3
1
2
22
0
7
162
3
5
4
5
1
1
1
6
53,45
T
2
0
0
0
1
0
2
0
10
1
0
0
0
0
0
1
0
2
209
0
11
0
10
99
6
10
42,58
U
0
33
16
42
1
1
23
13
0
13
1
7
1
3
19
1
1
4
0
141
2
2
0
0
0
8
57,53
V
1
0
1
10
3
1
1
2
14
4
0
3
0
1
5
2
0
0
17
0
212
0
12
21
8
14
36,14
W
5
2
2
0
8
1
1
3
38
3
6
1
4
2
1
3
3
5
3
2
2
182
1
0
1
5
35,92
X
14
0
0
0
0
0
0
2
18
0
19
0
1
0
0
2
1
2
6
0
5
1
213
9
26
13
35,84
Y
1
0
0
0
0
0
0
0
4
0
0
0
1
0
0
0
1
0
81
0
61
0
10
161
6
6
51,51
Z
2
0
2
2
10
1
0
0
14
2
2
6
4
0
0
3
3
4
7
0
7
0
27
1
255
12
29,95
A Tablas de resultados de la clasificación de las letras
91
Tabla 31. Resultados de la clasificación de imágenes con un 70% de ruido empleando el conjunto de variables n º5.
Imágenes clasificadas como:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
R
S
T
U
V
W
X
Y
Z
indet.
Porcentaje de
imágenes no
reconocidas
A
209
0
0
0
0
0
0
0
23
1
6
2
0
0
0
1
6
6
5
0
2
8
40
1
7
5
34,04
B
0
107
2
45
11
4
16
22
0
1
6
4
14
21
10
26
13
8
0
19
1
4
0
0
1
3
66,38
C
0
2
116
15
1
1
98
1
0
3
1
12
0
0
52
1
1
7
4
3
2
0
0
0
0
2
62,05
D
0
22
6
155
2
1
33
15
0
6
0
6
4
9
9
8
6
4
0
47
0
1
0
0
0
4
52,59
E
1
10
6
0
172
57
2
6
1
5
3
32
1
4
0
12
3
3
0
2
0
0
0
0
29
5
50,00
F
0
5
1
0
42
228
2
3
4
0
13
12
1
2
1
28
6
4
0
4
2
5
2
0
2
3
37,37
G
0
4
53
22
0
1
110
0
1
2
1
8
0
1
62
5
0
23
0
8
2
1
0
0
0
2
62,03
H
0
18
0
6
7
0
2
152
0
8
3
1
9
79
1
5
14
2
0
11
0
2
0
0
0
2
51,20
I
8
3
0
0
2
3
3
0
201
1
13
2
0
8
5
2
4
18
12
0
8
31
10
12
4
4
42,03
J
1
2
0
3
1
2
3
4
0
291
0
0
0
3
8
2
4
12
0
19
2
0
1
3
3
6
20,79
K
1
4
0
2
6
8
2
8
11
2
183
4
4
15
0
6
26
3
2
1
1
8
15
5
3
2
41,87
L
0
0
17
3
53
15
4
2
0
4
0
235
4
4
1
5
0
5
1
1
1
1
0
0
9
5
35,53
M
1
6
0
1
4
1
2
13
1
0
5
3
197
24
1
4
4
2
0
3
5
2
0
2
3
6
31,00
N
1
15
0
2
7
1
0
58
0
0
30
0
12
144
0
5
32
6
0
3
0
3
0
1
0
2
53,61
O
1
1
43
22
1
1
42
2
1
8
0
1
0
1
145
0
0
11
0
22
0
1
0
0
0
3
50,95
P
0
29
0
4
7
44
2
4
4
1
4
3
4
4
1
173
31
2
0
6
1
10
0
0
2
2
47,41
R
0
25
1
2
3
8
3
14
6
0
42
2
0
20
2
36
142
5
0
1
0
5
1
1
1
2
54,22
S
3
11
5
3
6
5
36
2
16
10
5
2
3
2
35
2
4
164
8
9
0
0
0
1
2
4
50,00
T
1
0
1
0
0
5
0
0
2
0
1
1
3
0
0
0
0
1
252
0
6
0
2
60
8
11
28,02
U
0
6
8
25
6
1
6
28
0
12
0
1
2
16
24
1
3
6
0
172
0
0
0
0
0
5
45,18
V
0
0
0
1
0
4
1
0
10
1
3
6
1
1
0
2
2
6
19
1
190
1
1
65
3
4
39,76
W
5
1
1
1
1
5
1
4
19
0
14
0
2
3
2
4
3
4
9
5
3
179
1
0
5
2
33,45
X
21
0
0
0
0
1
0
0
23
1
13
2
0
1
0
0
4
1
12
0
7
1
191
26
14
4
39,46
Y
0
0
0
0
0
2
0
0
4
0
0
0
5
1
1
0
1
2
81
1
27
1
9
176
5
6
43,98
Z
4
3
0
0
4
3
2
0
17
3
0
1
0
0
0
1
3
5
20
1
1
0
12
5
263
6
25,00
A Tablas de resultados de la clasificación de las letras
un 750 imágenes de aprendizaje.
92
Tabla 32. Resultados de la clasificación de imágenes con un 70% de ruido empleando el conjunto de variables nº 5 y
Imágenes clasificadas como:
B
Manual de usuario
B Manual de usuario
94
B Manual de usuario
En el CD adjunto se incluyen:
- Las funciones de la toolbox de SVM utilizada.
- Las imágenes de los números y de las letras empleadas en la clasificación.
- Las
funciones
para
crear
los
números
y
las
letras
deformados:
crea_numero_deform.m y crea_letra_deform.m.
- Las funciones para evaluar los resultados de las clasificaciones de los números y
de las letras: evaluar_num.m y evaluar_letra respectivamente.
- Funciones para la obtención de las distintas variables: histograma.m, BN.m,
M_redim.m, patron.m.
- Los datos de entrenamiento y de test de los números y de las letras para los
distintos niveles de ruido estudiados. Están incluidos en numeros_ruido.mat y
letras_ruido.mat en forma de estructuras cuyos campos son:
•
X: matriz en la que cada fila se corresponde con los elementos de una
imagen.
•
Y: matriz con la clase de los datos.
•
nombre: indica el tipo de número o letra, el ruido y el tipo de deformación.
En el caso de que sea una matriz rotada, también indica el ángulo de giro.
- Los datos de entrenamiento y de test de los números y de las letras deformados.
Se incluyen en numeros_deformados.mat y letras_deformadas.mat.
- El archivo patrones.mat que contiene las matrices patrón de los números
(patrones_numero) y de las letras (patrones_letra).
Descargar