+ All Categories
Home > Documents > Proyecto Aguará: Reconocimiento Automático de Caras

Proyecto Aguará: Reconocimiento Automático de Caras

Date post: 11-Nov-2023
Category:
Upload: independent
View: 0 times
Download: 0 times
Share this document with a friend
9
Proyecto Aguar´ a: Reconocimiento Autom´ atico de Caras C. Aguerrebere, G. Capdehourat, M. Delbracio y M. Mateu ResumenEn este proyecto se presenta un sistema biom´ etrico de reconocimiento, orientado a una aplicaci´ on de control de acceso, utilizando como caracter´ ıstica biom´ etrica una imagen digital del rostro de la persona. En la primera etapa se aborda el ´ area de Reconocimiento de Caras y se es- tudia las t´ ecnicas existentes para resolverlo. En la segunda se analiza un sistema basado en caracter´ ısticas locales que utiliza filtros de Gabor como descriptores de la cara inspi- rado en el algoritmo EBGM. Por ´ ultimo se eval´ ua el sis- tema y distintas alternativas estudiadas con la base est´ andar FERET. El desempe˜ no obtenido es comparable con los re- sultados m´ as significativos con esta base. Palabras Clave — Biometr´ ıa, Reconocimiento de Caras, EBGM, wavelets de Gabor, FERET. I. Introducci´ on E L Reconocimiento Autom´ atico de Caras es hoy en d´ ıa uno de los problemas que mayores dificultades ofrece en el ´ area de Visi´ on por Computadora. La variabilidad de condiciones que aparecen a la hora de implementar un sistema de estas caracter´ ısticas implica que se realicen di- versas suposiciones y simplificaciones del problema en s´ ı. Los desaf´ ıos que propone la implementaci´ on de un sistema autom´ atico de Reconocimiento de Caras son recogidos por neurofisi´ ologos, psic´ ologos cognitivos, psic´ ologos sociales y cient´ ıficos de la inform´ atica. Una de las metas m´ as im- portantes que persiguen los investigadores es comprender el complejo sistema visual humano y c´ omo ´ este logra al- macenar la informaci´ on de los rostros humanos y utilizarla para representar y discriminar entre identidades con un alto grado de exactitud. El proyecto consta de tres grandes instancias. La primera, en la que se realiza el acercamiento al Re- conocimiento de Caras y los problemas asociados. La se- gunda, en la que se analiza los bloques funcionales de un sistema de Reconocimiento Autom´ atico de Caras y se es- tudian alternativas para cada uno de ellos. Por ´ ultimo se sintetiza la implementaci´ on del sistema buscando ´ optimos de funcionamiento en t´ erminos de performance y tiempos de ejecuci´ on. Un desarrollo exhaustivo de las etapas del proyecto se encuentra en la documentaci´ on oficial del mismo [4]. El presente documento representa un resumen de dicho tra- bajo. II. Modelado del Problema L A primera etapa de este trabajo incluye un estudio bi- bliogr´ afico exhaustivo en el ´ area. Se busca con esto comprender la complejidad del problema, las hip´ otesis m´ as comunes, restricciones y condiciones que suelen formular- se en la implementaci´ on de esta clase de sistemas. Un planteo general del problema del Reconocimiento de Caras a trav´ es de im´ agenes se puede formular de la siguiente ma- nera: dadas im´ agenes fijas o de video de una escena, el objetivo del Reconocimiento de Caras es reconocer una o as personas en la escena utilizando una base de datos de caras, es decir un registro de individuos. A su vez, un sistema de Reconocimiento de Caras se puede dividir conceptual y funcionalmente en tres etapas consecutivas. En la primera etapa se realiza la detecci´ on del rostro en la imagen, en la segunda se realiza la extracci´ on de caracter´ ısticas y en la tercera se confronta con la infor- maci´ on de la base de datos y se devuelve un resultado de reconocimiento. Se debe tener en cuenta que el problema general puede presentar diferentes grados de dificultad, entre ellos se tiene problemas de escalas, iluminaci´ on, pose, orientaci´ on, oclu- siones y diversas expresiones. La figura 1 muestra esta diversidad. En el presente proyecto se acota el problema a una situaci´ on de condiciones controladas. Estas condi- ciones son b´ asicamente la presencia de un individuo por imagen, con fondo conocido, iluminaci´ on controlada, alta resoluci´ on de la imagen, pose frontal, expresi´ on neutra y sin oclusiones. En estas condiciones restringidas se es- pera que el sistema obtenga un desempe˜ no satisfactorio, no limit´ andose el testeo del mismo frente a conjuntos de im´ agenes de mayor complejidad. Fig. 1. Ejemplo de las complicaciones a tener en cuenta al localizar caras en un escenario real.
Transcript

IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. XX, NO. Y, MONTH 1999 1

Proyecto Aguara: Reconocimiento Automatico deCaras

C. Aguerrebere, G. Capdehourat, M. Delbracio y M. Mateu

Resumen— En este proyecto se presenta un sistema

biometrico de reconocimiento, orientado a una aplicacion de

control de acceso, utilizando como caracterıstica biometrica

una imagen digital del rostro de la persona. En la primera

etapa se aborda el area de Reconocimiento de Caras y se es-

tudia las tecnicas existentes para resolverlo. En la segunda

se analiza un sistema basado en caracterısticas locales que

utiliza filtros de Gabor como descriptores de la cara inspi-

rado en el algoritmo EBGM. Por ultimo se evalua el sis-

tema y distintas alternativas estudiadas con la base estandar

FERET. El desempeno obtenido es comparable con los re-

sultados mas significativos con esta base.

Palabras Clave— Biometrıa, Reconocimiento de Caras,

EBGM, wavelets de Gabor, FERET.

I. Introduccion

EL Reconocimiento Automatico de Caras es hoy en dıauno de los problemas que mayores dificultades ofrece

en el area de Vision por Computadora. La variabilidadde condiciones que aparecen a la hora de implementar unsistema de estas caracterısticas implica que se realicen di-versas suposiciones y simplificaciones del problema en sı.Los desafıos que propone la implementacion de un sistemaautomatico de Reconocimiento de Caras son recogidos porneurofisiologos, psicologos cognitivos, psicologos sociales ycientıficos de la informatica. Una de las metas mas im-portantes que persiguen los investigadores es comprenderel complejo sistema visual humano y como este logra al-macenar la informacion de los rostros humanos y utilizarlapara representar y discriminar entre identidades con un altogrado de exactitud.

El proyecto consta de tres grandes instancias. Laprimera, en la que se realiza el acercamiento al Re-conocimiento de Caras y los problemas asociados. La se-gunda, en la que se analiza los bloques funcionales de unsistema de Reconocimiento Automatico de Caras y se es-tudian alternativas para cada uno de ellos. Por ultimo sesintetiza la implementacion del sistema buscando optimosde funcionamiento en terminos de performance y tiemposde ejecucion.

Un desarrollo exhaustivo de las etapas del proyecto seencuentra en la documentacion oficial del mismo [4]. Elpresente documento representa un resumen de dicho tra-bajo.

II. Modelado del Problema

LA primera etapa de este trabajo incluye un estudio bi-bliografico exhaustivo en el area. Se busca con esto

comprender la complejidad del problema, las hipotesis mas

comunes, restricciones y condiciones que suelen formular-se en la implementacion de esta clase de sistemas. Unplanteo general del problema del Reconocimiento de Carasa traves de imagenes se puede formular de la siguiente ma-nera: dadas imagenes fijas o de video de una escena, elobjetivo del Reconocimiento de Caras es reconocer una omas personas en la escena utilizando una base de datos decaras, es decir un registro de individuos.

A su vez, un sistema de Reconocimiento de Caras sepuede dividir conceptual y funcionalmente en tres etapasconsecutivas. En la primera etapa se realiza la deteccion delrostro en la imagen, en la segunda se realiza la extraccionde caracterısticas y en la tercera se confronta con la infor-macion de la base de datos y se devuelve un resultado dereconocimiento.

Se debe tener en cuenta que el problema general puedepresentar diferentes grados de dificultad, entre ellos se tieneproblemas de escalas, iluminacion, pose, orientacion, oclu-siones y diversas expresiones. La figura 1 muestra estadiversidad. En el presente proyecto se acota el problemaa una situacion de condiciones controladas. Estas condi-ciones son basicamente la presencia de un individuo porimagen, con fondo conocido, iluminacion controlada, altaresolucion de la imagen, pose frontal, expresion neutra ysin oclusiones. En estas condiciones restringidas se es-pera que el sistema obtenga un desempeno satisfactorio,no limitandose el testeo del mismo frente a conjuntos deimagenes de mayor complejidad.

Fig. 1. Ejemplo de las complicaciones a tener en cuenta al localizarcaras en un escenario real.

IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. XX, NO. Y, MONTH 1999 2

Fig. 2. Ejemplo de imagen digital en condiciones controladas.

III. Algoritmos de Reconocimiento de Caras

DOS problemas basicos e independientes conceptual-mente que afrontan estos sistemas son la deteccion

de la cara en la escena y el reconocimiento de la cara de-tectada.

A. Deteccion de Caras

Es imprescindible para el correcto funcionamiento de unalgoritmo de reconocimiento que la cara sea localizada demanera precisa. En la actualidad existe una gran cantidadde algoritmos de deteccion de caras con desempeno variadoy dependiente de los escenarios a considerar. Para una des-cripcion de alto nivel de los mismos se pueden consultarlos surveys de Yang et al. [26] y de Hjelmas y Low [10].Una posible clasificacion de los algoritmos de deteccion derostros es:

• Metodos Basados en Rasgos Faciales: buscan encontraraquellas caracterısticas presentes en cualquier rostro: ojos,cejas, labios, boca, menton, lıneas de contorno, etc.• Metodos Basados en la Imagen: aplican herramientasgenerales de reconocimiento de patrones para sintetizarun modelo a partir de un conjunto de imagenes de entre-namiento. Trabajan con la imagen completa o una regionde esta sin buscar rasgos faciales de forma localizada.

Para el presente trabajo se hizo enfasis en las etapas deextraccion de caracterısticas y de reconocimiento. No obs-tante, se implemento un algoritmo de localizacion de carasen escenas a color, con resultados no aceptables [4].

B. Reconocimiento de Caras

Una gran variedad de metodos de Reconocimiento deCaras ha sido propuesta durante los ultimos treinta anos.En la vasta literatura de este tema se sugieren diferentesformas de clasificacion de las tecnicas y algoritmos de Re-conocimiento de Caras. A lo largo de [4] se estudian variosalgoritmos de Reconocimiento de Caras. La siguiente ca-tegorizacion de alto nivel se puede consultar en [28]:

• Metodos holısticos Utilizan toda la imagen de la caracomo entrada al sistema de reconocimiento siendo esta launidad basica de procesamiento.• Metodos basados en caracterısticas locales Se extraen car-acterısticas locales, como ser ojos, nariz, boca, etc. Sus

posiciones y estadısticas locales constituyen la entrada alsistema de reconocimiento.

Ademas, existen metodos hıbridos que combinantecnicas holısticas y locales. Consultar [4] para una des-cripcion de los algoritmos y tecnicas mas representativasde cada una de estas areas.

Fig. 3. Clasificacion de algunos de los metodos de Reconocimientode Caras.

Un concepto clave en los metodos de reconocimiento esel de los descriptores utilizados en la representacion delobjeto de interes. El descriptor es el nexo entre el objetoreal y la representacion que el sistema tiene del mismo.Es de esperar que la performance del sistema aumente ala hora de reconocer objetos cuanto mejor sea tal repre-sentacion. Descriptores globales son aquellos que tomanla imagen como un todo y no utilizan informacion a priorisobre el objeto a representar. Descriptores locales son losque extraen informacion de puntos o regiones particularesde la imagen, considerando el hecho de que se trabaja conun objeto dado.

En este trabajo la representacion de la cara fue en-focada a caracterısticas locales. Esto apunta a utilizarexplıcitamente el hecho de estar trabajando con una cara.Se concentro esfuerzos en estudiar uno en particular, loswavelets de Gabor y su utilizacion a traves de las ideasbasicas del algoritmo de Reconocimiento de Caras Elastic

Bunch Graph Matching (ebgm) [25],[8]. Para una ima-gen de entrada se localiza puntos principales previamentedefinidos utilizando un modelo estadıstico de imagenes decaras. Luego se procede a la extraccion de los wavelets deGabor en dichos puntos. Cada cara es representada por loswavelets resultantes en las coordenadas localizadas.

IV. Descriptores locales. Wavelets de Gabor

LOS wavelets de Gabor se basan en una familia de fil-tros que permiten ser sintonizados en determinada ori-

entacion, en determinada frecuencia y ademas pueden lim-

IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. XX, NO. Y, MONTH 1999 3

itar su rango de accion a determinada region de la ima-gen. Estan formados por un banco de filtros lineales einvariantes temporales, por lo que se los caracteriza porsu respuesta al impulso. La misma se basa en un nucleogaussiano modulado mediante una sinusoide:

W (x, y, θ, f, φ, σ, γ) = e−x′2+γ

2y′2

2σ2 cos(2πfx′ + φ) (1a)

con{

x′ = x cos(θ) + ysen(θ)y′ = −x sin(θ) + y cos(θ)

(1b)

La figura 4 muestra un ejemplo grafico de wavelets deGabor.

Fig. 4. Ejemplos de wavelets de Gabor.

Cada uno de los nucleos anteriores no se encuentra nor-malizado en potencia, es decir la potencia de cada uno delos filtros depende de la frecuencia del mismo. Si se cal-cula la potencia de cada uno de los nucleos se ve que lamisma es proporcional a 1

f2 . Diferentes experimentos [8]muestran que las imagenes naturales presentan una densi-dad espectral de potencia que decae como f 2 a medida queaumenta la frecuencia. Por esta razon, los creadores de latecnica ebgm [24] incluyen un termino que compensa dichodecaimiento. Segun observa Lades et al. en [12], la perfor-mance del algoritmo se ve seriamente afectada si no se lograindependizar la potencia resultante al filtrar mediante cadauno de los nucleos de la frecuencia del nucleo en cuestion.De esta manera la potencia encerrada en cada nucleo seraproporcional a f2. Dicha compensacion es correcta siemprey cuando las imagenes de interes sean imagenes naturales.En el presente trabajo se realizo un estudio del compor-tamiento estadıstico del espectro de las imagenes de carasen la base feret con intencion de construir un modeloparticular para las mismas y compensar la potencia de losfiltros de Gabor en consecuencia. Se encontro que para lasimagenes de caras la densidad espectral de potencia decaecomo 1

f3 , se realizo la compensacion correspondiente y seevaluo la mejora de performance obtenida.

V. Implementacion del sistema

EN la figura 5 se muestra un diagrama de bloques deta-llado del funcionamiento del sistema. El primer bloque

implementa la adquisicion de la imagen conteniendo el ros-tro de un individuo, el segundo bloque implementa la de-teccion de la cara en la imagen, seguido por una etapa denormalizacion de la misma. Este bloque localiza las coorde-nadas de los ojos, en caso de que exista una unica cara en laescena, y preprocesa la imagen para llevarla a un formatocomun para el ingreso a la siguiente etapa. El siguiente

bloque se encarga de la localizacion de los puntos carac-terısticos en la cara normalizada. Utiliza para esto el mo-delo estadıstico, Face Bunch Graph. Posteriormente se ex-traen las caracterısticas en los puntos principales medianteun banco de filtros de Gabor. Finalmente se tiene la etapade confrontacion que compara descriptores de caras parareconocimiento. Las tareas desarrolladas en esta etapa de-penden del modo de funcionamiento, ya sea identificacion overificacion. En modo identificacion el sistema debe postu-lar una identidad para el usuario entrante comparando suscaracterısticas contra las de todos los individuos almace-nadas en la base de datos. En modo verificacion el usuarioes quien postula una identidad, a traves de un PIN 1 u otroidentificador, que es validada por el sistema.

Fig. 5. Diagrama de bloques del sistema.

A. Deteccion y Normalizacion

El algoritmo seleccionado para realizar la deteccion uti-liza tecnicas de reconocimiento de patrones. La docu-mentacion principal del mismo se encuentra en [7]. Sedestacan cuatro aspectos principales:

• Utiliza como caracterısticas los wavelets denominadosHaar-like features, tambien utilizados en [23].• Realiza busqueda multiescala piramidal similar a la des-crita en [20].• Implementa una cascada de clasificadores como en [23],consumiendo mas tiempo en procesar las subimagenes quecontienen caras.• Entrena basado en una variante del algoritmo Adaboostllamada Gentleboost introducida en [9].

La implementacion utilizada fue desarrollada en el Ma-

chine Perception Laboratory de la Universidad de SanDiego, California. La misma forma parte del mpt, Ma-

chine Perception Toolbox [6], biblioteca de codigo libre. A

1Personal Identification Number

IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. XX, NO. Y, MONTH 1999 4

los efectos de esta aplicacion dicha herramienta se utilizapara cumplir con los dos objetivos esenciales de esta etapa:

• Verificar que la imagen contenga una y solo una cara.• Determinar la posicion de los ojos en la imagen.

Luego de detectada la cara en la imagen se realiza unpreprocesado que logra reducir el tamano de las imagenesy mover la posicion de los ojos del individuo a coordenadaspredeterminadas. Los pasos seguidos para completar laetapa de normalizacion son:

1. Se implementa una transformacion geometrica que ubicalas coordenadas de los ojos en un valor predeterminado{(52, 64); (76, 64)} y se realiza un rescalado de la imagenpara llevarla a un tamano dado (128× 128 pıxeles).2. Se realiza un ajuste de los pıxeles de manera de obteneruna senal de media nula y desviacion estandar 1.3. Los bordes de la imagen son suavizados en un margende 30 pıxeles. Esto se aplica para evitar posibles efectos deborde introducidos durante la transformacion geometrica.El valor de los pıxeles es pesado por el factor d

30, siendo d

la distancia desde el borde. Los pıxeles que distan mas de30 pıxeles del borde no son modificados.

Opcionalmente, entre los puntos 2 y 3, se normaliza lailuminacion de la imagen mediante ecualizacion de his-tograma. Tambien de forma opcional, se agrega unamascara elıptica que resalta la cara del individuo elimi-nando el fondo de la imagen. La misma presenta un de-caimiento exponencial a la media de la imagen, que la hacesuave en la eliminacion del fondo.

B. Localizacion de puntos principales

El algoritmo ebgm se utiliza como herramienta para lalocalizacion de puntos principales. Este define una estruc-tura de grafo sobre la cara cuyos nodos son puntos ca-racterısticos previamente definidos. Se seleccionan puntosfacilmente identificables de un individuo a otro. La figura6 muestra un ejemplo de eleccion de dichos puntos.

Fig. 6. Ejemplo de grafo de puntos principales.

Los descriptores utilizados son un banco de filtros deGabor de diferentes frecuencias y orientaciones. En cadanodo del grafo se calculan dichos wavelets de Gabor,obteniendose una estructura denominada jet. Cada nodo esentonces etiquetado con las coordenadas del punto carac-terıstico y el jet asociado al mismo, mientras que las aristas

definidas se identifican con la distancia entre nodos conec-tados.

Para lograr la localizacion automatica de puntos carac-terısticos en nuevas caras se necesita una descripcion ge-neral del objeto cara. Dicha descripcion debe cubrir unaamplia gama de variaciones como ser diferentes formasde ojos, boca, presencia de barba, diferentes sexos, razas,edades. Para ello se combina un grupo representativo degrafos modelo en una estructura del tipo stack denomi-nada Face Bunch Graph (fbg). Cada grafo modelo tienela misma forma y los nodos refieren a los mismos puntosprincipales. Cada nodo del fbg resulta etiquetado con unconjunto de jets, provenientes de los distintos grafos mode-lo, y el promedio de las coordenadas de los nodos partici-pantes. Las aristas se etiquetan con la distancia promediode los grafos modelo. El fbg representa las caracterısticasque hacen a una cara y permite ademas contemplar varia-ciones existentes entre individuos. La amplitud y calidaddel modelo dependen de la cantidad y variabilidad de lasimagenes elegidas en su construccion. En la literatura [25]se mencionan modelos de 70 imagenes, pudiendose tomaresta cifra como referencia para el tamano del mismo. Porultimo cabe senalar que los grafos utilizados para la gene-racion del fbg pueden ser marcados de forma manual osemiautomatica.

El objetivo planteado para una imagen de entrada alsistema es encontrar los puntos principales obteniendo elgrafo que maximice la similitud con el fbg considerado.La funcion de similitud utilizada considera similitud de jets.Se proponen varios metodos al respecto [24], [25]. La ideabasica se resume en los siguientes pasos:

1. Se obtiene la posicion inicial de un nodo en la imagen.2. Dada la estimacion inicial del nodo, se extrae el jet co-rrespondiente en la imagen de entrada. Se halla la similituddel mismo con cada uno de los jets del fbg para el nodocorrespondiente. Se repite para posiciones cercanas a lainicial. Se retiene las coordenadas del nodo que resulta enel maximo valor de similitud.3. Se repite el paso anterior para cada nodo del grafo.

Los pasos anteriores son parte de un ciclo iterativoque mejora en cada etapa la posicion de los nodos hastacumplirse una condicion de finalizacion. En la figura 7 semuestra un ejemplo de los puntos ajustados a la cara alfinal del proceso.

En este proyecto se trabaja sobre una implementacionbase del algoritmo ebgm. La misma fue desarrollada enla Universidad Estatal de Colorado (csu) [2] por DavidBolme en su Tesis de Maestrıa en Computacion. El codigofuente de dicha implementacion se encuentra disponible [3].Esta tesis se basa en la publicacion original realizada enBochum/usc [15].

La implementacion utilizada sigue los pasos basicos antesdetallados. Comienza fijando la posicion de los ojos que seasume conocida en la etapa de deteccion. El fbg con-tiene las distancias promedio entre nodos para un grupo de

IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. XX, NO. Y, MONTH 1999 5

Fig. 7. Puntos ajustados mediante ebgm.

caras, se utiliza entonces dicha informacion para estimar laposicion de los distintos nodos a partir de las coordenadasdadas para los ojos. Para la localizacion del i−esimo nodose utilizan las coordenadas de los (i−1) nodos previamentelocalizados. En cada paso de la iteracion la posicion de unnodo es estimada y refinada, buscando minimizar la distan-cia a la posicion real del punto caracterıstico en la imagen.Surge entonces el concepto de Estimacion de Desplaza-

miento. El vector diferencia entre la posicion inicial delpunto y la ubicacion real del mismo es llamado Desplaza-

miento. Para encontrar dicho Desplazamiento se utiliza elmodelo fbg, de manera de tener en cuenta como son losjets tıpicos de cada uno de los puntos caracterısticos. Lamanera exhaustiva de encontrar la ubicacion real del puntocaracterıstico es extraer un jet por cada pıxel de la imagen,comparar ese jet contra los pertenecientes al fbg para esemismo punto caracterıstico, y quedarse con el pıxel quemaximiza la similitud con el modelo. Lamentablementerealizar esto tiene un costo computacional extremadamenteelevado. Es por esto que surgen tecnicas alternativas.

En primer lugar se considera que la estimacion inicialdel punto caracterıstico es buena, con lo cual se acota laregion de busqueda a un entorno de dicha ubicacion. Porotro lado, se utiliza una funcion de similitud entre jets,SD, que permite encontrar la similitud con el modelo paraun punto cercano al cual ya se extrajo el jet sin tener queextraer el jet en el nuevo punto. Es decir que se extraeel jet en la estimacion inicial y se utiliza dicha funcion desimilitud en un entorno del mismo sin tener que re-calcularjets. La idea central de las tecnicas de Estimacion de Des-

plazamiento es, a partir de un punto cercano al optimo,maximizar la funcion SD en un entorno de dicho punto. Seproponen distintas tecnicas de maximizacion de SD. Unaclasificacion posible es:

• Basadas en Busquedas: Este subconjunto de tecnicastrata de encontrar el desplazamiento mediante busquedasexhaustivas (en una pequena region) o busquedas in-

teligentes en direcciones particulares.• Basadas en Aproximaciones: Este subconjunto busca en-contrar el maximo, basandose en una aproximacion de Tay-lor de segundo orden para la funcion de Similitud.• Basadas en algoritmos iterativos genericos de maxi-mizacion.

Una descripcion mas detallada de los estimadores de des-

plazamiento utilizados, tanto los implementados en el sis-tema csu como los desarrollados en este proyecto puedenencontrarse en [4], [3].

Otra opcion considerada es el no refinamiento en la ubi-cacion de los puntos principales. Considerando el costocomputacional asociado al ajuste en la posicion inicial delos nodos surge la idea de evaluar el desempeno del sis-tema sin realizar refinamiento. Los resultados obtenidos sedescriben en la seccion VI y en [4].

C. Extraccion de caracterısticas

Una vez localizados los puntos principales se procede ala extraccion de caracterısticas en los mismos. Las carac-terısticas son los denominados jets, resultantes de la con-volucion de la imagen en ventanas centrados en cada uno delos puntos caracterısticos con un banco de filtros de Gabor.La salida de este bloque da la representacion del individuopara el sistema, es decir, un grafo de caracterısticas prin-cipales representando la cara del individuo.

D. Confrontacion

En esta etapa se asume conocida la representacion delusuario a traves de sus caracterısticas y se procede a com-parar la misma contra los registros presentes en la basede datos. Dependiendo del modo de funcionamiento delsistema se compara contra el registro del mismo usuario,modo verificacion, o contra los registros de todos los usua-rios, modo identificacion.

Se proponen distintas medidas de similitud [2], [4], todasellas evaluan similitud de jets y luego promedian dichosvalores para todos los nodos. Difieren en la informacionque consideran a partir de los jets; puede ser unicamenteinformacion de modulo, fase o combinaciones de ambas.En este proyecto fue elegida, por simplicidad y eficiencia,la similitud por magnitud. La misma se calcula segun laexpresion:

L(G, G′) =1

n

n∑

i=1

Sa(Ji, J′

i)

donde Ji y J ′

i son los i-esimos jets de los grafos G y G′

respectivamente; n es el total de nodos de cada grafo ySa es una medida de similitud entre jets considerandounicamente el modulo que se calcula segun:

Sa(J, J ′) =

∑N

j=1 aja′

j√

∑N

j=1 a2j

∑N

j=1 a′

j2

con a y a′ modulos de los coeficientes complejos de dichosjets y N la cantidad de coeficientes complejos en cada jet.

En el presente estudio se proponen alternativas a estamedida de similitud. En primer lugar se propone utilizarmedidas de similitud ponderadas que pesen de forma di-ferenciada el valor de cada jet. Con esto se pretende dar

IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. XX, NO. Y, MONTH 1999 6

prioridad en la medida final a las caracterısticas extraıdasen ciertos nodos.Una segunda opcion es aplicar lda (Lin-ear Discriminant Analisys) orientando el problema al modoidentificacion. Se aplica lda al conjunto de vectores de ca-racterısticas de Gabor de todos los individuos con el obje-tivo de llevar dichas caracterısticas a un espacio que dis-crimine mejor entre las clases de entrada al sistema. Losresultados y conclusiones de estos estudios pueden encon-trarse en [4].

VI. Evaluacion y Resultados

SE realizan pruebas sobre el sistema en los modos de fun-cionamineto verificacion e identificacion. Para cada uno

de ellos se utiliza estimadores de performance bien conoci-dos.

Las medidas basicas de desempeno de un sistema de veri-ficacion o autenticacion son el far (que corresponde al por-centaje de falsas aceptaciones) y el frr (que corresponde alporcentaje de falsos rechazos). Para obtener el desempenose releva los distintos puntos de funcionamiento del sistemadesde far = 0 a frr = 0 generando la curva roc. El puntode funcionamiento en el que far = frr se denomina eer,o en ingles Equal Error Rate.

La medida basica de desempeno de un sistema de identi-ficacion es el rr, es decir la tasa de identificacion correcta.Como medida del error se podrıa utilizar er = 1 − rr, esdecir la tasa de identificacion incorrecta. Desde el puntode vista de su significado es analogo el uso de cualquierade estas dos medidas de desempeno de un sistema de estascaracaterısticas.

A. Protocolo de Evaluacion

En los ensayos realizados en la evaluacion del sistema seutilizaron dos tecnicas para la estimacion de los interva-los de confianza. En particular se toma en los dos casosintervalos de confianza al 95 %. Para una descripcion delcalculo de los intervalos de confianza con las estimacionesparametrica y no parametrica se puede consultar [4].

Se decidio utilizar la base feret, una base ampliamentereconocida por la comunidad cientıfica del Reconocimientode Caras, con una gran cantidad de imagenes con un gradode complejidad acorde a nuestro trabajo. A su vez, dadoque el proyecto incluye el desarrollo de una aplicacion orien-tada al control de acceso, se decidio desarrollar una baseparticular para dicha aplicacion, la base iie. La misma esuna base que consta de imagenes provenientes de sesentaindividuos, con 24 imagenes por persona. Por mas detalleacerca de ambas bases consultar [4].

B. Evaluacion semiautomatica

El testeo semiautomatico consiste en evaluar el sistemadescartando la etapa de deteccion automatica de la cara.Se utilizan coordenadas de los ojos marcadas manualmente.

De esta manera se busca independizarse del error de de-teccion y evaluar la performance del sistema unicamenteen las etapas concernientes al reconocimiento.

La base feret contiene un total de 14051 imagenesde mas de 1000 individuos. Para realizar la evaluacionse toma como referencia [17], [19] en donde se explicauna metodologıa general para evaluar algoritmos de Re-conocimiento de Caras utilizando la base feret. Parasometer al sistema a distintos niveles de dificultad, se tra-baja con cinco grandes grupos de imagenes:

• fa - Conjunto de imagenes base, forman la galerıa, cuen-tan con una imagen por sujeto. Total de imagenes: 1196.• fb - Conjunto de imagenes similar al fa. Difierenunicamente en la expresion del sujeto. Total de imagenes:1195.• fc - Conjunto de imagenes tomado en la misma sesionque fa pero con diferente iluminacion. Total de imagenes:194.• duplicate I - Conjunto de imagenes tomadas un tiempodespues que fa. Total de imagenes: 722.• duplicate II - Conjunto de imagenes tomadas al menos18 meses despues que el conjunto fa. Total de imagenes:234.

A su vez, utilizando estos conjuntos de imagenes se de-finen cuatro tests: FB, FC, DUP-I, DUP-II. Cada unode estos tests, se realiza considerando al grupo fa comogalerıa y al restante como conjunto de prueba. Es impor-tante destacar que solamente se utiliza una unica imagenpor sujeto como referencia.

Con el objetivo de realizar una comparacion de los resul-tados obtenidos en este trabajo, se presentan los mismosjunto con el desempeno de otros algoritmos. Entre elloslos concursantes en el FERET Test2 [17], [19] y otros masrecientes. Se comparan los siguientes algoritmos:

• arl cor - Army Research Laboratory - Baseline Correla-tion.• arl ef - Army Re search Laboratory - Baseline Eigenface[14], [22].• bayesian 03 - Bayesian Map (Teixeira 2003) [21]• bolme 03 - ebgm csu-Bolme [2].• excalibur - Excalibur Inc.• gabor 02 - Gabor features - (Kepenekci et al.,2002) [11].• log-G PCA 06 - Log-Gabor pca - (V. Perlibakas) [16]• mit sep 96 - mit Media Lab [13].• aguara BS - Configuracion BS del sistema.• aguara NF - Configuracion NoFit del sistema.• umd mar 97 - University of Maryland [5] [27].• usc mar 97 - University of Southern California [24].

Todos estos algoritmos fueron evaluados en forma semi-automatica.

2Desarrollado entre Setiembre de 1996 y Marzo de 1997.

IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. XX, NO. Y, MONTH 1999 7

RRAlgoritmo d-I d-II FB FC

arl cor 36.3 17.1 82.7 5.2arl ef 41.0 22.2 79.7 18.6bayesian 03 52.4 31.6 81.9 37.1bolme 03 46.3 24.4 89.8 41.8excalibur 41.4 19.7 79.4 21.6gabor 02 58.3 47.7 96.3 69.6log-G PCA 72.4 65.8 98.0 90.2mit sep 96 57.6 34.2 94.8 32.0aguara 06 BS 66.3 59.0 96.4 92.3aguara 06 NF 68.8 63.2 95.5 91.2umd mar 97 47.2 20.9 96.2 58.8usc mar 97 59.1 52.1 95.0 82.0

TABLA I

Comparacion del desempeno de diferentes algoritmos frente

a los cuatros tests DUP-I, DUP-II, FB y FC presentados

para la base feret.

EERAlgoritmo d-I d-II FB FC

arl cor 18.7 19.2 4.1 24.8arl ef 17.4 19.0 6.7 17.6excalibur 15.4 18.4 4.8 14.5log-G PCA 3.6 4.7 1.0 0.3mit sep 96 17.7 21.2 4.9 18.0aguara 06 BS 11.2 12.4 1.70 3.6aguara 06 NF 9.0 10.0 1.6 2.7umd mar 97 12.6 13.4 1.2 10.0usc mar 97 13.3 14.2 2.5 5.1

TABLA II

Comparacion del desempeno de diferentes algoritmos frente

a los cuatros tests DUP-I, DUP-II, FB y FC presentados

para la base feret.

Se presenta en las tablas i y ii los resultados de identifi-cacion y verificacion para los cuatro conjuntos de imagenesde prueba. Se puede hacer la comparacion con algunosalgoritmos significativos del estado del arte y con los algo-ritmos ebgm de Wiskott et al. y David Bolme que fuerontomados como base.

Las variantes de nuestro sistema son aguara 06 BS yaguara 06 NF. La primera de ellas incorpora la compen-sacion de potencia a los filtros de Gabor y la segundaademas no realiza el refinado en la etapa de la localizacionde puntos.

C. Evaluacion automatica

Luego de efectuar las distintas pruebas para el caso semi-automatico, se realizan ensayos considerando el sistemapunta a punta, con el bloque de deteccion automatica dela cara. Para estas pruebas solamente se considera la con-

figuracion BS del sistema.

En este caso tendremos dos efectos superpuestos que im-plican un peor desempeno. Por un lado la precision conla que se ubican los ojos que afecta tanto la normalizacioncomo el ajuste de puntos posterior. Por otro lado existenoutliers que corresponden a caras mal detectadas donde seobtiene similitudes muy bajas para usuarios genuinos quedistorsionan las distribuciones de scores. No se consideranlas imagenes donde no se detecta una cara.

Se realiza la evaluacion del sistema definido para el set fbde la base feret. Los resultados se muestran en la tabla acontinuacion, tambien se muestra el intervalo de confianzaal 95%.

IdentificacionTest RR(%) ICPR

Sistema 88.6 [86.8, 90.4]

Como se observa, el desempeno de identificacion dis-minuye de manera considerable respecto al caso semiau-tomatico. En este caso se observo que la influencia de losoutliers es mucho mayor que la del error cometido en laubicacion de los ojos. A continuacion se muestra el de-sempeno en verificacion que tambien se ve perjudicado porel error en la etapa de deteccion. El primer intervalo deconfianza corresponde a la estimacion parametrica y el se-gundo corresponde a la estimacion no parametrica (ver [4]).

VerificacionTest EER(%) ICPE ICBE

Sistema 5.50 [4.36, 6.63] [4.42, 6.58]

A su vez, con la base iie se evaluo diversas condicionestales como diferentes expresiones, oclusiones y problemasde iluminacion. El detalle de esas pruebas se encuentra en[4].

VII. Conclusiones

SE profundizo en el estudio del algoritmo ebgm el cualutiliza descriptores de Gabor locales [24]. Para ello se

partio de una implementacion en lenguaje de programacionC/C++ existente [2]. Se logro mejorar el desempeno dedicha implementacion, ası como tambien, superar el de-sempeno del algoritmo original [24].

Se realizo estudios sobre distintas formas de mejorar laimplementacion del algoritmo considerado. Entre ellas, sedestaca un estudio estadıstico para compensar la potenciade los descriptores locales de Gabor con el objetivo de apli-carlos al Reconocimiento de Caras. Los buenos resultadosobtenidos remarcan la importancia de las conclusiones dedicho analisis.

Por otro lado, se desarrollo un Sistema de Reconoci-mento de Caras, que resuelve la adquisicion de la imagen,

IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. XX, NO. Y, MONTH 1999 8

la deteccion de la cara, la extraccion de caracterısticas yfinalmente el reconocimento del individuo. El mismo seutilizo como base para el desarrollo de un prototipo deaplicacion de reconocimiento de personas. Si bien en lapresente sıntesis del trabajo no se describe, la aplicaciondesarrollada en C/C++ con codigo libre, permite ejecutarlas principales operaciones de un sistema de estas carac-terısticas (ver Apendices A y B de [4]). El diseno modu-lar implementado a traves de bibliotecas, permite sustituircualquiera de los bloques funcionales, en caso de ası nece-sitarlo.

El desarrollo de una base de imagenes propia, la base iie(ver apendice C de [4]), ası como tambien la obtencion de labase de imagenes estandar feret, permitio la evaluaciondel sistema desarrollado. Los buenos resultados obtenidosmediante la evaluacion con la base estandar colocan estesistema cerca de los mejores resultados existentes. Ademas,el desarrollo de la base propia, permitio la evaluacion de laaplicacion simulando un sistema de control de acceso.

VIII. Trabajo a Futuro

DESDE el punto de vista de la mejora del algoritmoebgm han surgido importantes elementos a tratar y

alternativas a evaluar que no han sido consideradas en elpresente trabajo.

Es importante que para que el algoritmo presente mayorrobustez se continue trabajando en las tecnicas que con-templan caras rotadas. En ese sentido se puede seguir ex-plorando la fusion de modelos con imagenes en distintasposes y se puede trabajar en la compensacion de jets paraconfrontar caras con diferentes rotaciones.

En la extraccion de jets es importante estudiar cuantita-tivamente el aporte para el reconocimiento de las distintasfrecuencias y orientaciones de los filtros de Gabor, con elobjetivo de dar diferente peso segun su poder de discrimi-nacion.

Finalmente, respecto al desarrollo de una aplicacion ori-entada al control de acceso, se observa que los tiempos deejecucion y las tasas de reconocimiento del sistema imple-mentado permiten una aplicacion en tiempo real, con unnivel de confiabilidad aceptable para situaciones de am-biente controlado.

Referencias

[1] FERET Evaluation, 1997.[2] David S. Bolme. Thesis, elastic bunch graph matching. Master’s

thesis, 2003.[3] D.S. Bolme, J.R. Beveridge, M. Teixeira, and B.A Draper. The

csu face identification evaluation system: Its purpose, features,and structure. In 3rd International Conference on ComputerVision Systems, ICVS 2003, pages 304–313, 2003.

[4] M. Delbracio C. Aguerrebere, G. Capdehourat and M. Mateu.Proyecto de fin de carrera, proyecto aguara, reconocimiento au-tomatico de caras, 2006.

[5] Kamran Etemad and Rama Chellappa. Discriminant analysis forrecognition of human face images (invited paper). In Proceedingsof the 1st International Conference on Audio- and Video-Based

Biometric Person Authentication, AVBPA ’97, pages 127–142,London, UK, 1997. Springer-Verlag.

[6] I. Fasel, R. Dahl, J. Hershey, B. Fortenberry, J. Susskind,and J. R. Movellan. The machine perception tool-box. http://mplab.ucsd.edu/grants/project1/free-software/mptwebsite/introduction.html, ’Ultima actualizaci’on:2005.

[7] I. Fasel, B. Fortenberry, and J. Movellan. A generative frame-work for real time object detection and classification. ComputerVision and Image Understanding, (98):182–210, 2005.

[8] David J. Field. Relations between the statistics of natural imagesand the response profiles of cortical cells. In Journal of theOptical Society of America., volume 4, pages 2379–2394, 1987.

[9] J. Friedman, T. Hastie, and R. Tibshirani. Additive logistic re-gression: a statistical view of boosting. Department of Statistics,Stanford University, Technical Report, 1998.

[10] Erik Hjelmas and Boon Kee Low. Face detection: A sur-vey. Computer Vision and Image Understanding, 83(3):236–274,2001.

[11] Burcu Kepenekci, F. Boray Tek, and Gozde Bozdagi Akar. Oc-cluded face recognition by using gabor features. In 3rd COST276 Workshop on Information and Knowledge Management forIntegrated Media Communication, Budapest, October 2002.

[12] Martin Lades, Jan C. Vorbruggen, Joachim Buhmann, J. Lange,Christoph von der Malsburg, Rolf P Wurtz, and Wolfgang Ko-nen. Distortion invariant object recognition in the dynamic linkarchitecture. IEEE Transactions on Computers, 42:300–311,1993.

[13] Baback Moghaddam, Chahab Nastar, and Alex Pentland.Bayesian face recognition using deformable intensity surfaces.In Proceedings of the 15th Computer Vision and Pattern Recog-nition Conference, ICVPR ’96, 1996.

[14] H. Moon and P.J. Phillips. Analysis of pca-based face recogni-tion algorithms. In Workshop on Empirical Evaluation Methodsin Computer Vision, Santa Barbara, California, June 1998.

[15] Kazunori Okada, Johannes Steffens, Thomas Maurer, Hai Hong,Egor Elagin, Hartmut Neven, and Christoph von der Malsburg.The Bochum/usc Face Recognition System and how it fared inthe feret Phase III test. In H. Wechsler, P. J. Phillips, V. Bruce,F. Fogeman Soulie, and T. S. Huang, editors, Face Recognition:From Theory to Applications, pages 186–205. Springer-Verlag,1998.

[16] Vytautas Perlibakas. Face recognition using principal compo-nent analysis and log-gabor filters. Image Processing and Anal-ysis Laboratory, Computational Technologies Centre, 2006.

[17] P. Jonathon Phillips, Hyeonjoon Moon, Syed A. Rizvi, andPatrick J. Rauss. The feret evaluation methodology for face-recognition algorithms. IEEE Transactions on Pattern Analysisand Machine Intelligence, 22(10):1090–1104, 2000.

[18] J. Huang P.J. Phillips, H. Wechsler and P. Rauss. The FERETdatabase and evaluation procedure for face recognition algo-rithms. Image and Vision Computing J, 16(5):295–306, 98.

[19] S. Rizvi, P. Phillips, and H. Moon. The feret verification test-ing protocol for face recognition algorithms. Image and VisionComputing Journal, 1999.

[20] H. Rowley, S. Baluja, and T. Kanade. Neural network-based facedetection. IEEE Transactions on Pattern Analysis and MachineIntelligence, 1(20):23–28, 1998.

[21] Marcio Luis Teixeira. The bayesian intrapersonal/extrapersonalclassifier. Master’s thesis, Colorado State University, FortCollins, Colorado, USA, 2003.

[22] Matthew Turk and Alex Paul Pentland. Eigenfaces for recogni-tion. Journal of Cognitive Neuroscience, 3(1):71–86, 1991.

[23] P. Viola and M. Jones. Robust real-time face detection. Inter-national Journal of Computer Vision, 2(57):137–154, 2004.

[24] Laurenz Wiskott, Jean-Marc Fellous, Norbert Kruger, andChristoph von der Malsburg. Face recognition by elastic bunchgraph matching. In Gerald Sommer, Kostas Daniilidis, and JosefPauli, editors, Proc. 7th Intern. Conf. on Computer Analysis ofImages and Patterns, CAIP’97, Kiel, number 1296, pages 456–463, Heidelberg, 1997. Springer-Verlag.

[25] Laurenz Wiskott, Jean-Marc Fellous, Norbert Kruger, andChristoph von der Malsburg. Face recognition by elastic bunchgraph matching. In L. C. Jain, U. Halici, I. Hayashi, and S. B.Lee, editors, Intelligent Biometric Techniques in Fingerprintand Face Recognition, chapter 11, pages 355–396. CRC Press,1999.

[26] M-H. Yang, D.J Kriegman, and N. Ahuja. Detecting faces in

IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. XX, NO. Y, MONTH 1999 9

images: A survey. IEEE Transactions on Pattern Analysis andMachine Intelligence, 24(1):34–58, January 2002.

[27] W. Zhao, R. Chellappa, and A. Krishnaswamy. Discriminantanalysis of principal components for face recognition. In Pro-ceedings of the 3rd International Conference on Automatic Faceand Gesture Recognition, FG ’98, pages 336–341, Nara, Japan,April 14-16 1998.

[28] W. Zhao, R. Chellappa, P. J. Phillips, and A. Rosenfeld. Facerecognition: A literature survey. ACM Computing Surveys,35(4):399–458, 2003.


Recommended