Você está na página 1de 10

Aplicacin de la Red Neuronal Kohonen al Reconocimiento de Rostros

Teresa J. Bracamonte Nole


1
Liz S. R. Pedro Huamn
1

1
Universidad Nacional de Trujillo
libra_te6@hotmail.com, sophy1705@hotmail.com

Resumen
En este documento se presenta el problema del reconocimiento de rostros, el cual si bien es muy difundido, no
es del todo sencillo de abarcar debido a que influyen muchos factores que afectan el proceso de extraccin de
caractersticas, existiendo a su vez varios mtodos para lograr este objetivo, cada uno de los cuales posee sus
ventajas y desventajas. Con este trabajo se busca realizar dicho reconocimiento dependiendo lo menos posible
de dichos factores, como: iluminacin, rotacin, etc. para lo cual se implemento la Red Neuronal de Kohonen,
que ofrece muy buenos resultados en este tipo de trabajos.

1. Introduccin

Actualmente, el campo de la biometra ha ido avanzando vertiginosamente y dando
invalorables frutos, que sirven a los investigadores de punto de partida para realizar nuevas
contribuciones en la mejora de dicha rea. Por tal, motivo se eligi este tema como materia de
investigacin.
A pesar de ser un tema bastante difundido, no es del todo sencillo de realizar debido a que
influyen muchos factores que afectan el proceso de extraccin de caractersticas, con este
documento se busca realizar dicho reconocimiento tratando de depender lo menos posible de
factores, como: iluminacin, rotacin, etc. Por tal motivo se utilizara un proceso de
normalizacin. A si mismo, se empleo la Transformada Discreta de Wavelet, como una
herramienta que nos permitir simplifica datos, funciones u operadores en diferentes componentes
de frecuencia, y luego analiza cada componente con una resolucin de acuerdo a su escala.
El presente documento est organizado de la siguiente manera. En la seccin 2 se referencia
otras tcnicas usadas en la resolucin del problema, Reconocimiento de Rostros. La seccin 3
abarca las tcnicas usadas en este trabajo para la extraccin de caractersticas de los patrones. La
descripcin de la Red Neuronal elegida y la estructura de sta se discute en la seccin 4. En la
seccin 5 se describe como fueron realizados los experimentos y los resultados obtenidos, y las
discusin acerca de estos se abarca en la seccin 6. Finalmente en la seccin 7 se puntualizan las
principales conclusiones despus de la realizacin de ste trabajo.

2. Trabajos Previos

El tema de reconocimiento de rostro actualmente est muy enlazado con lo que es el tema de
seguridad, cada vez se hace ms necesario el reconocer individuos. Existen diferentes enfoques
que abarcan la resolucin de este problema, en muchos casos esto depende de las tcnicas que se
utilicen, las cuales tienen bsicamente dos grandes enfoques, aquellas que intentan reconocer el
rostro como si fuera una unidad, este es el caso de las wavelet, y aquellas que intentan reconocer
un rostro mediante el reconocimiento individual de sus rasgos (ojos, nariz, boca, etc) por
separado, en algunos casos esto es basado en la distancia que tienen estos componentes entre s.
Incluso dentro de lo que abarca la utilizacin de redes neuronales como medio para la
identificacin de idividuos, existen diversas posibilidades, entre las que se puede mencionar la
Redes Neuronales con Retropropagacin, la Redes de Hopfiel y las Redes de Kohonen.

3. Extraccin de Caractersticas

Las imgenes utilizadas en este trabajo fueron obtenidas del Banco de Rostros de la
Universidad de Yale, el cual en su totalidad consta de 165 imgenes pertenecientes a 15
individuos en 11 diferentes posiciones. Con la finalidad de aumentar la eficiencia en el
reconocimiento de rostros, las imgenes pertenecientes a la muestra requieren una fase de
extraccin de caractersticas, para lo cual se han considerado las siguientes tcnicas:
Transformada Wavelet Discreta, Binarizacin y Normalizacin. Aplicando stas tcnicas en
conjunto se obtendr el patrn de entrada a la red neuronal que realizar el reconocimiento.

3.1. Transformada Wavelet Discreta.

Una wavelet es una forma de onda de duracin limitada que tiene un valor medio cero. As
como el anlisis de Fourier bsicamente consiste en descomponer la seal en ondas sinusoidales
de diferentes frecuencias, el anlisis de wavelets consiste en la descomposicin de una seal
arbitraria en versiones escaladas y trasladadas de la wavelet original. Es decir, la idea bsica de
esta transformada consiste en representar cualquier funcin arbitraria como una superposicin
de un conjunto de dichas wavelet o funciones base.
La transformada de wavelet de una seal es la familia de coeficientes C(a, b), que depende
de dos ndices a y b que se asocian con la escala y la posicin de la seal. En una sola dimensin
estos coeficientes e obtienen de la forma:
( ) ( )

+

|

\
|
= dx
a
b x
a
x f b a C
1
, , b R, a R+ - {0}
donde R es el conjunto de nmeros reales.
La ecuacin anterior se define como la suma sobre todo el intervalo de la seal multiplicada
por las versiones escaladas y trasladadas de la funcin wavelet . Multiplicando cada coeficiente
por la apropiada wavelet escalada y trasladada obtenemos la wavelet que componen la seal
original. Escalar una wavelet significa simplemente comprimirla o expandirla, por tanto a es el
factor de escala. En la figura 1 podemos visualizar un ejemplo de la funcin de escalacin y
tambin de la funcin wavelet desde un punto de vista grfico.

Figura 1: Funcin de Escalacin y Funcin Wavelet [Daubechies, 1992].
En el caso bidimensional la familia de wavelet viene dada por:
|
|

\
|
2
2 2
1
1 1
2 1
,
1
a
b x
a
b x
a a

con x = (x
1
, x
2
) R
2
, a
1
> 0, a
2
> 0, b
1
R y b
2
R.
Resulta imposible realizar los clculos de los coeficientes para todas las escalas y posiciones,
por lo que se recurre a la versin discreta denominada transformada de wavelet discreta (TDW o
WDT) donde se elige un subconjunto de escalas y posiciones. EL anlisis resulta mucho ms
eficiente y preciso cuando el subconjunto de escalas y posiciones son potencias de 2.
( ) ( ) ( ) ( )

= =
Z x
k j
x g x f k j C b a C
,
, ,

con a =
j
2
, b = k
j
2
, j N, k Z; donde Z es el conjunto d las nmeros enteros y N, el de los
naturales. [Cruz, 2002]
Existen diversas funciones wavelet para implementar la DWT, de los cuales las ms utilizadas
son la de Haar y la de Daubechies. Las wavelets de Daubechies no tienen una expresin explicita,
excepto por la db1, que es la funcin wavelet de Haar. La mayoria de las funciones wavelet de
Daubechies son asimtricas y de cierta forma son ms regulares en unos puntos que en otros.
En la realizacin de este trabajo se utiliza las bases wavelets de Daubechies. Esta clase
incluye un rango de funciones que se extiende desde las funciones altamente localizadas a
funciones altamente suavizadas; como son la db4, db6, db8 hasta la db20. La decisin con
respecto a cul base Daubechies es la ms conveniente debe basarse en la forma de la seal a
analizar, eligiendo la wavelet de Daubechies cuya forma ms se le aproxime. [Transformada
Wavelet, 2006]
Teniendo como base pruebas realizadas sobre las imgenes de la muestra aplicando las
diferentes funciones de Daubechies, se considera que la funcin ms apropiada es la db9, con la
que se obtienen imgenes simplificadas en las cuales se logr separar las caractersticas relevantes
de los rostros de los sujetos de la muestra, de las sombras de la imagen.
Una vez elegida la funcin wavelet que definir los vectores base para las respectivas
operaciones Paso Bajo/ Paso Alto se obtiene la DWT a travs del siguiente algoritmo:

Algoritmo 1 Descomposicin de la imagen en subandas usando wavelets

Requiere una matriz I (imagen)
1. Realizar la convolucin de las filas de I con el filtro paso bajo y guardar los resultados.
2. Realizar la convolucin de las columnas de I con el filtro paso bajo, a partir de los resultados
del paso 1. Obtener una imagen reducida tomando slo un pxel de cada dos; esto nos genera
una versin que denominamos paso bajo / paso bajo de la imagen.
3. Realizar la convolucin del resultado del paso 1 con el filtro paso alto en las columnas de I.
Obtener una imagen reducida tomando slo un pxel de cada dos; obteniendo ahora una
imagen bajo / paso alto.
4. Realizar la convolucin de I con el filtro paso alto en las filas y guardar el resultado.
5. Realizar la convolucin del resultado del paso 4 con el filtro paso bajo en las columnas de I.
Obtener una imagen reducida tomando slo un pxel de cada dos; obteniendo ahora una
imagen paso alto / paso bajo.
6. Realizar la convolucin de las columnas del resultado del paso 4 con el filtro paso alto.
Obtener una imagen reducida tomando slo un pxel de cada dos; obteniendo ahora una
imagen paso alto / paso alto.


La convencin utilizada para mostrar los resultados de la DWT, como una imagen, se muestra
a continuacin en figura 2.
Paso Bajo /
Paso Bajo
Paso Bajo /
Paso Alto
Paso Alto /
Paso Bajo
Paso Alto /
Paso Alto
Figura 2: Localizacin de las Bandas de Frecuencia.

A continuacin en la figura 3 se puede visualizar el resultado de aplicar el algoritmo 1, se
pueden visualizar las cuatro imgenes obtenidas de acuerdo a la convencin antes mencionada.
Como el algoritmo puede aplicarse ms de una vez con la finalidad de simplificar la imagen
obtenida, en la figura 4 se pude ver el resultado de aplicar el algoritmo 1 luego de 2 iteraciones.




Figura 3: Descomposicin mediante wavelets (1 iteracin).




Figura 4: Descomposicin mediante wavelets (2 iteracin).
3.2. Binarizacin.

Con la finalidad de simplificar el procesamiento de la red se considera necesario binarizar las
imgenes obtenidas luego de la aplicacin de las funciones wavelet. El algoritmo para la
binarizacin es:

Algoritmo 2 Binarizacin

Requiere una imagen I de f x c y un umbral u. Donde f es el nmero de filas y c el nmero de
columnas.
Asegurar B imagen binarizada sea de f x c
para i=1 hasta f
para j=1 hasta c
si I(i, j) > u entonces
B(i, j)<=255
sino
B(i, j) <=0
fin si
fin para
fin para

Sin embargo, como se aprecia se requiere de dos valores de entrada, el primero, representa la
imagen que se desea binarizar, y el segundo es el valor umbral que sirve de gua para separar el
objeto del fondo. Para obtener un valor umbral de acuerdo a las caractersticas de cada imagen
procesada con la funcin wavelet, este valor ser calculado haciendo uso de cierta informacin
estadstica sobre los tonos de gris en la imagen, este mtodo se denomina Binarizacin usando
Probabilidades.
Primero, se define los valores admisibles de tonos de gris
1
,
2
,,
L
. La probabilidad
discreta de cada tono de gris en una imagen puede determinarse por su histograma de frecuencias
relativas. Sea I
ij
el tono de gris en el punto (i, j) de la imagen. La probabilidad P, de que el punto
(i, j) tenga el tono de gris
v
es igual a la frecuencia relativa.

( )
imagen la de puntos de total Nro.
con tono imagen la de puntos de Nro.
v
v v j
P Ii P

= = =


La biparticin se lleva a cabo tomando =
I
, donde I {1, 2,, L}. Sean
1

l
y
2

l

conjuntos disjuntos de tonos de gris inducidos por el valor
l
, es decir:
{ }
l ij j
l
I Ii = :
1
y { }
l ij j
l
I Ii > = :
2


La probabilidad de que un punto de la imagen se encuentre en una de las clases
1

l
y
2

l

es:
( ) ( ) ( )
1 2
1
, 1
1 = =

=
l l
l
v
v
l
P P P P

El valor umbral debe satisfacer las condiciones:
( )
1

l
P y ( )
2

l
P deben ser diferentes de cero.
La diferencia absoluta de los valores medios de los tonos de gris en
1
y
2
debe
ser la mayor posible.
Un criterio que considera estos requerimientos es la funcin objetivo:
( ) ( )
( ) ( )
2
1
2
1
1
2 1
)
`

=

+ = =
L
l v
l
v v
l
v
l
v v l l
l
P
P
P
P
P P J


que debe maximizarse con respecto de l. Por lo tanto, lo que se busca es .
max arg
l l
J l = Luego,
el clculo de =
l
se traduce a la evaluacin de J
l
, L-1 veces. [Chang, 2004]
A continuacin en la figura 5 se puede visualizar el resultado de aplicar la binarizacin por
probabilidades a la imagen paso bajo/paso bajo mostrada en la figura 4.

Figura 5: Binarizacin de la imagen simplificada.

3.3. Normalizacin.

Uno de los principales problemas que surgen en el reconocimiento de imgenes en general, es
poder reconocer un patrn a pesar de haber sufrido algunas transformaciones geomtricas, como
por ejemplo rotacin y traslacin; en este trabajo se har uso de las funciones de momento para
realizar la normalizacin.
Cuando un objeto se encuentra bajo algn tipo de transformacin geomtrica, su posicin
vara en el espacio, sin embargo ciertas relaciones entre algunos puntos del objeto se mantienen,
Por ejemplo el centro de masa o centro de gravedad de la imagen es una buena referencia para
obtener la invarianza ante alguna posible variacin del desplazamiento del objeto en la imagen.
Existen otras funciones que nos ayudan a obtener la invarianza de las otras transformaciones, los
cuales son llamados momentos.
El centro de masa es un momento que est definido por la siguiente ecuacin:

=
=
N
yi
yc
N
xi
xc

donde xi,yi corresponde a valores no nulos de la imagen, N es el nmero de componentes xi,
yi. Existen otros puntos que nos ayudan a normalizar la imagen respecto de la rotacin del objeto,
los cuales son llamados momentos centrales, y estn dados por:

=
=
Fi
yi Fi
Py
Fi
xi Fi
Px
*
*

donde:
( ) ( )
2 2
yc yi xc xi Fi + =


Px y Py son llamados momento central de primer orden. Existe otro momento que nos ayuda
a normalizar la imagen, el cual es llamado momento de segundo orden. Para el momento de
segundo orden Fi se define como el inverso del Fi para el caso de primer orden. [Len, 2006]
Segn la teora para normalizar una imagen, el algoritmo que utilizaremos est dado por:

Algoritmo 3 Normalizacin usando momentos centrales

Requiere una imagen I
Asegurar xi e yi

Calcular el centro de masa de la imagen.
Calcular los pesos W segn:
( ) ( )
2 2
yc yi xc xi wi + =

Calcular los momentos centrales de primer orden.

=
wi
xi wi
Xw
*
1

=
wi
yi wi
Yw
*
1

Calcular los momentos centrales de segundo orden.

=
wi
xi
wi
Xw
1
1
*
1
2

=
wi
yi
wi
Yw
1
*
1
2

Determinar distancias entre los momentos.
( ) ( )
2 2
2 1 2 1 Yw Yw Xw Xw d + =

Redefinir los puntos xi, yi como:

( )( ) ( )( )
2
2 1 1 2 1 1
d
Yw Yw Yw yi Xw Xw Xw xi
xi
+
=


( )( ) ( )( )
2
2 1 1 2 1 1
d
Xw Xw Yw yi Yw Yw xi Xw
yi
+
=

Escalar los puntos redefinidos a las dimensiones f/2.5, c/2.5 de la imagen.


Las imgenes resultantes de la aplicacin de ste algoritmo sobre la muestra tienen
dimensiones de 38 x 30 pxeles. A continuacin se muestran unas imgenes procesadas
empleando el mtodo de extraccin de caractersticas descrito en este documento paso a paso.


Figura 6: Imgenes obtenidas luego del proceso de Extraccin de Caractersticas.


4. Seleccin de la Red Neuronal

La eleccin de la red neuronal en la mayora de aplicaciones biomtricas es un punto de vital
importancia, para lo cual se debe de tener en cuenta lo que se espera obtener, la informacin con
la cuenta, as como tambin las ventajas y desventajas que proporcionan cada uno de los modelos
de redes neuronales existentes; con la finalidad de elegir la red neuronal ms adecuada para lograr
los objetivos deseados.

4.1. Red Neuronal Kohonen.

Existen evidencias que demuestran que el cerebro podra poseer la capacidad inherente de
formar mapas topolgico de las informaciones recibidas del exterior. Por ello, Teuvo Kohonen
present en 1982 un sistema con un comportamiento semejante. Se trataba de un modelo de red
neuronal con capacidad para formar mapas de caractersticas muy similares al proceso que ocurre
en el cerebro.
Existen dos variantes del modelo, denominadas LVQ (Learning Vector Quantization) de una
sola dimensin y SOM (Self Organization Map) generalmente bidimensionales aunque inclusive
podrian ser tridimensionales.

4.1.1. SOM (Mapa Autoorganizativo)

SOM trata de establecer una correspondencia entre los datos de entrada y un espacio
bidimensional de salida, creando mapas topolgicos de dos dimensiones, de tal forma que ante
datos de entrada con caractersticas comunes se deben activar neuronas situadas en zonas
prximas de la capa de salida. Por esta razn, la representacin habitual de esta red suele ser la
mostrada en Fig. 7, donde las M neurona de salida se disponen de forma bidimensional para
representar precisamente los mapas de caractersticas, es decir se representan en forma de malla.
La interaccin lateral entre las neuronas de la capa de salida sigue existiendo, aunque ahora
hay que entender la distancia como una zona bidimensional que existe alrededor de cada neurona,
esta zona puede ser circular, cuadrada, hexagonal o cualquier otro polgono regular centrada en
dicha neurona.

Figura 7: Arquitectura de la Red Kohonen.
El aprendizaje en el modelo de Kohonen es de tipo OFF LINE, es decir, distingue una etapa
de aprendizaje y otra de ejecucin o funcionamiento.
Esta red utiliza un aprendizaje no supervisado de tipo competitivo. Las neuronas de la capa
de salida compiten por activarse y slo una de ellas permanece activa ante un
determinado patrn de entrada a la red. Los pesos de las conexiones se ajustan en funcin de la
neurona que haya resultado vencedora.
Durante la etapa de entrenamiento, se presenta a la red un conjunto de patrones de entrada
(vectores de entrenamiento) para que sta establezca, en funcin de la semejanza entre los datos,
las diferentes categoras (una por neurona de salida que servirn, durante la fase de
funcionamiento, para realizar clasificaciones de nuevos patrones que se presenten a la red. Los
valores finales de los pesos de las conexiones entre cada neurona de la capa de salida con la de
entrada se correspondern con los valores de los componentes del vector de aprendizaje que
consigue activar la neurona correspondiente. En el caso de existir ms patrones de entrenamiento
que neuronas de salida, ms de uno deber asociarse con la misma neurona, es decir, pertenecern
a la misma clase.
En este modelo, el aprendizaje no concluye despus de presentarle, una vez, todos los
patrones de entrada, sino que habr que repetir el proceso varias veces para refinar el mapa
topolgico de salida. De tal forma, que cuantas ms veces se presenten los patrones, tanto ms se
reducirn las zonas de neuronas que deben activarse ante entradas parecidas, consiguiendo que la
red pueda realizar una adecuada y selectiva clasificacin [Saavedra, 2006].

4.2. Diseo de la Red Neuronal de Kohonen.

Para el desarrollo del presente trabajo se considera la Red de Kohonen como la ms apropiada
para realizar esta tarea debido a su capacidad de auto-organizacin.
El tamao de las imgenes procesadas, que son los patrones de ingreso a la red, es de 38 x 30
pxeles; por lo tanto, se requiere de 1140 neuronas en la capa de entrada. Adems la capa de salida
cuenta con un mapa de 10 x 10 neuronas. Adems, la vecindad tiene una estructura cuadrada con
dimensiones 3*3 y la funcin de aprendizaje segn la que las neuronas vecinas son afectadas por
la neurona ganadora es la Gaussiana.


5. Experimentos y Resultados

Como complemento a este documento se desarroll una aplicacin utilizando Java 1.5 para la
Interfaz Grfica de Usuario (Figura 8) y la Red Neuronal de Kohonen; y MatLab 7.0 para las
operaciones de extraccin de caractersticas de los patrones de prueba.
Las pruebas se realizaron con imgenes pertenecientes a 4 individuos, cada uno de ellos
presentando 3 diferentes expresiones faciales, especficamente alegre, triste y sorprendido.
El entrenamiento de la red consista en ingresar los patrones extrados de los 12 rostros y
asociar cada uno de ellos a la clase correspondiente (1 clase por individuo). Despus que la red se
entrenaba se realizaban las pruebas verificando que cada uno de los patrones usados en la fase de
entrenamiento se asociara correctamente, posteriormente se realizaban pruebas con algunas
expresiones de los individuos con las que no se haba entrenado la red, con la finalidad de
verificar si sta las asociaba a la clase (individuo) correspondiente.
Luego de la realizacin de las pruebas correspondientes se verific que la red neuronal de
Kohonen asocia correctamente los rostros de los individuos con que no fue entrenada en un 70%
de los casos a ms, dependiendo del mapa auto-organizativo generado en la fase de entrenamiento
y de los pesos de las conexiones de la red neuronal.
6. Discusin de los Experimentos

Las tcnicas utilizadas para la extraccin de caractersticas permitieron, adems de la
simplificacin del patrn de entrada, eliminar algunas distorsiones propias del proceso de
adquisicin de la imagen.
Despus de entrenar la red se realizaron varias pruebas, para un entrenamiento determinado;
con el fin de establecer los parmetros ms adecuados para las imgenes consideradas y se
concluy en que entrenar a la red neuronal con diversas expresiones facilita que un sujeto sea
identificado en otras expresiones con las que no fue entrenada sta. Adems, el aumentar la
cantidad de patrones de entrenamiento influye en la mejor definicin de los mapas auto-
organizativos.
Otra caracterstica que se pudo apreciar durante las diferentes pruebas realizadas, es que los
mapas organizativos que se forman varan de prueba a prueba, siendo algunos ms efectivos que
otros.


7. Conclusiones

La aplicacin de wavelet como tcnica de extraccin de caractersticas brinda resultados que se
consideran aceptables, debido a que logra eliminar detalles prescindibles de la imagen;
obteniendo una imagen simplificada que reduzca el procesamiento en la Red Neuronal.
El proceso de normalizacin reduce uno de los principales problemas que surgen en el
reconocimiento de rostros, cuando el patrn de entrada ha sufrido algn tipo de
transformacin geomtrica, como por ejemplo rotacin y traslacin.
La binarizacin aplicando el mtodo basado en probabilidades brinda mejores resultados en las
imgenes de prueba; adems que permite personalizar el valor de umbral de acuerdo a la
tonalidad en cada imagen.
La Red Neuronal de Kohonen proporcionan buenos resultados en la identificacin de
individuos, esto se debe a que cada individuo no es clasificado tan slo por una neurona; sino
mas bien por un conjunto de stas, lo cual proporciona mayo flexibilidad en los patrones
pertenecientes a un mismo individuo.


Referencias

[Cruz, 2002] De la Cruz, J. y Pajares, G. Visin por Computador. Imgenes Digitales y
aplicaciones, Madrid, Espaa, 2002.
[Chang, 2004] Chang, V. y Saavedra, J. Procesamiento de Imgenes. Universidad Nacional de
Trujillo, 2004.
[Daubechies, 1992] Daubechies, I. Ten lectures on wavelets, Regional Conference Series In
Applied Mathematics, 1992.
[Len, 2006] Len, R.; Chang, V. y Saavedra, J. Mejoramiento del selector de caractersticas para
el reconocimiento automtico de personas mediante rostros usando Teora de Wavelets.
Universidad Nacional de Trujillo, 2006.
[Saavedra, 2006] Saavedra, J. Redes Neuronales Artificiales. Universidad Nacional de Trujillo,
2006.
[Transformada Wavelet, 2006]Introduccin a la Transformada Wavelet (2006)
http://www.exa.unicen.edu.ar/escuelapav/cursos/wavelets/apunte.pdf

Você também pode gostar