You are on page 1of 6

RECONOCIMIENTO FACIAL CON EL USO DE

REDES NEURONALES RBF


Daniel Merchan Piedra
Electronica y Telecomunicaciones, Universidad de Cuenca
daniel.merchan1910@hotmail.com
Cuenca, 10 de Julio 2015

ResumenAbstract.-El reconocimiento facial ha tenido muchas aristas de estudio en tiempos recientes, se han usado
muchas tecnicas para lograr reconocer rostros.Esta tarea llegara
a ser muy difcil o practicamente imposible sin el uso de las
Redes Neuronales.En este paper analizaremos y profundizaremos
en el analisis de las tecnicas, metodos y algoritmos utilizados
para el reconocimiento facial con el uso de una Red Neuronal RBF(Radial Basis Function).Para esto basamos nuestra
investigacion en el desarrollo analtico de la arquitectura y el
entrenamiento de una red RBF, tambien se analiza las tecnicas
usadas para la extraccion de patrones que se utilizaran para el
ingreso de patrones hacia la Red Neuronal,tecnicas como PCA y
el mejoramiento de esta tecnica con FLD.Ademas se comparan
resultados de experimentos realizados con la tecnica PCA de
manera individual y con el mejoramiento de la misma usando
FLD.

I. I NTRODUCCI ON
En los u ltimos anos se han realizado multiples investigaciones y desarrollos en lo que respecta al reconocimiento facial,
esto se debe a la gran cantidad de aplicaciones en las que
encajara tales como: pasaportes, tarjetas de credito, control
de asistencia, y sobretodo en el tema de seguridad. En reconocimiento facial empieza a ser una tarea complicada por dos
razones: 1)El tratamiento de imagenes de grandes dimensiones
aumenta la complejidad computacional.2)La variabilidad a la
que estan sometidas estas imagenes ya que estan expuestas a
variaciones de la posicion facial, expresion facial o variaciones
en la iluminacion.[1] Para resolver los problemas expuestos
anteriormente se usa el metodo PCA(Principal Components
Analisis).En el metodo PCA las imagenes son proyectadas
sobre el valor facial y llamadas EigenFaces.El enfoque PCA
reduce la dimension de los datos por medio de metodos basicos
de compresion de datos y revela la estructura dimensional mas
eficaz de los patrones faciales.[2] Ademas de esto el metodo
PCA produce direcciones de proyeccion que maximizan la
dispersion total a traves de todas las clases, es decir, en todas
las imagenes de la cara.En la eleccion de la proyeccion, lo
que maximiza la dispersion total el PCa mantiene variaciones
no deseados causados por la iluminacion, expresion facial,
y otros factores.[3] Se puede mejorar el rendimiento de el
metodo PCA con el analisis FLD(Fisers Linear Discriminant),
el cual sirve para superar el inconveniente de no tener una
discriminacion de clases cuando se usa solamente PCA, mientras se mantiene la idea de la reduccion de dimensionalidad
significativa usada para la obtencion de la EigenFaces.[4]

En muchos sistemas de reconocimiento de patrones, se usa un


enfoque estadstico, por lo que el diseno de un clasificador se
basa en las estadsticas estos patrones.Aunque este paradigma
ha sido aplicado con e xito para resolver diversos problemas en
la clasificacion de patrones, se necesita de mucha informacion
heurstica para disenar un clasificador .Las Redes Neuronales
basadas en paradigmas,como nuevos medios de implementacion han demostrado que poseen muchas ventajas para la
clasificacion debido a su capacidad de aprendizaje y buena
generalizacion.[1] Las Redes basadas en backpropagation han
sido muy utilizadas en el reconocimiento facial pero tienen dos
criticas.1)Baja velocidad de convergencia 2)No existe garanta
de que alcancen los mnimos absolutos. Debido a esto es que
las redes RBF han despertado el interes de la comunidad de
Redes Neuronales, pos su gran aplicacion y las siguientes
caractersticas:
Son aproxima dores universales.
Poseen la mejor propiedades aproximacion.
Velocidad de aprendizaje rapida.
Tienen una topologia mas compacta que otras redes.
Normalmente, las redes neuronales RBF son ampliamente
utilizados para la funcion de aproximacion y reconocimiento
de patrones en el que la dimension patron en estas aplicaciones
es generalmente pequena.Cuando las redes neuronales RBF
se aplican en el reconocimiento facial, estos sistemas se
caracterizan por:
Alta dimension. Por ejemplo, una imagen de 128x128
tendra 16.384 caractersticas
Pequenos conjuntos de muestras. Los patrones de muestra son muy pocos para cada clase, por ejemplo, solo un
diez imagenes por persona.
A continuacion se presenta la arquitectura de una red RBF
tomadas de la referencia [5]

Figura1.-Red Neuronal RBF.

II.

DE C ARACTERI STICAS USANDO PCA.


E XTRACCI ON

Los rasgos faciales se extraen mediante el metodo PCA.Se


tienen R imagenes faciales en el conjunto de entrenamiento
y cada imagen Xi es un arreglo de dimensiones mxn de
valores de intensidad.Cada una de estas imagenes pueden ser
transformadas en un vector de D pieles en donde D=mxn, y
en donde Xi = (Xi1 , Xi2 , ........., XiD ).Las filas de pxeles
de la imagen se colocan uno tras otro para formar el vector.Se define el conjunto de entrenamiento de R imagenes por
Xi = (X1 , X2 , ........., XR ) <DxR .Con esto se define la
matriz de covarianza por:

T
PR
(1)
= R1 i=1 Xi X Xi X
= T
DxR
Donde
y X =
PR = (1 , 2 , ......, R ) <
1
X
,que
es
la
imagen
media
del
set
de
entrenamiento.
i=1 i
R
La dimension de la matriz de covarianza es DxD.Entonces,
los eigenvalores y eigenvectores se calculan a partir la matriz de covarianza .Se tiene Q = (Q1 , Q2 , ......, Qr )
<DxR (R < r) sean los r eigenvectores correspondientes a
los r eigenvalores no-ceros mas largos. Cada uno de estos
r eigenvectores son llamados EigenFaces.Ahora, cada una de
las caras de la conjunto de entrenamiento Xi se proyecta en el
espacio Eigenface para obtener su correspondiente Eigenface
basada en caracterstica Zi <rxR , la cual se define de la
siguiente manera:

Zi = QT Yi , i=1,2,3,...,R (2)
Donde Yi es la imagen media-sustrada de Xi .
Con el fin de reconocer las imagenes de prueba, cada una
de estas imagenes de prueba se transforma en el espacio
Eigenface usando el ecuacion (2) y luego alimenta a las redes
neuronales RBF como entradas para la clasificacion.[3]

Figura2.-Estructura de red RBF con capa oculta y capa salida.


III.

E STRUCTURA Y E NTRENAMIENTO DE UNA R ED


N EURONAL RBF.

Una red RBF es usada para tareas de clasificacion por las


caractersticas ya mencionadas en el punto I, como en toda red
neuronal su rendimiento se basa en gran porcentaje por el set
de entrenamiento utilizado. La informacion de la estructura y
el set de entrenamiento se discute a continuacion.
III-A.

Determinacion de la Estructura

En lo que respecta a la estructura, el numero de entradas


de la red es igual al numero de caractersticas extradas, a su
vez el numero de salidas tiene que ser igual al numero de
clases.Para la seleccion de nodos se considera:

El numero de unidades RBF es igual a la salida, asumiendo que cada clase tiene solo una subclase.
Para cada clase k, el centro de los nodos RBF es
seleccionado como el valor medio de las muestras de
datos pertenecientes a la clase:
PN k

pk (r,i)

(3)
C k = i=1N k
En donde en la ecuacion anterior el numerador pertenece
a la i-esima muestra con dimension r perteneciente a la
clase k y N k es el numero de patrones de la clase k.
Para cualquier clase k, calculamos la distancia dk desde
la media al punto mas lejano pkf pertenecientes a la clase
k.




dk = pkf C k (4)
Para cada clase:
(a)Se calcula la distancia dc(k,j)entre la media de la clase
k, y la media de otra clase.


dc (k, j) = C k C j j = 1, 2, ..., s
j 6= k (5)
(b)Se encuentra:
dmin (k, l) = arg min (dc (k, j)) (6)
Ahora se analiza la relacion entre dmin (k, l) y dk ,dl . (7)
Si dk + dl dmin (k, l) , entonces la clase k no se
solapara sobre otras clases. Si dk + dl > dmin (k, l), la
clase k se solapara con otras clases y en este caso pueden
existir errores en la clasificacion.
Para todo el set de entrenamiento se verifica como se
realizo la clasificacion.Si dos funciones de una misma
clase se solapa, no hay problema.Si existe un error de
clasificacion grande entre dos clases se deben tomar en
cuenta una nueva division. En la figura tomada de la [5]
se muestra este concepto graficamente.

Figura3.-Una clase dividida en dos.


Se repiten los pasos anteriores hasta que se realice una
clasificacion satisfactoria.
Los valores medios de las clases son seleccionados como
el centro de las clases(Unidades RBF)[5]
III-B.

Estimacion de Pesos.

Para la eleccion de los pesos s toma en cuenta dos criterios.


Criterio Mayoritario: En cualquier clase, cada dato debe
tener al menos un 50 por ciento de nivel de confianza para
la clase a la que pertenece. El peso se define como:
lk =

dk

(8)

En donde es llamado coeficiente de confianza, y dk es la


distancia medida desde la media al punto mas lejano de la
clase k.

Criterio de Solapamiento: Para cualquier clase, la eleccion


de el peso 2k , considerando el solapamiento del vecindario de
la clase l, determinamos que:
2k = dmin (k, l) (9)

imagenes tambien se han tomado variando la intensidad de


luz, facial expresiones (abierto/ los ojos cerrados, sonriendo
/ sin sonrer) y detalles faciales (lentes / sin lentes).En la
siguiente figura se muestra un ejemplo de de las imagenes de
esta base de datos.

de donde es el factor de solapamiento. Si se considera los


dos criterios anteriores entonces los pesos de la clase k quedan
definidos como:

2k = max 1k , 2k (10)
Para el analisis de la tecnica PCA en el reconocimiento facial
nos basamos en la [3], en la que se encuentra que para varios
experimentos se encontro el mejor rendimiento para un =
0,75 y un = 1,25.
IV.

R ESULTADOS E XPERIMENTALES OBTENIDOS CON LA


TECNICA PCA

Para el analisis de este metodo nos basamos en los experimentos realizados en la [3].Los datos que se utilizan
para el entrenamiento y cuando las rotaciones del rostro son
pequenas,pertenecen a una base de datos de los Laboratorios
AT&T de Cambridge.Y la base da datos usada para rotaciones
de rostro mayores son usadas de la UMIST. La tasa de
reconocimiento se define como la razon del numero total de
reconocimientos faciales correctos obtenidos con este metodo,
dividido para el numero total de imagenes para el set de
entrenamiento para un solo experimento.Asi:
Rprom =

Pq

i
i=1 ncls
qntot

Figura4.-Ejemplo de rostros de la base de datos.


Ahora se presentan las dos estrategias que se utilizaron en el
experimento para encontrar la eficiencia de la red.
Particion Aleatoria de la base de datos: En esta estrategia
,se tomaron cinco imagenes (s = 5) de cada persona de la base
de datos las cuales se seleccionaron al azar para el conjunto
de entrenamiento y el resto de las imagenes de la cara estan
incluidos en el set de prueba. Por lo tanto, un total de 200 caras
se utilizan para entrenar y otra 200 caras se utilizan para probar
la RBF-NN. Se debera notar que no hay superposicion entre
el entrenamiento y las imagenes de prueba. Los Eigenfaces de
una de los 10 conjuntos de entrenamiento correspondientes a
10 eigenvalores mayores se muestra en la siguiente figura:

(11)

Donde q es el numero de experimentos corridos.nicls es el


numero de reconocimientos correctos, en el i-esimo programa
corrido y ntot es el numero total de rostros bajo prueba en
cada programa corrido. Consecuentemente el error promedio
Eprom es igual a 1-Rprom .
Para calcular la tasa de e xito de la metodo exsiten dos
parametros a saber, la sensibilidad y la especificidad del
metodo han sido evaluadas.Sensibilidad se define como la
probabilidad de reconocer correctamente una cara, mientras
que la especificidad se refiere a la probabilidad de un correcto
rechazo de un intruso[3]. Ellos se pueden calcular de la
siguiente manera:
T

p
Sensibilidad = Tp +F
(12)
N
TN
Especif icidad = TN +Fp (13)

Figura5.-Imagenes de conjuntos de entrenamiento


correspondientes a 10 de los eigenvalores mayores.
Para la determinacion de los clusters se utilizan los pasos
desarrollados en el punto III.A.Por lo tanto 120 (3X40), las
neuronas de la capa oculta se utilizan en la red.
La tasa promedio de reconocimiento, variando los principales
componentes(PCs) se muestra en la Fig 6.

Donde Tp es el numero total de rostros reconozidos correctamente, FN es el numero de rostros que se reconocieron incorrectamente como intrusos. TN es el numero de rostros de otras
clases que se reconocieron correctamente como intrusos,y Fp
es el numero de rostros reconozidos falsamente como propios
de una clase.
IV-A.

Experimentos con la Base de Datos de la AT&T

En esta base de datos se tienen 400 rostros a escala de


grises.Cada persona tiene 10 imagenes, teniendo cada uno
una resolucion de 112X92, y 256 niveles de gris. Estas

Figura6 .Tasa de reconocimiento promedio

con respecto al numero de PCs


Como se puede observar la mejor tasa de reconocimiento se
alcanza con 60,70,90 y 100 PCs.A partir de este numero de
PCs se obtiene una tasa del 90.03 %. Para este experimento
se obtuvieron maximos de 95 %, y un mnimo del 85 % en la
tasa de reconocimiento con PCs entre 10-100.
Prueba de Validacion Cruzada N-pliegues: En este estudio,
la Base de datos de AT&T se divide aleatoriamente en diez
pliegues, teniendo una imagen de una persona en un pliegue.
Por lo tanto, cada pliegue consta de 40 imagenes, cada una
correspondiente a un persona diferente. Por diez pliegues
prueba de validacion cruzada, en cada corrida experimental,
nueve pliegues se utilizan para entrenar a la RBF-NN y permaneciendo solo rebano se utiliza para la prueba. Por lo tanto,
los conjuntos de entrenamiento y de prueba consisten en 360
y 40 imagenes, respectivamente, en una corrida experimental
particular. Tambien en este experimento, se seleccionaron 120
(3X40), las neuronas de la capa oculta.Las tasas medias de
reconocimiento variando numero de componentes principales
(PCs) en diez pliegues de entrenamiento de test de validacion
cruzada se muestran en la Fig 7. El mejor promedio se logra
cuando 50 y 60 PCs se utilizan en el sistema,alcanzando una
97,00 %. El maximo y mnimo denlas tasas de reconocimiento
entre los diez pliegues corridas experimentales (para PC = 2060) son 100 % y 85 %, respectivamente.

Pn
Donde X = n1 i=1 Xi es es la imagen media del conjunto,que se haba tambien definido anteriormente, y X i =
Pni
1
i
j=1 Xj es la imagen media de la i-esima clase y c es
ni
el numero de clases. El subespacio optimo Eopt ,determinado
por FLD esta dado como,X
|E t Sb E |
Eopt = argmax |E t SW E| = [e1 , e2 , e3 , ..., ec1 ]
Donde [e1 , e2 , e3 , ..., ec1 ] es el conjunto de eigenvectores
generalizados de SB y SW correspondientes a los mayores
eigenvalores generalizados i = 1, 2, 3, ..., c 1.
SB Ei = i Ei SW

i = 1, 2, ...c 1 (17)

Por lo tanto, la funcion de los vectores P para cualquier imagen


del rostro Z en el sentido mas discriminante se calcula como
sigue:
T
P = Eopt
U T Z (18)

El FLD es una transformacion lineal, lo que maximiza la


relacion del determinante de la matriz de dispersion entre
la clase de las muestras proyectadas a el determinante de la
matriz de dispersion dentro de la clase de las muestras proyectadas. Los resultados son globalmente o ptimos solo para datos
linealmente separables. Los datos de la cara que tienen un gran
solapamiento suponemos que violan el subespacio vectorial.
Ademas, el criterio de separabilidad no es directamente relacionada con la precision de la clasificacion en la salida C. Liu
y H. Wechsler indicaron que la metodo FLD logra el mejor
rendimiento con los datos de entrenamiento, pero generalizada
mal a los nuevos individuos. Por lo tanto, las redes neuronales
RBF, se han propuesto para la clasificacion.[4] En la Fig 8.
se muestra el diagrama esquematico de una red RBF usando
PCA y FLD, tomada de la [1]

Figura7 .Tasa de reconocimiento promedio


con respecto al numero de PCs usando tecnica 2.
V.

M EJORAMIENTO DE PCA CON FLD

El PCA no proporciona ninguna informacion para la discrimincaion de clases, sino que solamente produce una reduccion
de dimensionalidad. Por consiguiente, FLD se aplica a la
proyeccion del conjunto de muestras del entrenamiento en el Figura8 .Diagrama esquematico RBF, usando el metodo propuesto
espacio Eigenface X. Donde:
VI. R ESULTADOS E XPERIMENTALES O BTENIDOS CON
X = (X1 , X2 , ...., Xn ) RRxn (14)
PCA Y FLD.
Este enfoque encuentra un subespacio o ptimo para la clasificaLos resultados que se muestran a continuacion son tomados
cion en que la relacion de la dispersion entre clase y dispersion
de
la [4], la cual realiza experimentos para el reconocimiento
dentro de la clase se maximiza.La matriz de dispersion entre
facial
utilizando el enfoque propuesto en el punto anterior. Se
clase se define como:
utiliza una base de datos de imagenes de la universidad YALE.

T
Pn
(15)
SB = i=1 ni Xi X Xi X
La precision obtenida en este experimento es comparada con
Y la matriz de dispersion dentro de la clase se define como: los resultados obtenidos por el clasificador de vecinos mas
cercanos que se basan en la distancia Euclidiana.

T
Pn
(16)
En la siguiente figura se muestra las imagenes de la base de
SW = i=1 Xk X Xk X

datos YALE.

Asi tambien se muestran los resultados del rendimiento graficados en Matlab.

Figura9 . Base de Datos YALE.


Ahora mostramos el reconocimiento basado en el enfoque
propuesto en la base de datos de rostros YALE, donde dos
imagenes son reconocidas con diferentes expresiones.
Figura12 .- Rendimiento en el reconocimiento
con el metodo propuesto.

Figura10 .- Reconocimiento usando el enfoque propuesto.


En el lado izquierdo esta la imagen original, y en el lado
derecho se tiene la imagen reconocida con el enfoque que se
ha propuesto, es decir el mejoramiento de PCA usando FLD.
Se muestra en la Fig 10. se muestra un clasificador lineal
comparado con un clasificador RBF.

Los experimentos se realizaron con 6 imagenes de entrenamiento y 8 imagenes de prueba para cada persona de la base de
datos de la Universidad de Yale.La tasa de verificacion correcta
promedio es de aproximadamente 80.9 % solo utilizando los
Eigenfaces usando la distancia. La tasa de rechazo es de 5,3 %.
Mejores resultados se lograron cuando la aplicacion de PCA +
FLD en la red RBF. La tasa de reconocimiento es de 92 % y la
tasa de rechazo es de 4,2 %. La mejora se debe principalmente
a la capacidad de aprendizaje de la red neuronal RBF. Ademas
de alta precision de reconocimiento, el metodo propuesto es
eficiente en el calculo. La identificacion de una imagen facial
toma menos de un segundo (se espera que el algoritmo para
funcionar incluso mas rapido despues de la optimizacion de
codigo). El enfoque Eigenface, o solo con el uso de PCA para
el mismo problema lleva mucho mas tiempo que el metodo
propuesto.[4]
VII.

Figura11 .- Clasificador lineal vs Clasificador RBF.


El resultado de estos dos clasificadores variando la iluminacion
y con variaciones de la expresion facial, de los rostros de la
base de datos YALE se muestran en la siguiente tabla.

Tabla1 .- Rendimiento en el reconocimiento


de la base de datos YALE.

C OMPARACION DEL M ETODO PCA Y EL M ETODO


PCA MEJORADO CON FLD.

Se ha desarrollado el analisis del reconocimiento facial con


dos metodos:1)Reconocimiento Facial usando solamente la
tecnica PCA 2)Reconocimiento facial mejorando PCA con
FLD. Para el reconocimiento facial propuesto en el primer
punto se hizo experimentos basandonos en dos opciones:
a)Particion Aleatoria de la Basse de Datos.
Para esta opcion se presentan los resultados de la Fig6. los
cuales nos indican que para 60 o mas PCs(Principales Componentes) se obtiene una tasa de reconocimiento del 90.03 %.
b)Validacion Cruzada.
Para este caso se alcanzo una tasa de reconocimiento maxima
del 97 %, y en este punto se utilizaron solamente 50 y 60
PCs.Esto se puede observar en la Fig7. Para el caso del
segundo metodo propuesto, es decir el mejoramiento de PCA
con FLD se encontro que la tasa de reconocimiento maxima es
del 92 % como se puede observar en la Tabla 1..En este caso

el porcentaje de reconocimiento es menor que en el anterior


caso.
VIII.

C ONCLUSIONES

El reconocimiento facial es una tarea que se ha venido


desarrollando en abundancia, existen y se seguiran desarrollando muchos metodos para lograr la maxima efectividad en
el reconocimiento de rostros. Los metodos analizados en este
documento muestran que se tienen grandes tasas de reconocimiento, siendo el metodo PCA de Validacion Cruzada el mas
efectivo, alcanzando un 97 % de efectividad. El mejoramiento
en PCA con FLD obtiene un porcentaje de reconocimiento
menor al anterior (92 %), pero este metodo tiene la ventaja
de que nos permite tener una mayor velocidad en el resultado
del reconocimiento, obteniendo la clasificacion de un rostro
en menos de un segundo y con opcion a tener una velocidad
aun mayor, si se optimiza el algoritmo como se explico
anteriormente. La eleccion del metodo que se desee usar,
dependera de la aplicacion para la que se necesite cada uno
de ellos, as como tambien depende de la preferencia de la
persona.
R EFERENCIAS
[1] J. L. Meng Joo Er, Shiqian Wu and H. L. Toh, Face recognition with
radial basis function (rbf) neural networks, IEEE TRANSACTIONS ON
NEURAL NETWORKS, vol. 13, pp. 11641179, MAY 2002.
[2] E.-J. Lee, Face recognition based on improved fuzzy rbf neural network
for smar t device, pp. 1338134., November 2013.
[3] D. K. B. M. N. M. K. S. Thakur, J. K. Sing, Face recognition using
principal component analysis and rbf neural networks,
[4] D. L. M. W. Kalpana C. Jondhale, Improvement in pca performance
using fld and rbf neural networks for face recognition, Third International Conference on Emerging Trends in Engineering and Technology.
[5] D. V. P. V. Kumud Arora, Radial basis function neural network trained with variant spread learning, International Journal of Engineering
Research Technology (IJERT) IJERTIJERT, September 2014.

You might also like