Estudio de Diferentes Métodos de Extracción de...
-
Upload
nguyenlien -
Category
Documents
-
view
221 -
download
0
Transcript of Estudio de Diferentes Métodos de Extracción de...
ESCUELA POLITÉCNICA NACIONALFACULTAD DE INGENIERÍA ELÉCTRICA
Estudio de Diferentes Métodos deExtracción de Característicos de Imágenes
Digitales y su Aplicación en elReconocimiento de Patrones
TESIS PREVIA A LA OBTENCIÓN DEL TÍTULO DEINGENIERO EN ELECTRÓNICA Y
TELECOMUNICACIONES
Gonzalo Fabricio Martínez Peñaloza
Quito - Ecuador
1999
CERTIFICO QUE EL PRESENTETRABAJO HA SIDO DESARROLLADOEN SU TOTALIDAD POR EL SEÑORGONZALO FABRICIO MARTÍNEZPEÑALOZA
-JiménezDirectora de Tesis
AGRADECIMIENTO
A mí familia y a todos los que han contribuido enmi formación profesional. Especialmente a mis padresa quienes les debo la vida y lo que ahora soy.
Agradezco también a la institi4ción que meformó, a mis profesores y particularmente a miDirectora de Tesis, Ing. Ma. Soledad Jiménez, por suguia, tiempo y facilidades provistas, que han permitidola culminación de esta tesis.
ÍNDICE:
Página
INTRODUCCIÓNCAPÍTULO I: GENERALIDADES SOBRE EL PROCESAMIENTO 1DIGITAL DE IMÁGENES.
1.1 INTRODUCCIÓN 21.2 TIPOS DE IMÁGENES PARA COMPUTADORA 3
1.2.1 Imágenes Vectoriales 31.2.2 Imágenes de Grilla 3
1.3 CONCEPTOS SOBRE COLORES 4/. 3.1 El Modelo HSB (Hite Saturation and Brightness) 4/. 3.2 El Modelo RGB (Red Oreen Bine) 51.3.3 El Modelo CMYK (Cyan, Magenta, Yel/ow, Black) 61.3.4 El Modelo CIÉ L *a*b 7
1.4 CONCEPTOS DE RESOLUCIÓN 71.4.1 Resolución de la Imagen 71.4.2 Resolución de Bit 71.4.3 Resolución y Tamaño de la Imagen 81.4.4 Resolución y Tamaño del Archivo 8
1.5 EL FORMATO GRÁFICO BMP 81.5.1 Estructura del Formato BMP 9
1.5.1.1 Cabecera Principal 101.5.1.2 La Paleta de Colores 111.5.1.3 El Mapa de Bits 11
1.6 NOTACIÓN MATEMÁTICA DE UNA IMAGEN DIGITAL 121.7 TIPOS DE DEFORMACIONES GEOMÉTRICAS EN IMÁGENES 14DIGITALES
1.7.1 El Desplazamiento 151.7.2 El Escalamiento 151.7.3 La Rotación 19
1.8 NORMALIZACIÓN DE IMÁGENES DIGITALES RESPECTO 21DEL DESPLAZAMIENTO Y EL ESCALAMIENTO
1.8.1 Concepto del Centro de masa de una imagen Digital 211.8.2 Normalización respecto del Desplazamiento 211.8.3 Normalización Respecto del Escalamiento 24
CAPÍTULO II: EXTRACCIÓN DE CARACTERÍSTICAS DE IMÁGENES 29DIGITALES
2.1 INTRODUCCIÓN A LA EXTRACCIÓN DE CARACTERÍSTICAS 30DE IMÁGENES DIGITALES.
2.2 CARACTERÍSTICAS DE LOS BUENOS DESCRIPTORES 322.3 DESCRIPTORES BASADOS EN MOMENTOS GEOMÉTRICOS 33
2.3.1 Descriptores Basados en Momentos Geométricos Invariantes al 34Desplazamiento, Escalamiento y Rotación2.3.1.1 Invarianza al Desplazamiento 352.3.1.2 Invarianza al Escalamiento 352.3.1.3 Invarianza a la Rotación 39
2.4 DESCRIPTORES BASADOS EN POLINOMIOS ORTOGONALES 402.4.1 Momentos de Zernike 41
2.4.1.1 Invarianza a la Rotación en los Momentos de Zernike 442.4.1.2 Invarianza al Desplazamiento y al Escalamiento en los 46
Momentos de Zernike2.5 DESCRIPTORES BASADOS EN TÉCNICAS DE FOURIER 49
2.5.1 Requisitos para una Expansión en Series de Fourier 502.5.2 El Contorno como una función Periódica 51
2.5.2.1 Obtención del Contorno de una Imagen Digital 532.5.3 Descriptores de Fourier 572.5.4 Función Contorno en el Plano Complejo 582.5.5 Función Radial del contorno 622.5.6 Propiedades de los Descriptores de Fourier 65
2.5.6.1 Desplazamiento en la Variable Independiente 662.5.6.2 Desplazamiento del Contorno en el Plano Complejo 692.5.6.3 Rotación del Contorno 702.5.6.4 Escalamiento del Contomo 742.5.6.5 Método General para Obtener Descriptores Invariantes 772.5.6.6 Descriptores con Información de la Orientación del Objeto 79
CAPÍTULO III: RECONOCIMIENTO DE DÍGITOS MANUSCRITOS 84USANDO UNA RED NEURONAL
3.1 INTRODUCCIÓN 853.2 REDES NEURONALES 86
3.2.1 Neurofisiología, Circuitos Neuronales-Computacionales y 87Aprendizaje
3.2.2 La Neurona Artificial 923.3 RED DE PROPAGACIÓN HACIA ATRÁS (BPN, Back Propaga!km 94
Network)3.3.1 Ecuaciones que gobiernan el funcionamiento de una BPN 96
3.4 RECONOCIMIENTO DE DÍGITOS MANUSCRITOS USANDO 100UNA BPN
3.4.1 Arquitectura de la BPN utilizada en el reconocimiento de dígitos 100manuscritos
3.4.2 Entrenamiento de la Red 1053.4.2.1 Población de Entrenamiento 107
3.4.3 Consideraciones Prácticas 1093.4.3.1 Datos de Entrenamiento 1093.4.3.2 Parámetros de Aprendizaje 112
CAPÍTULO IV: RESULTADOS Y CONCLUSIONES 1154.1 INTRODUCCIÓN 1184.2 MOMENTOS GEOMÉTRICOS 120
4.2.1 Análisis de Momentos Geométricos en distintas Clases de 121Imágenes
4.3 MOMENTOS DE ZERNIKE 1264.3.1 Análisis de los Momentos de Zernike en Distintas Clases de 126
Imágenes4.4 DESCRIPTORES DE FOURIER 127
4.4.1 Función Contorno en el Plano Complejo 1274.4.1.1 Análisis de los Descriptores de Fourier Usando la función 127
Contorno en Distintas Clases de Imágenes
4.4.1.2 Cálculo de Áreas 1304.4.1.3 Obtención de Contornos 131
4.4.2 Función Radial 1324.4.2.1 Análisis de los Descriptores de Fourier Usando la Función 133
Radial en Distintas Clases de Imágenes4.5 TIEMPO DE PROCESAMIENTO 1354.6 RECONOCIMIENTO DE DÍGITOS MANUSCRITOS 138
4.6.1 Momentos geométricos 1404.6.2 Momentos de Zernike 1414.6.3 Descriptores de Fourier Usando la Función Contorno 1424.6.4 Descriptores de Fourier Usando la Función Radial 143
4.7 CONCLUSIONES 144
CONCLUSIONES Y RECOMENDACIONES 145
BIBLIOGRAFÍA 148
ANEXO A: MOMENTOS GEOMÉTRICOS INVARIANTES A PARTIR 152DE LOS INVARIANTES ALGEBRAICOSA.1 INVARIANTES ALGEBRAICOS 152A.2 TEOREMA FUNDAMENTAL DE LOS MOMENTOS 155
INVARIANTESA.2,1 Momentos Invariantes al Escalamiento usando 156
Invariantes AlgebraicosA.2.2 Momentos Invariantes a la Rotación 157
ANEXO B: OTRAS APLICACIONES DE LOS DESCRIPTORES DE 166FOURIER USANDO LA FUNCIÓN CONTORNO.B.1 CÁLCULO DE ÁREAS 166B.2 OBTENCIÓN DE ESQUELETOS 169
ANEXO C: MANUAL DE USUARIO DEL PROGRAMA DE 174EXTRACCIÓN DE CARACTERÍSTICAS DE IMÁGENESDIGITALES BINARIAS Y RECONOCIMIENTO DEDÍGITOS MANUSCRITOS (EXCIDYR)
INTRODUCCIÓN
Actualmente la creación de nuevos ingenios que ayuden al ser humano
en sus necesidades y actividades, demanda el desarrollo de dispositivos que al
menos parcialmente puedan emular ciertas capacidades del ser humano como
son: diferenciar, agrupar, clasificar y reconocer objetos. El lograr que máquinas
puedan solventar estas capacidades es de gran utilidad para el desarrollo de
aplicaciones en innumerables áreas como: el reconocimiento de caracteres,
reconocimiento de objetos, comparación de contornos para imágenes médicas,
inspección industrial, visión computarizada entre muchas otras aplicaciones.
La representación y descripción de figuras o contornos juegan un rol
importante para lograr estos objetivos, por esto, esta Tesis pretende entender,
analizar y aplicar la extracción de características de imágenes digitales
(Descriptores) de una forma sencilla. Se han incluido varios métodos de
extracción de características de imágenes con el fin de establecer sus cualidades y
de realizar comparaciones entre ellas. Adicionalmente y para que este estudio no
quede solo en la teoría se ha implementado como aplicación de estos métodos, el
reconocimiento de caracteres numéricos (dígitos) manuscritos usando los
descriptores analizados y redes neuronales. Esto se logra mediante la
implementación de un programa hecho en VisualBasic con un interfaz de usuario
bastante amigable, el cual permite además del reconocimiento de los dígitos
manuscritos, la extracción, visualización y análisis de los descriptores que se han
mencionado. El programa esta diseñado de tal forma que el usuario pueda
comprobar las propiedades y características de los diferentes tipos de
descriptores mencionados, experimentar con el reconocimiento de dígitos
manuscritos y además aprovecha algunas aplicaciones extras de los descriptores
de Fourier usando la función contorno como son el cálculo de áreas y la
extracción de esqueletos.
Esta tesis se divide en cuatro capítulos. El primer capítulo es de carácter
informativo y trata de dar una idea general sobre los fundamentos de las
imágenes digitales. Con esto se pretende llenar cualquier vacío antes de empezar
con el estudio de la extracción de características de imágenes digitales.
El segundo y tercer capítulos son esencialmente teóricos. En el segundo
capítulo se estudiará y analizará 4 métodos de extracción de características de
imágenes que tienen que ver con el uso de momentos geométricos de una
imagen, el uso del polinomios ortogonales y el uso de técnicas de Fourier El
tercer capítulo, inicialmente da una visión general y simplificada de las redes
neuronales para luego explicar la red neuronal de propagación hacia atrás que se
utilizó en el reconocimiento de dígitos manuscritos.
En el capítulo cuarto se muestra un análisis estadístico de los
descriptores extraídos en los cuatro métodos. Este análisis será de gran ayuda
para determinar la calidad de los descriptores. Además se evaluará el desempeño
del uso de los 4 métodos de extracción de características de imágenes digitales en
la aplicación del reconocimiento de dígitos manuscritos usando una red neuronal
de propagación hacia atrás. Adicionalmente en este capítulo se incluirá algunos
resultados obtenidos en el caso de la obtención de esqueletos y el cálculo de áreas
mediante el uso de los descriptores de Fourier usando la función contorno.
Finalmente se presentarán las conclusiones que resulten del análisis de
los resultados, de la experiencia adquirida al realizar esta tesis y de la teoría
involucrada en la misma.
1.1 INTRODUCCIÓN
Por la naturaleza de este tema de tesis, antes de empezar a estudiar y
analizar la extracción de características de imágenes es necesario entender los
fundamentos de las imágenes digitales. El estudio de los fundamentos de las
imágenes digitales puede ser muy extenso. En este capítulo se pretende dar la
mínima información necesaria para que el lector no tenga problemas para
entender los siguientes capítulos de esta tesis.
Se empezará aclarando como las imágenes son formadas en el computador
y dando algunos conceptos importantes pertinentes a las imágenes digitales.
Posteriormente se tratará sobre el formato de codificación de imágenes BMP,
que es el formato que soporta el programa desarrollado en esta tesis.
A paso seguido se dará una breve explicación sobre el tratamiento
matemático de imágenes digitales, su notación matemática y un corto análisis de
los efectos de las deformaciones geométricas en una imagen digital como son: el
desplazamiento, el escalamiento y la rotación.
Finalmente se explicará un método general para normalizar1 una imagen
digital respecto del desplazamiento y el escalamiento
1 Normalizar un objeto en una imagen digital respecto del desplazamiento y el escalamiento significatomar en cuenta solo su forma, es decir que ni su ubicación en el campo de vista ni su tamaño influyen enla descripción del objeto. En este caso la orientación (rotación) del objeto sí influye en su descripción.
1.2 TIPOS DE IMÁGENES PARA COMPUTADORA
Hay dos tipos de imágenes para computadora: las imágenes vectoriales y
las imágenes de grilla (ráster images).
1.2.1 Imágenes Vectoriales
Se forman basándose en líneas y curvas definidas matemáticamente, las
cuales toman el nombre de vectores. Por ejemplo en un programa de dibujo
basado en vectores, un círculo esta definido por la ubicación de su centro y la
magnitud del radio, con estos datos el programa podrá dibujar en la pantalla el
círculo deseado, después se lo puede mover, cambiar de tamaño y/o de color. El
programa siempre hace referencia a la silueta misma de la figura.
7.2.2 Imágenes de Grilla
Consisten en una grilla de pequeños cuadrados, conocidos como pixeles.
La imagen se forma por las características de color que toma cada pixel de la
cuadricula. Por ejemplo, un círculo de 1 cm de radio en la esquina superior de la
pantalla esta hecha de una colección de pixeles coloreados en esa localización
para dar apariencia al círculo. Cuando se trabaja con imágenes de grilla, se editan
grupos de pixeles en lugar de objetos o siluetas, este tipo de imágenes son
dependientes de la resolución.
El color de un pixel está determinado por un valor discreto que puede
codificarse con un número específico de bits. Así, para una imagen binaria1, cada
pixel se puede codificar con un solo bit que puede tomar el valor de 1 ó 0. En
una imagen en tonalidades de grises cada pixel puede representar 256 tonalidades
de grises y para codificar la tonalidad de un pixel en este modelo es necesario un
Una imagen binaria es aquella en donde cada pixel puede tener solo dos colores: el blanco o el negro.
byte1, ya que el número total de valores posibles que se puede codificar con
un byte es 28 = 256.
Para imágenes de color, existen paletas de 2, 4, 16, 256, 65.536 y
16*777.216 colores, en las cuales cada color se representa con 1, 2, 4, 8, 16, 24
bits respecrivamente[l]. El número de colores de la paleta depende de la calidad
y propósito de la imagen.
1.3 CONCEPTOS SOBRE COLORES
El ojo humano percibe el color dependiendo de la longitud de onda de la
luz que le llega. La onda electromagnética que contiene el espectro visible
completo se observa como una luz blanca pura y en su ausencia el ojo percibe el
negro. Las propiedades del color pueden ser definidas matemáticamente usando
alguno de los modelos de color existentes, cuatro son los más comunes [1]:
Hue, Saturation and Brightness (USB)
Red, Creen and Blue (RGB)
Cyan, Magenta, Yellow and Black (CMYK)
CJEL*a*b*.
1.3.1 El Modelo HSB (Hue Saturation and Brightness)
El modelo HSB, se basa en la percepción humana del color y se utiliza en
la transmisión de señales de televisión. En este modelo todos los colores son
definidos en términos de tres características fundamentales del color o sus
"dimensiones"[4J:
• El color o matiz (Hue\e es la longitud de onda de luz reflejada por un
objeto o transmitida a través de él.
1 Un byte está formado por 8 bits.
• La saturación (Saturation), también llamado crominancia, que es la fuerza o
pureza del color. La saturación representa la cantidad de gris en proporción al
color y es medida en porcentaje de 0% (gris) al 100% (completamente
saturado).
• La lununancia (Brightness\e es relativa al grado de iluminación u
oscurecimiento del color. La luminancia está determinada por la amplitud de
la longitud de onda del color. Usualmente se mide en porcentaje desde
0%(negro) al 100% (blanco).
1.3.2 El Modelo RGB (Red Oreen Blue)
En este modelo se hace uso del principio de colorimetría que establece
que cualquier color se puede obtener mediante la combinación ponderada de los
tres colores primarios: rojo (Red), verde (Green) y azul (Blue). Ya que los
colores primarios se combinan para crear el blanco, estos también toman el
nombre de colores aditivos (es decir que toda la luz es reflejada de regreso al
ojo). Los colores aditivos se usan para la iluminación, video, cámaras fumadoras
y monitores. Así por ejemplo el monitor de un computador crea los colores
mediante la emisión ponderada de luz a través de fósforos rojos, verdes y azules.
Es decir que el rango de colores en el espectro visible es representado
mediante el control de las intensidades de los componentes RGB. Cada uno de
estos tres colores primarios se representa con un número de O a 255 que puede
codificarse con 8 bits. Un color entonces está representado en tres planos por tres
bytes donde cada byte representa la cantidad de cada color primario necesario
para formar el color específico, por ejemplo para representar un rojo intenso el
plano R (rojos) podría tener un valor de 246, el plano G (verdes) 20 y el plano B
(azules) un valor de 30. Cuando los valores de los tres componentes son iguales,
el resultado es una variación de gris. Cuando el valor de cada componente es
255 el resultado es blanco puro y cuando el valor de cada componente RGB es O
el resultado es el negro puro.
1.3.3 El Modelo CMYK (Cyan, Magenta, Yellow, Blak)
Mientras el modelo RGB depende de una fuente de luz para crear el color,
el modelo CMYK se basa en las cualidades de absorción de las tintas sobre el
papel. Cuando la luz blanca golpea tintas transparentes, una porción del espectro
es absorbido, el color que no es absorbido es reflejado hacia el ojo.
En teoría los colores secundarios Cyan, Magenta y el amarillo (Yellow) se
combinan para absorber todos los colores y producir el negro; por esta razón
estos colores también se llaman colores substractivos. Los colores primarios y
secundarios son complementarios, es decir cada dos colores secundarios forman
un color primario y cada dos colores primarios forman un color secundario. Este
concepto se muestra en la Fig 1.1 que se presenta a continuación.
Colores Aditivos(RGB)
Colores Substractivos(CMYK)
Fig. 1.1: Colores Aditivos y Substractivos
Debido a que las tintas de impresión contienen algunas impurezas, estas
tres tintas producen en la práctica un café confuso y es necesario combinarlo con
una tinta negra para producir un negro verdadero. De aquí que el modelo CMYK
sea usado en un proceso de impresión de cuatro colores. En este proceso, el
color es reproducido por la combinación de cuatro tintas que son: Cyan,
Magenta, amarillo (Yellow), y el negro (K)1
1 La letra K es usada para evitar confusión, ya que en el negro, en inglés Black, la letra B se {resta aconfundirse con la B de Blue (azul).
1.3.4 El Modelo CIÉ L*a*b
Inicialmente el modelo de color CIÉ L*a*b se basa en el modelo
propuesto por la Comisión Internacional d'Eclairage (CIÉ) en 1931 como un
standard internacional para la medición de color. En 1976, este modelo fue
refinado y se lo nombró como CIÉ L*a*b.
El modelo L*a*b enfrenta el problema de la variabilidad en la
reproducción de color, lo que resulta del uso de diferentes monitores o artefactos
de impresión. El modelo L*a*b consiste de la Luminancia y de dos
componentes cromáticos: el componente "a" que varía desde el verde hasta el
rojo, y el componente "b" que varía desde el azul hasta el amarillo.
1.4 CONCEPTOS DE RESOLUCIÓN
1.4.1 Resolución de la Imagen
La resolución de la imagen se refiere al espaciamiento de los pixeles en
la imagen y es medida en ppi (pixels per inch). Si una imagen tiene 72 ppi,
significa que contiene 5184 pixeles en una pulgada cuadrada (722 = 5184).
Mientras mayor es la resolución, mayor el número de pixeles en la imagen
1.4.2 Resolución de Bit
La resolución de bit o profundidad de pixel es una medida del número de
bits de información contenida en un pixel. La resolución de bit determina la
cantidad de información de color que está disponible para cada pixel en la
imagen. Una mayor resolución de bit significa mas cantidad de colores
disponibles y una mayor exactitud en la representación de los colores en las
imágenes digitales. Por ejemplo si la resolución de bit es de 1 se está hablando de
una imagen binaria , un pixel con una profundidad de 8 tiene 28, o 256 posibles
valores.
1.4.3 Resolución y Tamaño de la Imagen
El tamaño de una imagen está dada por las dimensiones físicas de la
misma. Debido a que el número de pixeles de una imagen es determinado, al
incrementar el tamaño de una imagen decrece su resolución.
1.4.4 Resolución y Tamaño del Archivo
El tamaño del archivo de una imagen digital es proporcional a su
resolución, así pues los archivos con pixeles menos espaciados resultan en
imágenes con mayor detalle y lógicamente en archivos más grandes.
1.5 EL FORMATO GRÁFICO BMP (Bit Mapped Graphic)
En la actualidad, varias compañías o grupos han desarrollado sus propios
formatos gráficos. Por esta razón, hoy en día existe una amplia gama de formatos
gráficos, entre los más importantes tenemos: BMPfS// Mapped Graphic for
Windows), DIB (Device-Independent Bilmap), EMF (Enhanced Mataflle
Formal), GIF (Graphics Inlerchange Formal), J?G(Joinl Photographic Experts
Group), PCD (Kodack Photo CD), PCX (fórmalo para PC Paintbrush\G
(Portable Network Graphic), MAC (formato de Mac Paint\A (Truevission
Targa\ Image File Formal), WMF (Windows Metaflle Formal),
WPG (Word Perfect Graphic) entre otros. De estos los mas conocidos, y que son
soportados por la mayoría de las aplicaciones gráficas son posiblemente: PCX,
BMP,TIFFyJPG.
El formato BMP es un registro de los pixeles reales de una imagen en un
archivo, consumen gran cantidad de espacio de disco y de memoria. Sin embargo
son fáciles de cargar y representar en Windows1 constituyéndose en uno de los
formatos de imágenes más populares dentro de Windows.
Windows es el sistema operativo para PC's de Microsoft Corporation.
El programa didáctico desarrollado en esta tesis soporta únicamente
archivos gráficos tipo BMP. Es por ésta razón que se estudiará con suficiente
detalle los archivos tipo BMP, con el objetivo de entender como se recupera la
información granea en estos archivos.
1.5.1 Estructura del Formato BMP
Basándose en [2] se puede observar la siguiente estructura de los archivos
BMP.
OOhCabecera Principal
35 hl
36 hValores RGB de la
paleta de colores
Datos de la Imagen(mapa de bits)
Datos por filas comenzandopor la esquina inferior
izquierda
CabeceraLongitud = 54 bytes
Longitud = # de colores*4 bytes
Longitud dependiente de la imagen
Fig. 1.2 : Esctructura de un Archivo Gráfico BMP
Un archivo BMP como lo indica la Fig. 1.2 está conformado por: la
cabecera principal, la paleta de colores y los datos de la imagen.
1.5.1.1 Cabecera Principal
La cabecera principal tiene una extensión de 54 bytes y dentro de ella se
encuentra especificada la información necesaria para interpretar los datos de la
imagen. Su estructura se detalla en el cuadro 1.1.
ByteDec
0
2
6
10
14
15
18
22
26
28
30
34
38
42
A.(\0
Exten
2
4
4
4
1
3
4
4
2
2
4
4
4
4
A
4
Nombre del campo
Palabra clave
Longitud del archivo
Reservado
Inicio de datos
Reservado
No utilizado
Número de column.
Número de filas
Número de planos
Resolución de bit
Compresión
Resolución horizontal
Resolución Vertical
Colores de la Paleta
Descripción
"BM" 42 4D (hex) indica que esarchivo BMP
# de bytes del archivo
Uso desconocido
Localidad donde empiezan los datosde la Imagen.
Byte de valor 40 (28h)
Bytes de relleno (OOh)
Ancho de la imagen
Altura de la imagen
# de planos de color en la imagen
# de bits por pixel
Valor = 0 no utiliza compresiónValor = 1 Compresión BI RLE8Valor - 2 Compresión BI RLE4
# de bytes de datos de la imagen,(ancho por largo)
X pixeles por metro
Y pixeles por metro
Número de colores que apareceránen la paleta
Cuadro 1. 1 Estructura de la Cabecera principal de un Archivo Gráfico BMP [1)
10
1.5.1.2 La Paleta de Colores
Es un subcampo de la cabecera principal que siempre va a empezar en la
localidad de memoria 36h. Su longitud es variable y depende del número de
colores de acuerdo a la siguiente relación:
Longitud de la Paleta de Colores = 4*(número de colores) [bytes]
Cada color está determinado por 4 bytes: el primer byte es un delimitador
y su valor siempre es OOh, a continuación constan los valores RGB del color
asignado correspondiendo 1 byte a cada componente RGB. En una imagen en
escala de grises los componentes RGB son iguales y en el caso binario los
colores corresponden a los dos valores extremos en la escala de grises.
1.5.1.3 El Mapa de Bits
En el mapa de bits, los pixeles de la imagen se encuentran codificados fila
por fila. Existen dos consideraciones que deben tomarse en cuenta y que son [1]:
• Las filas de la imagen se leen de izquierda a derecha y de abajo hacia arriba.
• En el mapa de bits, para una imagen de 256 colores, a cada pixel de la imagen
se le asigna un valor el cual es un puntero que indica un lugar de la paleta de
colores, en este lugar está definido el color que se le asignará al pixel. En
cambio para una imagen binaria en el mapa de bits cada byte contiene la
información del color de 8 pixeles codificados en un carácter ASCII.
• El número de columnas de un byte de la imagen en el mapa de bits debe ser
de un ancho que sea múltiplo de 4. Si en la cabecera principal el campo que
indica el ancho de la imagen (número de columnas) no es un múltiplo de 4,
entonces se completan con el número necesario de columnas y se rellenan con
unos. Debe tomarse en cuenta que para una imagen binaria el número de
columnas de un byte es igual al valor que indica el campo del ancho de la
imagen dividido para ocho.
u
1.6 NOTACIÓN MATEMÁTICA DE UNA IMAGEN DIGITAL
Es importante comprender la notación matemática de una imagen digital.
Esto facilitará la comprensión de las fórmulas que en lo posterior se utilizarán.
Una imagen digital está definida por los valores de intensidad que toma
cada uno de los pixeles en un área determinada. Como se explicó en el punto
1.3.2 de esta tesis, en una imagen monocromática cada pixel puede tomar un
valor de O a 256 y en una imagen binaria sólo dos valores O para un pixel blanco
ó 1 para un pixel negro, convención que se adoptará de ahora en adelante. Para
ilustrar mejor esto considérese el siguiente ejemplo:
0 1 2 3 4 5 6 7 8 9
Fig. 1.3: Imagen digital Binaria
La imagen de la Fig. 1.3 es una imagen binaria bidimensional de 10x10
pixeles que representa al número 2. Su notación matemática en coordenadas
rectangulares sería una función f\x,y)1 en la que tanto x como y, pueden
tomar valores de O hasta 9. En el caso específico de la Fig. 1.3 se tiene que:
1 En esta tesis se usara muy a menudo el término función imagen, es decir una función f(x,y), querepresenta a una imagen.
12
f\x,y) = O para todos los valores de \x,y)
excepto para:
í(3,3);(4,2);(5,2);(6,3);(6,4);(5,5)= i
Con la intención de obtener un sistema con el cual el usuario está mas
familiarizado, se procede a redefínir las coordenadas de tal manera que exista un
pixel central al cual se asignará las coordenadas (0,0). Tal como se muestra en el
siguiente gráfico.
.5 -4 -3-2-1 0 1 2 3 4 5
Fig. 1.4: Coordenadas Rectangulares conOrieen Centrado
Otra forma de representar matemáticamente a una imagen es en
coordenadas polares en donde cada pixel está definido por la distancia p entre el
pixel y el origen y el ángulo 0 existente entre el radio vector p y el eje horizontal
en y = O, tal y como se indica en la figura 1.5.
13
y
Fig. 1.5: Representación de una imagenDiffital en Coordenadas Polares
La notación matemática de la imagen en coordenadas polares tiene la
forma:
donde: p=
1.7 TIPOS DE DEFORMACIONES GEOMÉTRICAS ENIMÁGENES DIGITALES
Una imagen digital puede sufrir ciertas deformaciones geométricas [4]
debido a varios factores como por ejemplo: el desplazamiento del objeto en el
plano de vista, el escalamiento1 de la imagen y la rotación de la imagen. Estos
tipos de deformaciones geométricas son de especial interés, ya que su cabal
comprensión facilitará el seguimiento de gran parte del resto de esta tesis.
1 El escalamiento de una imagen se refiere a variar el tamaño de una imagen, conservando las demáscaracterísticas de la imagen como son la forma y orientación.
14
1.7.1 El Desplazamiento
El desplazamiento es la traslación de una imagen f ( x , y ) a otra
ubicación en el campo de vista, resultando en la imagen f(x-xQ,y-y0), donde
X0 es el número de pixeles que la imagen es desplazada en el eje horizontal y yo
es el número de pixeles que la imagen es desplazada en el eje vertical. Así por
ejemplo, en la Fig. 1.6 se muestra que la imagen original se desplaza hacia la
derecha 2 posiciones y hacia abajo dos posiciones, resultando en la imagen
f(x-2,y <2).
- 5 - 4 - 3 - 2 - 1 0 1 2 3 4 5 - 5 - 4 - 3 - 2 - 1 0 1 2 3 4 5
f(x-2,y+2)
Fig. 1.6: Desplazamiento de una Imagen
1.7.2 El Escalamiento
El escalamiento de una imagen produce que ésta cambie de tamaño, sea
agrandándose o sea reduciéndose. La notación de una imagen escalada es:
f \px9ay) donde a = factor de escalamiento
sia>l => fyxx^Gy) es más pequeño que f(x,y)
f\ftx->Qy) es más grande que f(x,y)
15
El concepto de escalamiento se aclarará de mejor manera analizando el
siguiente ejemplo gráfico.
- 5 - 4 - 3 - 2 - 1 0 1 2 3 4 5 - 5 - 4 - 3 - 2 - 1 0 1 2 3 4 5
Imagen Original
b) /(05x,0.5y)Aproximando el escalamiento envalor absoluto al menor entero
- 5 - 4 - 3 - 2 - 1 0 1 2 3 4 5
c) /((X5r,0.5y)
Aproximando el escalamiento envalor absoluto al mayor entero
Fig. 1. 7 : Escalamiento de una Imagen Digital
16
En el caso a) de la Fig. 1.7 se tiene la imagen original donde:
P-*
- O En cualquier otro caso
En los casos de la Fig. 1.7 b) y c) tenemos la imagen escalada con un
factor de escalamiento de 0.5 y con diferentes criterios de aproximación. Se
tomará en cuenta que, el resultado de la multiplicación entre los valores de A: o
de y con el factor de escalamiento debe dar un valor entero, de tal manera que se
pueda ubicar en el plano coordenado, ya que éste está definido por valores
enteros de A- y de y. En caso que esta operación no resulte en un valor entero se
aproximará su valor absoluto al entero mayor mas próximo ó al entero menor
mas próximo. Para ver el efecto del factor de escalamiento y de las dos formas de
aproximar el escalamiento, se analizará los casos necesarios.
Se asume que fct(x,y) es la imagen escalada.
En la Fig. 1.7.b) se aplica el criterio de aproximación del valor absoluto
del producto del escalamiento al entero más próximo de menor valor absoluto,
por ejemplo: 1 .5 se aproxima a l y -1.5 se aproxima a -1.
como /(o,o) = 1 ^> /á(o,o) =
/(-0.5,0)
/(0.5,0)
/(0,0.5), , como
/(0-0.5)
/(0.5,-0.5)
/(- 0.5,0.5)
17
0,o)
(-u)
f(-2,-2)
Siguiendo con el mismo procedimiento se llega a obtener como resultado
la imagen mostrada en la Fig. l.T.b)
En la Fig. l.T.c) se aplica el criterio de aproximación del valor absoluto
del producto de escalamiento al entero más próximo de mayor valor absoluto, por
ejemplo: 1.5 se aproxima a 2 ; -1.5 se aproxima a -2.
(x,y) = (0,0) => f(05x,05y) = /(0,0) como /(o,0) = 1 => /a(0,o) = 1
[(-1,0)
0,0)
(olí) A05*'0-5^) =(l,-l).(-1,1)
í/(- 0.5,0)
/(0.5,0)
/(0,0.5)/ v como-
/(0.-05)/(0.5,-0.5)
/(- 0.5,0.5)
X- 1,0) = o/(i,o) = o/(o,0 = o/(o,-i) = o/0,-0 = 0
./(-i,i) = o
,2\) =* f(o.5X,0.5y) = j/(~/'^ ~ l(2,2) 7 V ' ^ 1 /(!,!) = 1
,\ f(Q5x,Q.5y) H / \(1,2) y v ' *' \0
= _ . / \=> fa(x,y) = 1= I v '
Siguiendo con el mismo procedimiento se llega a obtener la imagen de la
Fig. 1.7.c)
18
Como se ha visto, el escalamiento de una variable puede resultar a
menudo en valores fraccionarios, dichos valores se deben aproximar a valores
enteros para así poder relacionar el nuevo pixel con la imagen original. Es por
esta razón que la mayoría de las veces, como se puede observar en la Fig. 1.7.b)
y Fig. 1.7.c), la imagen original difiere un poco, en cuanto a la forma misma,
respecto de la imagen escalada. Este problema se minimiza utilizando una
resolución mayor para representar la imagen.
Es posible escalar una imagen con diferentes factores en las dos
direcciones del plano. Aunque esto produciría una pérdida parcial de la
información original, puede ser de utilidad en algunas aplicaciones. En este caso
tendríamos:
f(ax9by)j a
1.7.3 La Rotación
Al igual que en el escalamiento, la rotación de una imagen digital produce,
en la mayoría de los casos, una distorsión de la figura original. Esto se debe a que
al girar a una imagen un cierto ángulo, las nuevas coordenadas de los pixeles
pueden tomar valores fraccionarios, teniéndose que aproximar éstos a valores
enteros con el propósito de poder asignarle alguno de los pixeles existentes en el
campo de vista.
Tratar el problema de la rotación es más sencillo en coordenadas polares.
En este caso una imagen /(/?,#) que es afectada por una rotación un cierto
ángulo a resulta en la función:
f(p,0-o)
19
Hay que tomar en cuenta que en este caso, la rotación se produce con
respecto al origen, coordenadas (0,0), del plano donde esta expresada la imagen.
Físicamente es más fácil determinar la rotación de un objeto con respecto a su
centro de masa1. Lo ideal sería hacer coincidir el origen del plano de vista con el
centro de masa del objeto.
A este tipo de rotación, en la cual un objeto o una imagen giran un cierto
ángulo con respecto del origen o su centro de masa se le da el nombre de
Rotación propia.
La rotación impropia, en cambio es aquella en la cual se produce una
reflexión de la imagen original, en otras palabras de una rotación impropia
resulta una imagen de espejo.
En los siguientes ejemplos se puede apreciar claramente estos conceptos
de rotación.
B a(a) (b) (c) (d) (e)
a) Imagen originalb) Imagen rotada 30°positivos (en sentido antihorario)c) Imagen rotada 270 positivos (en sentido antihorario)
d) Rotación Impropia respecto del eje verticale) Rotación Impropia respecto del eje horizontal
Fig. 1.8: Ejemplos de Rotaciones de una Imagen
1 El concepto de centro de masa de una imagen es aquí una analogía del concepto físico de centro de masade un objeto, tal como se explica en el tema 1.8.1.
20
1.8 NORMALIZACIÓN DE IMÁGENES DIGITALES, RESPECTODEL DESPLAZAMIENTO Y EL ESCALAMIENTO
Este tema será de gran ayuda para el estudio de extracción de
características de imágenes digitales, ya que nos indica una técnica general de
como lograr obtener la invarianza al desplazamiento y al escalamiento en una
imagen binaria. Esta, técnica se puede utilizar en cualquiera de los métodos de
extracción de características de imágenes digitales y de hecho en este trabajo se
los ha aplicado tanto para los descriptores basados en polinomios ortogonales
como para los momentos invariantes.
1.8.1 Concepto del Centro de masa de una Imagen Digital.
El concepto de centro de masa de una imagen digital es usado con
frecuencia, ya que éste ayuda en la comprensión de la obtención de invarianza a
ciertas deformaciones geométricas. Deberá sin embargo tenerse claro que este
concepto es una analogía de la realidad ñsica de un objeto.
Centro de Masa.-Corresponde al punto en donde se puede considerar
concentrada toda la masa de un objeto para facilitar el estudio de su movimiento.
Teniendo en cuenta que no se está tratando con objetos físicos, sino con
imágenes, aquí se asume que la masa de un pixel es el valor de intensidad en la
escala de grises que éste tiene. En una imagen binaria, el objeto representado se
puede considerar homogéneo, ya que todos los pixeles que lo forman tienen el
valor de 1. El centro de masa es llamado también con el nombre de centro de
gravedad o centroide.
1.8.2 Normalización Respecto del Desplazamiento
La invarianza al desplazamiento implica que el sistema computarizado no
marque diferencias entre imágenes digitales aunque su ubicación en el campo de
vista difiera.
21
Si se considera un objeto cualquiera, una de las propiedades que es
inherente exclusivamente a su distribución física de materia, sin importar su
ubicación, es el centro de masa. Si se asume que la masa de un pixel es su valor
de intensidad en una imagen en escala de grises, entonces el centro de masa de
un objeto representado digitalmente dependería únicamente de su forma y de los
valores de intensidad de cada pixel que lo forman. De aquí que el centro de masa
de una imagen digital sea independiente de su ubicación y si se hace coincidir el
centro de masa con un punto arbitrario único, por ejemplo el pixel central del
plano de vista, obtendremos siempre la misma imagen. Este concepto se ilustra
gráficamente en la Fig. 1.9.
Centro de masa de la figura
-5 -4 -3-2-1 O 1 -3-2-1 0 1 2 3 4
\o del plano
0 1 2 3 4
centro de masa
Fig.l. 9: Obtención de Invarianza al Desplazamiento
22
Después de este proceso, no importa que ubicación inicial tenía la imagen,
ya que se la ubicará siempre coincidiendo su centro de gravedad con el centro del
plano. Matemáticamente esto se manifiesta en las siguientes fórmulas:
El pixel que corresponde al centro de gravedad de la imagen estará
determinado por,(^, y) en donde [6]:
JC = m'° , y = W°-i
woo ' »to
(1-1)
Donde :
• ntoo es el momento geométrico de orden cero y representa la suma del
valor de todos los pixeles no nulos que tiene la imagen. En una
imagen binaria mM representa el número total de pixeles no nulos de la
imagen, y esta dado por:
(1-2)
son los momentos geométricos de primer orden y están
dados por las siguientes relaciones[6]:
x y x y
(1-3)
Físicamente m¡0 / nioo representa la coordenada en x en donde la
figura alcanza el equilibrio suponiéndose que la figura está apoyada en
una lámina muy delgada la que tiene contacto en todos los puntos en
el eje>> de la figura en ese punto específico de x..
Físicamente mn / meo representa la coordenada en y en donde la
figura alcanza el equilibrio suponiéndose que la figura está apoyada en
una lámina muy delgada la que tiene contacto en todos los puntos en
el eje x de la figura en ese punto específico dej.
23
Por lo que la imagen f(x,y) normalizada con respecto al desplazamiento
viene dada por;
(1-4)
1.8.2 Normalización Respecto del Escalamiento
Para normalizar una imagen respecto del escalamiento, se tratará de
asignar un tamaño único que debe corresponder a una forma específica. Es decir
se quiere encontrar un proceso, por medio del cual dos figuras que tengan la
misma forma aunque sean de diferente tamaño, terminen por ser iguales incluso
en el tamaño. Para imágenes binarias' se puede afirmar que el número de pixeles
que dan forma a la imagen determinan el tamaño de la imagen. Si se decide
representar a estas formas con un número predeterminado de pixeles, se está
determinando un tamaño único para una misma forma.
Ya que el momento geométrico de orden cero moo en una imagen binaria
representa el número total de pixeles que forman la imagen, para lograr la
invarianza al escalamiento se tiene que agrandar o reducir el tamaño de cada
objeto de tal manera que el momento geométrico de orden cero de dicha figura
sea igual a un valor predeterminado.
Sea f(ox,ay) la versión escalada de la función imagen /(*,>>); mM es el
momento geométrico de orden cero de /(x,_y) que equivale a la suma del
número total de pixeles con valor diferente de cero que tiene la imagen; y m'
el momento geométrico de orden cero de /(ox^oy) .
1 La extracción de características de imágenes se ha aplicado experimcntalmcnte a imágenes binarias enesta tesis, sin embargo la mayoría de sus conceptos se pueden aplicar sin problema a imágenesmonocromáticas y algunos otros casos se pueden adaptar estos conceptos con facilidad
24
Por facilidad para esta deducción se asume que tanto f(x,y) como
f(ax,ay) son funciones imagen continuas, de tal manera que:
X V
(1-5)
sea : u = ax => du = adx
v = ay => dv = ady
"*'«> = JJ/(«.V)dudv
a2U V
= aU V
= a~2mw
(1-6)
Como lo que se quiere es que m'm = /? = cte , entonces hagamos que :
a =ft
Sustituyendo en (1-6) y sea que, se tiene que:
25
Como conclusión, puede decir que para obtener la invarianza al
escalamiento, hay que transformar la función imagen original f(x,y) en una
nueva función f(ax,ay), con :
= constante
En resumen una función imagen, f(x,y), puede ser normalizada con
respecto del escalamiento y el desplazamiento, transformándola en la función :
(1-7)
donde : (X, y] representa el centroide del objeto
ft(1-8)
En la tabla 1.1 se muestra los valores de los momentos geométricos de
orden cero y primer orden, además de las coordenadas del centro de gravedad de
dos imágenes y sus versiones afectadas por el desplazamiento y el escalamiento a
la vez. Estos valores se muestran en dos partes: antes de ser normalizadas al
escalamiento y al desplazamiento y después de ser normalizadas.
26
«1- 1£ E£§ IH
^ 1
S 145 '"3
i ¡& zB z
ntoo
W07
fttio
(*,y)moo
MOÍ
MÍO
fry)
2
186
-931
-2306
(-5 ; -12)
159
32
6
(0;0)
¿
832
1742
-2698
(2 ; -3)
161
28
35
(0;0)
C
116
949
780
(8; 7)153
0
-76
(0;0)
*700
6422
-5073
(9 ; -7)
147
15
11
(0;0)
Tabla 1.1: Efectos en los Momentos Geométricos de orden cero y primer orden paraImágenes Normalizadas al Desplazamiento y al Escalamiento
Teóricamente para una imagen binaria normalizada al escalamiento y al
desplazamiento mw debe tener el mismo valor para una misma forma y m0¡, m¡0
deben ser cero. En la práctica el escalamiento de una imagen digital produce
alguna distorsión en las imágenes originales y muchas veces no es posible ubicar
exactamente el centro de gravedad de una imagen digital en el origen. Por esto,
para el caso real ni()0 es aproximadamente el mismo para imágenes escaladas, si
éstas están normalizadas al escalamiento; y, m0i, m¡o tiene valores pequeños
para una imagen normalizada al desplazamiento en comparación con el valor de
una imagen no normalizada.
27
Referencias:
[1] Héctor Freiré, " Aplicación de Redes Neuronales en la Compresión de
Imágenes", E.P.N., Quito-Ecuador, 1996.
[2] Gustavo Aguilar, "Filtros Morfológicos de Imágenes", E.P.N. Quito-
Ecuador, 1995
[3] X-Rite, "The Color Cuide and Glossary", X-Rite Incorporated, 1996
[4] Ing. M. S. Jiménez, "Notes On Nonlinear Image Processing", U.T.A.,
Texas-USA, 1993
[5] Adobe Photoshop 3.0 User Guide 1994, Adobe Systems.
[6] Alireza Khotanzad, "Classifícation of Invariant Image Representations
Using a Neural Network" , IEEE Transactions on Acustic Speech and
Signal Processing., vol. 38, No. 6, pp 170-179, 1977.
28
2.1 INTRODUCCIÓN A LA EXTRACCIÓNCARACTERÍSTICAS DE IMÁGENES DIGITALES
DE
En un sistema general de reconocimiento computarizado de objetos hay
que pasar por varias fases de procesamiento de datos, como se indica en el
siguiente diagrama.
de la imagen
Objeto
Preprocesa miente
Eliminación de Ruido
r- . • '
__ . , - _ .Detección de Bordes
>
n ^ • - j
» Características de la »lma<M»n " Clasificación
Fig2.1 :Fases en el Reconocimiento Computarizado de Objetos
La primera fase es la adquisición de la imagen en la cual una escena es
convertida en una matriz de números que pueden ser manipulados por un
computador. La segunda fase es el preprocesamiento el cual involucra: remover
ruido y mejorar la imagen, segmentar la imagen en sus regiones útiles para ser
analizadas separadamente, si es necesario se pueden extraer los bordes de la
imagen. Estas dos primeras fases, aunque importantes, no serán tratadas con
detenimiento, pues no corresponden al tema central propuesto en esta tesis y
además existen ya un buen número de trabajos de tesis que tratan sobre estos
temas con la suficiente profundidad.
La tercera fase es la extracción de características de la imagen, en la cual
ésta es representada por un conjunto de características numéricas con el objetivo
de remover datos redundantes de tal manera que este conjunto de características
numéricas posea la mayor parte de la información útil de la imagen y así facilitar
la posterior etapa de clasificación.
30
La cuarta y última fase de un sistema de reconocimiento de patrones es la
clasificación, en la cual a la imagen/objeto desconocido se le asigna una etiqueta
de pertenencia a una clase, después de examinar las características extraídas y
comparándolas con las características de una representación de la clase que el
clasificador ha aprendido durante una etapa de entrenamiento.
En cada bloque de la Fig. 2.1 se trata de eliminar la información que no es
útil y la extracción de características de la imagen no es la excepción. Es
pertinente en este momento explicar que la extracción de características de una
imagen digital resulta en la obtención de un conjunto de valores numéricos a los
cuales se les dará el nombre de descriptores, término que desde ahora en adelante
será extensamente utilizado. Así por ejemplo, cuando se analice la extracción de
características de una imagen haciendo uso de las técnicas de Fourier, se hablará
de los Descriptores de Fourier, o cuando hablemos de la extracción de
características de imágenes usando los polinomios ortogonales de Zernike se
puede decir que se está hablando de los descriptores de Zernike aunque
específicamente éstos toman el nombre de momentos de Zernike.
El cálculo de los descriptores de una imagen digital es una etapa
importante en el proceso global del reconocimiento de objetos, y la mayor parte
de este capítulo se dedicará a su estudio1.
Los métodos existentes para extraer características de una imagen digital
son numerosos, y, debido a la importancia que este tópico tiene en la actualidad,
continuamente se vienen desarrollando nuevos métodos. En esta tesis se estudiara
4 métodos, que se señalan a continuación:
1 Debido a la importancia de la detección de bordes en la obtención de descriptores de Fourier. se toparábrevemente este tema antes de iniciar el estudio de los descriptores de Fourier.
31
• Los Descriptores basados en momentos geométricos que es uno de los
primeros intentos en el campo de la extracción de características de imágenes.
• Un método basado en polinomios ortogonales, que son una mejoría de los
anteriores. En este caso se analizará los Momentos de Zernike.
• Dos métodos basados en Técnicas de Fourier a los que en general se los
llamará como Descriptores de Fourier.
Con esto se pretende dar un panorama claro de la extracción de
características de imágenes: sus características, sus propiedades, como obtenerlas
y sus aplicaciones son algunas de las preguntas que serán respondidas en este
capítulo.
2.2 CARACTERÍSTICAS DE LOS BUENOS DESCRIPTORES
Para la aplicación en el reconocimiento de objetos, los descriptores de
imágenes deben cumplir con ciertas características, de tal manera que, mediante
su uso se pueda discriminar, diferenciando entre objetos diferentes y asociando
objetos parecidos, permitiendo la clasificación en categorías predeterminadas.
Estas características son las siguientes [1].
• Pequeña Separación Intraclase.- Es decir, que figuras apenas diferentes
con características generales similares, deben tener descriptores con valores
numéricos cercanos.
• Gran Separación Interclase.- Figuras de diferentes clases con
características generales distintas, deben tener descriptores con valores
numéricos diferentes y alejados.
32
Adicionalmente para sistemas de reconocimiento flexibles se debe
considerar que éste pueda ser capaz de reconocer un objeto a pesar de su
tamaño orientación y localización en el campo de vista. Esto se traduce en
propiedades de invaríanza de los descriptores al escalamiento, rotación y
traslación respectivamente.
2.3 DESCRIPTORES BASADOS EN MOMENTOSGEOMÉTRICOS
Los momentos geométricos son la proyección de una imagen f(x,y) en el
monomio1 xp yq . Los descriptores basados en momentos geométricos son
entonces un conjunto de funciones no lineales definidas en los momentos
geométricos de la imagen.
Para una función continua f(x,y) el (p + q)ésimo momento geométrico está
definido por [2]:
QO
mpi = í ¡x"y'lf(x,y)dxdy— 00
p,q Enteros tal que: p > 0 , q > 0 (2-1)
Para una imagen digital bidimensional de M x N pixeles donde x puede
tomar valores de O hasta M-1 e y puede tomar valores de O hasta N-1. Las
integrales pueden ser reemplazadas por sumatorios en donde los límites van
desde O hasta M-1 en A: y de O hasta N-1 en y. Por otro lado las derivadas dxdy
en una imagen digital corresponden a intervalos AxAy los cuales; debido a que
la imagen es mapeada en forma ordenada y secuencial, corresponden al valor de
un pixel; pueden reemplazarse por la unidad. Consecuentemente el (p+q)ésimo
momento geométrico para una imagen digital se define como:
1 Monomio.- Expresión matemática que consta de un solo término.
33
A/-1 AM
parap, q = 0,1,2.... (2-2)
Con la idea de obtener un sistema mas cómodo para el usuario, y además,
guardar un rango dinámico de mpq consistente para imágenes de diferentes
tamaños, se hará que el plano de la imagen sea un cuadrado de L x L donde L es
el mayor entre M y N, esta imagen será mapeada hacia un cuadrado definido
por x,y = -l,....,0,....l , esto implica que la ubicación de los pixeles ya no
será dada por números enteros, en cambio podrán ser ubicados por números
reales fraccionarios.
Esto cambia la definición de los momentos geométricos mp^ entonces se
tiene que:
i i
x=-\, q - 0,1,2....
x,y son números Reales tal que -1 <, x,y < 1
(2-3)
2.3.1 Descriptores Basados en Momentos Geométricos Invariantesal Desplazamiento, Escalamiento y Rotación.
Como se explicó en el tema 2.2 de esta tesis, para un sistema de
reconocimiento versátil, los descriptores deben poseer propiedades de invarianza
a la traslación, escalamiento y rotación. En este punto se verá como se puede
hacer que los descriptores basados en momentos geométricos cumplan con estas
propiedades.
2.3.1.1 Invarianza al Desplazamiento
La invarianza al desplazamiento implica que de un mismo objeto se deben
extraer los mismos descriptores, sin importar la ubicación del objeto en el campo
de vista. Una de las formas más fáciles de solucionar este problema es encontrar
el momento central de la imagen (centro de masa) y reubicar la imagen en el
plano, de tal manera que el centro de masa de la imagen coincida con el pixel
central del plano, tal y como se explicó en la sección 1.8.1 de esta tesis.
Este proceso se lo puede realizar previo al cálculo de los descriptores,
aplicando sobre la imagen original las transformaciones dadas por las ecuaciones
(1-1), (1-2), (1-3), (1-4) y luego calcular los momentos geométricos con la
ecuación (2-3), ó se lo puede aplicar directamente al concepto de momentos
geométricos con lo cual podríamos definir el momento central //w [1] tal que:
171 _ fftdonde: x = — ---, y — -~
m m"*oo "*oo
(2-4)
2.3.1.2 Invarianza al Escalamiento
En muchas aplicaciones de reconocimiento de objetos es importante que
figuras de formas iguales, pero de diferentes tamaños, sean reconocidos y
clasificados en la misma clase.
Al igual que en el caso del desplazamiento, para alcanzar este objetivo se
puede aplicar las transformaciones de normalización de una imagen digital al
escalamiento y luego calcular los momentos geométricos como indica la
35
ecuación (2-3). Por otro lado, sería más eficaz aplicar este proceso directamente a
la definición de los momentos geométricos.
Alireza Khotanzad et al. [ 1 ], proponen normalizar los momentos
geométricos invariantes al desplazamiento, para que sean además invariantes al
escalamiento, definiendo los momentos geométricos r¡pq.
A» 2
(2-5)
Desarrollando esta expresión usando (2-1), y asumiendo que la función
imagen está escalada por un factor a, los momentos geométricos propuestos se
verían de la siguiente forma:
\]\f(ax,ay)dxdy1+
Basados en los apuntes de Ing. Jiménez [3], se tiene que para deformación
por escalamiento de una imagen se cumple que:
fd(x,y) = f(a
donde /d quiere decir la función de una imagen deformada
Entonces, sea: u = ax =^> x = u/a ^> dx = du/a
v ^ ay =^> y = v/a => dy = dv/a
i Debido a que las propiedades de las integrales y las derivadas son más fáciles de manejar, se utilizará en las
demostraciones las fórmulas dadas para una imagen continua, ya que éstas utilizan integrales y derivadas. Las conclusiones
obtenidas para las imágenes continuas se pueden generalizar para las imágenes digitales.
36
De donde: dxdy - dudv/a
Reemplazando en (2-6) obtenemos:
1
(a2) 2 \\u>v< f(u,v)dudv_„ M _ _ J J~~ " "~"~
a
Simplificando se observa que:
w p V*/(M, v)dudv
77 =
(2-7)
Como se puede apreciar, las variables u, v no están escaladas y la
expresión desarrollada de los momentos geométricos no contiene ningún factor
que afecte a sus valores. Por lo tanto se puede decir que:
?]pq es invariante al escalamiento. Además '//í(/ es calculado a partir
de bloques invariantes al desplazamiento. De modo que Hpl{ es
invariante al escalamiento, y además al desplazamiento.
En la tabla 2.1 se muestran valores de ^ para la imagen tres.bmp
afectada por el desplazamiento y escalamiento en varios factores. Nótese que
para cualquier imagen T¡QQ es siempre igual a uno, y que r¡¡0 yrjoi tienen valores
muy pequeños, ya que teóricamente deben ser cero. Por otro lado se puede
observar que el desplazamiento no produce ninguna distorsión de la imagen, ya
37
que los valores de los momentos geométricos son exactamente los mismos para
la imagen original y su versión desplazada. Se esperaría igual comportamiento
para las imágenes escaladas, ya que los momentos geométricos r¡m son
invariantes al desplazamiento y al escalamiento, sin embargo esta deformación
geométrica genera distorsiones en la forma original de las imágenes, las cuales
repercuten en los valores de los momentos geométricos mas en unos que en
otros. Se hará un análisis mas detallado de las repercusiones de las
deformaciones geométricas en los valores de los momentos geométricos
invariantes en el capítulo IV.
'/(O.O)
VíM)
V«u>
Tfwi)
Vi'.»)
7<U>
V(u>
tfo»
V(w»>tfo.0
V™
*7oj)
V(3.0)
V<3,1)
>7íM>
7<M»
3tres
Original
1.000
0.041
0.428
0.083
-0.013
0.075
-0.015
0.046
0.091
-0.021
0.038
-0.004
-0.025
0.022
-0.010
0.010
3
desplazado
1.000
0.041
0.428
0.083
-0.013
0.075
-0.015
0.046
0.091
-0.021
0.038
-0.004
-0.025
0.022
-0.010
0.010
3
escalado
a=0.5
1.000
-0.044
0.361
-0.024
0.004
0.056
-0.018
0.037
0.088
-0.028
0.035
-0.013
-0.024
0.020
-0.012
0.010
3Escalado
a=1.4
1.000
-0.008
0.412
0.013
-0.020
0.070
-0.028
0.045
0.092
-0.027
0.040
-0.012
-0.027
0.023
-0.014
0.012
3escalado
a=2
1.000
-0.002
0.372
0.024
-0.015
0.065
-0.018
0.036
0.082
-0.020
0.031
-0.007
-0.021
0.018
-0.009
0.008
Tabla 2.1: Momentos Geométricos rj para Imágenes Desplazadas y Escaladas.
2.3.1.3 Invarianza a la Rotación
La obtención de Momentos Geométricos invariantes a la rotación se
convierte en una tarea compleja, la cual requiere de la ayuda de variadas
herramientas matemáticas. La obtención de momentos geométricos invariantes a
la rotación está fuertemente ligada a la teoría de invariantes algebraicos y Ming-
Kuei Hu [4] propone un método que es tratado en el Anexo A.
Siguiendo este procedimiento se llegan a obtener los momentos
geométricos invariantes a la rotación y si además en vez de usar los momentos
geométrico centrales p,pq se usan los momentos geométricos rjpq se obtiene los
momentos invariantes propuestos por Sahibsingh A. Dudani en [6] y que son
invariantes al desplazamiento, escalamiento y rotación. Así:
+ (3rj2I -
1 (rj2i + W2
05 = (riso-3*112) (riso + rjiz)f(r/3o + r/¡z)2 - 3(r¡2l \03)2¡
- rjo3).(ri2i + ríos) [3(rj30 + r¡f/ - (rj2¡ -f r¡QÍ)2]
- (r¡2l + rjQ3)2 / + 4?]n(r¡3o + r¡12) (rj2¡ + rj03)
(2-8)
39
Los momentos geométricos invariantes a la rotación $,, son construidos a
partir de los momentos geométricos T]pq, los que son invariantes al escalamiento y
al desplazamiento Por lo tanto los momentos geométricos </>„ son invariantes al
desplazamiento, al escalamiento y a la rotación. Aquí se han presentado 6 de
estos momentos, los más simples; sin embargo otros momentos $,, de mayor
complejidad, pueden ser deducidos como se indica en el Anexo A.
2.4 DESCRIPTORES BASADOS EN POLINOMIOSORTOGONALES
Hasta ahora se ha visto como extraer descriptores de imágenes digitales a
partir de los momentos geométricos, los cuales son una proyección de la imagen
digital en el monomio x?y9. Desafortunadamente la base1 xf yq no es ortogonal.
Consecuentemente, los descriptores definidos en las funciones de momentos
geométricos mp^ no son óptimos en cuanto a información redundante y otras'j
propiedades de utilidad que podrían resultar del uso de bases ortogonales [2].
En está sección se considera aproximar una imagen digital bidimensional
por una expansión en términos de polinomios ortogonales. Los coeficientes de
esta expansión serán denominados como Momentos Ortogonales. Aqui se
utilizará los polinomios ortogonales de Zernike.
1 Base.- Un conjunto finito S de elementos de un espacio lineal V se llama base finita de V sí S esindependiente y genera V. El espacio V es de dimensión finita si tiene una base finita. De otro modo V esde infinitas dimensiones [5].Espacio Lineal.- Brevemente un espacio lineal es un conjunto de elementos de naturaleza cualquiera
sobre el que pueden realizarse ciertas operaciones llamadas adición y multiplicación por números[5].2 Base Ortogonal.- Una base es ortogonal si sus elementos son ortogonales entre si. Dos elementos sonortogonales si su producto interior es igual a cero[5].
40
2.4.1 MOMENTOS DE ZERNIKE
En [I], se introduce un conjunto de polinomios ortogonales complejos
sobre el interior del círculo unitario, a los que se les ha dado el nombre de
polinomios de Zernike. Existen (n+l).(n+2)/2 polinomios de Zernike
linealmente independientes de grado menor a n. Estos polinomios pueden ser
más fácilmente escritos en coordenadas polares, donde tienen la forma:
(2-9)
Donde :
n Entero positivo o cero
m Enteros positivos y negativos que cumplan con:
n- m , es par y, |/n| < n
p longitud del vector desde el origen hasta el pixel (x,y)
0 ángulo entre el vector p y el eje de las x en sentido
horario.
Rnm(p) Polinomio radial definido como [I]:
R.
s\n + m
X f
— s2
\ — m \ s
2
(2-10)
Estos polinomios son ortogonales y satisfacen la relación de ortogonalidad
[5], entonces:
41
yo o
donde K™ (jr,_v) es el conjugado de V^ (x,y) (2-11)
2 2
con : ^flfr = i n[O ofro
Los descriptores de Zernike son la proyección de la función imagen
sobre esta base de funciones ortogonales. Los descriptores de Zernike de orden n
con repetición m para una función que represente una imagen continua, /(x,y),
que se encuentra dentro del círculo unitario están dados por[l] :
n
(2-12)
Para una imagen digital, las integrales son reemplazadas por sumatorios,
de tal manera que:
(2-13)
Para calcular los momentos de Zernike de una imagen dada, el centro de la
imagen es tomada como origen y las coordenadas de los pixeles de la imagen son
mapeadas en el rango del círculo unitario x2 + y2 < 1 . El proceso se ilustra mejor
con la siguiente figura:
42
Centro de
Fig2. 2 Momentos de Zernike en el Círculo Unitario
Una función f(x,y) definida sobre el círculo unitario puede ser aproximada
en términos de un número finito de polinomios de Zernike según la siguiente
expresión[7]:
N n
/i=0 m=~n
donde: n- m es par (2-14)
En la Fig. 2.3 se muestra la reconstrucción de imágenes usando diferente
cantidad de Momentos de Zernike. Se puede notar una gran distorsión en la
imagen reconstruida respecto de la imagen original.
43
Imagen Reconstrucción Usando Momentos de Zernike hasta:Original 2d. Qrden 4to Ordcn 8vo Orden I6,0 Qrden
Fig. 2.3: Reconstrucción de Imágenes Usando Momentos de Zernike
2.4.1.1 Invarianza a la Rotación en los Momentos de Zernike
Considérese una imagen f(x,y), esta función expresada en coordenadas
polares vendría dada por : f(p,&). La rotación de una imagen en un ángulo a se
refleja de la siguiente manera.
f(p,0-a) (2-15)
Los descriptores en coordenadas polares para dicha imagen vendrían
dados por:
(2-16)
sea : 9 - a - 0' dG = d6'
rtO -a
f(p,ff)pdffdpO -a
Como se aprecia en (2-17), la rotación de una imagen produce un
desplazamiento en la fase de los momentos de Zernike de la imagen no rotada,
mientras que el módulo de dichos momentos no se ve alterado por la rotación.
Entonces, se puede tomar como momentos invariantes a la rotación a la
magnitud de los descriptores de Zernike.
Nótese que [1]:
(2-18)
Por lo cual, para obtener momentos de Zernike invariantes a la rotación,
es posible concentrarse sólo en los valores positivos de m.
45
2.4.1.2 Invarianza al Desplazamiento y al Escalamiento en losMomentos de Zernike
Para obtener además de la invarianza a la rotación, invarianza al
desplazamiento y al escalamiento, tenemos que transformar la función imagen
f(x,y)en g(x,y), tal como se indica en (1-7), antes de calcular los descriptores
de Zernike:
, y) = f(x + ¿*x, y + ay)donde : (je, y) representa el centroide del objeto
El proceso de normalización respecto del escalamiento y el
desplazamiento afecta a dos de los descriptores de Zernike: lAool tendrá siempre
el mismo valor para todas las imágenes y |A|J será siempre igual a cero [1].
Estos hechos se reflejan en el siguiente desarrollo:
En el caso de
de (14)
(2-19)
46
Para una imagen normalizada respecto del escalamiento rn^ - /3
71
(2-20)
En el caso de
de (2-10) Rn(p) p
Entonces:
<1y
pcos(O) = x
ReKl=i(2-21)
Por otro lado:
psin(6) =y
Im[4i] = -
(2-22)
47
que:
Para una imagen normalizada respecto del desplazamiento se cumple
O
Entonces:
Au = 0
En la tabla 2.2 se muestra los Momentos de Zernike Invariantes al
escalamiento y al desplazamiento hasta el cuarto orden de la imagen tres.bmp, de
sus versiones resultantes de deformaciones al escalamiento y rotación y la
imagen cuatro.bmp. Nótese que para imágenes normalizadas al desplazamiento y
al escalamiento, Teóricamente: ¡Agol"pfic= ¡50/3.1415 47.74 y //!/// 0.
Se puede observar que la distorsión producida por la rotación afecta en forma
importante a los momentos de Zernike. Otro hecho relevante de la tabla 2,2 es
que la fase de los momentos A^, con n par es siempre nula.
Mom
ento
sde
Zer
nik
e
•*4<o.o>
-^ (1.1)
•<4<i,o)
•<4<2,2)
A (3,1 >
-^ (3,3)
• <4J»
•<4(4.2)
•<4 (4.4)
3
Tres
Original
4l.699[OJ
4.531 [1.256]
4.285 [0]
34.967 [0.380|
22,643 [0.246|
10.715(1.1281
16.658 [0]
15.5131-1.552]
9.635 [0.942]
3
Escalado
a=0.7
39.152 [0]
4.590 [1.169]
9.715 [0]
31.525(0.271]
21.531 [0.117]
8.963 [0.938]
23.880 [0|
16.300 [-1.502]
10.05211.104]
N?
Rotado
30°
48.383 (0|
0.789 [-0.632]
58.857 [O]
25.72111.470)
11.603 [1.131]
9.8321-0.041]
9.991 lOJ
49.535 [1.329]
6.650 [-0.277]
?Cuatro
Original
44.840 JO]
8.610(1.341]
41.265[0]
7.691 j-0.2831
6.809 Jl. 136]
12.663 [0.647]
6.045 [0]
19.088 [0.926]
5.477 (0.297]
?Rotado
40°
46.470 [0]
1.408(0.202]
78.216(0]
10.027(1.470]
4 172[-1.379]
10.615(0.1891
33.512(0]
11.84710.984]
6.870 [0.058]
Tabla 2. 2 : Momentos de Zernike para Imágenes con deformadnos geométricas e imágenesdiferentes.
48
2.5 DESCRIPTORES BASADOS EN TÉCNICAS DE FOURIER
En esta sección se analizarán algunas opciones para obtener
descriptores, mediante el uso de la poderosa herramienta matemática de las
series de Fourier.
Este es un método que, a diferencia de los vistos anteriormente, usa
sólo el contorno del objeto para el cálculo de los descriptores. Esto lo limita a
aplicaciones en donde un objeto puede ser descrito solamente con su contorno,
como por ejemplo, los caracteres. Este hecho sin embargo, reduce en gran
medida el tiempo de procesamiento, ya que el número de pixeles que
conforman el contorno del objeto es mucho menor que el número de pixeles
que se tiene que procesar con los métodos de momentos geométricos y
polinomios ortogonales.
Esto implica realizar un paso previo a la obtención de los descriptores,
el cual es la detección del contorno de un objeto. Este tema puede ser tratado
extensamente, sin embargo ese no es el objetivo de ésta tesis. Como un
complemento se describirá brevemente un método sencillo de obtención del
contorno de un objeto.
Las técnicas de Fourier consisten en expresar el contomo del objeto o
alguna propiedad de éste, como una función matemática, luego, haciendo uso
de una expansión en series de Fourier se puede expresar dicha función como
una suma infinita de funciones. Los coeficientes obtenidos de dicha expansión
son conocidos como los descriptores de Fourier.
Los descriptores obtenidos mediante estas técnicas llevan información
importante del objeto que describen, como: el tamaño del objeto, orientación
del objeto, ubicación del objeto en el plano de vista, tópicos que serán
analizados en secciones posteriores.
49
2.5.1 Requisitos para una Expansión en Series de Fouríer
Para que una función periódica continua, w(/) pueda ser expresada
como una suma de Fourier, esta función debe cumplir con los siguientes
requisitos, llamados condiciones de Dirichlet [9]:
• La función w(/)debe ser absolutamente integrable en un período.
Esto es :
/ < oo•> ' I
T
2
• w(7) tiene un número finito de máximos y mínimos.
• w(/) tiene un número finito de discontinuidades en un período.
Entonces para una función continua, periódica, que cumpla con las
condiciones de Dirichlet, la Ec (2-23) se conoce como la representación en
series de Fourier de la señal periódica «(/) .
«(/) = Z ««=-oo
n e Z (Z = Enteros)
(2-23)
donde los coeficientes de Fourier dn, están dados por[8]:
50
(2-24)
donde:
es el períodoj ,
(2-25)
2.5.2 El contorno como una Función Periódica
Un punto importante a considerar antes de aplicar una expansión en
series de Fourier a una función, es que es indispensable que dicha función sea
periódica. En este caso, el contorno de un objeto es periódico si éste es una
curva cerrada. Esto se explica en el hecho de que si se empieza a describir una
curva cerrada que represente a un contorno cualquiera, por un punto
cualquiera, al avanzar por dicho contorno llegaremos nuevamente al punto
inicial, comenzando un nuevo periodo.
En añadidura, logrando que el contorno sea una curva cerrada, se
cumple, además de la periodicidad de la función, con las condiciones de
Dirichlet.
Es por esta razón, que para la aplicación en reconocimiento de
caracteres numéricos manuscritos, usando técnicas de Fourier, hay que
garantizar que el contorno de dicho carácter sea una curva cerrada. Esto es
cierto sólo en algunos casos, como por ejemplo: el cero (0) y el ocho (8), que
son de hecho curvas cerradas. Los demás números de por sí no representan
curvas cerradas. En la Fig, 2.4 se puede entender fácilmente este hecho.
51
Curva Cerrada Curva Cerrada Curva no Cerrada
Fig. 2.4 Ejemplos de Contornos
Los caracteres como por ejemplo el número 2 en la Fig. 2.4
evidentemente no son curvas cerradas. El objetivo es lograr extraer de ellos un
contorno que sea una curva cerrada. Afortunadamente la solución es sencilla y
consiste en asegurar que el ancho del carácter sea tal que se pueda recorrer su
silueta y luego retornar, no sobre la misma silueta, sino sobre pixeles aledaños
a ésta, obteniéndose una curva cerrada. Este proceso es explicado gráficamente
en la Fig. 2.5.
Lo anteriormente expuesto se logra sumando a la función imagen
original, la misma función imagen pero desplazada un pixel en sentido
horizontal y otro en sentido vertical. Es decir que:
fc(x,y) = f(x,y) + f(x + \,y) + f(x,y
(2-26)
52
Contorno Obtenido
Fig. 2.5 Proceso para asegurar la Obtención de una Curva cerrada como Contorno
Como se puede observar en la Fig. 2.5, con este proceso, varía la
información original respecto de la imagen, sin embargo esta variación es
mínima cuando la resolución de la representación digital es suficiente.
2.5.2.1 Obtención del Contorno de una Imagen Digital
Para un ser humano, el problema de definir el contorno de un objeto es
de fácil solución. Sin embargo ésta puede ser una tarea compleja para una
máquina. Existen numerosos estudios que dan solución a este problema. En
esta tesis se explicará brevemente el método usado para obtener el contorno.
Este método consiste en definir la ubicación de los pixeles sucesivos de la
frontera de un objeto. Esto se logrará siguiendo los siguientes pasos:
• Se explora el plano de vista de derecha a izquierda y de abajo hacia
arriba hasta encontrar el primer pixel no nulo, el cual corresponde al
pixel inicial del contorno. Encontrado este pixel se lo registra como el
primer pixel del contorno y se lo relaciona con sus coordenadas en el
plano de vista. Es importante notar que debido al sentido de exploración,
el primer pixel del contorno siempre estará al lado derecho del objeto.
53
• A partir de las coordenadas del primer pixel no nulo, se empezará a
explorar los pixeles aledaños en forma ordenada, con el objetivo de
encontrar el siguiente pixel no nulo, que sea contiguo y que sea parte del
contorno. Se adoptará como convención que el sentido de exploración
de los pixeles aledaños sea en sentido antihorario de esta forma el
contorno se revelará también en sentido antihorario. Adicionalmente se
recordará que, debido a la aplicación del proceso determinado por la
ecuación (2-26), es posible recorrer toda la frontera del objeto hasta
regresar al punto de inicio sin tener que pasar dos veces por un mismo
pixel del objeto; obteniéndose como contorno una curva cerrada. Con
estos antecedentes se analizarán 2 casos que cubren todas las
posibilidades de los pixeles aledaños:
Caso 1.- El pixel actual tiene un pixel de valor igual 1 a la izquierda o a
la derecha, pero nunca los tiene a ambos lados. En la Fig. 2.6, se muestran
algunos ejemplos de pixeles que pertenecen al caso 1.
Casol Casol
Fig. 2. 6 Ejemplos de Pixeles ubicados en el Caso 1
54
En el caso 1 están incluidos los pixeles del contorno a partir de los
cuales, para encontrar el siguiente pixel del mismo, se tendrá que explorar y
analizar en forma ordenada los pixeles aledaños. El contorno se podrá
determinar si se toma en cuenta que:
<* El primer pixel del contorno, es un pixel perteneciente al lado
derecho del contorno,
<* Se empieza a explorar los pixeles aledaños al pixel actual,
empezando por el pixel que se encuentra a la derecha.
<* El sentido de exploración de los pixeles aledaños es en sentido
antihorario.
Con estas reglas de exploración se determina que el primer pixel no
nulo que se encuentre es el siguiente pixel del contorno.
Caso 2.- El pixel actual siempre tiene, tanto a la izquierda como a la
derecha pixeles con valor de 1. Si tiene pixeles de valor 1 arriba del pixel
actual, entonces no los deberá tener abajo y viceversa.
Caso 2
Caso 2
Fig. 2. 7 Ejemplos de Pixeles ubicados en el Caso 2
55
Como se puede notar en la Fig. 2.7 en el caso 2 están incluidos los
pixeles que son parte del contorno y que a partir de ellos, para encontrar el
siguiente pixel del contorno no hay otra alternativa mas que desplazarse en
sentido horizontal. La pregunta a resolver es. ¿ El siguiente pixel del contorno
está a la derecha o a la izquierda?.
Para contestar esta pregunta se utilizará la información que proporciona
el pixel anterior del contorno unido al hecho que éste se está explorando en
sentido antihorario. Si el pixel anterior está ubicado a la derecha del pixel
actual, entonces el siguiente pixel del contomo tiene necesariamente que estar
ubicado a la izquierda del pixel actual. Si por el contrario el pixel anterior se
encuentra a la izquierda del pixel actual, entonces el siguiente pixel estará
ubicado a la derecha del pixel actual.
Estos dos casos cubren todas las posibilidades para encontrar el contorno
de cualquier objeto representado digitalmente. Determinados los pixeles del
contorno, se los registra en el orden que les corresponda respecto del primer
pixel encontrado, y se los relaciona con sus coordenadas.
Adicionalmente se puede implementar una subrutina para eliminar
contornos que tengan un número de pixeles reducido, al cual se lo puede
considerar como ruido, y seguir explorando la imagen en busca de un contorno
que tenga un número mínimo de pixeles para ser considerado como el
contorno que se desea encontrar. Considerando el tamaño en que una persona
normalmente escribe un número o una letra y la resolución de 180 ppi que se
piensa usar en el caso del problema del reconocimiento de dígitos manuscritos,
este valor mínimo se ha fijado en 25 pixeles.
56
2.5.3 Descriptores de Fourier.
Como se dijo antes, una función que represente el contorno del objeto
o alguna propiedad importante del contorno, puede ser descompuesta en una
suma infinita de funciones mediante una expansión en series de Fourier, mas
aún, dicha función puede ser aproximada por una suma finita de funciones. La
aproximación de la función u(l) estaría dada por [8]:
n=-N
(2-27)
Este hecho nos permite obtener compresión de la información del
contorno del objeto mediante el almacenamiento de los coeficientes obtenidos
de esta expansión en series de Fourier. Estos coeficientes (2-28) son los
Descriptores de Fourier.
(2-28)
Está representación del contorno está hecha en el dominio de la
frecuencia, en donde las bajas frecuencias llevan información del contomo en
general, incluidas: forma, tamaño, ubicación y orientación. Las altas
frecuencias llevan información de los detalles de dicho contorno y del ruido1.
Ya que las imágenes con que se trabajará son digitales, los
coeficientes de Fourier, en su versión discreta vienen dados por [3]:
1 Ruido.- En los variados procesos que implica trabajar con imágenes (generación, transmisión,recepción etc). algunas limitaciones y fenómenos afectan a la calidad de las mismas, degradándolas.A estas perturbaciones se las conoce como ruido.
57
(2-29)
Donde:
N¡ es el número total de pixeles que conforman el contorno.
4 es la variable independiente de la función que describe al
contorno, por ejemplo la longitud de arco del contorno.
Ahora lo que falta es definir funciones que describan adecuadamente
el contorno o alguna propiedad importante del contorno de la imagen.
2.5.4 Función Contorno en el Plano Complejo.
Sea el contorno una curva cerrada con representación paramétrica
(x(l),y(l) = (/)), donde / es la longitud de arco alrededor del contorno. Un
punto moviéndose alrededor de la frontera de dicho contorno genera la función
compleja[8]:
(2-30)
Nótese que la función (2-30) representa exactamente la forma del
contorno de la imagen y es periódica con periodo L, siendo L la longitud de
arco total de la curva cerrada.
Los descriptores de Fourier, usando la función Contorno continua en
el plano complejo son un conjunto de números complejos en el dominio de la
frecuencia y están dados por:
58
(2-31)
La versión digital sería:
(2-32)
Con el fín de obtener fórmulas que se puedan implementar fácilmente,
se hará el siguiente desarrollo:
jy
Fig2. 8: Contorno cualquiera expresado en el plano Complejo
59
Sea : A/ = / í- /A_ l (2-33)
Además se sabe que:
2n0 = *V* = - " ' * (2-34)
+y (2-35)
= cos(<9)± jsin(0) (2-36)
Usando (2-33) a (2-36) en (2-32) se tiene que:
-v/^
NI1 - w^Y/ - / ^<l nmk Lk-\) (2-37)
N,
(2-38)
Las fórmulas (2-37) y (2-38) facilitan en gran medida la
implementación del algoritmo para el cálculo de los coeficientes de Fourier
para la función contorno en el plano complejo.
En la Fig. 2.9. Se muestran ejemplos de reconstrucción de contomos
haciendo uso de los descriptores de Fourier con varios armónicos.
60
Reconstrucción del Contorno Usando Descriptores de Fourier:
ImagenOriginal
Número de Armónicos Usados en la Reconstrucción
1 2 4 8 1 6 2 4
5>X í
Rojo Contorno Original Azul Contorno Reconstruido
Fig. 2. 9: Ejemplos de Reconstrucción de contornos usando Descriptores de Fourier
En la Fig. 2.9. se puede apreciar que para contornos regulares y de
poca complejidad (obsérvese el dígito cero de la Fig. 2.9 ) solo es necesario un
número reducido de armónicos para reconstruir con bastante fidelidad dicho
contorno y mas bien al usar un número grande de armónicos se empieza a
resaltar exageradamente los detalles y el ruido. Si el contorno incrementa su
complejidad (obsérvese el dígito tres de la Fig.2.9) el número de armónicos
necesarios también se incrementa.
En la Fig. 2.10, se muestra un contorno de alta complejidad y su
reconstrucción con varios armónicos, aquí se puede observar que se necesita
un número bastante alto de armónicos para reconstruir su contorno.
61
Imasen Original
n1¡ H
inJ
/ Armónico 2 Armónicos^TiLirTS í-,T< r*?.,TZí ~'.j"
Ti t f^ ti TK 1S r 'V-.r r.i • *-|| L^ i .' jt^jj j .._f h*,!.,! -'-
i r-| Lf-^ ;,., L ,., L^" [**-.''; íü.,.5!... L'Ül ?,.'N'I i - "?
f—Jl f^--,
Lrú
Armónicos 8 Armónicos
Rojo Contorno Original~* r™h
A/ul ContornoReconstruido
¿nJ ürü p Emñ] nm b í"b¿ ¿J í=ft c=3 í ._ ilpaJUj .M....... U,, UiT l tI f'W«*w," "•'füifr-iX', 1 r—^ *—j>
U J C^SaPf
--
c\c fe
16 Armónicos 32 Armónicos
í" 'í .' ~-"ip í • 1*
; "i-'y^WJ^ í ptiU-, rwt i—-
Si L í Í Í "T *'.-..'I "-J-T- Í-J.-Í * .-»,-, t-lr-
Fig. 2. 10: Reconstrucción de un Contorno Complejo usando Descriptores de Fouríer
2.5.5 Función Radial del Contomo
La función radial del contorno se define como la distancia de cada uno
de los puntos del contorno al centro de gravedad del contorno del objeto. Esta
es una función real, en la que se pierde información de la forma del contorno,
pero que sin embargo describe una propiedad importante del mismo por lo
cual es válido usarla para extraer descriptores de un objeto mediante las
técnicas de Fourier.
62
La función radial para un contorno de una imagen continua está
definida por la siguiente expresión[10]:
(2-39)
Donde (x,y) representan las coordenadas del centro de gravedad de la
figura y se calcula con la ayuda de las ecuaciones (1-1) y (1-2).
r(l=0=L)= r(l=lN) ríl=1?)
Fig. 2.11: Distancia respecto del Centro de Gravedad de una Objeto
1=0 n/2 Yn 2n=L
Fig. 2.12 : Función Radial del Objeto (Fig 2.11)
En la Fig. 2. 1 1 se muestra un ejemplo de como se define la función
radial. Se empieza en este caso en el primer pixel diferente de cero explorando
la imagen de derecha a izquierda y de abajo hacia arriba, en este punto del
contorno 1=0. Se recorre luego todo el contorno definiendo en cada punto la
distancia al centro de gravedad del objeto. En la Fig. 2.12 se muestra la
función radial resultante.
Esta función, al provenir de un contorno que es una curva cerrada, es
una función periódica y cumple además con todas las condiciones de Dirichlet.
En consecuencia se puede aplicar una expansión en series de Fourier, dando
como resultado los descriptores de Fourier £*/"„, usando la función radial.
o*
(2-40)
Y su versión discreta es:
*=0
(2-41)
A pesar del hecho que la función radial AV es una función real, los
coeficientes de Fourier usando esta función son números complejos. Hay un
hecho que merece resaltarse en el caso de usar una función real en una
expansión de Fourier. Analizando la expresión (2-28) de los coeficientes de
Fourier:
64
Resulta evidente que si w(/)es real, entonces an y a_n son
complejos conjugados. Este hecho nos lleva a dos conclusiones:
• Es conveniente concentrarse en los valores positivos de n con el objeto de
evitar información redundante.
• Para la reconstrucción de la función real, basta usar los coeficientes de
Fourier encontrados con valores de n positivos, usando las siguientes
ecuaciones, dadas en [9]:
Para una imagen digital estos descriptores se calculan mediante:
n=\e :
N
An= con n - 0,1,2,.
r-i;, con n i,¿,
(2-42)
2.5.6 Propiedades de los Descriptores de Fourier
Los coeficientes de Fourier de un contorno específico no son únicos,
como uno se podrá imaginar estos dependen del lugar que se escoja como
punto inicial para generar el contorno. Por otro lado las deformaciones
geométricas que se aplique a dicho contorno, afectarán también al valor de los
descriptores de Fourier.
65
Aprovechando el hecho que la función escogida en base del contorno
tiene que ser periódica, además de las propiedades que se conocen de las series
de Fourier [9], se pueden analizar algunas propiedades que pueden ser de
mucha utilidad en los descriptores de Fourier, especialmente para obtener
descriptores invariantes al desplazamiento, a la rotación y al escalamiento del
contorno.
2.5.6.1 Desplazamiento en la Variable Independiente.
El hecho de escoger un punto diferente como punto de inicio para
generar el contorno, no es otra cosa que desplazarse en la variable
independiente, en este caso la longitud de arco de la función contorno. Los
coeficientes de Fourier, usando la función contorno en el plano complejo,
difieren uno de otro respecto del punto que se escoja como inicio para generar
el contorno de la imagen.
Fig2.13 : Desplazamiento en la Variable Independiente
66
Se llamará 2" , a la diferencia en longitud de arco que existe entre dos
puntos diferentes del contorno. Entonces la función contorno desplazada en su
variable independiente / esta dada por:
u- w(/+ r)
(2-43)
Esto significa que existe un conjunto de coeficientes de Fourier para
cada T de la función contorno.
Asumiendo que para un punto específico del contorno existe una
función tal que:
Consecuentemente, las otras posibles funciones debido al
desplazamiento de la variable independiente estarían dadas por:
z/(/) = w°(/+r) (2-44)
Donde t\ L , siendo L el periodo . El superíndice O
significa que se refiere a una función contorno específica. Se puede decir
entonces que ®n son los coeficientes de Fourier de esa función contorno
específica.
Los coeficientes de Fourier resultantes, debido a un desplazamiento
en la variable independiente serían:
67
1 Lan=—
L
sea: / '=/+ r =>dl'=dí
i /-=—
L
,
a =
o
L+r
^ O
a.= e
(2-45)
Como se puede ver, el desplazamiento en la variable independiente
de la función contorno afecta a la fase de los coeficientes de Fouríer. De
aquí que para obtener descriptores invariantes respecto del punto inicial
que engendra el contorno, basta con utilizar las magnitudes de los
coeficientes de Fouríer.
Nótese que en este desarrollo, la función M(/) puede ser una función
compleja o simplemente una función real, por lo cual esta propiedad es
aplicable tanto a la función contorno en el plano complejo como a la función
radial.
68
2.5.6.2 Desplazamiento del Contorno en el Plano Complejo.
El desplazamiento en el plano complejo viene a ser un desplazamiento
del objeto en el campo de vista. Se puede considerar al desplazamiento del
contorno en el plano complejo con un vector complejo Z. La función contorno
resultante después del desplazamiento es:
(2-46)
Los coeficientes de Fourier del contorno desplazado vienen dados por:
a" = I o
1 f o \ -w ni % ra«= TJ u v*e J ° dl+~r\e sabe que: a - w j _ ^ ; r /
* t^ r r /\ t * íU R I
Entonces:
¿ 27T W * O
r, = 0 Í2'47>o
De donde [11]:
a°n para n * O
<x? + Z para n = O«- = 1 - (2-48)
Todos los coeficientes de Fourier excepto ¿?o son invariantes al
desplazamiento en el plano complejo. ¿?o es un vector complejo, el cual
indica la posición del centro de gravedad del contorno (11].
69
En este caso la función //(/) es específicamente una función compleja,
por lo cual esta propiedad es aplicable solo a la función contorno en el plano
complejo.
Por otro lado la función radial, la cual es una función real, por su
concepción es invariante al desplazamiento. Es decir la distancia de cada uno
de los puntos al centro de gravedad del contorno es independiente de la
ubicación de dicho contorno, por lo cual los descriptores de Fourier usando la
función radial son siempre invariantes al desplazamiento.
2.5.6.3 Rotación del Contorno.
Se analizará este tema, en dos partes: las rotaciones propias y las
rotaciones impropias, según lo expuesto en la sección 1.7.3.
a) Rotación Propia
a) Contorno Original b) Rotación Propia del Contorno
Fig. 2.14 : Rotación Propia de una Imagen
70
Nótese en la Fig. 2.14.a) se ha escogido un punto de partida para
generar el contorno en sentido antihorario, en la Fig. 2.14 b) se muestra una
rotación propia en sentido positivo de este contorno. Como se puede observar:
para el caso de la función radial, una rotación propia no produce ningún
efecto, ya que la función radial únicamente depende de la distancia de cada
punto del contorno al centro de gravedad del mismo. Debido a que el punto de
inicio en que se define el contorno ( / = O ), va a seguir siendo el mismo,
después de una rotación propia, la función radial no varía. Por otro lado se
puede observar que en el caso de la función contorno definida en el plano
complejo, el punto de inicio varía en la fase, mediante un ángulo después de
una rotación propia.
Para el caso de la función contorno en el plano complejo se asume que
el centro de gravedad del contorno está ubicado en el origen. La rotación
propia del contorno definido en el plano complejo u (/) alrededor del origen,
con un ángulo (/> en dirección positiva, da como resultado otra función tal
que [11]:
El efecto de la rotación en los coeficientes de Fourier es evidente si
u(l) es expresada en (2-28):
1 L 1 ''a = —
i O
— f u* (l)e~ jw»nl diJ
am -(2-49)
71
Al igual que en el desplazamiento en la variable independiente, la
rotación del contorno definido en el plano complejo afecta únicamente a la
fase de los coeficientes de Fourier. Entonces para obtener descriptores
invariantes a la rotación basta con usar las magnitudes de los coeficientes
de Fourier. Además estos son invariantes al desplazamiento en la longitud
de arco del contorno. Para el caso de una función radial específica U (/),
una rotación propia no produce efecto alguno en sus descriptores de
Fourier.
b) Rotación Impropia
a) Contorno Original b) Rotación Impropia del Contorno
Fig. 2. 15 : Rotación Impropia del Contorno en el Plano Complejo
En a) en el contorno original se ha escogido un punto inicial k a partir
del cual se genera la función contorno M(/) en sentido antihorario. En b) se
muestra el efecto de una rotación impropia respecto del eje imaginario del
contorno. Como se puede apreciar esta operación resulta en 2 hechos
importantes:
72
*Si 9k es el ángulo positivo existente entre cualquier punto k del
contorno original con el eje horizontal, y «K es el ángulo positivo
existente del mismo punto k del contorno afectado por una rotación
impropia respecto del eje imaginario, entonces estos se relacionan
mediante:
*Si después de la rotación impropia respecto del eje imaginario, se
rota en forma propia 180 grados al contorno obtenido, entonces se
obtiene la rotación impropia con respecto del eje real del contorno
original.
**iv _Sea ctn los coeficientes de Fourier resultantes de la rotación
impropia respecto del eje imaginario, B — wj y aplicando la ecuación (2-28)
se tiene:
(2-50)
De la ecuación (2-50) se observa que una rotación impropia respecto
del eje imaginario resulta en los coeficientes de Fourier complejos conjugados
cambiados de signo. Si aplicamos una rotación propia de 180° a esta imagen
espejo respecto del eje imaginario, obtenemos la rotación impropia de la
imagen original respecto del eje real, de donde:
73
(2-51)
2.5.6.4 Escalamiento del Contomo
Escalar el contorno en el plano complejo resulta en una variación del
tamaño del mismo. Como se vio en la sección 1.8. al escalar la función
contorno w°( / ) se obtendrá la siguiente función [11]:
w(7) -
Donde A es el factor de escalamiento
Resulta evidente que al calcular los coeficientes de Fourier de esta
función usando (2-28) da como resultado:
an = -J Au0(l)e-J^"'dl = A-\u°L O L 0
a. = Aa"n n
(2-52)
Se concluye entonces que el escalamiento de una función u(l), da
como resultado que los coeficientes de Fourier de dicha función se vean
afectados por el mismo factor de escalamiento.
74
En este caso u(l) puede ser indistintamente una función compleja o
una función real por lo tanto esta propiedad es aplicable tanto para la función
contorno en el plano complejo como para la función radial.
En la tabla 2.4 se muestra los descriptores de Fourier usando la
función contorno y la función radial, de la imagen tres.bmp y sus variantes
resultantes de escalar la imagen en factores de 0.7 y 0.5 y de rotarla un ángulo
de 30° en sentido horario. Al dividir la magnitud de los coeficientes de la
imagen original para la magnitud de los coeficientes correspondientes de cada
una de las versiones escaladas y rotada, se debe esperar obtener el factor de
escalamiento tal y como se puede observar en las tres últimas columnas de la
tabla 2.4.
Además se puede observar que la fase de los coeficientes de Fourier
tienden a mantenerse igual al escalar una imagen, lo que no sucede al rotar la
imagen. A simple vista la fase de los descriptores, en ambos casos,
aparentemente no guardan relación con la orientación del objeto, sin embargo
un análisis más minucioso revela que de los descriptores de Fourier si se
puede obtener información de la orientación del objeto, este tema será tratado
mas adelante.
Por último se puede comprobar que la magnitud del coeficiente cero
de los descriptores de Fourier usando la función contorno (sombreado en la
tabla), no guarda ninguna relación con el factor de escalamiento de las
imágenes. Como se sabe el coeficiente de Fourier cero representa las
coordenadas del centro de gravedad del objeto por lo cual es independiente del
tamaño del objeto, pero dependiente de su ubicación. Para comprobar esta
aseveración se ha calculado las coordenadas del centro de gravedad de las
imágenes propuestas, haciendo uso de los momentos geométricos de orden
cero y de primer orden, cuyos valores tienen que ser consecuentes con los
75
valores del coeficiente de Fourier cero en coordenadas rectangulares. Estos
valores se muestran en la fila sombreada: el primer valor es el coeficiente de
Fourier cero en coordenadas polares, el segundo valor en coordenadas
rectangulares y el tercero las coordenadas del centro de gravedad del objeto.
ac(-3>ac(-2>ac(-i>acón
cgfay)ac(i)ac(2>ac(3)
ar<o)ar(i>ar(2>aro)
3Tres
Original
3Escalado
a=0.7
3Escalado
a=0.5
J*
Rotado30°
tres
tres 0.7tres
tresO.5tres
tresR
Descriptores de Fourier Usando la Función Contorno0.81 [0.47]
0.87 [-1.54]
4.13 [0.68]
23. 97 [-0.74][17.7, -16.16]
(18, -17)6.87 [-1.10]
2.84 [1.04]
0.78 [-1.55]
1
8.30 [0]
1.21 [-1.27]
1.91 [1.33]
0.39 [0.03]
1.08 [0.52]
1.26 [1.54]
5.71 [0.62]
2.50 [0.40][2.3 , 0.97]
(3,1)9.37 [-1.05]
4.10[1.11]1.00 [1.56]
Descriptores11.40[0]
1.58 [-1.14]
2.68 [1.44]
0.52 [0.25]
1.50 [0.53]
1.67 [-1.49]
8.08 [0.69]
1.94 [0.1 8][1.9,0.35]
(3>°)14.05 [-1.12]
5.86 [0.99]
1.43 [-1.45]
de Fourier U16.60[0]
2. 16 [-0.93]
4.12 [1.27]
0.89 [0.02]
0.79 [-1.27]
1.00 [0.51]
4.10 [-0.15]
3.22 [0.63][2.6, 1.89]
(3,1)6.98 [-1.29]
2.74 [1.15]
0.62 [-1.04]
0.75
0.69
0.72
9.61
0.730.69
0.71
sando la Función Radia8.32 [0]
1.10 [-1.09]
1.99 [-1.19]
0.27 [1.46]
0.73
0.76
0.71
0.75
0.54
0.520.51
12.5
0.490.49
0.50
1
0.50
0.56
0.46
0.44
1.03
0.87
1.017.69
0.99
1.041.15
1.00
1.09
0.96
1.45
Tabla 2. 4: Descriptores de Fourier Usando la función Contorno y la función Radial
Se propone ahora normalizar estos coeficientes de la siguiente
manera:
an
A
(2-53)
En donde es un valor real constante para todo valor de n
76
Por lo tanto para obtener descriptores de Fouríer invariantes al
escalamiento usando la función contorno en el plano complejo o la función
radial, hay que normalizarlos como se muestra en (2-53)|ll|.
2.5.6.5 Método General para obtener Descriptores Invariantes
De las propiedades de los descriptores de Fourier usando la función
contorno en el plano complejo, se han deducido métodos para obtener
descriptores invariantes a deformaciones geométricas individuales. Se ha visto
también que la mayoría de estas propiedades son aplicables a los descriptores
de Fourier usando la función radial. En [U] se propone un método para
obtener descriptores invariantes a todas las deformaciones vistas a partir de
los descriptores de Fourier usando la función contorno.
La forma general para los coeficientes de Fourier de un contorno
generado por el desplazamiento en el plano complejo, desplazamiento en la
variable independiente, escalamiento y rotaciones propias de un contorno
específico está dada por:
a. = e¡'"A^d}t (2-54)
Considérese la siguiente expresión:
b" = ~^fÍL - w* 1 <2-55>"i
Reemplazando (2-54) en (2-55):
si® ¿7-'('+w)r Aaí$rfi ^-/('""Ví, l+« ' "^« =
77
.0 O
*.= (2-56)
La expresión bn en (2-56), a los que se llamará descriptores
invariantes de Fourier, no contiene ninguna de las variables: A ,T, ó $.
Además esta expresión no contiene <70. Por lo tanto los descriptores bn,
tanto sus magnitudes como sus fases, son invariantes a todas las
deformaciones geométricas vistas. De esto que si se utiliza la función
contorno en el plano complejo la expresión bn es representativa
exclusivamente de la forma del contorno.
En la tabla 2.5 se muestra los descriptores invariantes de Fourier
usando la función Contorno. Se puede observar que tanto las magnitudes
como las fases tienden a mantener 'valores aproximados en las diferentes
versiones deformadas de la imagen tres.bmp.
bc(2)
bc(3)
bc(4)
3Tres
Original
3
TresDesplazada
3Escalado
a=0.5
0*
Rotado30° h
«>
Rotado45°ah
Descriptores Invariantes de Fourier bcn Usando la Función Contorno0.062 [1.43]0.028 [-0.01]0.012 [2.99]
0.056 [1.37]0.028 [-0.01]0.009 [3. 19]
0.058 [1.47]0.026 [-0.01]0.009 [2.86]
0.052 [1.39]0.029 [3. 13]0.007 [2.48]
0.050 [1.75]0.023 [3.16]0.009 [2.54]
Tabla 2. 5: Descriptores Invariantes de Fourier Usando la función Contorno.
Se puede definir otro conjunto de descriptores sumamente útil [11].
Considérese la expresión
78
d ="•" /
\ 1,2,3,....
n 2,3,4 ..... (2-57)
Como en el caso de los coeficientes httt se asumirá que el contorno es
generado por el desplazamiento en el plano complejo, desplazamiento en la
variable independiente, escalamiento y la rotación propia de un contorno
específico. Se tiene entonces que:
= [atnej(^ A ('-)r Ae»= '"'
d .mrt
(2-58)
Se puede ver que al igual que los coeficientes bm los coeficientes
í/1, , no contienen ninguna de las variables A ,t, ó <|>, ni tampoco #0 . Los
coeficientes dmn son por tanto invariantes a todas las deformaciones
vistas. Es mas los coeficientes bn son un caso particular de los coeficientes
y O"lH(7 '
2.5.6.6 Descriptores con Información de la Orientación del Objeto.
Los descriptores de Fourier usando la función contorno ac n ,
contienen información de la orientación del objeto, pero ésta información,
como erróneamente se podría pensar, no tiene relación directa con la fase de
dichos descriptores . En [1 1] se propone un método para poder acceder a dicha
información.
79
Es pertinente hacer notar que para que el concepto de orientación del
objeto tenga sentido, tiene que haber una referencia, por esto es necesario
normalizar el punto de inicio del contorno del objeto con respecto al plano de
vista. En el caso del algoritmo para encontrar el contorno propuesto en el tema
2.5.2.1 el punto inicial del contorno es siempre el primer pixel del contorno
que se pueda encontrar buscando en el plano de vista de derecha a izquierda y
de abajo hacia arriba.
"
, m = 1,2,3,
(2-59)
dm.=
dm\k-í
(2-60)
Como se puede observar en la ecuación (2-60) los coeficientes dm}
son invariantes al desplazamiento y al escalamiento; pero ante una
rotación propia de un ángulo <P ocasiona que el término normalizado
dm] (normalizado a todas las deformaciones geométricas vistas) se vea
multiplicado por el factor e [12], Es decir que para una imagen
rotada un cierto ángulo , se puede averiguar m veces el valor de dicho
ángulo dividiendo dml(¡n¡cia¡)/dm](rotado)
80
En la tabla 2.6, se presenta las fases de los coeficientes ¿/m, divididas
para m a los cuales se los notará como Focm para la imagen tres.bmp y sus
variantes resultado de la aplicación de rotaciones en diferentes ángulos. Estos
datos contienen información directa de la orientación del objeto, y para su
verificación se ha puesto entre paréntesis la resta de los datos entre la versión
rotada y la imagen original, esta dato representa la orientación en radianes de
la imagen rotada respecto la imagen original. Se puede notar que los datos de
la tabla 4.5 son consistentes con la orientación de los objetos en un rango que
va entre -45° y 45° respecto de la imagen original. Para objetos rotados un
ángulo mayor a 45° respecto del objeto original en cualquier sentido, el único
dato confiable es el primero correspondiente a Foc2.
Fase
s co
nIn
fo. D
e la
Ori
enta
ción
FOC(2)
FoC(3)FoC(4)FoC(5)
Fase
s co
nIn
fo. D
e la
Ori
enta
ción
Foc(2)Focí3)
FüC(4)
FOC(5)
Rotaciones en sentido anti-horario
3Tres
Original
3.230.951.241.42
3Rotado itfah
-0.17rad
3. 06 (-0.1 7)2.34(1.39)1.08 (-0.1 6)1.24 (-0.1 8)
3Rotado 25°ah
-0.44 rad
2.82 (-0.41)2.13(1.18)0.81 (-0.43)0.98 (-0.45)
1>Rotado 3 (f oh
-0.52 rad
2.73 (-0.50)2.16(1.21)1.78(0.54)
0.84 (-0.58)
?>Rotado 4 5° oh
-0. 79 rad
2.44 (-0.79)1.78(0.83)1.46(0.22)1.41 (-0.01)
Rotaciones en sentido horario
JRotado 20 °h
0.35 rad
3.56(0.33)1.28(0.33)
1.56(0.32)1.80(0.32)
JRotado 30° h
0.52 rad
3.79(0.56)1.35(0.40)1.75(0.51)1.97(0.55)
u»Rotado4$°h
0.79rad
4.03 (0.80)1.49(0.54)1.98(0.74)1.46(0.04)
u»Rotado 50 °h
0.87 rad
4.10(0.87)1.71 (0.76)2.13(0.89)1.55(0.12)
U*Rotado 60 °h
1.04 rad
-2.05(1.03)-2.77(2.56)
-1.91 (3.13)-2.22 (2.65)
Tabla 2. 6 :Descriptores con información de la Orientación del Objeto
Cabe señalar que en ésta tesis se ha presentado ejemplos de como
obtener invarianza a las deformaciones geométricas. Pero es facultad del lector
aplicar cualquier artificio matemático y/o mezcla de las propiedades analizadas
anteriormente para obtener descriptores con propiedades de invarianza a una
deformación geométrica específica ó a una mezcla de ellas, según convenga a
una aplicación determinada.
Referencias:
|lf Alireza Khotanzad y Jiin-Her Lu, "Classification of Invariant Image
Representations Using a Neural Network", IEEE trans. Acoustic Speech
and signa! processing, vol.38, No.6, pp. 1028-1038, Junio 1990.
(21 Cho-Huak Teh y Roland T. Chin, "On Image Analysís by the Methods
of Moments", IEEE trans. Pattern Analysis and Machine Intelligence,
vol.10, No.4, pp. 496-513, Julio 1988.
|3| Ing. M. S. Jiménez, "Notes On Nonlinear Image Processing", U.T.A.,
Texas-USA, 1993
|4| Ming-K.uei Hu, "Visual Pattern Recognition by Moment Invariants",
IRÉ trans. Information Theory, vol. IT-8, pp. 179-187, Feb. 1962.
|5| Tom M. Apóstol, "Calculus", Vol.2, 2da Edición, Edt. Blaisdell
Publishing Company, Walthman-Masssachusetts, 1967.
[61 Sahibsingh A. et all, "Aircraft Identification by Moment Invariants",
IEEE trans. Computers, vol.C-26, No.l, pp. 39-45, Enero 1977.
82
|7] Robeit R. Bailey y Mandyam Srinath, "Orthogonal Moment Features
for use with parametnc and Non-parametric Classifiers", IEEE trans.
Pattern Analysis and Machine Intelligence, vol.18, No.4, pp 389-399,
Abril 1996.
[8] Eric Persoon y King-Sun Fu, "Shape Discrimination Using Fourier
Descriptors", IEEE trans. Systems, Man, And Cybernetics, vol.SMC-7,
No.3, pp 170-179 Marzo 1977.
|9| Patricio Rosero, "Sistemas Lineales", E.P.N, 1995
[10| Hannu Kauppinen et all, "An Experimental Comparison of
Autoregressive and Fourier Based Descriptors in "D Shape
Classifícation", IEEE trans. Pattem Analysis and Machine Intelligence,
vol.17, No.2, pp 201-207, Feb. 1995.
|11| G. H. Granlund, "Fourier Preprocessing for Hand Print Character
Recognition", IEEE trans. Computers, pp 195-201, Feb. 1972.
3.1 INTRODUCCIÓN
La extracción de características de imágenes digitales tiene en el
reconocimiento visual de patrones una de sus principales aplicaciones. Después
de haber estudiado en el capítulo 11 algunos métodos de extracción de
características de imágenes digitales, en este tercer capítulo se pretende hacer
visible la utilidad de este proceso en el caso específico del reconocimiento de
dígitos manuscritos. Este experimento práctico además nos permitirá evaluar y
comparar los diferentes métodos de extracción de características de imágenes que
aquí se han nombrado.
El reconocimiento visual de patrones, una vez obtenidas las características
de las imágenes, requiere de un proceso de clasificación. Este proceso hace uso
de las características de las imágenes, previamente extraídas, y las etiqueta
asociándolas a una determinada clase o modelo, el cual es obtenido mediante un
proceso de entrenamiento usando prototipos previamente etiquetados en cada
clase.
Para el caso de la aplicación práctica del reconocimiento de dígitos
manuscritos se utilizará como clasificador a una red neurona!1. Es por esta razón'j
que este capítulo tratará con suficiente profundidad los conceptos básicos sobre
redes neuronales, la red de propagación hacia atrás que es la que se utiliza en la
aplicación, y, consideraciones para su diseño y entrenamiento para el caso
particular de la aplicación del reconocimiento de los dígitos manuscritos.
1 Se pueden usar otros clasificadores como por ejemplo: clasificador Bayesiano. clasificador del vecinomas próximo, clasificadores isomorfícos entre otros |2|, [5|~ En esta tesis las redes neuronales son un instrumento de soporte por lo cual se tratará Sobre ellas losuficiente como para entender su funcionamiento, si el lector desea profundi/ar mas sobre el lema seprovee la bibliografía necesaria [ I |, IH |4|. |5|. |6], |7|. [8|, |9J. [10], |11]. |12|.
3.2 REDES NEURONALES
Una de las últimas ambiciones del ser humano es la de crear máquinas
inteligentes, a imagen y semejanza de nuestra propia especie. Si bien, aún se está
muy lejos de lograr tal proeza, no es menos cierto que se han conseguido ciertos
avances científicos y tecnológicos, que permiten en la actualidad que máquinas
puedan emular algunas capacidades que se creían exclusivas de ciertos seres
vivos, como por ejemplo: distinguir objetos, clasificarlos, reconocer personas o
aprender procesos. Esto nos aproxima a la posibilidad de crear máquinas capaces
de tomar decisiones por si mismas para resolver problemas ante una situación no
programada.
Estos logros han sido posibles gracias al desarrollo de las Redes
Neuronales, las que representan una aproximación a la inteligencia artificial
tratando de modelar los aspectos físicos de la mente. Acerca de las redes
Neuronales, Chaouki Abdallah1 dice; " El punto de vista convencional de los
investigadores de las redes neuronales artificiales es que la conciencia no es
mas que un fenómeno de la compleja interacción de millones de neuronas en
nuestros cerebrosn{3\.
A finales de la década de los cuarenta los computadores digitales hacen su
aparición y paralelamente se desarrollan modernas teorías en los campos del
aprendizaje humano, la neuroanatomía y la neurofisiología. Con la conjunción de
estos hechos es que se empieza a modelar neuronas individuales, así como
agrupaciones de neuronas a las que se les dio el nombre de redes neuronales. A
partir de entonces se ha acumulado gran cantidad de investigación<%
neurofisiológica , la que ha sido la base de inspiración para el desarrollo de
sistemas neuronales artificiales a los que se les identifica como ANS (Artificial
Neural Systems).
1 Chaouki Abdallah es un investigador del departamento de Ingeniería de Electrónica y Computación dela Universidad de Nuevo México.2 Para el que desee profundizar sobre la neurofisiologia desde el punto de vista que interesa, Neural andBrain Modeling, de Ronald J. MacGregor [4] es una muy buena alternativa.
86
A finales de la década de los 50, aparecieron los primeros ejemplos de
estos sistemas. Los más notorios son un dispositivo denominado perceptrón de
Frank Rosenblatt [5], y el Ádaline del profesor Bernard Widrow [6]. Sin embargo
el pesimismo primitivo debido a las limitadas capacidades del perceptrón,
frenaron todas las investigaciones sobre sistemas neuronales artificiales (ANS)
que pudieron haber seguido los pasos de la investigación neurológica. La
publicación del libro "Perceptrons" [7] en 1969 escrito por Marvin Minsky y
Seymore Papert, en el cual y mediante el desarrollo de técnicas matemáticas y de
rigurosos teoremas demostraban que el perceptrón era incapaz de resolver
muchos problemas simples, suele tomarse como la causa de la caída en coma por
cerca de 2 décadas de la tecnología de ANS. A pesar de todo, durante este
tiempo hubo brotes de investigación que siguieron adelante como por ejemplo:
Teuvo Kohonen [8], Stephen Grossberg [9 y 10] y James Anderson [11], a
quienes se debe el actual renacimiento de la tecnología de redes neuronales.
En la actualidad, este campo de investigación goza de un creciente
prestigio y se aprecia un notable aumento de concesiones de fondos para la
investigación y desarrollo de redes neuronales. Es común escuchar de
conferencias sobre esta tecnología y se ha conformado una nueva sociedad
profesional. En las universidades y centros de educación superior se empiezan a
desarrollar nuevos programas educativos para formar a sus alumnos en el terreno
de la tecnología de Redes Neuronales.
3.2.1 Neurofisiología, Circuitos Neuronales - Computación yAprendizaje
Ya que las redes neuronales se inspiran en el funcionamiento y la
interconexión de millones de neuronas en nuestro sistema nervioso, es adecuado
revisar algunas teorías y conceptos básicos de las neuronas biológicas. Cabe
anotar que la neurobiología es un tema bastante complejo y lo que a
continuación se esbozará, es una visión general y simplificada que nos ofrece
Jorge Albuja Viten en su trabajo de Tesis " Reconocimiento de Caracteres
87
Manuscritos por medio de redes neuronales y neuro-difusas artificiales" [13].
Luego se hablará de las capacidades de los circuitos neuronales y su posibilidad
de ser tratados como un sistema computacional. Finalmente y para completar un
entendimiento básico de lo que son los sistemas neuronales artificiales se hablará
sobre la capacidad de aprender de las redes neuronales.
A) La Neurona Biológica
La neurona es la unidad estructural y funcional del sistema nervioso. En la
fig3.1 se esboza una representación simplificada de los componentes principales
de una neurona típica.
cuerpo celular
Fig3.1 : Componentes Principales de las Neuronas Biológicas
El cuerpo celular de la neurona varía ampliamente en forma y tamaño;
tiene un diámetro que puede oscilar entre 4 y 25 mieras. Cumple las funciones de
regeneración periódica del axón y dendritas, producción electroquímica de
moléculas complejas , administración energética y regulación de un sinnúmero
de otras actividades dentro de la célula.
88
Las Dendritas son fibras cortas que nacen del cuerpo celular; su función
es la de recibir señales provenientes de otras células nerviosas en puntos de
conexión llamados sinapsis.
El axón es una fibra relativamente larga (entre 0.1 mm y 1 m) ramificada
en su terminación que permite a la neurona transmitir las señales hacia otras
neuronas.
La Unión Sináptica es el punto de comunicación entre dos neuronas.
Existen sinapsis axón - axón, axón - cuerpo celular, y dendrita - dendrita. A
diferencia de los circuitos eléctricos, no existe una conexión física o eléctrica en
la sinapsis. La comunicación se realiza mediante la difusión de ciertas
substancias químicas, llamadas neurotransmisores, a través de la membrana
selectivamente permeable de las neuronas. Mas de 30 neurotransmisores han
sido identificados; algunos tienden a provocar la estimulación de la neurona
(excitatorios) y otros en cambio inhiben la estimulación de la neurona
(inhibitorios)1.
B) Funcionamiento de La Neurona Biológica.
Considérese la estructura de una neurona biológica como la de la figura
3.1. Los pulsos eléctricos provenientes de los axones de neuronas remotas son
recibidos por la neurona a través de la sinapsis entre sus dendritas (o en algunos
casos directamente al cuerpo celular) y dichos axones. La sinapsis se encarga de
transformar los pulsos eléctricos recibidos en señales químicas contenidas en los
neurotransmisores. La presencia de los neurotransmisores controla la diferencia
1 Los Neurotransmisores excitatorios hacen disminuir la polarización de la célula; los inhibitorios encambio aumentan la polarización de la célula. Una Célula nerviosa se dice que está polarizada cuandoestá en su estado de equilibrio, generando un potencial de reposo aproximadamente de 70mV entre la caraexterna e interna de la membrana. La despolarización de la célula da lugar a un potencial de acción,produciéndose una señal eléctrica que se transmite por medio del axón.
89
En la porción de la membrana celular cercana al origen del axón de la
neurona se acumulan los pulsos recibidos a través de las sinapsis de la célula
nerviosa. Si los estímulos recibidos superan un umbral de actividad1 variable en
el tiempo, la neurona se despolariza y genera un pulso eléctrico a través del axón.
El pulso eléctrico se transmite por el axón y sus ramas, en donde aislantes
axonales restauran y amplifican la señal mientras se propaga, hasta que ésta
alcanza alguna juntura sináptica sobre una neurona remota. En esta nueva
neurona, los procesos sinápticos transforman la señal eléctrica en una señal
química contenida en los neurotransmisores repitiéndose una y otra vez el
proceso ya descrito en todas las neuronas interconectadas del sistema nervioso y
en forma asincrónica.
De esta manera una sola neurona puede activar o desactivar cientos o
miles de otras neuronas, cada una de las cuales a su vez puede ser influenciada
por cientos o miles de otras neuronas.
C) Circuitos Neuronales y Computación
Ahora que ya se tiene una idea de cómo funcionan las neuronas
individualmente, y de la forma en que están conectadas entre sí, se puede hacer
una pregunta fundamental. ¿Cómo se combinan estos conceptos relativamente
sencillos para dar al cerebro sus enormes capacidades?.
Para contestar a esta pregunta hay que hacer referencia al trabajo de
McCulloch y Pitts [14]. Este trabajo es importante porque fueron los primeros en
tratar al cerebro como un organismo computacional. La teoría de McCulloch -
Pitts se basa en cinco suposiciones:
1 El umbral de actividad es la diferencia de potencial mínima que debe existir entre las caras interna yexterna de la menbrana celular para que se produzca un pulso de salida hacia el axón. Su valor está enalrededor de -40 mV.
90
1. La actividad de la neurona es un proceso todo-nada, (las neuronas son
binarías, o bien están activadas o bien desactivadas).
2. Es preciso que un número fijo de sinapsis (>1) sean excitadas dentro
de un período determinado para que se excite una neurona.
3. El único retraso significativo dentro del sistema nervioso es el retardo
sináptico.
4. La actividad de cualquier sinapsis inhibitoria impide por completo la
excitación de la neurona en ese momento.
5. La estructura de la red de interconexiones no cambia con el transcurso
del tiempo.
Esta teoría ha ayudado a dar forma a los pensamientos de muchas
personas que han tenido importancia en el desarrollo de las ciencias de la
computación en la actualidad. Anderson y Rosenfeld [11] aclaran una idea
fundamental que no se pone de manifiesto en el artículo de McCulloch - Pitts:
"Aunque las neuronas son dispositivos sencillos, se puede obtener una gran
potencia de cálculo cuando se interconectan adecuadamente estas neuronas y se
imbrican dentro del sistema nervioso" [11]
D) Aprendizaje de Hebb
Un sistema neuronal no nace preprogramado con todo el conocimiento y
capacidades que eventualmente llegará a tener. Para esto el sistema neuronal
tendrá que aprender. La pregunta es ¿Cómo se aprende?. La teoría básica del
aprendizaje sobre la cual de una forma u otra se basan muchos de los modelos de
las redes neuronales que existen actualmente se debe a Hebb en su libro
"Organizalion ofBehaivo?\l dice que:
1 El umbral de actividad es la diferencia de potencial mínima que debe existir entre las caras interna yexterna de la menbrana celular para que se produzca un pulso de salida hacia el axón. Su valor está enalrededor de -40 m V.
91
''Cuando un axón de la célula A está suficientemente próximo para
excitar a una célula fí o toma parte en su disparo de forma persistente,
tiene lugar algún proceso de crecimiento o algún cambio metabólico en
una de las células, o en las dos, de tal modo que la eficiencia de A, como
una de las células que desencadena el disparo de fí, se ve incrementada. "
En las redes neuronales artificiales, este comportamiento de aprendizaje se
puede modelar mediante el cálculo y corrección de error de la intensidad de
conexión entre las diferentes neuronas artificiales interconectadas en un sistema
neuronal artificial1.
3.2.2 La Neurona Artificial
La neurona artificial es en principio una reproducción simplificada de una
neurona biológica, inspirada únicamente en las características básicas de esta.
Muchos autores incluso, para evitar cualquier comparación exagerada y burda,
prefieren no llamarlas neuronas artificiales en cambio suelen darles el nombre de
nodos, unidades o elementos de procesamiento (Pes, Processing Elemente).
En la Fig3.2 se muestra un modelo general de un nodo. Cada nodo en un
sistema neuronal artificial está numerado, siendo el i-ésimo nodo el que aparece
en la Fig3.2. Un nodo tiene varias entradas y una sola salida, la cual se puede
aplicar a muchos otros nodos de la red. La entrada que recibe el i-ésimo nodo
procedente del j-ésimo nodo se indica en la forma x¡
Se han incluido en este párrafo algunos términos nuevos para el lector, pero que serán dcfínidos en lostemas inmediatos.
92
Entradastipo 1
Entradastipo 2
Entradastipon
Fig3.2: Estructura de una Neurona Artificial (Nodo)
Cada conexión entre un j-ésimo nodo con el i-ésimo nodo tiene asociada
una magnitud llamada intensidad de conexión o peso el cual se denota mediante
w,y. Todos estos elementos tienen sus análogos en las neuronas biológicas, así por
ejemplo: la salida del nodo corresponde a la frecuencia de disparo de la neurona;
y los pesos corresponden a la intensidad entre las conexiones sinápticas de las
neuronas. En los modelos artificiales estas cantidades están representadas por
números reales.
Se puede observar que las entradas al nodo están desglosadas en varios
tipos. Esto con el fin de hacer notar que cada conexión puede tener uno entre
varios efectos, por ejemplo excitatorio o inhibitorio. En el modelo artificial las
entradas excitatorias tienen pesos positivos y las inhibitorias tienen pesos
negativos. Pueden además ser posibles otros tipos de entradas, las cuales están
asociadas a términos como ganancia, amortiguamiento y disparo fortuito que se
reservan a conexiones para propósitos especiales.
93
Cada nodo determina un valor de entrada neto basándose en todas las
conexiones de entrada. En ausencia de conexiones especiales lo que se hace es
calcular el valor de entrada neto como el sumatorio de los valores de entrada
ponderados (multiplicados) mediante sus pesos o intensidades de conexión
correspondientes. Es decir la entrada neta de la i-ésima unidad está dada por:
neta =
(3-1)
Una vez que la entrada neta ha sido calculada, se somete este valor a una
función de activación/ esto con el objetivo de evitar la saturación de la red por
valores muy grandes (positivos o negativos) en la salida de la neurona. De esta
manera la función de activación /limita la salida a un determinado intervalo en
los números reales. Así la salida del i-ésimo nodo esta dada por:
xi =f(netai)
(3-2)
3.3 RED DE PROPAGACIÓN HACIA ATRÁS (BPN, BackPropagation Network)
El reconocimiento de objetos, así como muchas otras aplicaciones son
problemas en los cuales el modelar una solución matemática resulta muy
complicado. Sería entonces de gran utilidad el contar con algún procedimiento
que pudiera por si mismo adaptarse en forma dinámica y encontrar alguna
relación funcional de un problema determinado si se le provee de los datos de
entrada y la respuesta deseada, la cual se conoce de antemano. Afortunadamente
existe un sistema así, y este sistema recibe el nombre de red de propagación hacia
atrás (BPN). No está por demás repetir que el gran potencial de una red es su
94
capacidad para descubrir una relación funcional entre las entradas y salidas, más
aún cuando esta correspondencia entrada-salida fuera complicada de tal manera
que no fuese posible describir una relación funcional por anticipado. En la
Fig.3.3 se presenta un esquema de la arquitectura de una BPN, el cual será de
gran utilidad para el entendimiento de las ecuaciones que rigen su
funcionamiento.
Capa deEntrada
Capa Escondida Capa de Salida
Fig3. 3 : Arquitectura de una Red de Propagación hacia atrás (BPN)
La red aprende de un conjunto predefinido de pares de entradas y salidas
dados como ejemplo, empleando un ciclo de propagación-adaptación de dos
fases. Se inicia aplicando un vector de entrada xí,x2,...,xfl, por ejemplo un
conjunto de descriptores de una imagen, como estímulo para la primera capa de
nodos de la red, éste se va propagando a través de todas las capas superiores
(capas escondidas) hasta generar una salida. La señal de salida se compara con la
salida deseada, y se calcula una señal de error para cada nodo de salida.
95
Estas señales de error se transmiten hacia atrás, partiendo de la capa de
salida, hacia todos los nodos de la capa anterior que contribuyan directamente en
la salida. Sin embargo, los nodos de la capa anterior sólo reciben una fracción del
error de la capa de salida basándose aproximadamente en la contribución relativa
que haya aportado el nodo a la salida original. Este proceso se repite capa por
capa, hasta que todos los nodos de la red hayan recibido una señal de error que
representa su contribución relativa al error total. Basándose en la señal de error
se actualizan los pesos de conexión de cada nodo hasta que la red converja a un
estado que permita codificar todos los vectores de entrada.
Una de las ventajas de este proceso es que a medida que se entrena a la
red, los nodos de las capas intermedias se organizan a si mismos de tal modo que
los distintos nodos aprenden a reconocer distintas características del espacio total
de entradas. Después del entrenamiento, cuando se les presente un vector
arbitrario de entrada los nodos de las capas ocultas de la red responderán con
una salida activa si el vector de entrada se asemeja a aquellas características que
los nodos individuales hayan aprendido a reconocer durante su entrenamiento ó,
en caso contrario, los nodos de las capas ocultas tienen una tendencia a inhibir
sus salidas si el vector no contiene características similares a aquellas que
poseían los vectores con que fue entrenada la red.
3.3.1 Ecuaciones que gobiernan el funcionamiento de una BPN.
A pesar que el estudio de las redes neuronales es un tema sumamente
interesante, no es uno de los temas centrales de esta tesis. Por esta razón se
evitará un desarrollo exhaustivo para hallar las ecuaciones que gobiernan el
funcionamiento de una BPN. A cambio se presenta un resumen que recoge
todas las ecuaciones relevantes y en el orden en que deberían ser usadas para
entrenar una red de propagación hacia atrás [1].
96
1 . Se asigna un valor aleatorio pequeño a todos los pesos de conexión w
de la red: valor que se sugiere entre -0.5 y 0.5.
2 . Se aplica el vector de entrada x = (x, , x2 , ..... , XN ) a los nodos de entrada
3. Se calculan los valores netos procedentes de las entradas para las
unidades de la capa oculta:
JV
«etó*=£w**,. (3_3)
/=i
donde el superíndice // indica que pertenece a la capa escondida
4. Se calculan las salidas de la capa oculta:
(3-4)
Como se explicó previamente la función de activación / restringe la
salida de un nodo a un rango limitado. Si ésta fuera la única condición
la función de activación / se podría escoger de un sinnúmero de
funciones. No existe una receta a seguir para determinar que función
usar. En líneas generales la función a escoger depende de la clase de
red que se usa y del tipo de problema que se quiere resolver para lo
cual la experiencia es el mejor consejero. A continuación se proponen
las funciones de activación más comunes:
í 1 si neta > Q• Función umbral: fineta) = < donde O es el valor*•* v ' \ . f\O si neta < G
umbral
(3-5)
• Función lineal: f(netd) = ¿.neta , donde Á es una constante (3-6)
97
Función Sigmoide: fineta) = I -- -- , donde £ = 2.718281818..^ J """
(3-7)
Cabe notar que para una BPN la función de activación /debe ser una
función derívable. Este requisito elimina la posibilidad de utilizar una
función de activación umbral. En cambio, la función Sigmoide ha sido
usada, ya que para el problema del reconocimiento de dígitos
manuscritos varios autores la han escogido y ha funcionado
satisfactoriamente en este experimento.
5. Se pasa a la capa de salida. Se calculan los valores netos de las
entradas para cada unidad:
(3-8)y=i
donde el superíndice o indica que pertenece a la capa escondida
6. Se calculan las salidas:
(3-9)
7. Se calculan los términos de error para las unidades de salida:
donde: >'* es la salida deseada
(3-10)
8. Se calculan los términos de error para las capas ocultas:
98
Obsérvese que los términos de error de los nodos ocultos se calculan
antes que hayan sido actualizados los pesos de conexión con los nodos
de la capa de salida.
9. Se actualizan los pesos de la capa de salida:
0= <
(3-12)
donde:
T/ se denomina velocidad de aprendizaje, es un valor positivo y
menor que 1.
Ct se denomina momento de cambio, es un valor positivo
menor
que 1.
A(M\¿)) = w(íj- w(í - 1) , y se denomina cambio de peso
10. Se actualizan los pesos de la capa oculta:
(3-13)
11. Se repiten los pasos del 2 al 1 1 cuantas veces sea necesario.
i M- El término de error E = - Y£\, es una medida de lo bien que va" * L J' ^
aprendiendo la red. Cuando el error resulta aceptablemente pequeño
para todos los vectores de entrenamiento, éste se puede dar por
concluido.
99
- Otro indicador del avance del entrenamiento es el cambio de los
pesos de las conexiones. Cuando los pesos de conexión empiezan a
variar muy poco, es un indicativo de que la red ha convergido a una
respuesta y el entrenamiento se puede dar por concluido.
- Una manera más directa de verificar el avance del entrenamiento es
monitorear las salidas y compararlas con las salidas deseadas.
3.4 RECONOCIMIENTO DE DÍGITOS MANUSCRITOS USANDOUNA BPN.
Para la aplicación del reconocimiento de dígitos manuscritos se ha
utilizado la red neuronal de propagación hacia atrás o BPN de tres capas (capa de
entrada, capa escondida y capa de salida). En el tema inmediatamente anterior se
ha visto en forma general y breve a las redes de propagación hacia atrás y las
ecuaciones que gobiernan su funcionamiento. Ahora se verá específicamente para
la aplicación del reconocimiento de dígitos manuscritos, el diseño de la red que
se ha utilizado y algunas consideraciones que son pertinentes en el proceso de
entrenamiento de la red.
3.4.1 Arquitectura de la BPN Utilizada en el Reconocimiento deDígitos Manuscritos.
Cuando se empieza a trabajar en un proyecto que requiera de una red
neuronal, cualquiera sea la naturaleza de la aplicación, es aconsejable diseñar la
red de forma dinámica. Esto ahorrará mucho tiempo en caso que se tenga que
cambiar las dimensiones de la red (número de nodos de entrada, número de
nodos escondidos, número de nodos de salida) por la razón que fuere1.
1 Si no se tiene datos o información previa acerca de las dimensiones de una red neuronal para solucionarun problema específico, la única manera de averiguarlo es experimentando. De esta experiencia sesacarán datos útiles que guiarán las dimensiones de la red que se utilizará.
100
Para esta aplicación se utilizó una BPN de tres capas, cuya estructura es
idéntica a la mostrada en la Fig.3.3. Utilizando alguna documentación existente
[2],[5] y después de un largo proceso de experimentación y análisis se llegó a
obtener la red con las siguientes dimensiones; tal y como se muestra en la
Fig.3.4.
x,
XN
Capa deEntrada
Capa Escondida Capa de Salida
Fig3. 4 : Arquitectura de la BPN usada para el reconocimiento de DígitosManuscritos
Para los descriptores de Fourier en [5] se menciona en alrededor de 30, el
número adecuado de descriptores a usarse para la capa de entrada.
Adicionalmente se realizo un estudio estadístico el cual es mostrado en la sección
4.3. Como conclusión de este análisis se llega a determinar que para la clase de
caracteres manuscritos a la resolución que se está trabajando (ISOdpi) los
descriptores de Fourier usando la función contorno hasta el séptimo armónico
son representativos de la forma en general, mientras que para armónicos mayores
a siete los descriptores de Fourier empiezan a ser representativos de los detalles
101
y el ruido. Usando 7 armónicos es posible extraer 15 coeficientes de Fourier de
los cuales hay que excluir el coeficiente cero ya que no es invariante al
desplazamiento y el coeficiente uno tampoco porque al normalizarlo al
escalamiento su valor siempre será igual a la unidad, esto implica que se tenga a
disposición 26 descriptores (tomando en cuenta magnitud y fase de los
coeficientes). Adicionalmente se utilizará las fases de los descriptores dmlj las
que contienen información de la orientación del objeto. Esta información será útil
para diferenciar objetos como por ejemplo: el 6 y el 9 que solo se diferencian por
su orientación. Se usará los primeros cuatro valores de las fases de los
coeficientes dml con la idea de completar 30 descriptores de Fourier usando la
función contorno. Para el caso de la función Radial, la frontera entre la forma
general y el detalle y ruido parece estar entre el séptimo y octavo armónico. Al
ser la función radial una función real, la cantidad de descriptores que se pueden
extraer es aproximadamente la mitad que en el caso de la función contorno ya
que los coeficientes con n negativos son los complejos conjugados de los
coeficientes con n positivos. Con ocho armónicos y excluyendo el coeficiente
cero por normalización al escalamiento, se pueden extraer 16 descriptores, para
tratar de aproximamos un poco mas a los 30 descriptores sugeridos en [5] se
aplicará la fórmula de los descriptores invariantes bn a la función radial con n
tomando valores entre 2 y 6, obteniéndose 10 descriptores más. Se dispondría
entonces de 26 descriptores para el caso de la función radial.
En el caso de los momentos geométricos y los momentos de Zernike no
hay una referencia que sugiera algún valor en el número de elementos de la capa
de entrada. Por motivos de comparación se tratará de usar alrededor de 30
descriptores para ambos casos. El análisis estadístico para los momentos
geométricos hecho en la sección 4. Sugiere usar solamente los momentos
geométricos rjM con q par, ya que los momentos ripq con q impar no tienen una
buena separación intraclase. Para el caso de los momentos de Zernike , el análisis
estadístico no sugiere ninguna restricción.
102
Para la capa escondida, del material escrito disponible [2], la dimensión de
la capa escondida parece estar entre los 60 y 80 nodos para los momentos de
Zernike, en el caso de los descriptores de Fourier no se encontró alguna
referencia que nos de una idea del número adecuado de nodos escondidos a
usarse, razón por la cual, y para fines de comparación, se dimensionó para todos
los métodos de extracción de características de imágenes digitales con un número
de 70 nodos a la capa escondida.
Para la capa de salida, ya que el problema a solucionar es reconocer los
dígitos manuscritos, lo lógico es pensar que el número de nodos de salida sea 10,
es decir un nodo por cada dígito (0,1,2,3,4,5,6,7,8,9). Sin embargo en la Fig.3.4
se muestra que la capa de salida tiene una dimensión de 20 nodos para el caso
que se usen Descriptores de Fourier y 14 nodos para el caso que se usen
Momentos Geométricos. La experimentación llevó a concluir que aunque una
persona cualquiera tiene bien identificado los 10 dígitos muchas de ellas tienden
a escribir un mismo número de formas distintas (por ejemplo: 1, 4,7 observar la
tabla 3.1) mas aun en los métodos basados en técnicas de Fourier donde el
contorno, por ejemplo del 6 ú 8, es totalmente diferente si la persona que lo
escribe acostumbra ha hacerlo de forma incompleta tal y como se muestra en la
Fig.3.5.
6
8
Seis normal y su contorno
Seis incompleto y su contomo
Ocho incompleto y su contomo
Ocho normal y su contorno
Fig3.5 : Ejemplos de dígitos cuyos contornos son totalmentediferentes por ser escritos de forma incompleta
Teniendo en cuenta éstos antecedentes y analizando las muestras de cómo
escriben los dígitos alrededor de 500 personas1, se llegó a establecer 20
categorías de los 10 dígitos para el uso de técnicas de Fourier. Para el caso que
se use Momentos Geométricos o Momentos de Zernike, ya que éstos son
métodos que procesan toda el área del objeto o imagen en vez de solo el
contorno, dígitos que como por ejemplo el 0,6,8,9, al analizar su contorno se
llega a obtener dos categorías diferentes de cada uno, no presentan mayor
diferencia en caso que se procese su área. Adicionalmente las cuatro categorías
del dígito 1 se reducen a tres, ya que la categoría 4- en el caso de los Momentos
Geométricos y de Zernike se confunde bastante con el dígito 2. Estas diferentes
categorías aunque no son las únicas, son las formas más típicas y representativas,
la Tabla. 3.1 muestra ejemplos de estas clases o categorías.
Cero
Uno
Dos
Tres
Cuatro
Cinco
Seis
Siete
Ocho
Nueve
Diferentes Formas enque se suele escribir
un mismo dígito
O C1 i - í i¿ a3
4 ¿/56 G* 78 ^<? ^
Total de clases de dígitos
Número de clasesT. Fourier
2
4
2
1
2
1
2
2
2
2
20
M.G y M.Z.
1
3
1
1
2
1
1
2
1
1
14
Tabla 3.1: Principales Formas de escribir los Dígitos
Las muestras recogidas, alrededor de 500 son de hombres y mujeres de variada condición económica y
104
3.4.2 Entrenamiento cíe la Red.
En breves palabras entrenar una red neurona! de propagación hacia atrás
es: a partir de un estado inicial aleatorio (el valor inicial de los pesos de conexión
es aleatorio); luego, mostrar a la red en forma secuencia! y ordenada, ejemplos en
la capa de entrada (por ejemplo: los descriptores de las imágenes de los dígitos)
y decirle en la capa de salida lo que representa cada ejemplo mediante un código
que equivalga a la identificación de la imagen presentada.
En el caso del reconocimiento de dígitos manuscritos se le asignó a cada
nodo de salida una de las 18 diferentes clases de dígitos identificadas, por
ejemplo, al primer nodo de salida se le asignó el dígito cero de la clase de ceros
completamente cerrado; cuando en la fase de entrenamiento se le muestra a la red
un cero de esta clase en la salida el código es un uno para el nodo al que le ha
sido asignada esa clase y cero para los demás 10000....'; al segundo nodo de
salida se le asignó el dígito uno de la clase que se escribe como una raya vertical,
cuando se le presenta a la entrada este dígito la salida sería 01000....; al tercer
nodo de salida se le asignó el dígito dos del que solo se identificó una única
clase, si se le presenta a la red un dos su salida en la fase de entrenamiento sería
001000....; siguiendo esta idea cada clase de dígito tiene su correspondiente
código de salida. En la Fig3.6 se presenta gráficamente esta idea.
La red, mediante sus algoritmos matemáticos de aprendizaje empezará a
ajustar el valor de los pesos de conexión con cada ejemplo que se le presente. Si
de edades comprendidas entre los 7 años de edad hasta aproximadamente los 70 años de edad1 En esta red se ha utilizado como función de activación la función sigmoide. Esta función puede tomarvalores entre cero y uno pero excluyendo al cero y al uno de su dominio. Por esta razón en la práctica, lassalidas de la red se les suele asignar en genera] valores que cumplan con: 0.9 < salida < \a elnodo que debe activarse y O < salida < 0.1 para los demás nodos. En la parte escrita de esta tesis, porfacilidad, se utilizará los valores de los nodos de salida como O y 1.
105
los ejemplos presentados son consistentes en propiedades que permitan
clasiñcarlos, la red empezará a asociar dichas propiedades con la fuerza de los
pesos de conexión, generando salidas que cada vez asocian mejor la clase de
imagen presentada con la salida deseada, llegando a converger a una respuesta
aceptable después de un número finito de ejemplos. Esto sin embargo depende
mucho de la calidad del entrenamiento. Todo este proceso está detallado en
forma ordenada en el resumen expuesto en la sección 3.3.1 de este capítulo.
Capa de CapaEntrada Escondida
Capa deSalida
Fig.3.6: Ejemplo de Codificación de las Salidas de una BPN
106
3.4.2.1 Población de Entrenamiento
La toma muestras de los dígitos usados tanto para el entrenamiento como
para el sondeo de la red se la hizo entre 500 personas de ambos sexos, variados
estratos sociales y en edades comprendidas entre los 7 años hasta los 70 años.
Cada persona que ha llenado una muestra ha escrito en forma ordenada los
dígitos del O al 9, cada dígito en una celda cuadrada de 1.2 cm de lado, en un
modelo prediseñado en el cual se pueden recoger las muestras de 15 personas
diferentes.
El modelo prediseñado se lo muestra en la Fig.3.7 y su importancia radica
en que el programa didáctico posee una subrutina que segmenta las imágenes de
los dígitos del O al 9 en base a las dimensiones de este modelo.
Para la toma y digitalización de las muestras es importante observar
algunos requerimientos:
• En lo posible, tratar de que se escriban los dígitos en el centro del recuadro.
• Utilizar un esferográfico que escriba con claridad, se recomienda bic punto
medio.
• Digitalizar la imagen con una resolución de 180 dpi, como una imagen
binaria, (modo line art).
• Procurar digitalizar la muestra sin inclinarla.
Aunque este modelo fue diseñado para recoger muestras de dígitos
escritos por diferentes personas, se puede aprovechar la subrutina de
segmentación basándose en este modelo para recoger otra clase de muestras (por
ejemplo caracteres manuscritos).
107
Escuela Politécnica Nacional
Facultad de Ingeniería Eléctrica
Población de sondeoMuestras : Los Digitos
O
Fig.3. 7: Modelo para Recolección de Muestras
108
3.4.3 Consideraciones Prácticas.
Entrenar una red neuronal puede ser una tarea extenuante,
desafortunadamente no existe un método definido de entrenamiento que sea
aplicable a todos los casos. Al igual que muchos aspectos de las redes
neuronales, la experiencia suele ser la mejor maestra. A continuación se darán
algunas ideas generales sobre el entrenamiento de la red para el reconocimiento
de dígitos manuscritos, estas ideas son fruto de la experiencia adquirida en este
proceso y de las sugerencias que brinda James Freeman y David Skapura en su
libro "Redes Neuronales"[l].
3.43.1 Datos de Entrenamiento
Las preguntas más frecuentes al momento de empezar a entrenar una red
son: ¿Cuántos ejemplos de entrenamiento se debe usar?. ¿Se debe usar todos las
muestras disponibles o se las debe seleccionar?. Si se las selecciona, bajo qué
criterios?
Estas preguntas no tienen una respuesta precisa y contundente para todos
los casos, y como se mencionó anteriormente la experiencia es la mejor aliada.
En general se puede emplear todos los datos que estén disponibles para entrenar
la red, aunque quizá no sea necesario utilizarlos todos. Con cierta frecuencia, lo
único que se necesita para entrenar con éxito una red es un pequeño subconjunto
de los datos disponibles.
La BPN admite bien la generalización, es decir que dados varios vectores
de entrada distintos, todos los cuales pertenecen a una misma clase, una BPN
aprenderá a adaptarse a las similitudes significativas de los vectores de entrada.
En contraste la BPN no extrapola bien, lo cual implica que si la red se entrena de
modo inadecuado o insuficiente, usando una clase concreta de vectores de
entrada, la posterior identificación de miembros de esta clase puede ser
imprecisa.
109
Para el caso del reconocimiento de dígitos manuscritos se llegó a obtener
algunas conclusiones que se podrían aplicar a otros problemas similares. Estas
conclusiones son:
• Es de gran ayuda el determinar de la mejor manera posible el número de
clases aplicables a un problema. Como se explicó en la última parte de la
sección 3.4.1 a pesar de que los dígitos son 10, se llegó a determinar
realmente 18 clases distintas. Como ejemplo, en el caso del 1 se llegaba a un
porcentaje de reconocimiento de aproximadamente del 35% cuando se usaba
una sola clase para este dígito, cuando se dividió en cuatro clases diferentes
los unos como se indica en la tabla 3.1 el porcentaje de reconocimiento del 1
mejoró por encima del 90 % en el caso de los descriptores de Fourier usando
la función contorno dentro de la población de entrenamiento.
• Es recomendable además seleccionar los elementos que se dice pertenecen a
una clase. Si bien, el conjunto de entrenamiento debe ser lo suficientemente
universal, es conveniente separar los elementos que se salen de la definición
de ese conjunto y que más bien son la excepción. En el caso del
reconocimiento de dígitos manuscritos se utilizó conjuntos de 150 elementos
para cada clase. Estos se repitieron una y otra vez hasta que la red convergió.
En la Fig.3.8 se muestra algunos ejemplos de este concepto.
Elementos Aceptados Elementos Rechazados
CiaseTres
ClaseCinco
3
5 5 5 5S
Fig.3.8: Ejemplos de Dígitos Aceptados y Dígitos Rechazados
110
Una vez que se ha escogido el conjunto de imágenes que representa con
suficiencia a una clase de dígito, es necesario analizar que tipo de descriptores
se utilizará; es decir, que propiedades de invarinaza deberán poseer los
descriptores a usarse. Es lógico pensar que diferentes personas escriben los
dígitos de diferentes tamaños y la ubicación en el recuadro casi nunca será la
misma, de ahí que se deberá usar descriptores invariantes al desplazamiento y
al escalamiento. En contraste y asumiendo que se quiere reconocer los dígitos
manuscritos de personas escribiendo normalmente, es evidente que aunque
con pequeñas variaciones la gente tiende a escribir los números con
orientación vertical. Por otro lado si se utilizaran descriptores invariantes a la
rotación, se presentarían algunos inconvenientes de ambigüedad, pues hay
dígitos que se parecen mucho si no se toma en cuenta su orientación. En la
Fig.3.9 se pueden apreciar algunos de estos casos. Por lo antes expuesto es
deseable conservar la sensibilidad a la rotación de los descriptores a usarse en
este caso.
ImágenesOriginales
54
Imágenes Afectadas pordiferentes tipos de rotación
Cinco con rotaciónimpropia rev.
Cuatro rotado 135° en sh
Cuatro rotado 90° sh, y
Seis rotado 180°
sh: sentido horario rev: respecto del eje vertical
Fig.3.9: Ejemplos de Ambigüedad de algunos Dígitos sinSensibilidad a la rotación
Entrenar a una red por completo con vectores de una clase pasando después a
otra clase, es la forma equivocada de hacerlo, pues la red olvidará lo aprendido
originalmente. Lo correcto es presentar secuencialmente todas las clases.
111
Hay que tener cuidado de no sobreentrenar la red. El sobreentrenamiento
produce que al evaluar los resultados dentro de la población de entrenamiento
éstos sean muy buenos, pero cuando se evalúa el desempeño fuera de ella los
resultados caigan estrepitosamente. Por esto hay que buscar el punto en el cual
la red arroja buenos resultados dentro de la población de entrenamiento y su
desempeño disminuya lo menos posible fuera de la población de
entrenamiento.
3.43.2 Parámetros de Aprendizaje.
En las ecuaciones que gobiernan el funcionamiento de una BPN, existen
algunas constantes que se definieron en la sección 3.3.1 pero no se dijo nada de
los valores que deben tomar. Otra vez no hay una respuesta contundente a esta
interrogante. Esta parte se limitará a dar alguna información extra sobre estos
parámetros:
• La selección de un valor para el parámetro de velocidad de aprendizaje ?J,
tiene un efecto significativo en el rendimiento de la red. Normalmente, ?7
debe ser un número pequeño (entre de 0.05 y 0.25) para asegurar que la red
llegue a asentarse en una solución. Un valor pequeño de fj implica que la red
tendrá que hacer un gran número de iteraciones, para llegar a una solución. A
medida que ?7 aumenta de valor la red aprende más rápido, sin embargo se
corre el peligro que la red rebote y se aleje del valor mínimo verdadero. Una
estrategia válida para acelerar el proceso de aprendizaje es la de ir
aumentando en forma progresiva el valor de t] según el error va
disminuyendo. Después cuando el estado de error de la red parece no variar o
incluso aumentar si se aumenta el valor de ^7, quiere decir que ese es el
mínimo error que se puede lograr asociado al valor de f]. Si se desea mejorar
el resultado se puede empezar a disminuir el valor de T¡ pues de la
112
experimentación se puede concluir que un valor de ?J menor está asociado
con un error menor.
Otra forma de incrementar la velocidad de convergencia, consiste en usar una
técnica llamada momento. Cuando se calcula el valor del cambio de
peso, A(W{/)), se añade una fracción del cambio anterior, tal y como consta en
el paso 10 especificado en la sección 3.3.2. Este término adicional tiende a
mantener los cambios de peso en la misma dirección; de aquí el término
momento que se lo expresa con la letra ce. El momento puede tomar valores
que van entre O y 1.
Referencias:
|1| James A. Freeman y David M. Skapura, "Redes Neuronales: Algoritmos,
aplicaciones y técnicas de programación", Edt Addison-Wesley,
Wilmington-Delawere, 1993.
[2| G. H. Granlund, "Fourier Preprocessing for Hand Print Character
Recognition", IEEE trans. Computers, pp 195-201, Feb. 1972.
|3| Chaouki Abdallah, "An Overview of Neural Networks Results for
Computación", University of New México, Alburquerque, NM.
[4| Ronald J. MacGregor, "Neural and Brain Modeling", Academic Press San
Diego, CA, 1987.
[5] Robert Bailey y Mandyam SrinatiV'Orthogonal Moment Features for Use
with Parametric and Non-Parametric Classifíers", IEEE Trans. on pattern
analysis and machine intelligence, vol.18, No.4, Abril 1996.
113
(6] Bernard Widrow, "Adaptive Sampled-Data Systems, a Statistical Theory
of Adaptarion", IRÉ WESCON Convention Record, parí 4, pp88-91, NY:
Institute of Radio Engineers.
|7| Marvin Minsky y Seymour Papert, "Perceptrons", MIT Press, Cambridge,
MA, 1969.
|8| Teuvo Kohonen, "An Introduction to Neural Computing", Neural
Networks 1(1): 3-16, 1988.
|9| Stephen Grosssberg, "Neural Networkss and Natural Intelligence", MIT
Press,Caambridge, MA, 1988.
[10| Stephen Grosssberg, "Nonlinear neural networks: Principies, Mechan i sms
and Architectures", Neural Networks, 1(1): 17-62, 1988.
[111 James Anderson y Edward Rosenfeld, "Neurocomputing: Foundations of
Reserach", MIT Press, Cambridge, MA, 1988.
[12] Yaser S. Abu-Mostafa, "Information Theory, Complexity, and Neural
Networks", IEEE Comunications Magazine, Noviembre 1989.
[13| Jorge Albuja, "Reconocimiento de Caracteres Manuscritos por medio de
Redes Neuronales y Neuro-Difusas Artificiales", Escuela Politécnica
Nacional, Quito-Ecuador, 1995.
|14| Warrern McCulloch y Walter Pitts, "A Logical cccalculus of the ideas
immanent in nervous activity", Bulletin of Mathematical Biophysiscs,
5:115-133, 1943.
114
4.1 INTRODUCCIÓN
En este capítulo se analizará la calidad de los descriptores vistos mediante
el análisis de los métodos de extracción haciendo uso de herramientas
estadísticas. Después se presentarán los resultados de la aplicación de estos
métodos en el reconocimiento de dígitos manuscritos.
En la sección 2.2 se especifican las características de los buenos
descriptores que son: pequeña separación intraclase, gran separación interclase y
poseer propiedades de invarianza a las deformaciones geométricas. Por esto,
para el análisis de la calidad de los diferentes métodos de extracción de
características de imágenes se analizará los datos obtenidos en tres grupos de
imágenes:
» a) Imagen afectada por deformaciones geométricas (desplazamiento,
escalamiento, rotación)1.
• b) Imágenes semejantes o pertenecientes a una misma clase (ej: el dígito 3
escrito por varias personas)
• c) Imágenes distintas o de pertenencia a diferentes clases.
Como ayuda, en este análisis, se utilizará algunas herramientas estadísticas
como el valor promedio y la desviación estándar2. Si dividimos la desviación
estándar para el valor medio se obtiene una magnitud que mide el grado de
alejamiento relativo al valor medio de una muestra al cual se lo llamará índice de
alejamiento y se denotará como ¡a. Esta magnitud se puede utilizar para
1 Para el caso de los momentos geométricos se dividirá al grupo de imágenes en dos: al) imágenesafectadas por desplazamiento y escalamiento y a2) imágenes afectadas por rotaciones2 La Desviación Egtándar[l].- Indica la distancia a partir del valor promedio de una muestra, tanto a laizquierda como a la derecha de dicho valor. Estadísticamente , a una desviación estándar tanto a laizquierda como a la derecha se encuentra el 75% de la población; a dos desviaciones estándar seencuentra el 95% de la población.
116
comparar la calidad de los diferentes métodos. Así por ejemplo si el índice de
alejamiento de una muestra es igual a uno quiere decir que los valores de los
descriptores del 75% de la población se encontrará en el rango de O y 2 veces el
valor medio. Este es un rango amplio lo que indica que los elementos de la
muestra son diferentes (gran separación interclase). Si por el contrario el índice
de alejamiento tiene un valor pequeño, por ejemplo 0.1, indica que el valor de
los descriptores del 75 % de la población se encuentra en el rango de 0.9 veces el
valor medio y 1.1 veces el valor medio lo que implica que los elementos de la
muestra son bastante similares entre sí (pequeña separación intraclase). Si el
índice de alejamiento es mayor a uno es un indicativo de que la muestra está
conformada por elementos bastante distintos y conforme este valor se va
reduciendo, los elementos de la muestra comparten cada vez más características
comunes. Esto asumiendo que los descriptores a partir de los cuales se obtiene el
índice de alejamiento sean de buena calidad.
Así, si se utilizan grupos de imágenes predeterminados para el cálculo del
índice de alejamiento a partir de los descriptores de dichas imágenes, se puede
analizar la calidad de éstos. Por ejemplo si se utiliza un grupo de imágenes que
son producto de la aplicación de deformaciones geométricas a una misma
imagen, se sabe que, para buenos descriptores, el índice de alejamiento tiene que
ser pequeño. Por el contrario si las imágenes utilizadas son distintas entre sí, el
índice de alejamiento tiene que ser grande
Se presentará además ejemplos del cálculo de áreas y de la obtención de
esqueletos mediante el uso de los descriptores de Fourier usando la función
contorno, tema que es tratado en el Anexo B.
Por último se presentará las conclusiones que surjan como producto del
análisis de estos resultados, de la experiencia adquirida en la realización de esta
tesis y de la teoría aquí expuesta.
117
En la Fig. 4.1 se muestra las imágenes agrupadas en los tres conjuntos que
se ha mencionado, a las cuales se les extraerá los descriptores con los diferentes
métodos vistos y se hará el análisis estadístico antes mencionado.
a) Numeral tres afectado por deformaciones geométricas de desplazamiento ,escalamiento en al) y rotación en a2)
al)
a2)
3
J
3
J
3
U*
3
u*
3
£
3«>
3
?>3?»
3t
33
b) Imágenes Semejantes (numeral tres manuscritos por diferentes personas)bl)
b2)
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
33
3
3c) Imágenes Diferentesel)
c2)
ViN
v+
•*>
O?
2
'vf
-
^^^m
§§TV
3
Á
r1i • i • »r
Fig. 4.1: Imágenes Clasificadas en tres grupos a) Iguales con deformaciones geométricas,b) Semejantes y c) Diferentes
4.2 MOMENTOS GEOMÉTRICOS
En esta sección se mostrará en tablas tabuladas, los resultados estadísticos de los
diferentes momentos geométricos invariantes al desplazamiento y al escalamiento. En
esta tabla se desechará valores como los momentos de orden cero y de primer orden, ya
que como se sabe estos valores para imágenes normalizadas al escalamiento y al
desplazamiento tienen valores predeterminados. Por otro lado cabe resaltar que para los
momentos geométricos el grupo de imágenes a) se ha subdividido en dos clases: al) tres
afectado por deformaciones de desplazamiento y escalamiento y a2) tres afectado por
rotaciones propias en distintos grados e impropias. Esto debido a que los momentos
geométricos ^v. invariantes al desplazamiento, escalamiento y rotación, presentan
118
muchas deficiencias por motivos que serán expuestos mas adelante. En su lugar se
analizarán los momentos geométricos /fo, invariantes solamente al desplazamiento y al
escalamiento.
4.2.1 Análisis de Momentos Geométricos en Distintas Clases de
imágenes.
En las tablas 4.1, 4.3 y 4.4 se muestran los datos estadísticos de los momentos
geométricos //M de las diferentes imágenes clasificadas en los 3 grupos indicados.
Se ha sombreado las filas que corresponden a los momentos rjpq con q par, con la
finalidad de facilitar su ubicación. Obsérvese que el comportamiento de los
momentos T]^ con q par es adecuado para los criterios de pequeña separación
intraclase y gran separación interclase, observación que se ve bien apoyada por
los valores en las tablas 4. 1, 4.3 y 4.4. Para las imágenes del grupo (al) el índice
de alejamiento la de los momentos T]pq(parh es pequeño y oscila entre 0.015 y
0.54; para las imágenes del grupo (b) la aumenta sensiblemente a valores entre
0.18 y 0.96. Por último para las imágenes del grupo (c) el índice de alejamiento
la crece a rangos entre 0.47 y 6.07. Los datos de (al) y (b) indican una buena
separación intraclase mientras que los datos de (c) indican una buena separación
interclase.
En cambio los momentos /fo con q impar no muestran la cualidad de
tener una buena separación intraclase, hecho que es notorio en la tabla 4.3 que
corresponde a imágenes semejantes en donde el índice de alejamiento esta en
rangos que van desde 0.12 hasta 10.98 dominando los valores mayores a 1. Por
esta razón, para la parte experimental del reconocimiento de dígitos manuscritos,
se utilizara los momentos geométricos J]pq con q par.
119
al) Datos Estadísticos de los Momentos Geométricos Invariantes al
desplazamiento y al escalamiento 77 de la imagen tres.bmp
afectada por las deformaciones geométricas de desplazamiento y
escalamiento.
•fcrinO Q
£3
*7(0,2)
?(0,3>
*7(0,4)
7(0,5)
tfO.1)
V(U)7(W)
7 (14)
70*)
7(2,0)
7ai)7(24)
7(23)
7(2,4)
7 Oí)
Valor Medio
Km
0.4223
0.03110.2792
0.0440
0.0725
-0,0190
0.0463
-0.0105
0.0321
0.0888-0.0234
0.0383-0.0088
0.0216
-0.0032
Desv. Std
<5
0.0349
0.0435
0.0426
0.0513
0.0087
0.0067
0.0068
0.0057
0.0064
0.0032
0.00350.00340.0033
0.0032
0.0032
índice de
AlejamientoIa= S/Vm
0.0826
0.1395
0.01521.1659
0.12020.3549
0.1476
0.5413
0.19960.0360
0.15020.09020.3742
0.1510
1.0141
•<-». *v
I I53
7CM>>
7 (34)
7(34)
^ÍW)
7CW)
7(3,5)
7(40)
7 (41)7(44)
7(43)
7<M)
?7í45)
^(SjO)
7(5,1)
7(54)
Valor Medio
Km
-0.0237
0.0215-0.0111
0.0107
-0.00520.0060
0.02365
-0.0118
0.0101
-0.00500.0049
-0.0022-0.0129
0.0090
-0.0054
Desv. Std
S
0.0058
0.003
0.00210.0017
0.00130.0013
0.0031
0.0023
0.0015
0.00110.0009
0.00080.0032
0.00179
0.00128
índice de
Alejamiento
¡a = S/Vm
0.24650.1221
0.19650.1549
0.2567
0.21350.1320
0.19320.1439
0.2367
0.18150.33860.2469
0.1977
0.235
Tabla 4.1: Datos Estadísticos de los Momentos Geométricos rjn de las Imágenes delgrupo (al)
a2) Datos Estadísticos de los Momentos Geométricos Invariantes al
desplazamiento, escalamiento y rotación (f>N de la imagen tres.bmp y
diferentes versiones desplazadas escaladas y rotadas de ésta.
En la Tabla 4.2 se puede observar que los datos estadísticos indican que
los Momentos Geométricos fa invariantes al desplazamiento, escalamiento y
rotación, son de calidad deficiente excepto ^/ y fa. Esto se podría explicar en el
hecho que los Momentos Geométricos $N son construidos a partir de los
120
momentos 77 , y que según la tabla 4. 1 correspondiente a los Momentos TJM para
una imagen y sus variantes resultantes de deformaciones de desplazamiento y
escalamiento, indica que los momentos 17 que más error acarrean son 77/2 y r/30
Este error es consecuencia de la distorsión que el escalamiento produce. Como se
puede apreciar en las fórmulas de $v este error es aumentado por las operaciones
de potencia. Por otro lado la rotación en sí genera incluso mayor distorsión que
el escalamiento.
<t>3 (fyo
<l>4 (rjso + rj¡2)2 + (r¡2i + rj03)
<t>5 ^ (r?3o-3?Ji2)- (riso +
1 (3rj2i - ?7o3)-(fl2i + ríos)-
- 3(rj21
. (rj2i
M. G
eom
.In
vari
ante
s
*hh4>4
¿5
¿6
Tres y sus versiones deformadas
Valor Medio
Vm
0.507
0.131
0.010
0.038
9.9 E-7
-54E-5
Desv. Std
80.033
0.022
0.008
0.020
1.9E-5
7.3 E-4
índice de
Alejamiento
¡a = 8¡Vm0.0650.1650.791
0.572
19.34
13.35
M.
Geo
m.
Inva
rian
tes
*<fe
*
*4
¿5
*
Imágenes diferentes
Valor Medio
Vm
0.372
0.030
0.011
0.003
7.5 E-53.0 E-4
Desv. Std
80.176
0.0453
0.0287
0.008
3.2 E-4
0.001
índice de
Alejamiento
la = S/Vm0.521.49
2.69
3 . 1 1
4.37
3.79
Tabla 4.2: Datos Estadísticos de los Momentos Geométricos <f>(, de las Imágenes delgrupo (a) y de Imágenes diferentes.
121
b) Datos Estadísticos de los Momentos Geométricos Invariantes al
desplazamiento y al escalamiento 77 con objetos semejantes.
Mom
.G
eom
étri
.
7(0¿)
7(03)
7(0.4)
7(0,5)7(U>
7 (U)
'/(U)
7(M)
7 U,5>
7 (2,0)
7(2,1)
7(2,2)
7(23)
704)
7(2,5)
Valor Medio
Km
0.5801
-0.0422
0.5643
-0.0758
-0.0150
-0.0576
0.0121
-0.0853
0.0303
0.1360
-0.0067
0.0849-0.01 1 1
0.07858
-0.0188
Desv. Std
s0.1055
0.0537
0.1870
0.1178
0.0477
0.0299
0.0420
0.0431
0.0468
0.0342
0.0153
0.02380.0168
0.0326
0.0231
índice de
Alejamiento
la = 5¡Vm
0.1819
0.1271
0.3314
0.1553
3.1830
0.5196
3.4763
0.5052
0.1544
0.2515
2.2717
0.28081.555176
0.4159
1.2323
Mom
.G
eom
étri.
7(3,»)
7(3,1)
7<«)7(33)
7(3,4)
7(3,5)
7(4¿»7(4,1)
7(4¿)
7(43)
7(4,4)
7í4¿>
7(5.0)
7(54)
7(54)
Valor Medio
Vm
-0.0175
-0.0071
-0.0269
0.0036
-0.0318
0.0107
0.0422
-0.0013
0.0286
-0.0041
0.0267
-0.0080-0.0136
-0.0038
-0.0147
Desv. Std
80.0169
0.0241
0.0179
0.0219
0.0232
0.0248
0.0204
0.00142
0.0162
0.0152
0.0197
0.01880.0131
0.0159
0.0131
índice de
Alejamiento
la = \8¡Vm
0.9625
3.4111
0.6651
6.0529
0.7303
2.3174
0.485
10.9864
0.5674
3.6849
0.7387
2.36610.9588
1.2277
0.8921
Tabla 4. 3: Datos Estadísticos de los Momentos Geométricosgrupo (b)
de las Imágenes del
122
c) Datos Estadísticos de los Momentos Geométricos Invariantes al
desplazamiento y al escalamiento 77 con objetos distintos.
Mom
.G
eom
étri.
7(04)
7(03)
7(M)
7(0¿)
7(U)
'/(U)
7(13)
'/(U)
7(1.5)
7(2,0)
^ (2,i>7(24)
7(23)
7(2,4)
7(2,5)
Valor Medio
Km
0.1869-0.0135
0.1110
-0.0352
0.0069-0.0019
0.0074
-0.0004
0.0076
0.1341-0.0006
0.0197-0.0003
0.0088
-0.0001
Desv. Std
S
0.12710.0611
0.1386
0.1318
0.05070.0118
0.0266
0.0094
0.0215
0.06310.0165
0.02010.0051
0.0134
0.0025
índice de
Alejamiento
¡a = \6¡Vm0.68024.546
1.2488
3.7455
7.2928
6.0706
3.6033
2.1381
2.8181
0.4708
26.6885
1.016517.. 1038
1.5224
16.8147
Mom
.G
eom
étri.
7(3,0)
7(3,1)
7(34)
7(33)
7(3,4)
7(3,5)
7(4,0)
7(4,1)
7(44)
7(43)
7(4,4)
7í4¿)
7(5,0)
7(54)
7(54)
Valor Medio
Vm
-0.0051
0.0023-0.0012
0.0019-0.0001
0.0012
0.0480
-0.0003
0.006237
-0.0005
0.0027-0.0004-0.0042
0.0005
-0.0008
Desv. Std
80.01740.0192
0.0044
0.0092
0.00230.0058
0.0420
0.0085
0.0085
0.0028
0.00500.00190.1293
0.0100
0.0028
índice de
Alejamientola = \3iVm
3.41878.4650
3.6138
4.8206
45.36754.8191
0.875230.0607
1 3553
5.9750
1.86225.15473.0508
2.1098
3.4123
Tabla 4.4: Datos Estadísticos de los Momentos Geométricos 7? pq para imágenes delgrupo (c)
123
4.3 MOMENTOS DE ZERNIKE
Al igual que en los Momentos Geométricos, aquí se presentará en tablas tabuladas
los datos estadísticos del módulo de los Momentos de Zernike logrados en los tres
grupos de imágenes. Se excluye del análisis a los Momentos de Zernike Aoo y /!//, ya
que sus valores teóricos son la constante (3/7c y cero respectivamente.
4.3.1 Análisis de los Momentos de Zernike en distintas Clases deImágenes.
De los valores que se pueden apreciar en las tablas 4.5 y 4.6, donde se presentan
los datos estadísticos de los módulos de los Momentos de Zemike para imágenes del
grupo (a) y (b) se observa que en general los módulos de los Momentos de Zernike
tienen una separación intraclase que aunque no es excelente es aceptable.
Por otro lado, en la tabla 4.7 correspondiente a los datos estadísticos de los
módulos de los Momentos de Zernike para imágenes diferentes, se observa que aunque
el índice de alejamiento aumenta su valor respecto de las tablas anteriores, su valor no
se incrementa en forma dramática respecto de los valores del índice de alejamiento para
imágenes semejantes.
Se concluye entonces que los Momentos de Zernike son descriptores de calidad
mediana.
124
a) Datos Estadísticos de los Momentos de Zernike \A invariantes al' '- nm
desplazamiento, escalamiento y rotación, en imágenes del grupo (a):
tres.bmp afectado por las deformaciones geométricas de desplazamiento,
escalamiento y rotación.
Módulo
Mom.
Zernike
¡Aa»\l
¡A^l
¿4a,»/
IA^¡lA^X\l
IA^¡IA (4.4, /¡A^J¡A^l/A e*/
IA «.i» /A4i6j>/
Valor Medio
Vm
23.699
31.159
13.622
7.812
20.629
26.631
12.144
17.300
21.215
6.369
20.521
21.804
Des*. Std
823.042
4.777
4.955
2.800
9.694
20.308
3.883
7.906
5.752
2.504
8.741
10.446
índice de
Alejamiento
la = \S/Vm0.972
0.153
0.364
0.3581
0.4698
0.763
0.320
0.457
0.271
0.393
0.426
0.479
Módulo
Mom.
Zernike
¿4<M>/
¡A^l¿4p.it/
¡A^l¡Av&llA«n¡
¡Aojan'
lA^I
lA^I
¡A^l
¡A^l
Valor Medio
Vm
12.337
4.349
18.807
18.018
14.132
6.962
20.067
15.046
13.784
7.33316
4.807
Desv. Std
s7.375
2.841
7.246
6.965
3.259
3.032
18.997
713.111
7.117
3.772
3.341
índice de
Alejamiento
la = \8¡Vm\7
0.653
0.385
0.386
0.231
0.436
0.947
0.871
0.516
0.516
0.695
Tabla 4.5: Datos Estadísticos de los Momentos de Zernike \Araa Para imágenes del grupo (a)
125
b) Datos Estadísticos de los Momentos de Zernike A invariantes alnm
desplazamiento escalamiento y rotación, con objetos semejantes.Módulo
Mom.
Zernike
/Actjn/
lAQJ
/-4o.»/
/AOM/
/At4Jn/
A**»/A<IM>//*«..>//AS*/IA**I/A<6JO}/
A*«M,/
Valor Medio
Vm
18.446
19.469
14.321
12.872
19.6691
12.208
10.715
14.950
22.041
10.796
20.825
15.684
Desv. Std
s8.676
10.343
7.537
5.594
8.442
9.339
5.413
8.917
12.324
4.0658
13.894
11.940
índice de
Alejamiento
la = 8¡Vm\0
0.531
0.526
0.434
0.429
0.765
0.505
0.596
0.559
0.377
0.667
0.761
Módulo
Mom.Zernike
/A*A/
A***/
/AfTM/
/A™/lA«*l
/A™//Agutí'
A*«»//4(M»/
A*(M>/
lAMl
Valor Medio
Vm
11.310
12.091
16.702
16.742
10.806
8.478
14.843
14.277
18.339
12.794
11.340
Desv. Std
S4.815
5.078
10.244
10.583
5.675
4.372
17.401
10.963
11.837
4.066
4.694
índice de
Alejamiento
la = \SIVm
0.425
0.420
0.613
0.632
0.525
0.516
1.172
0.768
0.645
0.318
0.414
Tabla 4.6: Datos Estadísticos de los Momentos de Zernike ¿ para imágenes del grupo (b)
c) Datos Estadísticos de los Momentos de Zernike
desplazamiento escalamiento y rotación, con objetos Distintos.
invariantes al
Módulo
Mom.
Zernike
/Aojo*/
lAa*/
/A a»/
/AM/
/Atún/
/A**/lA^I
A^ftii /IA^IIAM!A<<M»/
lA*»l
Valor Medio
Vm
58.207
15.218
7.647
9.102
25.411
18.728
8.217
11.358
15.312
6.311
18.0494
17.230
Desv. Std
826.437
9.681
5.906
5.2327
20.056
13.334
5.625
10.540
9.127
4.708
16.643
14.501
índice de
Alejamiento
¡a = 5/Vm0.454
0.636
0.772
0.575
0.789
0.712
0.685
0.928
0.596
0.746
0.922
0.842
Módulo
Mom.Zernike
A*IM»/
MOA/
A* (MI/
/AttM/
/A™/lAtml
A^flMI)/
/AMf
A4(M)/
IAM//AM/
Valor Medio
Km
12.096
7.214
7.8555
12.528
8.935
5.003
12.596,
14.966
12.807
11.665
4.797
Desv. Std
S
7.341
4.726
6.949
8.614
4.952
3.899
12.595
12.299
11.862
5.681
3.796
índice de
Alejamiento
la = S/Vm0.607
0.655
0.885
0.688
0.554
0.779
1.000
0.822
0.926
0.487
0.791
Tabla 4.7: Datos Estadísticos de los Momentos de Zernike A P*ra imágenes del grupo (c)
126
4.4 DESCRIPTORES DE FOURIER
Para el análisis de los descriptores de Fourier se utilizará, tanto para la
función contorno en el plano complejo como para la función radial, los módulos
de los descriptores que son invariantes a la rotación. Adicional mente se los
normalizará al escalamiento dividendo cada uno de los coeficientes para el
coeficiente ac¡ para la función contorno y ar0 para la función radial'.
4.4.1 Función Contorno en el Plano Complejo.
Ya que el coeficiente ac0 no es invariante al desplazamiento y que el
coeficiente act normalizado es siempre igual a la unidad, no serán tomados en
cuenta para el análisis.
4.4.1.1 Análisis de los Descriptores de Fourier Usando la FunciónContorno en distintas Clases de Imágenes.
Al observar el índice de alejamiento en los tres grupos de imágenes en las
tablas 4.8, 4.9 y 4.10, se puede apreciar que los descriptores de Fourier tienen un
excelente desempeño hasta aproximadamente el séptimo armónico. A partir del
octavo armónico se puede notar que el índice de alejamiento no es consecuente
con el grupo de imágenes que se analiza y mas bien es un valor que indicaría que
las imágenes son diferentes en los tres casos. Esto hecho es lógico si se recuerda
que los coeficientes de Fourier correspondientes a los primeros armónicos son
representativos de la forma en general y que los coeficientes correspondientes a
armónicos altos son representativos de los detalles y el ruido. De los datos
disponibles en las tablas 4.8, 4.9 y 4.10 la frontera entre la forma y el detalle
1 Para identificar a los descriptores de Fourier normalizados al escalamiento se utilizara los siguientestérminos: acN = QC !ac. para la función contorno y. arN = ar ¡arn para la función radial.
n n i 1 n n > O
127
parece ser el séptimo armónico, al menos para la clase de los caracteres
manuscritos y a la resolución de 180 dpi (esta conclusión no se puede extender a
otra clase de formas y la resolución es un factor que se debe tomar en cuenta).
Este hecho implica que para el reconocimiento de dígitos manuscritos se use los
descriptores que se pueden obtener hasta el séptimo armónico.
a) Datos Estadísticos de los Descriptores de Fourier acN invariantes al
desplazamiento, escalamiento y rotación, en imágenes del grupo (a):
tres.bmp afectado por las deformaciones geométricas de desplazamiento,
escalamiento y rotación.
Módulo
D. Fourier
f. contorno
/acN-M/
/acN-9/
lacN-nl
lacN-,1
lacN-J
lacN-J
lacN-J
lacN-3/
/acN-2/
lacN-i 1
Valor Medio
Vm
0.0146
0.0220
0.0134
0.0289
0.0523
0.1372
0.1321
0.1131
0.1190
0.5933
Desv. Std
80.00930.0103
0.0086
0.0117
0.0088
0.0069
0.0131
0.0126
0.0102
0.0180
índice de
Alejamiento
la = \5/Vm
0.638
0.467
0.637
0.407
0.170
0.050
0.099
0.112
0.086
0.030
Módulo
D. Fourier
f. contorno
lacNil
lacN3l
lacNj
lacNj
lacNj
lacN-j/
lacNil
lacNol
lacNM¡
Valor Medio
Vm
0.41650.0978
0.2112
0.0835
0.0585
0.0444
0.0135
0.0266
0.0142
Desv. Std
ó
0.0146
0.0084
0.0162
0.0098
0.0121
0.0100
0.0120
0.0068
0.0071
índice de
Alejamiento
/a- 8jVm0.0350.086
0.077
0.117
0.206
0.226
0.868
0.255
0.500
Tabla 4.8 :Datos Estadísticos de los Descriptores de Fourier acNn para imágenes delgrupo (a)
128
b) Datos Estadísticos de los Descriptores de Fourier acNn invariantes al
desplazamiento, escalamiento y rotación, para objetos semejantes.
Módulo
D. Fourier
f. contorno
lacN-J
lacN-J
lacN-*l
lacN-,1
lacN-J
lacN-J
lacN-J
lacN-J
/acN-t/
lacN-J
Valor Medio
Vm
0.01959
0.01383
0.0195
0.0312
0.0446
0.1006
0.2619
0.0946
0.1663
0.6909
Desv. Std
80.0093
0.0081
0.0103
0.0106
0.0173
0.0204
0.0614
0.0407
0.0591
0.0463
índice de
Alejamiento
la = \S/Vm0.475
0.585
0.529
0.341
0.386
0.203
0.234
0.430
0.355
0.067
Módulo
D. Fourier
f. contorno
facNj
lacNj
lacNj
lacNj
lacNj
lacN-jl
lacNj
lacNj
/acNÍO/
Valor Medio
Vm
0.3828
0.1264
0.2834
0.0859
0.0331
0.0376
0.0455
0.02324
0.02732
Desv. Std
8
0.0816
0.055
0.0563
0.0388
0.0211
0.0175
0.0117
0.0136
0.0102
índice de
Alejamiento
f a = S/Vm
0.213
0.435
0.198
0.451
0.637
0.466
0.258
0.588
0.374
Tabla 4.9: Dalos Estadísticos de los Descriptores de Fourier acNH para imágenes del grupo (b)
d) Datos Estadísticos de los Descriptores de Fourier ücNn invariantes al
desplazamiento escalamiento y rotación, para objetos diferentes.
Módulo
D. Fourier
f. contorno
lacN-wl
lacN-9l
lacN-tl
lacN-il
lacN-J
lacN-J
lacN-J
lacN-J
lacN-2/
lacN-J
Valor Medio
Vm
0.0169
0.0222
0.0269
0.0348
0.0272
0.0694
0.0648
0.1397
0 1087
0.2721
Desv. Std
8
0.0148
0.0185
0.0245
0.0308
0.0193
0.0472
0.0491
0.1221
0.0889
0.1716
índice de
Alejamiento
la = \8¡Vm
0.877
0.833
0.911
0.883
0.708
0.681
0.758
0.874
0.819
0.631
Módulo
D. Fourier
f. contorno
lacNj
lacNj
lacNj
lacNj
lacNj
/acN7/
/acN9/
lacN9l
lacN^I
Valor Medio
Vm
0.1261
0.1613
0.0704
0.0634
0.0375
0.0363
0.0302
0.0260
0.0206
Desv. Std
ó
0.1127
0.1436
0.0617
0.0371
0.0289
0.0220
0.0282
0.0193
0.0193
índice de
Alejamiento
la = S/Vm0.893
0.890
0.876
0.585
0.770
0.607
0.935
0.742
0.934
Tabla 4.10: Da tos Estadísticos de los Descriptores de Fourier acNm para imágenes del grupo (c)
129
4.4.1.2 Cálculo de Áreas.
Este tema junto con la obtención de esqueletos es tratado en el Anexo B,
ya que éstos aunque son temas que se salen del alcance de esta tesis, son
aplicaciones sumamente interesantes de los Descriptores de Fourier usando la
función Contorno. Para profundizar mas en estos temas se recomienda revisar el
anexo B.
En la Fig.4.2 se muestran 4 áreas en tamaño original. Se utiliza estas
formas para calcular sus áreas con la técnica de Fourier indicada en el Anexo B y
para compararlas con su valor real que ha sido previamente determinado.
Área 1 = 7.1416 cm' Área 2 = 1.3412 cm'
Área 3 = 20.9762 cm' Área 4 = 14.5118 cm2
Fig.4. 2: Formas a utilizarse para el cálculo de Áreas mediante el uso de Descriptoresde Fourier.
130
En la Tabla 4.11 se indica el valor real de las áreas mostradas en la fig. 4.2
y los valores calculados con los Descriptores de Fourier con 2, 4, 8 y 16
armónicos. Los valores obtenidos son bastante aproximados a los valores reales,
siendo mejor su aproximación mientras más armónicos se ha usado. El número
de armónicos necesarios para calcular el área de una figura dependerá
principalmente de la complejidad de la figura. Como norma se puede decir que
mientras mejor se ajuste el contorno reconstruido al contorno original, entonces
el área se calculará igualmente con mejor aproximación.
Área real—>
Áre
aC
alcu
lada
con
Des
crip
tors
de
Fou
rier
n=2
n=4
n = 8
n = 16
Área 1Ion2!7,1416
5.5279
7.3084
7.2695
7.2729
Área 2fcm2]1.3412
2.0828
1.3816
1.4153
1.4878
Área 3fcrn2]
20.9762
18.8501
18.2254
20.6986
20.8658
Área 4fcm2/
14.5118
16.1903
16.9761
14.5700
14.4540
Tabla 4. 11 :Calculo de Áreas usando Descriptores de fourier con 2,4,8y 16 armónicos
4.4.1.3 Obtención de Esqueletos.
Mediante esta técnica no se puede obtener el esqueleto de cualquier
contorno, sino solamente de aquellos contornos que cumplan con las siguientes
características:
• Que el contorno no sea una curva cerrada.
• Que el contorno tenga una silueta que no se traslape.
131
En la Fig 4.3 se muestran ejemplos de obtención de esqueletos con la
ayuda de los descriptores de Fourier usando la función contorno. Los tres
primeros ejemplos que muestran la obtención del esqueleto de los dígitos 3, 5 y 7
son ejemplos de contornos que cumplen con las condiciones estipuladas. El
último ejemplo, un 4 manuscrito, es un ejemplo de un contorno que no cumple
con las condiciones estipuladas y, se puede apreciar que el esqueleto extraído de
éste no guarda relación con el contorno.
ImagenOriginal
37
Esqueletos Obtenidos Usando Descriptoresde Fourier
Armónicos Armónicos
7
8Armónicos
7
16Armónicos
Fig.4.3 : Ejemplos Obtención de Esqueletos Meidante el Uso de Descriptores de Fourier.
4.4.2 Función Radial.
Para el análisis de la función radial se omitirá el coeficiente arN0 ya que su
valor normalizado es siempre igual a la unidad.
132
4.4.2.1 Análisis de los Descriptores de Fourier Usando la FunciónRadial en Distintas Clases de Imágenes.
Como se puede apreciar en las tablas 4.12, 4.13 y 4.14, los descriptores de
Fourier usando la función radial tienen un buen desempeño hasta
aproximadamente el octavo armónico. Al igual que en la función contorno, el
octavo armónico parece ser la frontera entre la forma general y el detalle mas el
ruido para los caracteres manuscritos por lo cual, los coeficientes de Fourier
usando la función radial obtenidos por encima del octavo armónico no son
adecuados para usarse en un proyecto de reconocimiento de caracteres
manuscritos. Lamentablemente esto implica que en este caso se disponga de un
número reducido de descriptores pues se podrían obtener 16 de ellos si se toman
en cuenta los módulos y las fases.
a) Datos Estadísticos de los Descriptores de Fourier ar invariantes al
desplazamiento, escalamiento y rotación, en imágenes del grupo (a):
tres.bmp afectado por las deformaciones geométricas de desplazamiento,
escalamiento y rotación.
Módulos
D. Fourier
F. Radial
larNJlarNJlarNJlarNJlarNJlarNJlarNJlarNJlarNJlarNJ
Valor Medio
Vm
0.1415
0.2365
0.052
0.0635
0.0302
0.0180
0.0141
0.0273
0.0128
0.0129
Desv. Std
50.0158
0.0192
0.0075
0.0055
0.0094
0.0067
0.0055
0.0059
0.0053
0.0061
índice de
Alejamiento
la = \5¡Vm0.1110.0810.144
0.086
0.312
0.362
0.391
0.217
0.415
0.472
Tabla 4. 12: Datos Estadísticos de los Descriptores de Fourier arN. para imágenes delgrupo (a)
133
b) Datos Estadísticos de los Descriptores de Fourier arn invariantes al
desplazamiento, escalamiento y rotación, en imágenes del grupo (b):
dígito tres manuscrito por varias personas.
Módulos
D. Fourier
F. Radial
larNJlarNJlarNJlarNJlarNJlarNJlarNJlarNJlarNJlarNJ
Valor Medio
Vm
0.1080
0.2389
0.0419
0.0703
0.0227
0.0280
0.0355
0.0193
0.0170
0.0124
Desv. Std
8
0.0248
0.0319
0.0157
0.0188
0.0100
0.0128
0.0121
0.0078
0.0047
0.0072
índice de
Alejamiento
la = 5¡Vm0.229
0.133
0.375
0.268
0.443
0.456
0.341
0.406
0.279
0.580
Tabla 4.13: Datos Estadísticos de los Descriptores de Fourier arNn para imágenes delgrupo (b)
c) Datos Estadísticos de los Descriptores de Fourier arn invariantes al
desplazamiento escalamiento y rotación, en imágenes distintas, grupo (c):
Módulos
D. Fourier
F. Radial
larNJ
larNJ
larNJ
larNJlarNJlarNJ
larNJlarNJlarNJ
larNJ
Valor Medio
Vm
0.0530
0.1443
0.0711
0.0779
0.0399
0.0375
0.0221
0.0238
0.0191
0.0126
Desv. Std
50.0363
0.0671
0.0549
0.0461
0.0300
0.0261
0.0170
0.0200
0.0198
0.0056
índice deAlejamiento
la = S/Vm0.683
0.546
0.772
0.599
0.754
0.695
0.766
0.844
1.037
0.444
Tabla 4.14: Datos Estadísticos de los Descriptores de Fourier arNM para imágenes del
grupo (c)
134
4.5 TIEMPO DE PROCESAMIENTO
Un parámetro importante para determinar la eficiencia de un método de
extracción de características de imágenes, es el tiempo que se demora en extraer
un número determinado de descriptores. En las tablas 4.15 y 4.16 se muestran los
tiempos que requieren los diferentes métodos para extraer un número
determinado de descriptores para los diferentes métodos. Tanto para una imagen
de contorno complicado como para una imagen de contorno sencillo. Sin
embargo, para una mejor y más rápida visualización de los datos se presentan en
las figuras 4.4 y 4.5 las gráficas de las curvas tiempo de procesamiento vs No.
de descriptores de los 4 métodos estudiados. En la fig. 4.4 se muestran estas
curvas para el caso de un contorno complicado y la fig.4.5 presenta el caso de un
contorno sencillo. Estas curvas han sido obtenidas mediante una regresión
polinomial de 4to orden haciendo uso de 12 puntos (sólo unos pocos de estos
puntos aparecen en los datos de las tablas 4.15 y 4.16).
En las tablas, en la primera columna se muestra el orden n que se usó para
extraer los descriptores. Para cada método hay un grupo de tres datos: el
primero, Nd, indica el número total de descriptores que se obtienen, el segundo,
tt, indica el tiempo requerido para calcular dicho número de descriptores y el
tercer dato, tpd, indica la relación entre los datos anteriores, es decir el tiempo
promedio para calcular un descriptor.
Se puede observar que para los momentos geométricos y las técnicas de
Fourier el tiempo de procesamiento es directamente proporcional al número de
descriptores que se extrae, cosa que no sucede con los Momentos de Zemike
donde el tiempo de procesamiento crece en forma exponencial conforme se
aumenta el número de descriptores. De aquí que mientras en los momentos
geométricos el tiempo de procesamiento por descriptor se mantiene
135
aproximadamente constante para cualquier valor de n, para los momentos de
Zemike el tiempo de procesamiento por descriptor se incrementa. En cambio
para las técnicas de Fourier el tiempo de procesamiento por descriptor se reduce
conforme se incrementa el número de armónicos, este hecho se debe a que la
mayor porción del tiempo se utiliza para extraer el contorno el cual se mantiene
constante independientemente del número de armónicos que se utilice para
calcular los descriptores (para la imagen fractal.bmp el tiempo de extracción del
contorno es de 0.72 seg, y para la imagen cinco.bmp es de 0.11 seg). Si se
excluye el tiempo de extracción del contorno, el tiempo de procesamiento por
descriptor se mantiene aproximadamente constante en las técnicas de Fourier.
Haciendo una comparación entre los datos para una imagen de contorno
complicado (tabla 4.15 y Fig.4.3) y para una imagen de contorno sencillo (tabla
4.16 y Fig. 4.4) se puede notar lo siguiente:
• Para una imagen de contorno complejo (un contorno complejo implica un
mayor número de pixeles no nulos para procesar) iniciahnente el tiempo de
procesamiento es mayor en las técnicas de Fourier que en el caso de los
Momentos Geométricos y los Momentos de Zernike. Sin embargo el tiempo
de procesamiento por descriptor (representado por la pendiente de las curvas
en un punto dado) es menor para el caso de Fourier usando la función
contorno y con la función radial éste parece ser equivalente que para el caso
de los Momentos geométricos.
• Cabe señalar que este análisis es válido sólo para el caso del contorno usado.
Las gráficas sugieren que a medida que la complejidad del contorno decrece,
el tiempo de procesamiento por descriptor (pendiente de la curva) decrece a
mayor velocidad en las técnicas de Fourier, luego en los momentos
geométricos y por último en los Momentos de Zernike.
• En el caso de una imagen con un contorno relativamente sencillo Fig. 4.4, se
puede observar que el tiempo de procesamiento por descriptor es bastante
136
menor en el caso de los descriptores usando técnicas de Fourier que en el caso
de los momentos geométricos y los momentos de Zernike.
En conclusión se puede decir que para el caso del reconocimiento de
dígitos manuscritos, cuyos contomos son en general sencillos, la complejidad de
cálculo, él cual está asociada al tiempo de procesamiento es menor en las técnicas
de Fourier y especialmente usando la función Contorno.
Imagen FractaLbmp Es ¿sais
n
61224
Moni. Geom. rj M
Nd
49169576
tt[segl
1.324.5116.31
tpd[seg]
0.0270.0270.028
Tiempos de procesamiento de la ImagenFractal.bmp
Mom. De Zernike[seg]
Nd
3298338
tt[segl
0.672.4412.65
tpd[seg]
0.0210.0250.037
Fourier F. Contorno[seg]
Nd
265098
tt[seg]
1.251.702.59
tpd[seg]
0.0480.0340.026
Fourier F. Radial[seg]
Nd
142650
tt[seg]
1.251.662.30
tpd[seg]
0.0890.0640.046
Tabla 4.15 : Tiempos de Procesamiento para una Imagen con un Contorno Complejo.
Zernike
Mom. O«om
Fourier f. Radial
Fouríerf. Contorno
100 200 309
No. de Descriptores
400
Fig.4.1: Tiempo de Porcesamiento Vs No. de Descriptores parauna imagen de Contorno Complicado.
137
5
Imagen cinco.bmp
n
61224
Mom. Geom. rj M|seg|
Nd49169576
tt0.662.147.69
tpd0.0130.0130.013
Tiempos de procesamiento de la Imagen cinco.bmp
Mom. De Zernike[segl
Nd3298338
tt0.551.879.94
tpd0.0170.0190.029
Fourier F. Contorno[segj
Nd265098
tt0.1570.1720.219
tpd0.0060.0030.002
Fourier F. RadialIseg]
Nd142650
tt0.1640.1720.219
tpd00120.0070.004
Tabla 4.16: Tiempo de Procesamiento para una Imagen con un contorno Sencillo.
10
Zemike
Mom. C«om
Fourierf. Radial
Fourier r. Contomo
100 200 300
No. de Descriptores400
Fig.4. 2: Tiempo de Procesamiento Vs No. de Descriptores parauna I macen de Contorno Sencillo.
4.6 RECONOCIMIENTO DE DÍGITOS MANUSCRITOS
Para facilitar el análisis de resultados del reconocimiento de dígitos manuscritos se
presentará una tabla de datos, la cual está constituida por una cuadrícula que se debe
entender de la siguiente manera:
• En sentido horizontal constan los dígitos reales que se ha proporcionado al
programa para que sean reconocidos.
• En sentido vertical están los dígitos que corresponden a lo que el programa ha
reconocido.
• Por ejemplo, supóngase que se han proporcionado diez imágenes por cada uno
de los diez dígitos (100 numerales en total), en cada columna se puede
observar con que numeral fue clasificado cada uno de las diez imágenes de
138
un numeral específico. Es decir en las diagonal de la cuadrícula (casillas
sombreadas) se puede apreciar cuantas veces se clasificó correctamente a un
dígito, mientras que en las demás casillas se puede apreciar cuantas veces se
confijndió un dígito con otro en particular, estando en sentido horizontal los
dígitos reales, y en sentido vertical los dígitos a que han sido asignados por el
programa de reconocimiento.
• Luego, en las últimas filas consta el número total de aciertos de cada uno de
los diez dígitos, el porcentaje de acierto de cada uno de los dígitos y por último
el porcentaje total de acierto.
* Se presentará dos tablas de resultados por cada método, una para muestras
dentro de la población de entrenamiento y otra para muestras fuera de la
población de entrenamiento
Antes de pasar a los resultados individuales de cada uno de los métodos, en la
tabla 4.17 se presenta los resultados generales de los 4 métodos.
% Acierto en
Población de E,
% Acierto fuera de
Población de E.
Momentos
Geométricos
65.1
56.1
Momentos de
Zernike
74.2
52.2
D. Fourier
f. Contorno
90.9
80.0
D. Fourier
f. Radial
72.4
52.5
Tabla 4.17 : Resultados Generales en el Reconocimiento de Dígitos Manuscritos.
De la tabla 4.17 se puede apreciar que el reconocimiento de dígitos manuscritos
con el método de los Descriptores de Fourier usando la función contorno obtiene los
mejores resultados con un acierto del 91% dentro de la población de entrenamiento y de
un 80 % fuera de la población de entrenamiento. Si se fija el porcentaje de acierto fuera
de la población de entrenamiento como parámetro para medir la eficiencia de los
métodos de reconocimiento utilizados, le siguen: los Momentos Geométricos, los
descriptores de Fourier usando la función Radial y los Momentos de Zernike, en ese
orden.
139
4.6.1 Momentos Geométricos
Díg
ito R
econ
ocid
o
0
1
2
3
4
5
6
7
8
9
# Aciertos
% Acierto
Dígito Real
0
86
0
0
14
0
2
0
7
0
86
86
1
1
81
2
0
3
4
0
4
4
1
81
81
2
9
9
42
6
2
16
3
4
8
1
42
42
3
0
0
1
89
0
4
0
3
1
2
89
89
4
3
4
0
0
81
0
2
3
5
2
81
81
5
0
2
3
15
0
77
1
0
1
1
77
77
6
2
7
0
1
1
1
78
3
3
4
78
78
7
7
1
1
6
0
0
0
67
18
0
67
67
8
27
6
4
1
15
0
1
8
37
1
37
37
9
3
13
0
29
10
1
2
21
8
13
13
13
Porcentaje General de Acierto 65.1 %
Tabla 4.18:Momentos Geométricos, Resultados del Reconocimiento de Dígitos Manuscritos dentrode la Población de Entrenamiento.
Díg
ito
Rec
onoc
ido
0
1
2
3
4
5
6
7
8
9
# Aciertos
% Acierto
Dígito Real
0
140
4
0
1
16
0
5
3
29
2
140
70
1
0
115
4
5
20
11
2
20
22
1
115
57.5
2
8
21
58
n4
30
4
13
32
2
58
34
3
1
4
0
171
0
9
1
12
1
1
171
85
4
9
7
1
1
138
5
6
10
11
12
138
69
5
1
9
10
39
0
122
4
6
7
2
122
61
6
4
18
0
1
7
1
133
8
20
7
133
66.5
7
9
16
1
17
3
2
2
115
34
1
115
57.5
8
35
13
3
4
20
2
3
12
105
3
IOS
52.5
9
4
28
4
92
95
4
2
35
21
15
15
7.5
Porcentaje General de Acierto 56.05 %
Tabla 4.19:Momentos Geométricos, Resultados del Reconocimiento de Dígitos Manuscritos fuerade la Población de Entrenamiento.
140
4.6.2 Momentos de Zernike
Díg
ito R
econ
ocid
o0
1
2
3
4
5
6
7
8
9
# Aciertos
% Acierto
Dígito Real
0
89
1
0
1
2
0
1
0
5
1
89
89
1
0
87
0
0
3
0
0
4
6
0
87
87
2
1
5
47
14
3
5
1
11
11
2
47
47
3
0
1
0
76
0
12
0
2
6
3
76
76
4
1
1
1
2
91
0
0
1
3
0
91
91
5
1
1
2
2
2
87
0
3
2
0
87
87
6
0
2
0
4
6
3
60
6
10
9
60
60
7
0
4
2
2
5
1
0
83
3
0
83
83
8
1
7
4
1
4
2
0
4
74
3
74
74
9
1
2
2
2
16
4
4
8
13
48
48
48
Porcentaje General de Acierto 74.2 %
Tabla 4.20:Momentos de Zernike, Resultados del Reconocimiento de Dígitos Manuscritos dentrode la Población de Entrenamiento.
Díg
ito
Rec
onoc
ido
0
1
2
3
4
5
6
7
8
9
# Aciertos
% Acierto
Dígito Real
0
148
5
0
5
10
6
3
5
16
2
148
74
1
1
141
2
6
24
4
0
8
11
3
141
70.5
2
1
21
71
22
11
8
10
29
21
6
71
35.5
3
1
8
3
119
12
26
5
9
12
5
119
59.5
4
4
4
2
4
130
11
7
15
18
5
130
65
5
4
14
8
9
11
104
13
13
18
6
104
52
6
10
6
0
12
27
10
67
6
31
31
67
33.5
7
0
28
2
13
35
10
0
101
6
5
101
50.5
8
5
17
3
4
23
6
7
11
117
7
117
58.5
9
4
11
2
15
32
15
30
16
29
46
46
23
Porcentaje General de Acierto 52.2 %
Tabla 4. 21:Momentos de Zernike, Resultados del Reconocimiento de Dígitos Manuscritos fuera dela Población de Entrenamiento.
141
4.6.3 Descriptores de Fourier usando la función Contorno
Díg
ito
Rec
onoc
ido
0
1
2
3
4
5
6
7
8
9
# Aciertos
% Acierto
Dígito Real
0
94
0
0
0
10
0
0
5
0
94
94
1
0
94
3
0
0
0
0
2
0
194
94
2
0
4
81
0
2
4
0
4
2
3
81
81
3
2
0
0
96
0
I0
0
0
196
96
4
0
2
3
1
91
0
1
0
11
91
91
5
0
0
10
0
99
0
0
0
0
99
99
6
0
2
0
0
10
89
0
3
5
89
89
7
2
3
2
0
2
1
1
88
1
0
88
88
81
4
1
1
0
2
0
3
0
89
0
89
89
9
2
2
1
0
2
0
3
2
0
88
88
88
Porcentaje General de Acierto 90.9 %
Tabla 4. 22: Descriptores de Fourier usando la f. Contorno, Resultados del Reconocimiento deDígitos Manuscritos dentro de la Población de Entrenamiento.
Díg
ito
Rec
onoc
ido
0
1
2
3
4
5
6
7
8
9
# Aciertos
% Acierto
Dígito Real
0
169
1
0
0
6
0
3
0
18
3
169
84.5
1
4
155
6
1
6
1
1
10
7
9
155
77.5
2
2
11
153
2
8
0
2
9
6
7
153
76.5
3
1
4
5
165
0
5
2
6
2
10
165
82.5
4
2
5
3
1
173
3
1
4
6
2
173
86.5
5
1
5
11
8
0
156
5
2
5
7
156
78
6
3
1
0
0
0
1170
0
10
15
170
85
7
2
18
7
4
11
I
1
140
5
11
140
70
8
18
3
0
3
10
0
3
1
158
4
157
79
9
1
9
2
8
5
1
8
1
4
161
161
80.5
Porcentaje General de Acierto 80.0 %
Tabla 4. 23: Descriptores de Fourier usando la f. Contorno, Resultados del Reconocimiento deDígitos Manuscritos fuera de la Población de Entrenamiento.
142
4.6.4 Descriptores de Fourier usando la función Radial
Díg
ito R
econ
ocid
o0
1
2
3
4
5
6
7
8
9
# Aciertos
% Acierto
Dígito Real
0
86
1
3
1
1
0
1
I
5
1
86
86
1
2
92
0
1
1
1
0
0
0
3
92
92
2
2
7
66
1
2
2
1
6
5
8
66
66
3
5
5
2
55
1
8
3
5
11
5
55
55
4
0
1
1
0
86
1
2
2
3
4
86
86
5
2
8
13
9
2
50
1
5
9
1
50
50
6
2
4
0
0
2
0
88
2
1
1
88
88
7
2
5
5
1
0
1
2
76
1
7
76
76
8
5
9
8
5
4
0
3
0
65
1
65
65
9
10
1
1
12
2
0
13
0
1
60
60
60
Porcentaje General de Acierto 72.4 %
Tabla 4. 24:Descriptores de Fourier usando la f. Radial, Resultados del Reconocimiento de DígitosManuscritos dentro de la Población de Entrenamiento.
Díg
ito
Rec
onoc
ido
0
1
2
3
4
5
6
7
8
9
# Aciertos
% Acierto
Dígito Real
0
103
18
6
2
11
6
20
5
14
15
103
51.5
1
4
117
7
3
12
5
11
17
11
13
117
58.5
2
6
21
97
7
6
5
2
13
20
23
97
48.5
3
9
11
11
119
3
12
11
10
6
8
119
59.5
4
5
25
8
3
106
7
8
10
18
10
106
53
5
11
30
34
24
8
36
5
11
29
12
36
18
6
5
12
0
3
3
0
165
3
4
5
165
82.5
7
7
8
21
6
3
1
5
119
7
23
119
59.5
8
12
39
14
6
9
8
5
11
81
15
81
40.5
9
11
12
4
33
3
2
19
3
7
106
106
53
Porcentaje General de Acierto 52.4 %
Tabla 4. 25:Descriptores de Fourier usando la f. Radial, Resultados del Reconocimiento de DígitosManuscritos fuera de la Población de Entrenamiento.
143
4.7 CONCLUSIONES
• Para el reconocimiento de dígitos manuscritos, los Descriptores de Fourier usando
la función Contorno presentan los mejores resultados, le siguen los Momentos
Geométricos, los descriptores de Fourier usando la función Radial y los Momentos
de Zemike en ese orden, según los siguientes resultados:
Método
1) D. Fourier f. Contorno
2) Momentos Geométricos
3) D. Fourier f. Radial
4) Momentos de Zernike
% Acierto
En Población de Ent
90.9
65.1
72.4
72.2
Fuera de Población de Ent
80.0
56.1
52.5
52.2
• Según el análisis estadístico los descriptores de Fourier con armónicos menores a
ocho, tanto para la función radial como para la función Contorno, representan a la
forma general (en el caso de caracteres manuscritos). Los descriptores de Fourier a
partir del octavo armónico empiezan a ser representativos del ruido y los detalles.
• Los descriptores de mejor calidad según su separación intraclase e interclase son los
Descriptores de Fourier usando la función Contorno, le siguen los Descriptores de
Fourier usando la función Radial luego están los Momentos Geométricos y
finalmente los Momentos de Zernike.
• Que los Momentos Geométricos presenten mejores resultados que los Descriptores
de Fourier usando la función Radial en el reconocimiento de dígitos manuscritos se
explica en el hecho del número limitado de descriptores disponibles que representen
a la forma general de los dígitos manuscritos en el caso de los Descriptores de
Fourier usando la función Radial.
• Según la complejidad de cálculo, la cual está directamente relacionada con el tiempo
de procesamiento, los Descriptores usando técnicas de Fourier presentan la menor
complejidad, luego siguen los Momentos Geométricos y por último los Momentos
de Zernike.
Referencias:
(1¡ Richard I. Levin & David S. Rubin, "Estadística para Administradores",Prentice-Hall Hispanoamericana S.A., México, 1996, pp 117-128.
144
CONCLUSIONES Y RECOMENDACIONES
• En la actualidad se dedican grandes esfuerzos en la investigación y desarrollo de
sistemas que realicen procesos sin necesidad de supervisión humana, pues sus
aplicaciones son enormes. En este esfuerzo son temas de gran importancia, el
reconocimiento de patrones y las redes neuronales.
• La extracción de características de imágenes digitales, tiene por objetivo el eliminar
información redundante mediante la obtención de un conjunto de valores numéricos,
llamados en general como descriptores, los cuales representan a propiedades
importantes de la imagen de la cual se los extrajo. En muchos casos es posible
reconstruir una versión aproximada de la imagen original a partir de las
características que se extrajeron de ella.
• Una de las principales aplicaciones de la extracción de características de imágenes
digitales, es el reconocimiento de patrones
• La calidad de los descriptores se determina basándose en una buena separación
intraclase (valores cercanos para imágenes parecidas), a una buena separación
interclase (valores alejados para imágenes distintas) y a la posibilidad de poseer
propiedades de invarianza a las deformaciones geométricas de desplazamiento,
escalamiento y rotación.
• Los Momentos Geométricos y los Momentos de Zernike son métodos que utilizan
toda la superficie de la imagen para la obtención de sus características, mientras que
los descriptores que se obtienen mediante el uso de técnicas de Fourier, solo utilizan
el contorno de un objeto representado en una imagen. Esto limita el uso de los
Descriptores de Fourier a aplicaciones donde es suficiente el contorno para describir
a un objeto, como por ejemplo el reconocimiento de caracteres, y excluye a los
descriptores de Fourier de aplicaciones donde la información contenida en la
superficie del objeto/imagen es importante como por ejemplo el reconocimiento de
texturas.
• La obtención de invarianza a las deformaciones geométricas se puede obtener de
varias formas: a) procesando previamente a la imagen para que sea invariante a las
deformaciones geométricas y luego extrayendo sus descriptores b) Aprovechando
145
propiedades intrínsecas de los descriptores extraídos y c) Aplicando métodos
matemáticos., posterior a la extracción de los descriptores.
Lo deseable para obtener invarianza en los descriptores es aprovechar sus
propiedades intrínsecas, pues evita hacer procesos extras. Si los descriptores no
poseen estas propiedades entonces se puede recurrir a las otras posibilidades.
Las deformaciones geométricas de escalamiento y rotación provocan cierto grado de
distorsión en imágenes digitales. Esto produce error en el cálculo de descriptores,
especialmente cuando se quiere obtener ¡nvarianza a estas deformaciones mediante
la aplicación de métodos matemáticos después de la obtención de los descriptores.
Del análisis estadístico realizado en el capítulo IV, los descriptores con mayor
calidad en el caso que se apliquen a caracteres manuscritos son los Descriptores de
Fourier usando la función contorno, luego están los Descriptores de Fourier usando
la función Radial, los Momentos Geométricos y finalmente los Momentos de
Zernike.
El tiempo de procesamiento para la obtención de los descriptores es directamente
proporcional al número de descriptores calculados en todos los métodos excepto los
Momentos de Zernike, donde el tiempo de procesamiento crece en forma
exponencial a medida que crece el número de descriptores calculados.
El tiempo de procesamiento está directamente relacionado con la complejidad de
cálculo. Los métodos con una complejidad de cálculo que va de menos a más son:
Descriptores de Fourier usando la función Contorno, Descriptores de Fourier usando
la función Radial, los Momentos Geométricos y los Momentos de Zernike.
En el caso de los descriptores de Fourier, con el uso de la función radial se pierde
información del contorno, de ahí que su calidad sea inferior a la de los descriptores
de Fourier usando la función Contorno.
De los descriptores de Fourier usando la función Contorno, se puede extraer
información de la orientación relativa del objeto, información que se pierde en el
caso de la función radial.
146
La red de propagación hacia atrás es un instrumento poderoso, ya que por si misma
se adapta en forma dinámica y encuentra una solución funcional de un problema
determinado. En este caso se la ha utilizado para el reconocimiento de dígitos
manuscritos.
La red de propagación hacia atrás generaliza bien, es decir que si se le presenta un
vector de entrada perteneciente a una imagen perteneciente a una clase, la red
tenderá a asociarla a esta clase, aunque la imagen no haya sido parte del conjunto de
entrenamiento. Sin embargo una red de propagación hacia atrás no extrapola bien, lo
que implica que si no se entrena la red de manera adecuada, usando una clase
concreta de vectores de entrada, la posterior identificación de miembros de esta
clase puede ser imprecisa.
Los métodos de extracción de características de imágenes expuestas en esta tesis
están aplicadas por facilidad a imágenes binarias, sin embargo sus conceptos se
pueden aplicar sin problema a imágenes monocromáticas en el caso de los
momentos geométricos y momentos de Zernike y se pueden adaptar fácilmente en
el caso de los Descriptores de Fourier.
Con el propósito de dar una idea clara de los fundamentos y aplicaciones de la
extracción de características de imágenes, en esta tesis se ha visto 4 de los métodos
más conocidos, sin embargo existen muchos otros métodos, cuyo estudio es
complementario al hecho en esta tesis como por ejemplo: la transformada de Hough,
la transformada de onda (wavelets transform), la transformada de Gabor,
caracterización morfométrica por nombrar algunos.
En este trabajo, la extracción de características de imágenes se ha utilizado en una
de sus aplicaciones más comunes, el reconocimiento de dígitos manuscritos, sin
embargo sus aplicaciones son mucho más amplias y se nombrará aquí algunos
ejemplos que se pueden considerar como posibles temas de tesis que tengan una
base y secuencia con la actual tesis, éstos son: reconocimiento de huellas digitales,
reconocimiento de firmas, reconocimiento de caras. Por otro lado hay temas que
son complementarios con el tema de esta tesis como son: segmentación de
imágenes, Redes Neuronales, visión artificial entre otros temas que se pueden
considerar para continuar y/o complementar este estudio.
147
BIBLIOGRAFÍA
> James A. Freeman y David M. Skapura, "Redes Neuronales: Algoritmos,
aplicaciones y técnicas de programación", Edt Addison-Wesley,
Wilmington-Delawere, 1993.
> Eric Persoon y King-Sun Fu, "Shape Discrimination Using Fourier
Descriptora", IEEE trans. Systems, Man, And Cybernetics, vol.SMC-7, No.3,
pp 170-179 Marzo 1977.
> G. H. Granlund, "Fourier Preprocessing for Hand Print Character
Recognition", IEEE trans. Computers, pp 195-201, Feb. 1972.
>• Alireza Khotanzad y Jiin-Her Lu, "Classification of Invariant Image
Representations Using a Neural Network", IEEE trans. Acoustic Speech and
signal processing, vol.38, No.6, pp. 1028-1038, Junio 1990.
> Ming-Kuei Hu, "Visual Pattern Recognition by Moment Invariants", IRÉ
trans. Information Theory, vol. IT-8, pp. 179-187, Feb. 1962.
> Cho-Huak Teh y Roland T. Chin, "On Image Analysis by the Methods of
Moments", IEEE trans. Pattern Analysis and Machine Intelligence, vol. 10,
No.4, pp. 496-513, Julio 1988.
> Sahibsingh A. et all, "Aircraft Identification by Moment Invariants", IEEE
trans. Computers, vol.C-26, No. 1, pp. 39-45, Enero 1977.
> Robert R. Bailey y Mandyam Srinath, "Orthogonal Moment Features for use
with parametric and Non-parametric Classifiers", IEEE trans. Pattern
Analysis and Machine Intelligence, vol. 18, No.4, pp 389-399, Abril 1996.
148
> Ing. M. S. Jiménez, "Notes On Nonlinear Image Processing", U.T.A., Texas-
USA, 1993
> Tom M. Apóstol, "Calculus", Vol.2, 2a3 Edición, Edt. Blaisdell Publishing
Company, Walthman-Masssachusetts, 1967.
> Jorge Albuja, "Reconocimiento de Caracteres Manuscritos por medio de
Redes Neuronales y Neuro-Difiísas Artificiales", Escuela Politécnica
Nacional, Quito-Ecuador, 1995.
> Gustavo Aguilar, "Filtros Morfológicos de Imágenes", E.P.N., Quito-
Ecuador, 1995
> Héctor Freiré, " Aplicación de Redes Neuronales en la Compresión de
Imágenes", E.P.N., Quito-Ecuador, 1996.
> Patricio Rosero, "Sistemas Lineales", E.P.N, 1995
> Richard I. Levín & David S. Rubin, "Estadística para Administradores",Prentice-Hall Hispanoamericana S.A., México, pp 117-128, 1996
> Chaouki Abdallah, "An Overview of Neural Networks Results for
Computation", University of New México, Alburquerque, NM.
> X-Rite, "The Color Guide and Glossary", X-Rite Incorporated, 1996
> Adobe Photoshop 3.0 User Guide 1994, Adobe Systems.
> Hannu Kauppinen et all, "An Experimental Comparison of Autoregressive
and Fourier Based Descriptors in "D Shape Classification", IEEE trans.
Pattern Analysis and Machine Intelligence, vol.17, No.2, pp 201-207, Feb.
1995.
149
> Yaser S. Abu-Mostafa, "Information Theory, Complexity, and Neural
Networks", IEEE Comunicatíons Magazine, Noviembre 1989.
> Warrern McCuIIoch y Walter Pitts, "A Logical cccalculus of the ideas
immanent in nervous activity", Bulletin of Mathematical Biophysiscs, 5:115-
133, 1943.
> Ronald J. MacGregor, "Neural and Brain Modeling", Academic Press San
Diego, CA, 1987.
> Bernard Widrow, "Adaptive Sampled-Data Systems, a Statistical Theory of
Adaptation", IRÉ WESCON Convention Record, part 4, pp88-91, NY:
Institute of Radio Engineers.
> Marvin Minsky y Seymour Paapert, "Perceptrons", MIT Press, Cambridge,
MA, 1969.
> Teuvo Kohonen, "An Introduction to Neural Computing", Neural Networks
1(1): 3-16, 1988.
> Stephen Grosssberg, "Neural Networkss and Natural Intelligence", MIT
Press,Caambridge, MA, 1988.
> Stephen Grosssberg, "Nonlinear neural networks: Principies, Mechanisms
and Architectures", Neural Networks, 1(1): 17-62, 1988.
> James Anderson y Edward Rosenfeld, "Neurocomputing: Foundations of
Reserach", MIT Press, Cambridge, MA, 1988.
150
ANEXO A
MOMENTOS GEOMÉTRICOS INVARIANTES A PARTIR DE LOSINVARIANTES ALGEBRAICOS.
Se presenta a continuación un procedimiento propuesto por M-K HU [1]
para obtener invariantes geométricos a partir de los invariantes algebraicos, es
por esta razón que conviene hacer algunos comentarios sobre estos últimos.
A.1 INVARIANTES ALGEBRAICOS
Se define el siguiente polinomio homogéneo de dos variables u, v como:
P
J-\)
A este polinomio homogéneo se lo llama forma algebraica binaria o
simplemente forma binaria de orden p. Usando una notación introducida por
Cayley, la forma binaria de orden p se puede escribir como:
(A-2)
Un polinomio homogéneo l(a) con coeficientes a^-9a t í ; ....... ;aQp es un
invariante algebraico de peso w si [1]:
(A-3)
Donde ap0',a'p.^; ....... ;a'0p son los nuevos coeficientes obtenidos de
la substitución de las siguientes transformaciones lineales generales en la forma
original.
152
a yp s
A =a yp s
(A-4)
Si w = O, el invariante se denomina Invariante Absoluto.
Si \v -t- O, el invariante se denomina Invariante Relativo.
Por ejemplo para una transformación lineal de escalamiento, sea/(a)la
forma algebraica original e l(a') la forma algebraica afectada por la
transformación de escalamiento tal que:
u
V
"a oTn'~0 aJLv1
son: A =
j
a 0
0 a
de donde « = caf y v = av',
-a
(A-5)
(A-6)
Es útil en este momento introducir la ley de transformación para los
coeficientes a, que es la misma que aquella para los monomios xp~ryr', en el
desarrollo de un binomio elevado a un potencia p, tal y como se observa en la
siguiente expresión [1]:
(A-7)
La expresión (A-7) será de gran utilidad para encontrar las equivalencias
de los coeficientes de las formas algebraicas binarias afectadas por alguna
transformación lineal como por ejemplo la transformación de escalamiento que
se está analizando, así:
De (A-2) se sabe que x=l e y=l, entonces con ayuda de (A-7) se deduce
que:
= 1
153
Para la forma algebraica binaria afectada por el escalamiento en (A-5) se
tiene que x = y = a , entonces usando (A-7):
p
De donde:
(A-9)
Usando (A-3), (A-6) y (A-9) se establece que:
de donde: w = ~2
Se deduce entonces, de acuerdo al teorema de los invariantes
algebraicos, que la forma algebraica binaría de orden p afectado por
una transformación lineal de escalamiento es un invariante algebraico
relativo con peso p/2.
Se tiene que comprobar entonces la igualdad entre la forma algebraica
binaria original y la forma algebraica binaria afectada por la transformación del
escalamiento, de manera que:
siendo: M=OW' y v = ov', (A-10)
Utilizando la definición (A-l) y sea/7 y fl las formas algebraicas binarias
original y transformada respectivamente se tiene:
154
p1 2,2
p~22
'"' "'p'1 "'j-l I"1
_, i, lvp"lK
(A-ll)de (A-7) se sabe que : a^ = l;a^,, - 1; -9a0p =1
Y . | a i ^.^-1^. ,«P • f,que . 0^ = a ,ap_u-a a-a , ,ae
Usando (A-10) y (A-12) f2 sería:
(«Y (P\2ív'\ ( P } íuVvY'1 (v^f2 = ap\- + kp - - + M - + + P' "I- "
VaJ 1,1 J v«j V«/ v^/ v«y v«y vP~v V«A«
+ [lJM V\2J V \P-1)
Usando (A-ll)/7 sería:
Entonces fl=fl que es lo que queríamos demostrar.
A.2 TEOREMA FUNDAMENTAL DE LOS MOMENTOS INVARIANTES.
Si la forma algebraica de orden p tiene un invariante algebraico,
entonces los momentos de orden p tienen el mismo invariante pero con el factor
adicional \ , siendo J el determinante Jacobiano1 de la transformación [1].
(A-13)
1 Para n funciones /i(xt,xA, ,Xn); (i = 1,A, n) de n variables, el determinante Jacobiano se define [5]
... df\/dxn
como
dfft/dx, d/h/dx2 dfn/dxn
155
Con el propósito de mostrar la utilidad de este teorema, inicialmente se
presentará el mecanismo para obtener momentos invariantes al escalamiento, y
luego, se hará lo mismo con los momentos geométricos invariantes a la rotación.
A.2.1 Momentos Invariantes al Escalamieto usando InvariantesAlgebraicos.
La deformación geométrica de una función imagen al escalamiento está
dada por:
/(x',.y')= f(<xx,oy), a es una constante
Esta deformación se puede expresar por la siguiente transformación:
°Las formas algebraicas tanto para f(x,y) como para f(x\y') son
respectivamente :
,
Se puede determinar que cada coeficiente de esta forma algebraica es un
invariante según:
^=ff^^«, donde r = p + q (A-14)
Utilizando el teorema fundamental de los momentos invariantes (A- 13)
tenemos que:
Donde:
//^,//w son los momentos geométricos de la imagen escalada y la imagen
original respectivamente.
156
J a O
O a= a2, es el determinante Jacobiano de la transformación.
Entonces:
=««*>„(A-15)
Si se utiliza los momentos geométricos de orden cero (p=0, q=0), se
tiene:
• - *(A-16)
Reemplazando (A-16) en (A-15) se tiene:
'
íl.?+l Í---Í+I
'oo
(A-17)
2 A 2
Obsérvese que los momentos invariantes al escalamiento que se ha
obtenido en (A-17) con la ayuda de los invariantes algebraicos son exactamente
los mismos de la ecuación (2-5) que Alireza Khotanzad propone en [3]
A.2.2 Momentos Invariantes a la Rotación.
Ahora se aplicará el Teorema fundamental de los Momentos Invariantes
para obtener invarianza a la rotación. Primero se verá cuales son las ecuaciones
que rigen a la rotación en sentido horario de un punto cualquiera en un plano
bidimensional.
157
Fig.A. 1: Rotación de un punto en un Plano Bidimension.il
Del gráfico se pueden escribir las siguientes relaciones:
y = p cos(0 + 0} - pco$(0)cos(fi)- /?sen(0)sen(/?)
x= .cos(0)sen(/?) (
= p cos(/?> x = psen(/?) (A-20,A-21)
Usando (A-20) y (A-21), las ecuaciones (A-18) y (A-19) se transforman
en:
y' = y cos(#) - x sen(0)
V=yser(0)
(A-22)
(A-23)
Se puede ahora escribir la siguiente transformación propia ortogonal, que
representa a la rotación en sentido horario.
r'l _ I" cos(0)
(A-24)
158
Donde:
Jcos(0) sen(0)-sen(0) cos(0)
= +1
es el determinante Jacobiano de la transformación.
.*. Se deduce entonces, que los momentos invariantes a la rotación son
exactamente los mismos que los momentos algebraicos. De aquí que se
pueda tratar a los momentos como a los coeficientes de una forma
algebraica:
(A-25)
Siguiendo el método algebraico, propuesto por Hu1 [1] para derivar los
momentos invariantes a la rotación, se somete a u,v a la siguiente transformación
contragradiente o rotación en sentido horario:
u cos(6>) -sen(0)T«'sen(0) cos(0) _v'_
(A-26)
de donde:
u'cos(0)-v'sen(0)~H'sen(0)+v'cos(0)
(A-27)
Ahora se sujeta tanto a u,v como a u*,v' a la siguiente transformación:
U
V 1 - i v
U'V \
(A-28)
1 Los invariantes ortogonales fueron estudiados rximero por Boole, y el método propuesto pro Hu fuedesarrollado por Sylvester.
159
Desarrollando (A-28) se obtiene:
U
V W — / V
u1'V
U + I V
u'-/v(A-29)
Usando (A-27) en (A-29):
UV
w'(cos((9)+í sen(0)) + - (- sen(0)+/.cos(0)>/
fr'(cos(0) - i sen(0))+ - (- sen(0) - /. cos(0)>
(A-30)
Recordando que : e±íáí = cos(^)±/sen(6')
Se tiene:
(A-31)
De (A-29) y (A-31), la transformación ortogonal se convierte en las
siguientes simples relaciones:
(A-32)
Sustituyendo (A-32) y (A-29) en (A-25) se obtiene las siguientes
identidades:
(A-33)
Donde /,*?, ..... ,/^, e 7'^ ..... ,/'op son los coeficientes correspondientes
después de las substituciones. De la última identidad en (A-33), los coeficientes
guardan las siguientes relaciones:
160
/' =e'ip9I* P0 c l ptí
v -e-í(p-W¡' 0-1,1 — c * J»-l,l
p-r,r
Jt I.
/' _ ¿p& I
(A-34)
Estos son p+1 momentos invariantes linealmente independientes bajo
transformaciones propias ortogonales, donde A = etjl, el cual no es el
determinante de la transformación. Puede verse además que 7r/w. es el
complejo conjugado de Ip.r,r.- Se puede notar también que estos (p+1) I's son
funciones linealmente independientes de los momentos // 's y viceversa.
A partir de (A-34), se puede derivar un sistema de momentos invariantes,
mediante la eliminación del factor é9.
Para los momentos 7 de segundo orden se pueden extraer dos invariantes
independientes que son:
(A-35)
Para los momentos 7 de tercer orden se pueden extraer tres invariantes
independientes que son:
¡30Í03, hl i 12
/3 -/ 730J12 J03J
(A-36)
161
Usando I's de segundo y tercer orden se puede obtener el siguiente
momento invariante.
(/ /2 _ / / 2 )V2QM2 102*21}
(A-37)
Para momentos de orden p, con p > 4, se pueden obtener p/2 momentos
invariantes:
/ / ; / / ; ;/ / ;pO Qp p-l,l l,/>-l p—r,r r,p—r
(A-38)
Si p es par, también se puede obtener los siguientes momentos invariantes:
(A-39)
Una vez obtenidos los momentos invariantes, hace falta conocer la
relación existente entre estos momentos/'s y los momentos geométricos /A, las
cuales se obtienen del siguiente desarrollo:
De (A-29) se tiene que:
2
Sumando y restando ambas igualdades se obtiene:
U + V = u , ü-V = iv
(A-40)
Usando (A-40) en la primera identidad de (A-33) se tiene que:
Aplicando la definición del polinomio homogéneo en la forma algebraica
de la segunda parte de la identidad se tiene:
162
V}' + ,,,, (Í7 + F)" /(F
-+
Desarrollando los binomios:
up +\\up-ly+\}u>i
-uf-p-3
P~2j
'Op p-2 1/7-1v u p - ] + U p
(4-41)
Agrupando los términos que contengan como factor común up:
(4-42)
Aplicando la definición de polinomio homogéneo (A-1) y (A-2) se puede
determinar que:
(A-43)
163
El resto de relaciones entre los momentos I's y los momentos //5 se puede
hallar siguiendo el proceso que permitió hallar la primera relación, es decir:
* Agrupando los términos que tengan como factor común UP~}V se hallará
la relación entre Ip.¡j y los momentos ¿i's.
* Agrupando los términos que tengan como factor común UP~2V2 se
hallará la relación entre lp.2¡2 y los momentos /A.
* Agrupando los términos que tengan como factor común \Jp~rVr se
hallará la relación entre /p_rr y los momentos /A.
Este proceso resulta extremadamente largo, por lo cual se dará las
relaciones que Hu [1] proporciona en su trabajo "Visual Pattern Recognition by
Moment Invariants".
(A-44)
con p-2r>0
(A-45)
además:
>/2', con p = par
(A-46)
164
Utilizando las ecuaciones (A-35)y las relaciones expresadas en (A-43) y
(A-44) se pueden obtener los primeros momentos geométricos invariantes a la
rotación en función de los momentos geométricos
(A-47)
(A-48)
Referencias:
[1| Ming-Kuei Hu, "Visual Pattern Recognition by Moment Invariants", IRÉ
Trans. on Information Theory, pp 179-187.
165
ANEXO B
OTRAS APLICACIONES DE LOS DESCRIPTORES DE FOURIERUSANDO LA FUNCIÓN CONTORNO.
Una vez obtenidos los descriptores de Fourier usando la función contorno
en el plano complejo, además de ayudarnos en el reconocimiento de patrones,
éstos pueden ser útiles en otras aplicaciones. Un ejemplo de esto es el cálculo de
áreas y la obtención de esqueletos. En este anexo se dará una breve revisión de
estos dos temas.
B.1 CALCULO DE ÁREAS.
Dados los descriptores de Fourier de la función contomo, es posible
deducir el área encerrada en dicho contorno. Considérese una representación
paramétrica del contorno u como:
{*(/), X/) =«(/)}donde / es la longitud de arco del contorno
Si S representa el área dentro del contorno u(l), entonces dicha área
estaría definida por la siguiente expresión [1]:
2S = iydx-jxdy
(B-2)
166
Entonces:
2S = }y(l)x'(0dl -1=0
donde: L es el periodo (B-3)
Se sabe además que para la representación paramétrica del contorno w los
descriptores de Fourier acn están dados por:
2ír i ,"' ac_ eos (^ Asen —ni
\ J.
de donde:
,
sen ~ "
Reemplazando (B-4) en (B-3) se tiene que:
1=0 L ' FL, I --oo L
.sen — ni
f- f i»/L
(B-4)
-» cod--n/ k//
(B-5)
/, # = -QO y desarrollando la expresión (B-5) se tiene:
¿7=0
v
AT
n.acn=-N
(B-6)
167
Desarrollando la multiplicación de los sumatorios se tiene:
s = z¡L> ;=o
- NJOC_N* sen2(-
2(- N + \)ac_Nac_ w+1 sen(-
cAr sen(- Nf(l))
^ac „ sen((- N
<"V sen((-
-L ¡
cos2(-
cos(
^oc^ cos((-
sen
..... +di
(B-7)
Agrupando
, (sai - TV + 1 >*(/)) + cos(-
sa^
w(sen((-N + lV(0)^((^¥(0)+cos((-^ + lV(/))co^ ......((TV - 1 V(/))sen ((^V(/)) + cos((íV - 1 V(/))cos((JV >(/)))
(B-8)
Tomando en cuenta las siguientes relaciones trigonométricas:
sen2(0)+cos2(0)=l
cos(a ± p) = cos(a)cos(^):í: sen(a)sen()9)
1=0
- N.ac_N2 +.... + N.acN +2(- N + l)ac_Nac_N+l cos(-
acAr cos(0)+ 2(-
w+1«cy cos((- 2N cos(-
(B-9)
168
1_
Se sabe que: fCas(0(/))e// = 0, siendo L el período
Entonces:
í L
/-o /=o / o /=o\~N.ac N2dl + ....... + \N.ac^dl\ -\-N.ac N2 \dl + ..... + NjacN2 (dlj j / » J
^ I / o
..... + N.acN2L\O
= ;r
(B-10)
El área en un contorno cualquiera se puede entonces calcular con la ayuda
de los descriptores de Fourier mediante la suma infinita indicada en B-10. Por
otro lado se puede obtener una aproximación de dicha superficie mediante una
suma finita, tal y como se indica en la ecuación (B-l 1)
N2
n-acn , donde N es un entero >0
(B-ll)
B.2 OBTENCIÓN DE ESQUELETOS
Eric Persoon [1] propone un método para obtener los esqueletos de ciertos
contornos a partir de sus descriptores de Fourier. Se notará que se ha usado la
expresión "ciertos contornos", esta expresión es pertinente en este caso pues
mediante esta técnica se pueden extraer los esqueletos que cumplan con las
siguientes condiciones:
• Los esqueletos tienen que ser curvas no cerradas.
• Los esqueletos tienen una silueta que no se traslapa.
169
Si no se cumple con estas condiciones, simplemente el esqueleto que se
obtendrá no corresponderá al contorno del cual es extraído.
Se recordará que para obtener los descriptores de Fourier de este tipo de
patrones, se tenía que asegurar que dicho patrón tenga un ancho tal que se pueda
recorrerlo en toda su longitud y luego se pueda regresar no por los mismos
pixeles, sino por los pixeles aledaños. En la Fig.Bl se muestra ejemplos de
patrones a los cuales se les puede extraer su esqueleto mediante esta técnica y
otros a los cuales no es posible.
Patrones a los que es PosibleExtraer su Esqueleto
Patrones a los que no es PosibleExtraer su esqueleto
2
Fig.B. 1: Ejemplos de Patrones y sus Contornos
Se puede demostrar, que los descriptores de Fourier usando la función
contorno tienen la siguiente propiedad [1]:
•-jnExiste un a tal que: &cn —
(B-12)
Se sabe además que si la función contorno se genera (1=0) a partir de uno
de los puntos finales ó iniciales (observar las x en la Fig.B. 1) del patrón, entonces
a ~ O. Además si (B-12) se satisface para todo n y algún a, entonces cualquier
suma parcial tal que:
170
..«-n=-M
(B-13)
Entonces la ecuación (B- 13) describe una curva con la propiedad
i/(/) = u(L - 1 + a), es decir, una curva que es un esqueleto[ 1 ].
Un modelo matemático conveniente de un patrón de línea que no es
cerrado, su silueta no se traslapa y tiene cierto ancho es [1]:
(B-14)
donde:
f(l) describe al esqueleto y cumple con /(/) = /(/, -/ + «).
c(l) es una función real periódica y positiva que determina el ancho del
patrón.
/ Longitud de arco a través del esqueleto1 .
L El período
Sea c(¡)~ constante C, entonces:
ac. =J O J O
I , -^ I- -^
o Lo
(B-15)
donde brt son los descriptores de Fourier ác\f(I)
1 Nótese que al ser / la longitud de arco a través del esqueleto y no a través de la curva u(l), entonces los
resultados obtenidos a partir de (B-12) para encontrar el esqueleto son sólo aproximados.
171
f / \ — •Resolviendo !/'(/)<? - L } di por partes:
Sea: w = e l L l , entonces dw = -j\ \n.e u J di
v = /' (/)c// , entonces v = /(/)
2jr
(B-16)/%
Reemplazando (B-16) en (B-14) y sea w0 = - - - , se obtiene:
(B-17)
Haciendo uso de la propiedad de (B-12) y B-17) se tiene:
(B-18)
De lo dicho hasta ahora, para encontrar el esqueleto de un patrón, lo
primero que hay que hacer es encontrar uno de los puntos donde comienza o
termina el patrón para a partir de éste generar la función contorno de tal manera
que aclejmr°(a/ ', y ac_le~Jnw°(a/ tienen el mismo ángulo de fase. De esta
manera se obtienen los descriptores ac/ tal que:
(B-19)
(B-20)
172
De(B-19)y(B-20);
(B-21)
Finalmente el esqueleto de un contorno que puede ser modelado mediante
la ecuación (B-14) está dado por:
,N es un enteron=-N
(B-22)
REFERENCIAS:
[1| Eric Persoon and King-Sun Fu, "Shapae Discrimination Using Fourier
Descriptors",IEEE Trans. on systems, man and cibernetics, vol. SMC-7,
No.3, March 1997.
173
ANEXO C
MANUAL DE USO DEL PROGRAMA DE EXTRACCIÓN DECARACTERÍSTICAS DE IMÁGENES DIGITALES Y
RECONOCIMIENTO DE DÍGITOS MANUSCRITOS (EXCIDYR)
INTRODUCCIÓN
El Programa Excidyr fue implemento en lenguaje Visual Basic, lo cual ha
permitido desarrollar un interfaz de usuario bastante amigable. El programa no
solo permite la aplicación de los diferentes métodos de extracción de
características de imágenes digitales al reconocimiento de dígitos manuscritos,
sino que además se pueden visualizar los descriptores extraídos de tal manera
que el usuario pueda analizar y verificar la teoría expuesta con los resultados
reales. Además se han incluido funciones que aprovechan el uso de los
descriptores extraídos de la imagen, tales como:
• Momentos Geométricos
> Cálculo del centro de gravedad de la imagen
• Momentos de Zernike
> Reconstrucción de la Imagen
• Descriptores de Fourier usando la Función Radial
> Reconstrucción de la función Radial
• Descriptores de Fourier usando la Función Contorno
> Reconstrucción del Contorno
> Obtención de Esqueletos
> Cálculo de Áreas
174
Requerimientos
Los requerimientos para el correcto funcionamiento del programa Excidyr
son:
S Microprocesador Pentium equivalente o Superior.
S Sistema Operativo Windows 95 o superior.
S 8 Mbytes de memoria RAM, recomendada 16 Mbytes o más.
S Monitor gráfico VGA o superior.
Instalación
Se provee de un programa de instalación, el cual copiará a las carpetas de
sistema los archivos necesarios para el correcto funcionamiento del programa.
Por otro lado se deberá poner especial énfasis en la estructura de datos que
utiliza el programa la cual se facilita a continuación.
Excidyr
mdpent
fdpent
Pesos
Recboton.bmp
Recbotondis.bmp
CtnfpsMinvpsRípsZrnkps
175
FUNCIONAMIENTO DEL PROGRAMA
Como es usual en un entorno Windows, para ejecutar el programa basta
con hacer un doble clic sobre el icono correspondiente, en este caso etiquetado
con el nombre de Excidyr. Una vez ejecutado, aparecerá una pantalla de
presentación, para pasar de esta pantalla a la interfaz gráfíca de usuario basta con
hacer un clic con el ratón sobre la imagen de presentación.
Interfaz Gráfica de Usuario.
La Fig.Cl. muestra la interfaz gráfíca de usuario, la cual consta de 4 partes
principales:
MD -1180b(2] .39511.615]bi31 .003(159]b(4] .04511 186]
W5) .002P.672]b(G) .002(13^1]W7| .0021.8231U8I .00231651
.0167 [-.0032]
.04861.0681]
.0385 [.650611083(1539108371-6159].4173 [782]0258 [.71561
.3441 [.0661]
Bd-611.2725 [ 65GE] AJW en páielBicuattodot-163.4563 pÍHlB>2
4.868313411] .6877(3411]
Fig.Cl: Interfaz Gráfica de Usuario
1. Barra de Menús
2. Barra de estado
3. Barra de Tareas
4. Formas de Contenido.
176
Las formas de contenido son ventanas que dependiendo de lo que el programa
esté realizando pueden contener:
• Una imagen binaria que puede ser: Imagen original *.bmp, un esqueleto y
reconstrucción de un contorno o una imagen.
• Un cuadro de información o despliegue de resultados
• Un cuadro de solicitud de datos.
La Barra de estado ubicada en la parte inferior de la ventana principal,
contiene información general sobre el proceso que se está llevando a cabo como:
nombre de la imagen que se procesa, progreso del procesamiento, el valor de
orden n de procesamiento y tiempo de procesamiento.
Barra de Tareas
Esta barra está disponible cuando se abre una imagen binaria, contiene 6
botones, los cuales ejecutan algún procesamiento sobre la imagen que ha sido
abierta. En la Fig.C.2. se muestra la barra de tareas.
Fig.C2: Barra de Tareas
Las funciones que realiza son:
Reconstruir un contorno, una imagen o la función Radial dependiendo del
método de extracción de características que se haya aplicado a la imagen.
Este botón está disponible sólo después de extraer los descriptores mediante
alguno de los métodos disponibles.
Calcular el área del objeto representado en la imagen.
Obtener el esqueleto del objeto representado en la imagen
Calcular el centro de gravedad del objeto representado en la imagen
Magnificar o disminuir por un factor de 2 cualquiera de las imágenes que se
encuentren disponibles.
177
Barra de Menús
La barra de Menús está ubicada en la parte superior de la Ventana
principal, desde la cual se puede realizar cualquier tarea del programa. En la
Fig.Cl. se puede apreciar la barra de menús, en la cual esta desplegado el
submenú de método.
Cada uno de estos menús despliega submenús, los cuales permiten realizar
acciones específicas relacionadas con su menú principal. A continuación se
explica la acción que realiza cada uno de los menús y submenús.
Menú de Archivo.
El menú de archivo tiene tres submenús que son:
• Abrir.- Al ejecutar éste submenú se despliega una caja de
dialogo, típica en Windows 95, la que permite ubicar los
archivos con extensión bmp para su visualización.
• Guardar.- Mediante este submenú se puede guardar en disco
cualquier imagen que se haya obtenido mediante el uso del
programa, pudiendo ser éstos: Reconstrucción de un Contorno,
reconstrucción de la función radial, reconstrucción de una
Imagen usando momentos de Zernike, esqueleto obtenido
mediante técnicas de Fourier.
• Salir.- Termina la ejecución del programa principal.
Menú de Método
Este menú se encuentra inicialmente inactivo, hasta que se encuentre
abierta una imagen para ser procesada. Sus submenús indican el método que se
va a aplicar para la extracción de características de la imagen que se encuentre
abierta. El orden de procesamiento de cada método se realizará con el valor de n
que se indica en la barra de estado.
178
Menú de Análisis Comparativo
Este menú permite la comparación de los descriptores de diferentes
imágenes mediante la presentación de resultados en un mismo cuadro,
permitiendo además la opción de realizar un análisis estadístico de las imágenes
que se está comparando. Mediante el uso de esta opción se puede verificar de
manera eficaz la calidad de los descriptores utilizados y las propiedades de
invarianza que posean.
Inicialmente al ejecutar el menú de análisis comparativo se desplegará una
caja de dialogó en la cual se determinará el método o los métodos que se
utilizarán para el análisis.
Posteriormente aparecerá otra caja de diálogo como el de la Fig. C3. en la
cual se elaborará la lista de las imágenes con sus respectivas rutas de acceso que
serán utilizadas para el procesamiento.
•TU I isl.i ilt; I ni «iiji; ii tí í, <i i;oimi.ii<n
Buscar en: Archivo» ti»:
oncc21 e.7m1 .brnpcixxj21e.7m2-bmponco21 e. 7m3.bmpctxo21 e1.4.bmp
Aceptar
Cancelar
anco21r3»vBMPcincQ21r35aKBMP
Imágenes SeleccionadasAfiacfc
c«o21.BMPctnco21e.7.bmfcrao21e7m1.t
C:SE»ci*rVÍQ* v«ant«Scrico21 .BMPC:\£ncicH|f1wÍ3* vaiiantes\cnco21e7-bmpC:\E»cid iScfgit vañantesVánco21e.7m1 bmp Quto
Fig.C3: Interfaz para elaborar la lista de imágenes a comparar
179
Esta caja de diálogo permite crear una lista de imágenes de manera
sencilla, aumentar imágenes a la lista, así como eliminar imágenes de la lista.
Para eliminar imágenes de la lista basta con hacer un doble clic sobre la imagen
que se desea eliminar en la primera columna.
Una vez ingresados los datos necesarios para hacer el análisis el programa
empieza a calcular los parámetros requeridos para desplegarlos en una caja de
datos como se muestra en la Fig.C4. La barra de menú principal es reemplazada
por una barra de menú pertinente a los métodos que se ha escogido para analizar.
En el cuadro de datos se mostrarán los descriptores que se escojan en la barra de
menú que se ha desplegado. Adicionalmente en este cuadro de datos se presenta
el valor promedio, la desviación estándar y el índice de alejamiento del conjunto
de imágenes seleccionadas para el análisis. Esta pantalla tiene integrada una
función que permite dividir los descriptores respectivos de imágenes diferentes,
esto se puede hacer llenando con los números de las imágenes que se quieren
dividir en las cajas de datos ubicadas en la parte inferior de esta pantalla.
Mientras se está en la opción de análisis comparativo, ninguna de las otras
opciones se encuentra disponible.
FowwN.
_____
[ocn/«c1]t€)•O^acll-ü)acn/oclI-4)•cn/aclI-3)•cn/«1I-2)acn/wlI-1)m/acllD)•cn/aclP)acn/aclfó*cn/«c1I3Jacn/«c1I4)acn/ac1I5)«mfccl»)
5•Bü
0065591-1407]019557|1266510100011-08231]0.39245 [14559]0089051-0879]060332(09345)0231291-0963]1 (-10997]131001(061210533381 1 4394]0.1 805 [-00858]0.05336 [49527]EKB332 [-03381]
B RadodeFouw
5Coreare» otFotM
5*
(2)cmca21e7bmp (3)cnca21e 7m1 bm ñetacñn005943113671] 0.06238 [1 3552] 1104[-2774]019574[1514B| 019581(1525] 09991-2781)0067991-0767*] 0068481-08222] 11371-0036]036923(13097] 03689(13054] 106310146]0 07892 l-O 7746] 0.07895 [-0.7713) 1128[-0.104)056999108487] 057048(0847) 1058(0086)013499112065) 161637(0.8618) I713[-2169]1 [10683] 1 [106861 1000 (-0031)034439(06242) 034446(06242] 0900(4.012]052501112506] 0527)4 (-12495] 10161-0193]021147(01831] 020895(01761] 0854(4269]0033341-0757] 003477(4.799) 1601(4.196)0074861001261 0 07224 (-O 0052] 108461413511
V^aMeao006247019570032160376860082310581270660881033235052851020031004049007014
JJS1
Detv Stand* la000252 0040290.0001 0000515040555 0060265001102 0029255000477 00579500156 0026836067678 1 0240510 0001623 00487330003» 0006718001405 0070119000912 0225313000494 0070405
edfllto*>]
I Sata
?
Fig.C.4: ínter faz gráfico para comparación de Descriptores de diferentes imágenes
180
Menú de Reconocimiento
Este menú, permite el despliegue de un interfaz para el reconocimiento de
dígitos manuscritos. Este interfaz permite ubicar la ruta de acceso de la imagen,
su visualización y el reconocimiento del dígito mediante la aplicación de uno ó
varios de los métodos de extracción de características de imágenes digitales
estudiados en esta tesis.
En la Fig.C5. Se muestra el interfaz gráfico para el reconocimiento de
dígitos manuscritos. Al ejecutar el reconocimiento, el dígito reconocido aparece
a lado de la etiqueta del método empleado. Si se desea visualizar el valor de
cada una de las salidas basta con hacer un clic sobre el botón etiquetado como
"más info" que se encuentra a la derecha del número reconocido en cada uno de
los métodos.
i\f Imáaxnnt
Anábk Comparativo ErjranamntD Bacanacmno Evakjacündsl Recoiocnanto
unta
Reconocimiento
Buscar en: Archivo* fea:
7bmpcneo21 e. 7m1 .bmponco21e7m2.bmpcnco21«7m3.bmpcnco21e1.4.bmp
vaiartet\cnx>21B
RECONOCfUEttfTO
MÉTODO
FmcMm Kmáui
NÚMH
5
no procesado
5
no procesado
HHI3
macinfo
masnfo
Preces» con todo* tos método* <? Pemmtotí
I MotncrÉot
I? Daavtoet de Fauna (Funciún Contomo)
P Cteaiphrtt di Fauñai (Fimciún FUdU)
«- J J
Fig.C^: Interfaz Gráfico para el Reconocimiento de Dígitos Manuscritos
181
Menú de Evaluación de Reconocimiento
Este menú permite crear una lista de hasta 2000 imágenes, 200 por cada
dígito, para aplicar el proceso de reconocimiento con uno o varios métodos a la
vez y desplegar los resultados en un cuadro de resultados. Para esto primero
aparece una caja de diálogo. En la cual se determina que métodos se utilizarán, si
se usarán muestras dentro de la población de entrenamiento o fuera de ella y el
número de muestras a procesare (1 muestra equivale a 10 imágenes, una por cada
dígito).
Luego se pasa a un interfaz gráfico como se muestra en la Fig.C6. el cual
se usa para la creación de la lista de muestras a procesarse.- Ciua<:lKi¡.!dCión ríe Imdurfif ' IPobUir iijn ii« 1 ni i encímenlo 1
Archivo Anátó Corfuuávo Entranamflto RBconocmonto gv<kj«cióo dal Baonwriwarto VMK ^MJ_x|Buscaren f PnceHf con todw lot Método* C Peiwrwfe*
!" Momentos Goomóbicot
r~ Mamerto* ifaZcmice
W Demiptae» de Fot»» Fuoán Contomoj
P Detaiptore» de Fouiet Función Radaq
** Í55ÜÍÍ C «ote r ocho f~ nueva
caoO BMPcwo1166MPceto117.BMPcao118BMPc«o119BMPcwolZBMPceto120.BMPcaolZI BMP
"' J J I
Fig.C.6: Interfaz para la creación de la lista de imágenes para evaluar elReconocimiento de Dígitos Manuscritos.
Para la creación de la lista hay que marcar el cuadro del dígito del cual se
va a hacer la lista, por ejemplo el cero, y añadir las imágenes digitalizadas de
todos los ceros que se piensa utilizar. Por conveniencia y organización las
muestras tienen que estar ubicadas dentro de las siguientes carpetas:
182
• C:\Excidyr\mdpent\uno, dos,...., nueve para evaluar dentro de la población
de entrenamiento
• C:\Excidyr\fdpent\uno, dos, —, nueve para evaluar fuera de la población de
entrenamiento
El interfaz se ubicará automáticamente en el directorio correspondiente
dependiendo de la elección hecha respecto a la población de entrenamiento y al
dígito que corresponda a la caja escogida.
Una vez terminado con el procesamiento de la lista de imágenes
proporcionado aparecerá en un cuadro de datos, al lado derecho del cuadro se
encuentran activas las opciones de los métodos escogidos previamente. Al elegir
uno de ellos inmediatamente el cuadro se llenará con la información pertinente a
dicho método.
Menú Varios
Este menú contiene 4 submenús, 3 de ellos realizan las mismas funciones
que sus equivalentes en la barra de tareas, estas son: Centro de gravedad, cálculo
de áreas, Obtención de esqueletos. El cuarto submenú es:
• Segmentar.- Esta función del programa permite segmentar las imágenes
de las muestras tomadas en el modelo de la página 108, de manera que es
posible obtener los archivos gráficos bmp de cada uno de los dígitos que
se han tomado de muestra de forma automática. Al optar por esta opción
aparece una caja de dialogo para ubicar la ruta de acceso del modelo
digitalizado que contiene las muestras de los dígitos. Luego aparece otra
ventana que contiene la imagen del modelo. En la parte superior derecha
se tiene que suministrar un número entero, el programa de segmentación
se basara en este número como un subíndice para a partir de este, nombrar
automáticamente los dígitos tomados de muestra. Estos serán guardados
dentro de las carpetas: "C:\Excidyr\fdpent\cero, uno, , nueve"
183