EL Reconocimiento Automático de Caras es hoy en día

Download (0)

Full text

(1)

Proyecto Aguar´

a: Reconocimiento Autom´

atico de

Caras

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

Resumen— En 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 m´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 expreoclu-siones. 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.

(2)

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

III. Algoritmos de Reconocimiento de Caras

D

OS problemas b´asicos e independientes conceptual-mente que afrontan estos sistemas son la detecci´on de la cara en la escena y el reconocimiento de la cara de-tectada.

A. Detecci´on de Caras

Es imprescindible para el correcto funcionamiento de un algoritmo de reconocimiento que la cara sea localizada de manera precisa. En la actualidad existe una gran cantidad de algoritmos de detecci´on de caras con desempe˜no variado y dependiente de los escenarios a considerar. Para una des-cripci´on de alto nivel de los mismos se pueden consultar los surveys de Yang et al. [26] y de Hjelm˚as y Low [10]. Una posible clasificaci´on de los algoritmos de detecci´on de rostros es:

• M´etodos Basados en Rasgos Faciales: buscan encontrar

aquellas caracter´ısticas presentes en cualquier rostro: ojos, cejas, labios, boca, ment´on, l´ıneas de contorno, etc.

• M´etodos Basados en la Imagen: aplican herramientas

generales de reconocimiento de patrones para sintetizar un modelo a partir de un conjunto de im´agenes de entre-namiento. Trabajan con la imagen completa o una regi´on de ´esta sin buscar rasgos faciales de forma localizada.

Para el presente trabajo se hizo ´enfasis en las etapas de extracci´on de caracter´ısticas y de reconocimiento. No obs-tante, se implement´o un algoritmo de localizaci´on de caras en escenas a color, con resultados no aceptables [4]. B. Reconocimiento de Caras

Una gran variedad de m´etodos de Reconocimiento de Caras ha sido propuesta durante los ´ultimos treinta a˜nos. En la vasta literatura de este tema se sugieren diferentes formas de clasificaci´on de las t´ecnicas y algoritmos de Re-conocimiento de Caras. A lo largo de [4] se estudian varios algoritmos de Reconocimiento de Caras. La siguiente ca-tegorizaci´on de alto nivel se puede consultar en [28]:

• M´etodos hol´ısticos Utilizan toda la imagen de la cara

como entrada al sistema de reconocimiento siendo esta la unidad b´asica de procesamiento.

• M´etodos basados en caracter´ısticas localesSe extraen

car-acter´ısticas locales, como ser ojos, nariz, boca, etc. Sus

posiciones y estad´ısticas locales constituyen la entrada al sistema de reconocimiento.

Adem´as, existen m´etodos h´ıbridos que combinan t´ecnicas hol´ısticas y locales. Consultar [4] para una des-cripci´on de los algoritmos y t´ecnicas m´as representativas de cada una de estas ´areas.

Fig. 3. Clasificaci´on de algunos de los m´etodos de Reconocimiento de Caras.

Un concepto clave en los m´etodos de reconocimiento es el de los descriptores utilizados en la representaci´on del objeto de inter´es. El descriptor es el nexo entre el objeto real y la representaci´on que el sistema tiene del mismo. Es de esperar que la performance del sistema aumente a la hora de reconocer objetos cuanto mejor sea tal repre-sentaci´on. Descriptores globales son aquellos que toman la imagen como un todo y no utilizan informaci´on a priori sobre el objeto a representar. Descriptores locales son los que extraen informaci´on de puntos o regiones particulares de la imagen, considerando el hecho de que se trabaja con un objeto dado.

En este trabajo la representaci´on de la cara fue en-focada a caracter´ısticas locales. Esto apunta a utilizar expl´ıcitamente el hecho de estar trabajando con una cara. Se concentr´o esfuerzos en estudiar uno en particular, los wavelets de Gabor y su utilizaci´on a trav´es de las ideas b´asicas del algoritmo de Reconocimiento de Caras Elastic Bunch Graph Matching (ebgm) [25],[8]. Para una ima-gen de entrada se localiza puntos principales previamente definidos utilizando un modelo estad´ıstico de im´agenes de caras. Luego se procede a la extracci´on de los wavelets de Gabor en dichos puntos. Cada cara es representada por los wavelets resultantes en las coordenadas localizadas.

IV. Descriptores locales. Wavelets de Gabor

L

OS wavelets de Gabor se basan en una familia de fil-tros que permiten ser sintonizados en determinada ori-entaci´on, en determinada frecuencia y adem´as pueden

(3)

lim-itar su rango de acci´on a determinada regi´on de la ima-gen. Est´an formados por un banco de filtros lineales e invariantes temporales, por lo que se los caracteriza por su respuesta al impulso. La misma se basa en un n´ucleo gaussiano modulado mediante una sinusoide:

W(x, y, θ, f, φ, σ, γ) = e−x02 +γ2y02 2σ2 cos(2πf x0+ φ) (1a) con  x0= x cos(θ) + ysen(θ) y0= −x sin(θ) + y cos(θ) (1b)

La figura 4 muestra un ejemplo gr´afico de wavelets de Gabor.

Fig. 4. Ejemplos de wavelets de Gabor.

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

f2. Diferentes experimentos [8]

muestran que las im´agenes naturales presentan una densi-dad espectral de potencia que decae como f2a medida que

aumenta la frecuencia. Por esta raz´on, los creadores de la t´ecnica ebgm [24] incluyen un t´ermino que compensa dicho decaimiento. Seg´un observa Lades et al. en [12], la perfor-mance del algoritmo se ve seriamente afectada si no se logra independizar la potencia resultante al filtrar mediante cada uno de los n´ucleos de la frecuencia del n´ucleo en cuesti´on. De esta manera la potencia encerrada en cada n´ucleo ser´a proporcional a f2. Dicha compensaci´on es correcta siempre

y cuando las im´agenes de inter´es sean im´agenes naturales. En el presente trabajo se realiz´o un estudio del compor-tamiento estad´ıstico del espectro de las im´agenes de caras en la base feret con intenci´on de construir un modelo particular para las mismas y compensar la potencia de los filtros de Gabor en consecuencia. Se encontr´o que para las im´agenes de caras la densidad espectral de potencia decae como 1

f3, se realiz´o la compensaci´on correspondiente y se

evalu´o la mejora de performance obtenida. V. Implementaci´on del sistema

E

N la figura 5 se muestra un diagrama de bloques deta-llado del funcionamiento del sistema. El primer bloque implementa la adquisici´on de la imagen conteniendo el ros-tro de un individuo, el segundo bloque implementa la de-tecci´on de la cara en la imagen, seguido por una etapa de normalizaci´on de la misma. Este bloque localiza las coorde-nadas de los ojos, en caso de que exista una ´unica cara en la escena, y preprocesa la imagen para llevarla a un formato com´un para el ingreso a la siguiente etapa. El siguiente

bloque se encarga de la localizaci´on 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 mediante un banco de filtros de Gabor. Finalmente se tiene la etapa de confrontaci´on que compara descriptores de caras para reconocimiento. Las tareas desarrolladas en esta etapa de-penden del modo de funcionamiento, ya sea identificaci´on o verificaci´on. En modo identificaci´on el sistema debe postu-lar una identidad para el usuario entrante comparando sus caracter´ısticas contra las de todos los individuos almace-nadas en la base de datos. En modo verificaci´on el usuario es quien postula una identidad, a trav´es de un PIN1u otro

identificador, que es validada por el sistema.

Fig. 5. Diagrama de bloques del sistema.

A. Detecci´on y Normalizaci´on

El algoritmo seleccionado para realizar la detecci´on uti-liza t´ecnicas de reconocimiento de patrones. La docu-mentaci´on principal del mismo se encuentra en [7]. Se destacan cuatro aspectos principales:

• Utiliza como caracter´ısticas los wavelets denominados

Haar-like features, tambi´en utilizados en [23].

• Realiza b´usqueda multiescala piramidal similar a la

des-crita en [20].

• Implementa una cascada de clasificadores como en [23],

consumiendo m´as tiempo en procesar las subim´agenes que contienen caras.

• Entrena basado en una variante del algoritmo Adaboost

llamada Gentleboost introducida en [9].

La implementaci´on utilizada fue desarrollada en el Ma-chine Perception Laboratory de la Universidad de San Diego, California. La misma forma parte del mpt, Ma-chine Perception Toolbox [6], biblioteca de c´odigo libre. A

(4)

los efectos de esta aplicaci´on dicha herramienta se utiliza para cumplir con los dos objetivos esenciales de esta etapa:

• Verificar que la imagen contenga una y s´olo una cara. • Determinar la posici´on de los ojos en la imagen.

Luego de detectada la cara en la imagen se realiza un preprocesado que logra reducir el tama˜no de las im´agenes y mover la posici´on de los ojos del individuo a coordenadas predeterminadas. Los pasos seguidos para completar la etapa de normalizaci´on son:

1. Se implementa una transformaci´on geom´etrica que ubica las coordenadas de los ojos en un valor predeterminado {(52, 64); (76, 64)} y se realiza un rescalado de la imagen para llevarla a un tama˜no dado (128 × 128 p´ıxeles). 2. Se realiza un ajuste de los p´ıxeles de manera de obtener una se˜nal de media nula y desviaci´on est´andar 1.

3. Los bordes de la imagen son suavizados en un margen de 30 p´ıxeles. Esto se aplica para evitar posibles efectos de borde introducidos durante la transformaci´on geom´etrica. 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 m´as de 30 p´ıxeles del borde no son modificados.

Opcionalmente, entre los puntos 2 y 3, se normaliza la iluminaci´on de la imagen mediante ecualizaci´on de his-tograma. Tambi´en de forma opcional, se agrega una m´ascara 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 hace suave en la eliminaci´on del fondo.

B. Localizaci´on de puntos principales

El algoritmo ebgm se utiliza como herramienta para la localizaci´on de puntos principales. ´Este define una estruc-tura de grafo sobre la cara cuyos nodos son puntos ca-racter´ısticos previamente definidos. Se seleccionan puntos f´acilmente identificables de un individuo a otro. La figura 6 muestra un ejemplo de elecci´on de dichos puntos.

Fig. 6. Ejemplo de grafo de puntos principales.

Los descriptores utilizados son un banco de filtros de Gabor de diferentes frecuencias y orientaciones. En cada nodo del grafo se calculan dichos wavelets de Gabor, obteni´endose una estructura denominada jet. Cada nodo es entonces 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 localizaci´on autom´atica de puntos carac-ter´ısticos en nuevas caras se necesita una descripci´on ge-neral del objeto cara. Dicha descripci´on debe cubrir una amplia gama de variaciones como ser diferentes formas de ojos, boca, presencia de barba, diferentes sexos, razas, edades. Para ello se combina un grupo representativo de grafos modelo en una estructura del tipo stack denomi-nada Face Bunch Graph (fbg). Cada grafo modelo tiene la misma forma y los nodos refieren a los mismos puntos principales. Cada nodo del fbg resulta etiquetado con un conjunto 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 promedio de los grafos modelo. El fbg representa las caracter´ısticas que hacen a una cara y permite adem´as contemplar varia-ciones existentes entre individuos. La amplitud y calidad del modelo dependen de la cantidad y variabilidad de las im´agenes elegidas en su construcci´on. En la literatura [25] se mencionan modelos de 70 im´agenes, pudi´endose tomar esta cifra como referencia para el tama˜no del mismo. Por ´

ultimo cabe se˜nalar que los grafos utilizados para la gene-raci´on del fbg pueden ser marcados de forma manual o semiautom´atica.

El objetivo planteado para una imagen de entrada al sistema es encontrar los puntos principales obteniendo el grafo que maximice la similitud con el fbg considerado. La funci´on de similitud utilizada considera similitud de jets. Se proponen varios m´etodos al respecto [24], [25]. La idea b´asica se resume en los siguientes pasos:

1. Se obtiene la posici´on inicial de un nodo en la imagen. 2. Dada la estimaci´on inicial del nodo, se extrae el jet co-rrespondiente en la imagen de entrada. Se halla la similitud del mismo con cada uno de los jets del fbg para el nodo correspondiente. Se repite para posiciones cercanas a la inicial. Se retiene las coordenadas del nodo que resulta en el m´aximo valor de similitud.

3. Se repite el paso anterior para cada nodo del grafo. Los pasos anteriores son parte de un ciclo iterativo que mejora en cada etapa la posici´on de los nodos hasta cumplirse una condici´on de finalizaci´on. En la figura 7 se muestra un ejemplo de los puntos ajustados a la cara al final del proceso.

En este proyecto se trabaja sobre una implementaci´on base del algoritmo ebgm. La misma fue desarrollada en la Universidad Estatal de Colorado (csu) [2] por David Bolme en su Tesis de Maestr´ıa en Computaci´on. El c´odigo fuente de dicha implementaci´on se encuentra disponible [3]. Esta tesis se basa en la publicaci´on original realizada en Bochum/usc [15].

La implementaci´on utilizada sigue los pasos b´asicos antes detallados. Comienza fijando la posici´on de los ojos que se asume conocida en la etapa de detecci´on. El fbg con-tiene las distancias promedio entre nodos para un grupo de

(5)

Fig. 7. Puntos ajustados mediante ebgm.

caras, se utiliza entonces dicha informaci´on para estimar la posici´on de los distintos nodos a partir de las coordenadas dadas para los ojos. Para la localizaci´on del i−´esimo nodo se utilizan las coordenadas de los (i−1) nodos previamente localizados. En cada paso de la iteraci´on la posici´on de un nodo es estimada y refinada, buscando minimizar la distan-cia a la posici´on real del punto caracter´ıstico en la imagen. Surge entonces el concepto de Estimaci´on de Desplaza-miento. El vector diferencia entre la posici´on inicial del punto y la ubicaci´on real del mismo es llamado Desplaza-miento. Para encontrar dicho Desplazamiento se utiliza el modelo fbg, de manera de tener en cuenta c´omo son los jets t´ıpicos de cada uno de los puntos caracter´ısticos. La manera exhaustiva de encontrar la ubicaci´on real del punto caracter´ıstico es extraer un jet por cada p´ıxel de la imagen, comparar ese jet contra los pertenecientes al fbg para ese mismo punto caracter´ıstico, y quedarse con el p´ıxel que maximiza la similitud con el modelo. Lamentablemente realizar esto tiene un costo computacional extremadamente elevado. Es por esto que surgen t´ecnicas alternativas.

En primer lugar se considera que la estimaci´on inicial del punto caracter´ıstico es buena, con lo cual se acota la regi´on de b´usqueda a un entorno de dicha ubicaci´on. Por otro lado, se utiliza una funci´on de similitud entre jets, SD, que permite encontrar la similitud con el modelo para

un punto cercano al cual ya se extrajo el jet sin tener que extraer el jet en el nuevo punto. Es decir que se extrae el jet en la estimaci´on inicial y se utiliza dicha funci´on de similitud en un entorno del mismo sin tener que re-calcular jets. La idea central de las t´ecnicas de Estimaci´on de Des-plazamiento es, a partir de un punto cercano al ´optimo, maximizar la funci´on SDen un entorno de dicho punto. Se

proponen distintas t´ecnicas de maximizaci´on de SD. Una

clasificaci´on posible es:

• Basadas en B´usquedas: Este subconjunto de t´ecnicas

trata de encontrar el desplazamiento mediante b´usquedas exhaustivas (en una peque˜na regi´on) o b´usquedas in-teligentes en direcciones particulares.

• Basadas en Aproximaciones: Este subconjunto busca

en-contrar el m´aximo, bas´andose en una aproximaci´on de Tay-lor de segundo orden para la funci´on de Similitud.

• Basadas en algoritmos iterativos gen´ericos de

maxi-mizaci´on.

Una descripci´on m´as detallada de los estimadores de

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

Otra opci´on considerada es el no refinamiento en la ubi-caci´on de los puntos principales. Considerando el costo computacional asociado al ajuste en la posici´on inicial de los nodos surge la idea de evaluar el desempe˜no del sis-tema sin realizar refinamiento. Los resultados obtenidos se describen en la secci´on VI y en [4].

C. Extracci´on de caracter´ısticas

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

D. Confrontaci´on

En esta etapa se asume conocida la representaci´on del usuario a trav´es de sus caracter´ısticas y se procede a com-parar la misma contra los registros presentes en la base de datos. Dependiendo del modo de funcionamiento del sistema se compara contra el registro del mismo usuario, modo verificaci´on, o contra los registros de todos los usua-rios, modo identificaci´on.

Se proponen distintas medidas de similitud [2], [4], todas ellas eval´uan similitud de jets y luego promedian dichos valores para todos los nodos. Difieren en la informaci´on que consideran a partir de los jets; puede ser ´unicamente informaci´on de m´odulo, fase o combinaciones de ambas. En este proyecto fue elegida, por simplicidad y eficiencia, la similitud por magnitud. La misma se calcula seg´un la expresi´on: L(G, G0) = 1 n n X i=1 Sa(Ji, Ji0)

donde Ji y Ji0 son los i-´esimos jets de los grafos G y G0

respectivamente; n es el total de nodos de cada grafo y Sa es una medida de similitud entre jets considerando

´

unicamente el m´odulo que se calcula seg´un:

Sa(J, J0) = PN j=1aja0j q PN j=1a 2 j PN j=1a0j 2

con a y a0 odulos de los coeficientes complejos de dichos

jetsy N la cantidad de coeficientes complejos en cada jet. En el presente estudio se proponen alternativas a esta medida de similitud. En primer lugar se propone utilizar medidas de similitud ponderadas que pesen de forma di-ferenciada el valor de cada jet. Con esto se pretende dar

(6)

prioridad en la medida final a las caracter´ısticas extra´ıdas en ciertos nodos.Una segunda opci´on es aplicar lda (Lin-ear Discriminant Analisys) orientando el problema al modo identificaci´on. 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. Los resultados y conclusiones de estos estudios pueden encon-trarse en [4].

VI. Evaluaci´on y Resultados

S

E realizan pruebas sobre el sistema en los modos de fun-cionamineto verificaci´on e identificaci´on. Para cada uno de ellos se utiliza estimadores de performance bien conoci-dos.

Las medidas b´asicas de desempe˜no de un sistema de veri-ficaci´on o autenticaci´on son el far (que corresponde al por-centaje de falsas aceptaciones) y el frr (que corresponde al porcentaje de falsos rechazos). Para obtener el desempe˜no se releva los distintos puntos de funcionamiento del sistema desde far = 0 a frr = 0 generando la curva roc. El punto de funcionamiento en el que far = frr se denomina eer, o en ingl´es Equal Error Rate.

La medida b´asica de desempe˜no de un sistema de identi-ficaci´on es el rr, es decir la tasa de identificaci´on correcta. Como medida del error se podr´ıa utilizar er = 1 − rr, es decir la tasa de identificaci´on incorrecta. Desde el punto de vista de su significado es an´alogo el uso de cualquiera de estas dos medidas de desempe˜no de un sistema de estas caracater´ısticas.

A. Protocolo de Evaluaci´on

En los ensayos realizados en la evaluaci´on del sistema se utilizaron dos t´ecnicas para la estimaci´on de los interva-los de confianza. En particular se toma en interva-los dos casos intervalos de confianza al 95 %. Para una descripci´on del c´alculo de los intervalos de confianza con las estimaciones param´etrica y no param´etrica se puede consultar [4].

Se decidi´o utilizar la base feret, una base ampliamente reconocida por la comunidad cient´ıfica del Reconocimiento de Caras, con una gran cantidad de im´agenes con un grado de complejidad acorde a nuestro trabajo. A su vez, dado que el proyecto incluye el desarrollo de una aplicaci´on orien-tada al control de acceso, se decidi´o desarrollar una base particular para dicha aplicaci´on, la base iie. La misma es una base que consta de im´agenes provenientes de sesenta individuos, con 24 im´agenes por persona. Por m´as detalle acerca de ambas bases consultar [4].

B. Evaluaci´on semiautom´atica

El testeo semiautom´atico consiste en evaluar el sistema descartando la etapa de detecci´on autom´atica de la cara. Se utilizan coordenadas de los ojos marcadas manualmente.

De esta manera se busca independizarse del error de de-tecci´on y evaluar la performance del sistema ´unicamente en las etapas concernientes al reconocimiento.

La base feret contiene un total de 14051 im´agenes de m´as de 1000 individuos. Para realizar la evaluaci´on se toma como referencia [17], [19] en donde se explica una metodolog´ıa general para evaluar algoritmos de Re-conocimiento de Caras utilizando la base feret. Para someter al sistema a distintos niveles de dificultad, se tra-baja con cinco grandes grupos de im´agenes:

• fa - Conjunto de im´agenes base, forman la galer´ıa,

cuen-tan con una imagen por sujeto. Total de im´agenes: 1196.

• fb - Conjunto de im´agenes similar al fa. Difieren

´

unicamente en la expresi´on del sujeto. Total de im´agenes: 1195.

• fc - Conjunto de im´agenes tomado en la misma sesi´on

que fa pero con diferente iluminaci´on. Total de im´agenes: 194.

• duplicate I - Conjunto de im´agenes tomadas un tiempo

despu´es que fa. Total de im´agenes: 722.

• duplicate II - Conjunto de im´agenes tomadas al menos

18 meses despu´es que el conjunto fa. Total de im´agenes: 234.

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

Con el objetivo de realizar una comparaci´on de los resul-tados obtenidos en este trabajo, se presentan los mismos junto con el desempe˜no de otros algoritmos. Entre ellos los concursantes en el FERET Test2 [17], [19] y otros m´as

recientes. 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].

• aguar´a BS - Configuraci´on BS del sistema. • aguar´a NF - Configuraci´on 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-autom´atica.

(7)

RR

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

Comparaci´on del desempe˜no de diferentes algoritmos frente a los cuatros tests DUP-I, DUP-II, FB y FC presentados

para la base feret.

EER

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

Comparaci´on del desempe˜no 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-caci´on y verificaci´on para los cuatro conjuntos de im´agenes de prueba. Se puede hacer la comparaci´on con algunos algoritmos significativos del estado del arte y con los algo-ritmos ebgm de Wiskott et al. y David Bolme que fueron tomados como base.

Las variantes de nuestro sistema son aguar´a 06 BS y aguar´a 06 NF. La primera de ellas incorpora la compen-saci´on de potencia a los filtros de Gabor y la segunda adem´as no realiza el refinado en la etapa de la localizaci´on de puntos.

C. Evaluaci´on autom´atica

Luego de efectuar las distintas pruebas para el caso semi-autom´atico, se realizan ensayos considerando el sistema punta a punta, con el bloque de detecci´on autom´atica de la cara. Para estas pruebas solamente se considera la

con-figuraci´on BS del sistema.

En este caso tendremos dos efectos superpuestos que im-plican un peor desempe˜no. Por un lado la precisi´on con la que se ubican los ojos que afecta tanto la normalizaci´on como el ajuste de puntos posterior. Por otro lado existen outliers que corresponden a caras mal detectadas donde se obtiene similitudes muy bajas para usuarios genuinos que distorsionan las distribuciones de scores. No se consideran las im´agenes donde no se detecta una cara.

Se realiza la evaluaci´on del sistema definido para el set fb de la base feret. Los resultados se muestran en la tabla a continuaci´on, tambi´en se muestra el intervalo de confianza al 95%.

Identificaci´on Test RR(%) ICPR

Sistema 88.6 [86.8, 90.4]

Como se observa, el desempe˜no de identificaci´on dis-minuye de manera considerable respecto al caso semiau-tom´atico. En este caso se observ´o que la influencia de los outliers es mucho mayor que la del error cometido en la ubicaci´on de los ojos. A continuaci´on se muestra el de-sempe˜no en verificaci´on que tambi´en se ve perjudicado por el error en la etapa de detecci´on. El primer intervalo de confianza corresponde a la estimaci´on param´etrica y el se-gundo corresponde a la estimaci´on no param´etrica (ver [4]).

Verificaci´on

Test EER(%) ICPE ICBE

Sistema 5.50 [4.36, 6.63] [4.42, 6.58] A su vez, con la base iie se evalu´o diversas condiciones tales como diferentes expresiones, oclusiones y problemas de iluminaci´on. El detalle de esas pruebas se encuentra en [4].

VII. Conclusiones

S

E profundiz´o en el estudio del algoritmo ebgm el cual utiliza descriptores de Gabor locales [24]. Para ello se parti´o de una implementaci´on en lenguaje de programaci´on C/C++ existente [2]. Se logr´o mejorar el desempe˜no de dicha implementaci´on, as´ı como tambi´en, superar el de-sempe˜no del algoritmo original [24].

Se realiz´o estudios sobre distintas formas de mejorar la implementaci´on del algoritmo considerado. Entre ellas, se destaca un estudio estad´ıstico para compensar la potencia de los descriptores locales de Gabor con el objetivo de apli-carlos al Reconocimiento de Caras. Los buenos resultados obtenidos remarcan la importancia de las conclusiones de dicho an´alisis.

Por otro lado, se desarroll´o un Sistema de Reconoci-mento de Caras, que resuelve la adquisici´on de la imagen,

(8)

la detecci´on de la cara, la extracci´on de caracter´ısticas y finalmente el reconocimento del individuo. El mismo se utiliz´o como base para el desarrollo de un prototipo de aplicaci´on de reconocimiento de personas. Si bien en la presente s´ıntesis del trabajo no se describe, la aplicaci´on desarrollada en C/C++ con c´odigo libre, permite ejecutar las principales operaciones de un sistema de estas carac-ter´ısticas (ver Ap´endices A y B de [4]). El dise˜no modu-lar implementado a trav´es de bibliotecas, permite sustituir cualquiera de los bloques funcionales, en caso de as´ı nece-sitarlo.

El desarrollo de una base de im´agenes propia, la base iie (ver ap´endice C de [4]), as´ı como tambi´en la obtenci´on de la base de im´agenes est´andar feret, permiti´o la evaluaci´on del sistema desarrollado. Los buenos resultados obtenidos mediante la evaluaci´on con la base est´andar colocan este sistema cerca de los mejores resultados existentes. Adem´as, el desarrollo de la base propia, permiti´o la evaluaci´on de la aplicaci´on simulando un sistema de control de acceso.

VIII. Trabajo a Futuro

D

ESDE el punto de vista de la mejora del algoritmo ebgm han surgido importantes elementos a tratar y alternativas a evaluar que no han sido consideradas en el presente trabajo.

Es importante que para que el algoritmo presente mayor robustez se contin´ue trabajando en las t´ecnicas que con-templan caras rotadas. En ese sentido se puede seguir ex-plorando la fusi´on de modelos con im´agenes en distintas poses y se puede trabajar en la compensaci´on de jets para confrontar caras con diferentes rotaciones.

En la extracci´on de jets es importante estudiar cuantita-tivamente el aporte para el reconocimiento de las distintas frecuencias y orientaciones de los filtros de Gabor, con el objetivo de dar diferente peso seg´un su poder de discrimi-naci´on.

Finalmente, respecto al desarrollo de una aplicaci´on ori-entada al control de acceso, se observa que los tiempos de ejecuci´on y las tasas de reconocimiento del sistema imple-mentado permiten una aplicaci´on en tiempo real, con un nivel 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 Computer Vision 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 for recognition of human face images (invited paper). In Proceedings of 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. Computer Vision and Image Understanding, (98):182–210, 2005.

[8] David J. Field. Relations between the statistics of natural images and the response profiles of cortical cells. In Journal of the Optical 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 COST 276 Workshop on Information and Knowledge Management for Integrated Media Communication, Budapest, October 2002. [12] Martin Lades, Jan C. Vorbr¨uggen, Joachim Buhmann, J. Lange,

Christoph von der Malsburg, Rolf P W¨urtz, and Wolfgang Ko-nen. Distortion invariant object recognition in the dynamic link architecture. 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 Evaluarecogni-tion Methods in 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 in the feret Phase III test. In H. Wechsler, P. J. Phillips, V. Bruce, F. Fogeman Souli´e, 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, and

Patrick J. Rauss. The feret evaluation methodology for face-recognition algorithms. IEEE Transactions on Pattern Analysis and Machine Intelligence, 22(10):1090–1104, 2000.

[18] J. Huang P.J. Phillips, H. Wechsler and P. Rauss. The FERET database 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 Vision Computing Journal, 1999.

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

[21] Marcio Luis Teixeira. The bayesian intrapersonal/extrapersonal classifier. Master’s thesis, Colorado State University, Fort Collins, 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 Kr¨uger, and

Christoph von der Malsburg. Face recognition by elastic bunch graph matching. In Gerald Sommer, Kostas Daniilidis, and Josef Pauli, editors, Proc. 7th Intern. Conf. on Computer Analysis of Images and Patterns, CAIP’97, Kiel, number 1296, pages 456– 463, Heidelberg, 1997. Springer-Verlag.

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

(9)

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

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

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

Figure

Updating...

References