Documentos de Académico
Documentos de Profesional
Documentos de Cultura
0-1~
INSTITUTO TECNOLÓGICO Y DE ESTUDIOS
SUPERIORES DE MONTERREY
I. T. E. S.. M. · C. C. M. BTBtIOTECA
COlfCCION Df Nf60CIOS Y ALTA DIRfCCro,
"COMPARACION DE LOS MÉTODOS WAVELET Y
TRANSFORMADA DE FOURIER EN EL
RECONOCIMIENTO DE PATRONES"
T E S I S
Que para obtener el grado de
MAESTRA EN CIENCIAS DE LA COi\1PUTACIÓN ,,,
P r e s e n t a :
JUANA JULIETA NOGUEZ J/i.ONROY
i\sesor·
DR. JUAN FCO. CORONA :BLRGUEÑO
Diciembre, 1998.
No. Adquis. 1(f 'I B
Precin:
Procedencia:
--
. J
INSTITUTO TECNOLÓGICO Y DE ESTUDIOS SUPERIORES DE
MONTERREY
Tesis presentada
por
A ti Ale, a quien adoro, por ser el gran regalo de Dios que me anima e impulsa
dar lo mejor de mi.
¡¡¡
RECONOCIMIENTOS
Al lng. Jesús Rodríguez Guerrero, por su gran apoyo y confianza, porque con
su ejemplo y guía contagia su espíritu de triunfador.
iv
TABLA DE CONTENIDO
DEDICATORIA ...................................................................iii
RECONOCIMIENTOS ......................................................... iv
RESUMEN ...........................................................................1
INTRODUCCIÓN ................................................................2
,
CAPITULO 1.........................................................................3
V
2.0 REVISIÓN DE CONCEPTOS BÁSICOS DE IMÁGENES
DIGITALES ................................................................... 8
2.1 El modelo de imagen ............................................ 8
2.2 Rangos dinámicos ................................................. 9
2.3 Resolución ............................................................. 1
2.4 Muestreo y cuantización ...................................... 11
2.5 Relaciones básicas entre pixeles ......................... 12
2.6 Técnicas de interpolación ................................... 18
,
CAPITULO 3 .......................................................................20
,
CAPITULO 4 .......................................................................39
vi
,
CAPITULO 5.......................................................................51
,
CAPITULO 6.......................................................................64
,
CAPITULO 7 .......................................................................82
,
CAPITULO 8 .......................................................................90
ANEXOS .............................................................................98
REFERENCIAS ..................................................................109
,
BIBLIOGRAFIA..................................................................111
viii
LISTA DE FIGURAS
ix
Figura 6.6 Ventanas de Kirsh como operadores para la obtención de
Bordes de una imagen .................................................................... 73
Figura 6.7 Ejemplo de aplicación de detección de bordes a una imagen ......... .66
Figura 6.8 Representación unidimensional del contorno de un objeto,
Empleando código cadena ............................................................... 75
Figura 7 .1 Elementos principales de los diagramas de flujo de datos
propuestos en la metodología de Yourdon .................. .................... ..82
Figura 7.2 Diagrama de flujo de datos propuesto para reconocer
una cara humana ......................................... ..................................... 83
Figura 7.3 Detalle del proceso 1 (Lectura y procesamiento de
la Base Inicial de Imágenes) ............................................................ .. 84
Figura 7.4 Diseño Modular del Sistema Reconocedor de Caras Humanas ..... .. .. 85
Figura 7.5 Siguiente nivel modular de la Base Inicial de Imágenes .......... ........ 86
Figura 8.1 Resultados obtenidos con el reconocedor de imágenes
que emplea transformada wavelet. ...... ............................................. 90
Figura 8.1 Resultados obtenidos con el reconocedor de imágenes
que emplea transformada de Fourier.......... ... .. ................................ 91
Figura 9.1 Imagen original y correspondiente de bordes o contornos .......... .... 93
Figura 9.2 Cuadro comparativo de desempeño de transformada
de Fourier y transformada Wavelet para reconocer imágenes
que ya se encontraban en el Banco de Imágenes .......................... .94
Figura 9.3 Cuadro comparativo de desempeño de transformada
de Fourier y transformada Wavelet para reconocer
imágenes con variaciones, de las que ya se encontraban en
el Banco de Imágenes...... ... ... ................. .... ......................... ... .... .....95
Figura 9.4 Imagen jeff-01.pgm con su correspondiente imagen de bordes
y una variación llamada jeff-02.pgm con su correspondiente
imagen de bordes .. ... ............................... .... ... .. ............................... 95
X
LISTA DE TABLAS
Tabla 4.1 Coeficientes de tres funciones wavelet .......................................... .46
Tabla 5.1 Niveles y operaciones del procesamiento integral de imágenes ..... 51
Tabla 6.1 Situaciones que pueden presentarse en el reconocimiento
automático ......................................................................................69
Tabla 6.2 Ejemplo de descomposición wavelet con base
en promedios y coeficientes de detalle ........................................... 78
Tabla 7.1 Lista de programas construidos ...................................................... 89
xi
RESUMEN
2
CAPÍTULO 1
3
Actualmente se están trabajando en forma separada métodos de
reconocimiento de patrones basados en la transformada rápida de Fourier y en
forma aislada muy pocos sobre transformada wavelet, esta última está en proceso
de exploración en otros campos tan diversos como astronomía, acústica,
ingeniería nuclear, neurofisiología, música, imagen de resonancia magnética
fractales, turbulencia, predicción de terremotos, radares, reconocimiento de voz,
visión humana, y aplicaciones en matemáticas puras, tales como solución de
ecuaciones diferenciales parciales.
1.2 Objetivo
4
Se eligieron como criterios de comparación la complejidad algorítmica de
los métodos, el tiempo de ejecución y el porcentaje de correctud o decisiones
correctas al aceptar o rechazar nuevas imágenes para su reconocimiento.
1.3 Justificación
Una imagen digital en dos dimensiones, es una imagen f(x,y) que ha sido
discretizada tanto en coordenadas espaciales como en brillantez. Se puede
considerar a una imagen digital como a una matriz cuyos índices de filas y
columnas identifican un punto en la imagen y su correspondiente valor del
elemento de la matriz identifica el nivel de gris en ese punto. Los elementos de
dicho arreglo digital son llamados elementos de imágenes, elementos de dibujo o
pixel es.
5
En la práctica la mayoría de las señales son señales en el dominio del tiempo
en su formato original, debido a que su medición es una función del tiempo. Sin
embargo en la mayoría de los casos, la información útil está escondida en el
contenido de frecuencia de la señal. El espectro de frecuencia de una señal
muestra los componentes de frecuencia de dicha señal, es decir, permite
visualizar las frecuencias que existen en esa señal. La transformada de Fourier
permite obtener la representación en amplitud y frecuencia de la señal.
1) Las dos son operaciones lineales que generan una estructura que contiene
log2n segmentos de diferentes longitudes. Debido a que ambos métodos son
recursivos y trabajan sobre el principio de divide y vencerás, en cada cambio
de nivel o iteración se va reduciendo el conjunto de datos en segmentos que
son la mitad del anterior.
6
2) Las propiedades matemáticas de las matrices involucradas en las
transformaciones son similares también. Tanto la matriz transformada inversa
de la transformada rápida de Fourier (FFT), como la de la transformada
wavelet discreta (DWT), es la transpuesta original. Es decir, en ambos casos,
se puede aplicar el proceso inverso (o la transformada inversa) para recuperar
la señal original.
3) En ambas transformadas los resultados pueden ser vistos como una mapeo en
el espacio función a un dominio diferente. La transformada de Fourier permite
obtener la representación en frecuencia de la señal y la transformada Wavelet
muestra una representación también de la frecuencia, pero en el espacio en el
que ocurre.
1.4 Contribución
7
CAPÍTULO 2
Para formar la función f(x,y) se combinan como producto las funciones i(x,y)
y
r(x,y) :
f(x,y) = i(x,y)r(x,y)
Donde
8
Esta última indica que la reflexión esta limitada por O (absorción total) y 1
(reflexión total).
9
2.3 Resolución
10
2.4 Muestreo y cuantización
El Dr. Rafael González [2.1] nos dice: "Para que sea adecuado el
procesamiento de una imagen en computadora, la función de la imagen f(x, y)
debe ser digitalizada tanto espacialmente como en amplitud. La digitalización de
las coordenadas espaciales (x, y) es llamada muestreo de la imagen, mientras que
la digitalización de la amplitud recibe el nombre de cuantización de niveles de
gris."
O O 2 O
5 7 3
O 4 6
o o o o
Figura 2.3 Representación de una imagen en una matriz, con valores en niveles
discretos de gris entre O y 7.
ll
Es común en el procesamiento digital de imágenes que se asignen estas
cantidades como potencias de dos, es decir
N = 2"
y
b = NxMxm; Sí M = N b = N2 m
Por ejemplo una imagen de 128 x 128 con 64 niveles (2 6 ) de grises requiere
98, 304 (128x128x6) bits de almacenamiento. Sin embargo, dependiendo de como
se haya efectuado el proceso de digitalización de la imagen, sucede en ocasiones
que la cantidad de información real es mucho menor que la cantidad de datos
capturados . En este caso es muy importante considerar la posibilidad de emplear
compresión de datos para tener cantidades más adecuadas de datos a fin de
poder transmitirlas a través de los diferentes medios de comunicación.
Por otra parte para un valor fijo de resolución espacial, la apariencia de una
imagen puede mejorarse en muchos casos usando un esquema adaptivo donde el
proceso de muestreo depende de las características de la imagen. Se requiere un
muestreo fino en general para las vecindades entre las transiciones de niveles de
gris de la figura, mientras que puede emplearse un muestreo grueso en regiones
de suavidad relativa o relativamente homogéneas o similares en sus niveles de
gris.
12
A este conjunto de pixeles se le llama vecindad 4 de p y se denota por N4(p).
Cada pixel está a una unidad de distancia de (x, y), y algunas vecindades de p
están fuera de la imagen digital si (x, y) están en el borde de la imagen.
(x, Y+ l)
' ~ .111
(x, y-1)
q•
. ~"q
(X, y) p
cr ~"q
13
2.5.2 Conectividad
1) q está en N4(p), o
2) q está en No(P) y el conjunto N4(p) n N4(q) es el conjunto
vacío.
.q
q (x. Y) ~"q
p
......q
14
1
..
- q
3 [X, Y) p
-
-
..
..
3
Donde: (Xo, Yo) = (x, y) , (x n, y n) = (s, t) , (xi, y¡) está conectado con (x i+1, y i+1 ),
n ~ i ~ 1 y n es la longitud de la trayectoria.
15
TRASLACIÓN.
La traslación de una imagen f(i, j) por un desplazamiento (k, 1), donde k y I son
enteros, produce una nueva imagen digital f(i-k, j-1) . Esta representación no es tan
sencilla de aplicar, debido a que deben considerarse ciertas acciones cuando hay
localidades vacías o bien para los valores frontera que al desplazarse quedan
fuera de la matriz original f(i, j). Como ejemplo se muestra en la figura 2.7, una
letra digitilizada desplazada una unidad a la derecha.
7 7
6 6
s s
4 4
3 3
2 2
.
o 1 2 3 4 s 6 7 8 o 1 2 3 4 s 6 7
ROTACIÓN
REFLEXIÓN
La reflexión implica considerar que existe un eje o espejo a partir del cual se
reflejan los elementos de la imagen.
Se consideran cuatro versiones básicas de reflexión: arriba/abajo, f(i,-j),
izquierda/derecha, f(-i,j), NE/SO, fU,i) y NO/SE, f(-j,-i).
Ejemplo:
17
2.6 Técnicas de interpolación
Los polinomios se formulan de modo que las conexiones entre las ecuaciones
cúbicas separadas sean suaves. Si los polinomios se limitan al orden cúbico, no
ocurren las violentas oscilaciones de las versiones de orden superior, produciendo
un ajuste mucho más aceptable para los datos con abruptos cambios locales.
19
CAPÍTULO 3
Una vez digitalizada la imagen es posible aplicar sobre ella diferentes técnicas
para su análisis. Es posible analizar tanto sus componentes en tiempo, como en
frecuencia; para esto último se ha utilizado con éxito la transformada de Fourier. A
fin de poder dar una definición se mostrarán primero algunos conceptos que
sirven como antecedente.
Una secuencia de números n, en los cuáles SE~ denota a x(n) como el n-ésimo
número de la secuencia, está escrito formalmente como:
x(n)
r 156 7 8 9 10 11
-5 -4 -3 -2 -1 O 1 2 3 4
El concepto de señal discreta se refiere a que la función x(n) sólo está definida
para valores enteros den y que x(n) simplemente no está definida para valores no
enteros den.
20
Se define una secuencia de muestra unitaria o(n), como una secuencia que
tiene los siguientes valores:
0,n ~ O
8(n) ={
1,n = O
3.1
o n
21
Una secuencia senoidal tiene valores de la forma Acos(won+(j>) ,
donde A representa la amplitud de la señal, w0 representa la frecuencia de
la señal y (j> la fase o desplazamiento de la misma, respecto al origen.
o n
x(n)=x(n+N) V n.
3.1
C1J
x(n) = ¿x(k)o(n--k)
k=-«>
3.2
22
Como ejemplo se muestra la siguiente secuencia, que puede verse como la
suma de muestras unitarias, a las cuales se les ha aplicado un factor de retardo y
escalamiento:
x(n)
ª1
ª-3
2 7
-4 -3 -2 -1 1 3 4 5 6
ª2 a1
Figura 3.5 Ejemplo de secuencia formada por muestras unitarias con retardo y
escalamiento.
23
A través de tomar a N muestras separadas en L\n unidades, como se muestras en
la figura 3.6.
x(n)
x(no + 2An)
no
y(n)=T[x(n)]
3.5
x(n)
----•I~ - - - T - [_i__ J---•
Figura 3. 7 Representación de un sistema
y(n)
24
Si se aplican restricciones a T[ ] es posible definir clases de sistemas
discretos en tiempo, en particular los sistemas lineales e invariantes son de gran
utilidad en el procesamiento de señales.
Sea hk(n) la respuesta a una muestra unitaria en n=k, definida como o(n-k),
de la ecuación 3.2 se tiene:
y(n)= {tx(k)o(n-k)]
3.7
«> co
3.8
25
"'
y(n) = ¿x(k)h(n-k)
k=-<CJ
3.9
x(n) =efwn
L
y(n) = "' h(k)efw(n-k) = efwn "'f.h(k)e-fwk
"'
k=-CO k=-CO
3.10
Se define:
"'
H(e 1w) = ¿h(k)e-1w1c
k=-<CJ
3.11
3.12
26
H( eiw) es una función continua de w y periódica, de periodo 21t y por ello
pue_de representarse en series de Fourier. De hecho la ecuación 3.10 expresa a
H(eJW) en la forma de series de Fourier, donde los coeficientes de Fourier
corresponden a la respuesta de la muestra unitaria h(n), con la observación de
que h(n) puede ser evaluada a partir de H( eiw) por medio de la relación utilizada
para obtener los coeficientes de Fourier de una función periódica, es decir:
"'
H(eiw) = ¿h(n)e-jwn
n=-a:>
3.14
X(eiw) "'
= ¿x(n)e-jwn
n=-«>
3.15
Donde w es una frecuencia expresada en radianes.
3.16
27
problemas que surgen en el procesamiento de señales electrónicas, en óptica y
en la solución de ecuaciones diferenciales.
Aunque los teoremas de Fourier para las diferentes transformadas que llevan
su nombre son más familiares en una dimensión, es muy importante mostrar una
representación de dos dimensiones que sea factible de aplicar a señales o
imágenes que para nosotros están representadas en dos dimensiones.
Para esta definición cambiaremos un poco la notación, debido a que una imagen
en dos dimensiones puede representarse como una función f(x,y).
3.17
Para funciones f(x,y) que son simétricas en los ejes x y, es posible aplicar para
su análisis funciones de la forma:
F(u, v) =([..,f(x,y)Cos2m,xCos2m,ydxdy
Y su transformada inversa:
3.21
3.22
29
3.3 La transformada discreta de fourier en dos dimensiones:
3.23
Para u = O, 1, 2, ... , M-1, v= O, 1, 2, ... , N-1
y
M-1N-1
f(x,y) = ¿¿F(u, v)exp[J21r(uxl M + vy/ N)]
u=O v=O
3.24
Para x = O, 1, 2, ... , M-1 y y = O, 1, 2, ... , N-1
1
Liu = - -
M!!.x
3.25
y
30
1
L\v=--
NL\y
3.26
3.27
} N-IN-1
f(x,y) =- ¿¿F(u, v)exp[¡21r(ux+ry)! N]
N u=O v=O
3.28
Para X, y= O, 1, 2, ... 1 N-1
b) Propiedad de Traslación
31
f(x,y) exp U21t(UoX+Voy)/N] <:::> F(U-Uo, V - Vo)
3.30
y
Por lo que:
e) Periodicidad
d) Rotación
32
Empleando una sustitución directa, aún se conserva la relación entre el par de
transformadas discretas o continuas de Fourier:
3.35
e ) Propiedad distributiva
3.36
pero no es distributiva para la multiplicación:
3.37
f ) Escalamiento
1
f (ax, by)<::::> labl F(u / a, v / b)
3.39
33
g ) El valor promedio
} N-1 N-l
Sustituyendo u = v = O se tiene
} N-1 N-l
F(0,0)= - ¿¿J(x,y) 3.41
N x=O y=O
](x,y}= __!__F(o,o)
N
3.40
Sea la ecuación
1 N-1
F(u)= - ¿J(x)exp[- j21ruxl N] 3.41
N x=O
Si
WN = exp[-j2n/N]
3.42
1 N-1
F(u)= - ¿J(x)wNux 3.43
N x=O
N=2M
35
} 2M-I
F(u)=- ¿J(x)v2:
2M .r=O
2ux -W:ux
W2M - M
Definiendo
} M-1
3.46
Fpar(u)= -¿J(2x)v,:
M x=O
para u = O, 1, 2, ... , M - 1 y
} M-1
3.47
F°;nrpar (u)= -
M
¿ f (2x + 1)v,:
x=O
para u = O, 1, 2, ... , M - 1
3.48
w: M
u+M
-
-wuM
36
Ya que
u+M _ -Wu
W2M - 2M
3.49
37
Se sabe que:
wt. = cos(2º)
_!!)_ + i sen (2º)
_!!)_
N+l N+l
Se puede construir una rutina que calcule el arreglo w utilizando las funciones
trigonométricas convencionales, donde N+1 debe ser potencia de dos.
38
CAPÍTULO 4
1
1 1
-1 -1 -1 -1
39
Donde el rango de índices es j>=O y O<=k<=2i. Estas funciones forman una
base de L2 [O, 1]. La transformada wavelet proporciona una base local cuya
consecuencia es que la señal f(t) desaparece después de t=1/4 y solamente un
cuarto de las últimas funciones base están involucradas. Las traslaciones y
escalamientos de W son mutuamente ortogonales y esto es propiamente la
definición de wavelet.
40
física cuántica. Estos dos investigadores proporcionaron una forma de pensar
basada en wavelets sobre intuiciones físicas.
1. Este concepto aporta una nueva forma de pensar, y es una forma muy
atractiva para los ingenieros y científicos, ya que se adapta a problemas y
trabaja mucho mejor que las herramientas existentes en el procesamiento
de imágenes.
41
4.1 Definición
WT(,,s) =f f(t) Ji
1 1/1 -s- dt
('-')
4.1
f(t) = -1 ff W(,,s)-'I'
e
1
¡;
('-,)ds
-
S
-·d,
s2
4.2
Donde
e-
-f IH(v)i2
lvl dv
4.3
El término wavelet signfica pequeña onda y se aplica debido a que esta función
ventana es de longitud finita y a que es una función oscilatoria. Algunos autores la
han traducido al español con el término simpático de "ondita" u "ondeleta", pero
en este trabajo se prefirió emplear el término original en inglés, debido a que la
mayoría de la literatura la reconoce como wavelet.
42
El término traslación está relacionado con la localización de la ventana,
mientras la ventana es recorrida a través de la señal y corresponde a la
información en tiempo en el dominio de la transformada.
Sustituyendo s y 't por (2-i, k2\ una representación ortogonal está dada por:
4.4
Las variables j y k son enteros que expanden y trasladan la función madre 'P(t)
para generar wavelets, por ejemplo, ese es el caso de la familia de wavelets de
Daubechies. Se debe notar que las funciones madres son reescaladas por
potencias de dos y trasladadas por enteros.
M-1
43
Una vez que se conocen las funciones madre, se conocen cada una de las
bases. Para extender el dominio de los datos en diferentes resoluciones, el
análisis wavelet es usado en la ecuación de escalamiento:
N-2
W(t)= ¿(-1/ct+if//(2t+k)
k=I
4.6
k=O
4.7
Esto se debe a que el área bajo la "curva" de todo el espacio de la función
debe ser la unidad.
N-1
¿ckck-2m =28om
k=O
4.8
Donde cS es la función delta y mes un índice de situación.
Lo que significa que esta sumatoria es cero para todas las m diferentes de cero
y que la suma de todos los cuadrados de los coeficientes es dos.
Para dar solución a la ecuación 4.5, para encontrar los valores de los
coeficientes, se construye una matriz M x M con los valores de los coeficientes,
donde M es el número de coeficientes diferentes de cero. Se diseña una matriz L
con entradas L¡¡ = c2i-i· Esta matriz tendrá un valor propio igual a 1 y sus vectores
propios (normalizados) contendrán, igual que sus componentes, el valor de la
función \jJ en los valores enteros de t. Una vez que se conocen estos valores,
todos los demás valores de la función \jJ(t) se pueden generar aplicando la
44
ecuación con valores a un medio de entero de t, a un cuarto de entero de t, etc.
hasta el escalamiento deseado. Esto efectivamente determina la precisión de la
aproximación de la función.
Esta clase de funciones wavelet está restringida por definición a cero fuera de
un pequeño intervalo y es lo que hace que la transformada pueda operarse como
un conjunto finito de datos. A esta propiedad es a lo que se le llama soporte
compacto.
11.6
i"
llA
D.2
a .J
•I
/\
/ ~
o-----'
I
..
.
-l
.
Figura 4.3 Función base Daubechies-4
45
WAVELET Co C1 C2 C3 C4 Cs
Haar 1.0 1.0
Daubechies-4 %(1+.J3) %(3+.J3) %(3-.J3) %(1-.J3)
Daubechies-6 0.332671 0.806891 0.459877 -0.135011 -0.085441 0.035226
o_.06 0.06
0.05 Daubechies_6
0.04 '\ o.os
0.04~
Coiflet_3
0.03
0.02 \ 0.03-l
r
0.01 · 0.02·
o 0.01
-0.01
o
-0.02
o 500 1000 1500 2000 2500 -0.01
~
o 500 1000 tsoo 2000 2500
o.os 0.06
í
1
l
Haar_4
o.os
0.04
0.03
Symmlet_6
o 0.02
-O.OS
o
J
100 200 300 400 500 . 600 ·
0.01
o
-0.01
-0.02
o 500 1000 1500 2000 2500
i = 1, ... ,N/2
4.9
Donde N es el tamaño del bloque de entrada, c son los coeficientes, f es la
función de entrada y a es la función de salida.
El hecho de que la matriz sea esparcida, es decir, que muchas de sus entradas
son ceros, donde el número total de entradas diferentes de cero es n(l+1 ), permite
que la multiplicación de Wn veces por un vector b requiera solamente n(log2n+1)
multiplicaciones separadas. Sin embargo la matriz Wn también permite una
factorización ordenada en matrices muy esparcidas. Entonces el número de
operaciones decae de O(nlogn) a la forma O(n).
48
Cadena de entrada (Tamaño de bloque= 16)
Pasa- baio
Par
1er. escalamiento
Pasa - alto
X X X X X X X X Impar
Pasa- baio
Par
2do. escalamiento
Pasa- alto
X X X X Impar
Pasa- baio
Par
3er. escalamiento
Pasa - alto
X X Impar
Pasa- baio
Par
4to. escalamiento
Pasa- alto
Impar
49
4.4 Algoritmo computacional
50
CAPÍTULO 5
NIVEL OPERACIONES
BAJO Adquisición de imágenes
Preprocesamiento (Reducción de ruido)
INTERMEDIO Segmentación
Descripción
Reconocimiento de obietos individuales
ALTO Reconocimiento
Entendimiento de imágenes
51
A fin de reconocer en forma automática una imagen, se realiza el proceso que
se muestra a continuación:
UNIVERSO
ADQUISICIÓN
DE IMAGEN
REDUCCIÓN
RUIDO
RECONOCIMIENTO
EXTRACCIÓN DE
DE IMÁGENES
CARACTERÍSTICAS
52
5.1 Visión de nivel bajo
Con ello se construye una matriz numérica que servirá como representación
numérica de la imagen a la cuál podrán aplicarse diferentes algoritmos para su
análisis y procesamiento.
5.1.2 Preprocesamiento
53
Métodos en el dominio del espacio
g(x,y) = h[f(x,y)]
Para definir un entorno de vecindad sobre (x,y) es posible tomar una zona
rectangular o cuadrada de la imagen centrada en (x,y). El centro de esta
subimagen se irá desplazando de pixel a pixel comenzando, por ejemplo, en la
esquina superior izquierda, y se irá aplicando el operador a cada localización (x,y)
para obtener g(x,y). Aunque se usan a veces otras configuraciones de entorno de
vecindad, tal como el círculo, la cuadrada es la predominante debido a la facilidad
con que se implementa.
54
Figura 5.2 Máscara para detectar puntos aislados diferentes de un fondo
constante
Como se observa en la figura 5.3, si llamamos w1, w2, ... , Ws a los coeficientes
de la máscara y consideramos los vecinos-a de (x,y), podemos generalizar el
procedimiento anterior a uno que realice la siguiente operación:
5.1
55
w, W2 W3
(x-1,y- (x- (x-
1 1, +1
W4 Ws Ws
-1
X, X, X, +1
W1 Wa Wg
(x+1,y- (x+1, (x+1,y
1 +1
Figura 5.3 Máscara 3X3 general que muestra los coeficientes y las posiciones
de los elementos de la imagen correspondiente.
1
g(x,y) =- ¿J(n,m)
p (n.m")ES
5.2
Filtración de la mediana
Operadores de gradiente
a¡
G[r(x,y)]= [~:]= :
ay
5.3
5.4
G[f(x,y)]~ 1 Gx 1 + 1 Gy I
5.5
57
Como se observa en la ecuación 5.3, para la evaluación del gradiente se
requiere obtener las derivadas parciales de primer orden of/ox y of/oy . Para
obtenerlas en una imagen digital se usan las diferencias de primer orden entre dos
pixeles adyacentes; esto es :
Gr=of =J(x,y)-f(x-1,y)
éJx
5.6
y
GY = 8/ = f(x,y)- f(x,y-1)
éJy
5.7
5.8
y
Gy = 8f =[f(x-I,y+I)+2f(x,y+I)+ f(x+l,y+I)]
éJy -[f(x- I,y- I) + 2/(x,y -1) + f (x + l,y-1)]
= (e+ 2e + i) - (a + 2d + g)
5.9
58
a)Vecindad 3X3 del punto (x,y)
~I ~I ~I
b) Máscara utilizada para calcular Gx
~I ~I
:~ 1
5.2.1 Segmentación
Análisis local
La primera propiedad viene dada por el valor de GLf {x, y)], como se vio en las
ecuaciones (5.3) o (5.4). Así decimos que un pixel de borde con coordenadas (x',
y) dentro del entorno de vecindad de {x, y) es similar en magnitud al pixel situado
en {x, y) sí:
60
¡c[t(x, y)]- G[t(x', i)] ~ T
5.10
en donde Tes un umbral.
5.11
IB-B'I < A
5.12
Análisis global
k
e = L, c(n;_,, n¡)
i=2
5.13
Códigos de cadena
62
Aproximaciones poligonales
Una frontera digital se puede aproximar con una exactitud arbitaria mediante un
polígono. Para una curva cerrada la aproximación es exacta cuando el número de
segmentos del polígono, es igual al número de puntos de la frontera, de tal forma
que cada par de puntos adyacentes defina un segmento del polígono. En la
práctica el objetivo de la aproximación polinomial, es capturar la esencia de la
forma de la frontera con el menor número posible de segmentos poligonales.
Descriptores de Fourier
63
CAPÍTULO 6
64
De acuerdo a estos niveles, el orden en que se lleva a cabo el procesamiento
de imágenes hasta llegar a su reconocimiento y comprensión se ilustra en la
figura 6.1.
............................... ..........................,.
1 !
! !:
! ! .........................................................................................................
J PROCESAMIENTO DE NIVEL
PREPROCESA INTERMEDIO
MIENTO
RECONOCIMIENTO
E
INTERPRETACIÓN
ADQUISICIÓN
DE IMAGEN
PROCESAMIENTO
DE BAJO NIVEL PROCESAMIENTO
DE AL TO NIVEL
DOMINIO DEL
PROBLEMA RESULTADOS
65
II
Para lograr el reconocimiento automático de los objetos individualizados se
debe realizar una importantísima transformación de los mismos, de tal forma que
se convierten en un vector X cuyas componentes se denominan características o
11
rasgos. [6.1]
IMAGEN
SEGMENTACIÓN Y I
O DETECCIÓN DE
BORDES
EXTRACCIÓN DE
CARACTERISTICAS
CARACTERÍSTICAS
DE OBJETOS DEL
UNIVERSO XE
RECONOCIMIENTO
66
Para la manipulación y representación de formas o imágenes es deseable
encontrar una representación adecuada que permita su manipulación matemática,
ya que de ello depende que se puedan aplicar los modelos de acuerdo al tipo de
estructura utilizada para modelar la representación interna del mundo y así poder
llevar a cabo propiamente el proceso de reconocimiento. Como se comentó en el
capítulo 2, se puede construir una matriz N x M a partir de una imagen, pero
ciertos algoritmos y filtros ya están definidos para aplicarse a vectores de una
dimensión.
Donde X1, X2, ... Xn son números reales que cuantifican, para un objeto
concreto, las correspondientes características.
67
Cuando se ha obtenido el vector X asociado a un objeto individual, para su
reconocimiento automático, se determina su grado de semejanza con los vectores
de características prototipo de cada posible clase de objetos previamente
definidos.
Una vez definidas las clases, la siguiente operación consiste en la elección del
vector de características. Esta etapa es crítica y la bondad del sistema final estará
completamente determinada por los rasgos escogidos.
68
La transformada de Fourier ya se ha empleado para calcular características
discriminantes de los objetos en imágenes digitales. La idea básica es pasar de
un dominio espacial del contorno del objeto a un dominio frecuencial del mismo,
utilizando con este fin la transformada discreta de Fourier (TDF). Sin embargo, hay
una acuse en la bibliografía de que consume muchos recursos de cálculo para
ciertas aplicaciones.
En este caso la confiabilidad del sistema depende del uso de un algoritmo que
aumente la probabilidad de que ocurra la aceptación y rechazo auténtico y al
mismo tiempo reduzca la probabilidad de que ocurra la aceptación y el rechazo no
válidos.
69
Transformación en escala de
grises
TRANSFORMADA
DE FOURIER
Disel'lo y obtención de
caracterlsticas
TRANSFORMADA
WAVELET
No
RECONOCIMIENTO
O 3 3 O
7 7
O 4 4 O
o o o o
• Identificador de imagen
• Número de columnas blanco Número de filas
• Valor máximo de niveles de gris
• Valores numéricos separados por blancos que representan los valores
de grises de la imagen, organizados de acuerdo al número de
columnas y filas indicados.
Ejemplo:
# feep.pgm
8 8
64
o o o o o o o o
o 3 25 25 60 59 62 45
1 3 26 26 65 50 50 14
2 3 25 30 50 55 55 12
8 o 12 32 50 11 10 7
o o 8 22 30 5 3 7
o o 3 8 12 2 1 3
o o o o o o o o
72
Un borde en general puede orientarse en cualquier dirección y puede variar en
nivel de intensidad. Para determinar si un punto de la imagen es o no un borde se
tienen dos clases de métodos: orientados a la frecuencia mediante la aplicación de
filtros, o bien orientados a la definición de los pixeles en el espacio, a través de
una ventana o máscara, como se explicó en el capítulo 5.
Wo= 1 ~ 111 :~ 1 w. = 1 _u -~ ~1 1
2
W = 1 ! ! ~ 1 1 1 W,= 111 ! 1 ~ 1
We= ~~ ! ~ 1 1 1
7
W = 1 :~ 1 -~ 1 -~ 1
Donde Yo, y1, etc., son las correlaciones cruzadas de la máscaras Wo, W1, etc.,
con la imagen.
Con esta idea se construyó un algoritmo basado en este método que permite
obtener la imagen en realce, facilitando la aplicación de las transformadas para la
obtención de las características principales en frecuencia de la imagen.
73
Como ejemplo, se muestran las siguientes figuras a las que se le ha aplicado el
proceso de detección de bordes.
74
6.4.1 Aplicación de la transformada de fourier
f(X)
7 Función periódica
6
5
4
3
2
1234567 N-1 X
El valor que toma la función f(x) en un enlace concreto entre dos pixeles
consecutivos del contorno coincide con el elemento del código cadena que
75
corresponde a ese enlace. Los valores de f(x), por tanto, son los enteros entre O y
7, ambos inclusive.
1 N-1 [ 2,r ]
F(u)= F[f(x)]=- ¿f (x)exp _.L_ux
N x=O N
u= O, 1, 2 ... N -1
6.4
1
Liu=--
N Lix
6.6
6.7
76
Esta transformada puede aplicarse al cálculo de características discriminantes
de contornos cerrados, debido a que es posible pasar de la Transformada discreta
de Fourier a la función espacial, mediante la transformada discreta de Fourier
inversa:
1 N-1 '2
f(x) = F-1 [J(x)] = - ¿F(u)exp[ 1 1r ux]
N u=O N
x = 0,1,2 .. .N -1
6.8
Suponga que una imagen de una dimensión tiene 4 elementos con los
siguientes valores:
9 7 3 5
8 4
8 + (1) = 9 y 8 - (1) =7
Para el segundo para se observa que con el coeficiente -1 se pueden
recuperar los valores:
4 + (-1) = 3 y 4-(-1)=5
6 2 1 -1
78
En el trabajo desarrollado, para obtener el vector de características
discriminantes también se aplicó la transformada wavelet, considerando que una
vez que se conocen las funciones wavelet madre, se conocen cada una de las
bases. Como se indicó en el capítulo 4, para extender el dominio de los datos en
diferentes resoluciones, se utiliza el análisis wavelet en la ecuación de
escalamiento:
N-2
W(t)= ¿(-l/ck+if/1(2t+k)
k=I
6.9
N-1
¿ckcf21 = 281,0
k=O
6.10
Los métodos de reconocimiento que se usan hoy día se pueden dividir en dos
categorías principales: métodos de decisión teórica y estructurales. Los primeros
se basan en descripciones cuantitativas, mientras que los métodos estructurales
trabajan sobre descripciones simbólicas y sus relaciones.
6.11
80
6.12
Dj(x*) = llx*-m1II
j = 1,2, ... m
6.13
112
Donde 11 a 11 = (ara) es la norma euclidiana. Se asocia x" con la clase ül si
D,{x") es la distancia más pequeña. Esto es equivalente a evaluar las funciones
1
d J.(x*) =(x*) 7 m.J --m 7
2 J m.J
j = 1,2, ... m
6.14
81
CAPÍTULO 7
7.1 Objetivo:
7.2 Análisis
Fuente o destino de
infonnación
Proceso
Datos en tránsito
Almacén de
infonnación
1
BASE DE IMÁGENES
UNIVERSIDAD DE MANCHESTER
MATRIZ DE CARACTERiSTICAS
DE LA BASE INICIAL
IMAGEN A RECONOCER
VECTOR DE LA IMAGEN
VECTOR DE BORDES
5
RESULTADOS
Figura 7.2 Diagrama de flujo de datos propuesto para reconocer una cara humana
83
El primer proceso puede detallarse de la siguiente forma: se lee cada una de
las imágenes y se almacenan de tal forma que integran una matriz, donde cada
columna corresponde a una imagen. Esta matriz de imágenes recibe un
tratamiento similar al que recibirá la nueva imagen, es decir se aplica la detección
de bordes y la transformada seleccionada, a fin de que se cuente con una matriz
de características de la Base Inicial de Imágenes. Cada columna de esta nueva
matriz puede verse como la definición de una clase a la que puede pertenecer la
imagen en análisis. Este proceso se representa en la figura 7.3
BASE DE IMÁGENES DE LA
UNIVERSIDAD DE MANCHESTER
MATRIZ DE IMÁGENES
MATRIZ DE BORDES
MATRIZ DE CARACTERÍSTICAS
DE LA BASE DE IMÁGENES
RECONOCEDOR DE 000
CARAS HUMANAS
100 200
1 1
FOURIER WAVELET
210
110
220
120
230
130
DETECCIÓN DE - DETECCIÓN DE
BORDES BORDES
240
140
- CARACTERiSTICAS
CARACTERiSTICAS
WAVELET
FOURIER
250
150
RECONOCIMIENTO - RECONOCIMIENTO
85
Los módulos 110 y 210 tienen una estructura semejante, excepto por la rutina
de transformada para obtener la matriz de características, esto puede verse en la
figura 7.5:
llO 210
lll 211
CONST. ARCHIVO
DE IMÁGENES
- CONST. ARCHIVO
DE IMÁGENES
112 212
CONSTRUYE - CONSTRUYE
MATRIZ DE IMAG. MATRIZ DE IMAG.
113 213
ll4 214
86
Los algoritmos de los programas empleados se especifican en pseudocódigo a
continuación:
fin= falso
Mientras no fin
Proporciona nombre de archivo a incluir en la base de imágenes
Lee nombre de imágenes
Graba nombre en Archivo de imágenes
Muestra "Desea incluir otra imagen a la base <S o N> "
Lee resp
Si resp <> "S"
fin = verdadero
Finsi
Finmi
87
CLAVE: 113 NOMBRE DEL MÓDULO: OBTIENE BORDES
Asigna operadores
Solicita nombre de imagen
Lee imagen
Proporciona nombre de salida
Para n=O hasta numcolumnas
Para j=O hasta numfilas
Aplica y recorre con la ventana de operadores
Finpa
Finpa
Lee Archivo
Verifica si num. de datos es potencia de 2
Si si
Para i=1 hasta final
etap=(i-1 )"2
Var= O
Parar= 1 hasta etap
Calcula wr y wi
Finpa
Para k=O hasta n
Calcula xr y xi
Calcula xmod y xang
Finpa
Finpa
Guarda resultados
Sino
Mensaje de error
7 .4 Construcción
PROGRAMA DESCRIPCION
MUESTRA.e Permite visualizar en pantalla una imagen
almacenada en tonos de grises.
BORDES.e A través de operadores de ventanas detecta por
contraste los pixeles de contorno de la imagen
FFT.C Calcula la transformada rápida de Fourier de una
imagen.
NEWAVEL.C Obtiene la transformada wavelet de una imagen
RECFFT.C Almacena la Base de Imágenes transformadas,
permite proporcionar una nueva imagen, calcula su
transformada de Fourier y efectúa un proceso de
reconocimiento.
RECWAVEL.C Almacena la transformada wavelet de la Base de
imágenes, permite proporcionar una nueva imagen,
calcula su transformada de Wavelet y efectúa un
proceso de reconocimiento --
FFT2D.C Permite obtener la transformada inversa de Fourier.
MUESFFT.C Permite visualizar en pantalla los componentes de
frecuencia de una imagen.
89
CAPÍTULO 8
8. O RESULTADOS
120
(1)
w 100
3
2
80 rn NUM. MUESlRAS 16
w 60 II NUM. MUESlRAS 8
~ 40
~ 20
o
cP ~<v~ cP
~
~' (j
f)
~
~
~ ~~ ~
Q ~~ '?-Q
o~ ~~
(.i '<....::s
EXPERIMENTOS
90
Se considera que estos resultados son alentadores, debido a que cada imagen
original está definida por un total de 262 144 pixeles en escala de gris de O a 255.
Debe notarse que se obtuvieron aún mejores resultados con ocho coeficientes de
resultado que con 16.
120 -= = = = = =
w 100 +.fi;:@.iifi~@.iifi~@.iifi~
2
z
80
l:INUM. MUESTRAS 64
w 60 IINUM. MUESTRAS 32
o
a:::
oQ.
20
o
EXPERIMENTOS
91
Figura 8.2 Resultados obtenidos con el reconocedor de imágenes que emplea
transformada de Fourier
92
CAPÍTULO 9
9.0 CONCLUSIONES
93
De los experimentos realizados, con un conjunto de 30 imágenes numéricas de
resolución 512 x 512, con niveles de intensidad en escala de grises de O a 255,
proporcionadas por la Universidad de Manchester [ 6.2], se observó que se obtuvo
un desempeño significativamente mejor empleando la transformada wavelet,
respecto al que empleó la transformada de Fourier.
92
90
w
2z 88
w 86
u ImDEL BANCO I
o::
O 84
D.
80
NÚM. DE MUESTRAS
94
RECONOCIMIENTO DE IMAGENES CON PEQUEÑAS
VARIACIONES
60
50
w 40
2z
w 30 El CON VARIACIONES
u
o:::
o
D. 20
NUM. DE MUESTRAS
96
9.0 Trabajo Futuro
Por ser un universo que presenta pequeñas variaciones de una cara a otra,
valdría la pena intentar su aplicación a otros universos como el reconocimiento de
objetos o símbolos.
Por último, sería interesante probar estos métodos con otros modelos de
clasificación como las redes neuronales o los sistemas expertos para mejorar el
desempeño específico de la fase de reconocimiento.
97
REFERENCIAS
[3.1] SKALKOFF ROBERT. Digital lmage Processing and Computar Vision. John
Wiley &Sons. 1989
[4.3] ROBI POLIKAR. "The wavelet tutorial. Part IV. Multiresolution analysys: the
discreta wavelet transform.
[5.1] K. S. Fu, R.C. González y C.S.G. Lee "Robotic: Control, Sensing, Vision and
lntelligence. Ed. Me graw Hill. 1990.
[5.2] Nacache N.J. y Shingal "SPTA: A proposed algorithm for thining binary
patterns" IEEE Trans. System, Man, Cybern. Vol. SMC-14 num 3, pag 409-418
[6.3] Sid_Ahmed M.A. "lmage Processing Theory, Algorithms & Architectures" Ed.
Me. Graw Hill. 1995
[6.4] K. S. Fu, R.C. González y C.S.G. Lee "Robotic: Control, Sensing, Vision and
lntelligence. Ed. Me graw Hill. 1990
109
[6.5] Stollnitz, De Rose & Salesin. "Wavelet Computar Graphics. A primer, part I"
Universidad de Washington. Mayo, 1995.
110
BIBLIOGRAFÍA
Adelson Edward, Simonelli Eero & Hingorani Rajesh. " Orthogonal pyramid
transforms fer image coding". Proc. SPIE, Visual Communication and lmage
Processing. Cambridge MA. 1987.
Burt Peter & Adelson Edward. "The Laplacian Pyramid as a Compact lmage
Cede". IEEE Transaction on Communication. Vol. Com-31 No. 4. Abril, 1983.
Dean James, James Allen & Yianis Aloimonos. " Artificial lntelligence. Theory and
Practica". Ed. The Benjamin/Cummings Publishing Co. 1995
Gase Earl & Jhonsenbaugh " Pattern recognition image analysis". Ed. Prentice
Hall. 1996.
Hei Christopher & Walnut David. " Continuos and Discreta Wavelet Transforms".
SIAM Review. Vol. 31 No. 4. Pags. 628-666. Diciembre, 1989.
K.S. Fu, R.C. González y C.S.G. Lee "Robotic:Control, Sensing, Vision and
lntelligence " Ed. Me. Graw Hill. 1990.
Lindley Craig A. "Practica! lmage Processing in C ". Ed. Jhon Wiley & Son. 1991.
ll l
Mallat Stephane G. " Multifrequency Channel Decomposition of lmages and
Wavelet Models". IEEE Transaction on Acoustic, Speech and Signal Processing.
Vol. 37. No. 12. Diciembre, 1989.
Nacache N.J. y Shingal "SPTA: A proposed algorithm fer thining binary patterns"
IEEE Trans. System, Man, Cybern. Vol SMC-14, Num. 3, pags. 409-418
Oppenheim Alan & Schafer Ronald "Digital Signal Processing". Ed. Prentice Hall.
1975.
Polikar Rabi. "The wavelet tutorial. Part I y part IV. Multiresolution Analysis: The
discrete wavelet transform"
http://www2.informatik.uni-jena.de/-mrz_/WaveletTutorial_by_Polikar
Pentland Alex, Babak Moghaddan & Tadd Stamer. "View-Based and Modular
Eigenspaces fer Face Recognition". M.I.T. Media Laboratory Perceptual
Computing Section Technical Report No. 245.
Skalkoff Robert. "Digital lmage Processing and Computar Vision". Ed. John &
Sons. 1989.
Stearns Samuel & David Ruth " Signal Processing Algorithms". Ed. Prentice Hall
Signal Processing Series. 1988.
Stollinitz Eric, De Rose Tony & Salesin David." Wavelet for Computer Graphics: A
Primer: Part 1". Universidad de Washington. IEEE. Mayo. 1995.
112
Wickerhauser Mladen Victor. " Lecturas on Wavelet Packet Algorithms".
Departamento de Matemáticas. Universidad de Washingtong. Noviembre 18.
1991.
113