Primeros pasos para una aplicación móvil offline de reconocimiento facial

Página creada Leandro Alcaroz
 
SEGUIR LEYENDO
Primeros pasos para una aplicación móvil offline de
                         reconocimiento facial

                                               Barraza, Sara Lía
          Facultad de Ciencias Exactas y Tecnología, Universidad Nacional de Tucumán

                                               Thuillier, Etienne
                       Université Technologique de Belfort-Montbéliard, Francia

                                                   Will, Adrián
              GITIA, Universidad Tecnológica Nacional, Facultad Regional Tucumán
          Facultad de Ciencias Exactas y Tecnología, Universidad Nacional de Tucumán

                                      Rodriguez, Sebastián Alberto
              GITIA, Universidad Tecnológica Nacional, Facultad Regional Tucumán

Resumen                                                      SVD; TensorFaces

     El reconocimiento facial es una herramienta mo-
derna con una amplia gama de aplicaciones como vi-           1   Introducción
gilancia, seguridad, etc. Las necesidades de seguridad
y los aumentos en la capacidad de procesamiento y re-           En los últimos años la utilización del reco-
solución de las cámaras disponibles, ha hecho que estos      nocimiento facial se ha extendido por todo el
sistemas ganen un creciente interés. Sin embargo la ma-      mundo y ha sido ampliamente utilizada en nu-
yoría de este tipo de programas requieren de conexión
                                                             merosas aplicaciones como sistemas de segu-
                                                             ridad, sistemas de control de acceso a equipos
a internet para su funcionamiento, debido entre otras        o ambientes, identificación de conductas, entre
razones a la potencia de cálculo requerida y al tamaño       otras ( [1], [2], [3], [4]). Mas aún, debido a las
de las bases de datos involucradas. El presente trabajo      mejoras notables en la tecnología, es posible
representa un primer paso hacia el desarrollo de un sis-     para una computadora reconocer un rostro rá-
tema de reconocimiento facial de bajo requerimiento en
                                                             pidamente, de manera que resulta práctico uti-
                                                             lizar un sistema de este tipo para desbloquear
procesamiento, capaz de funcionar apropiadamente en          un dispositivo móvil o identificarse en el acce-
un dispositivo móvil. La posibilidad de funcionamien-        so a una parte de un edificio con mayor nivel
to offline en estos casos es crítica, ya que le permitiría   de seguridad que el resto.
funcionar eficientemente incluso dentro de edificios o en       Sin embargo, la gran mayoría de estos sis-
lugares sin señal.                                           temas resultan costosos en precio, instalación
                                                             y mantenimiento, necesitan un gran poder de
Palabras Clave Reconocimiento facial; Tensores;              cómputo y conexión a internet al momento de
ser utilizados (picasa1 o facebook2 ). Adicio-     conexión a internet). El sistema está basado
nalmente, sistemas como Visidon AppLock3           en la descomposición HOSVD de una matriz
para el sistema operativo Android tienen           formada por imágenes de 6 sujetos de prueba
severas limitaciones, tanto en la cantidad de      tomadas con una cámara digital en condicio-
rostros a reconocer como en la capacidad para      nes controladas, y fue validado utilizando fo-
funcionar.                                         tos de los mismos y otros sujetos tomadas en
                                                   otras condiciones incluyendo cámaras de te-
   Para numerosas aplicaciones es suficiente       léfono inteligente, otras condiciones de ilumi-
este tipo de servicios, dado que el dispositivo    nación, y otros incluyendo cambios en peina-
en que se utilizará el programa está en una ubi-   do. El procedimiento utilizado está exhausti-
cación fija y sin problemas de acceso a internet   vamente descripto en la sección 4.
o procesamiento (control de acceso a un aero-         Como limitaciones de la tecnología desa-
puerto, o a cuartos específicos de un edificio).   rrollada, se encontró la necesidad de que el
Sin embargo en otros casos resulta necesario       entrenamiento se realice en una PC o similar
utilizar un sistema de este tipo en condiciones    con alto poder de procesamiento (debido a la
especiales como ”indoors” (en un edificio) o       descomposición algebraica de matrices nece-
en lugares remotos o subterráneos, lo que ge-      saria), que el conjunto de personas a identifi-
neralmente significa sin conexión a internet o     car debe ser pequeño, y que las imágenes uti-
con una conexión de muy mala calidad. Esto         lizadas en el conjunto de entrenamiento deben
se complementa con el problema, para el caso       ser de buena calidad y tomadas en las mismas
específico de desbloqueo de dispositivos mó-       condiciones. Estas limitaciones surgen de los
viles por ejemplo, en que el reconocimiento        experimentos realizados, y si bien limitan la
debe ser realizado en poco tiempo y en un apa-     aplicabilidad del sistema, entendemos que re-
rato con bajo poder de procesamiento.              sulta suficientemente práctico y flexible para
   Entre otras herramientas posibles, existen      ser utilizados en aplicaciones reales.
investigaciones anteriores que han abordado           El trabajo está dividido en 4 secciones. En la
este problema mediante el uso de tensores de       primera sección se presenta el estado del arte.
orden superior [1], [4], [5]. Estas herramientas   En la segunda sección se explica la parte mate-
requieren en general una gran cantidad de pro-     mática de tensores necesaria. La sección 3 pre-
cesamiento a la hora de entrenar, dado que se      senta los datos y el procedimiento y preproce-
basan en una descomposición de matrices que        samiento realizado a los mismos. La sección 4
requiere procesamiento (HOSVD, Higher Or-          presenta el algoritmo utilizado, y en la sección
der Singular Value Decomposition). Sin em-         5 se muestran los resultados obtenidos.
bargo en tiempo de ejecución sólo es una pro-
yección lineal y otros procedimientos de bajo
requerimiento, lo que los hace ideales para es-    2     Trabajos relacionados
te tipo de aplicaciones. Por otro lado, en mu-
chas de estas investigaciones y otras similares,   2.1    Sistemas de reconocimiento facial
la experimentación, y especialmente el prepro-
cesamiento de los datos, resulta difícil de se-       Durante la década anterior, el reconocimien-
guir por falta de claridad y de especificación     to facial ha sido considerado y aplicado en di-
del procedimiento utilizado.                       versas áreas: detección de rostros en fotogra-
   En este trabajo proponemos entonces un sis-     fía para evitar somnolencia en transportes4 , es-
tema de reconocimiento facial que dé respues-      timación de edad y género en una multitud,
ta a estos problemas, que esté preparado pa-       análisis de clientes, reconocimiento facial para
ra funcionar en dispositivos móviles, con ba-      control de acceso, identificación de visitantes,
jo requerimiento de memoria y procesamiento,       ingreso en aplicaciones online, etc.
una cámara de relativamente baja resolución,          Las aplicaciones de seguridad proponen sis-
y de manera autosuficiente (sin necesidad de       temas con resultados positivos casi inmedia-
                                                   tos, pero la mayoría de estos sistemas resul-
   1 http://picasa.google.com/
                                                   tan costosos tanto en el proceso de desarrollo
   2 https://www.facebook.com/
                                                   como de instalación y mantenimiento. Presen-
   3 https://play.google.com/store/apps/

details?id=visidon.AppLock&hl=en                         4 http://www.tcit.com.tw/?language=en
tan resultados adecuados para las aplicaciones     en tensores - y se extraían conclusiones sobre
a las que están destinadas. Una característica     los algoritmos probados, con la intención de
común a la mayoría de estos sistemas es la         identificar el que mejores resultados presenta-
necesidad de una conexión Internet debido al       ra tanto en el reconocimiento como en el tiem-
gran volumen de datos involucrado y el proce-      po empleado.
samiento requerido.                                   Sin embargo, en los trabajos mencionados,
   Luego encontramos los programas que rea-        aunque la matemática utilizada no presentar
lizan la detección de rostro en imágenes, y        errores visibles, los experimentos y los resulta-
como se indica, solo permiten detectar la po-      dos mostraron una falta de descripciones me-
sición y límites de un rostro en una imagen,       todológicas, lo que resulta en experimentacio-
sin permitir identificar a la persona, común       nes difíciles de reproducir. Ambos trabajos,
en cámaras fotográficas modernas ( [6]). Exis-     utilizan bases de datos descargados de inter-
ten también sistemas de reconocimiento facial      net: Weizmann8 , PEAL9 y YaleB10 , y estas
como por ejemplo facebook que adquirió el          producen problemas a la hora de intentar uti-
servicio face.com, Google con el servicio re-      lizarlas. Por ejemplo, la base de datos Weiz-
kognition5 , Apple que compró Polar rose6 que      mann contiene más de mil imágenes que pre-
desarrolló el servicio recognizr7 .                sentan más o menos cuarenta fotos para cada
   Por último, se encuentra el programa Visi-      persona. Esto implica un proceso complejo pa-
don AppLock de Android que permite al usua-        ra agregar personas y que las condiciones utili-
rio desbloquear su teléfono inteligente con una    zadas estarán lejos de las reales de utilización,
aplicación de reconocimiento facial. El siste-     lo que lo vuelve poco práctico.
ma funciona en dispositivos móviles sin uti-
lizar la conexión a Internet para su funciona-
miento. Se basa en una comparación de una          3     Álgebra de tensores
imagen del usuario, con una o más fotos archi-
vadas y una comparación de las características        Se describen en esta sección los prelimina-
faciales. Si bien presenta problemas al utilizar   res básicos sobre Álgebra de Tensores y la des-
el programa con bajo nivel de luz, con perso-      composición HOSVD
nas parecidas, o con cambios en el vestuario o
el peinado.
                                                   3.1    Descripción de tensores

2.2     Trabajos anteriores                           Un tensor es considerado una matriz multi-
                                                   dimensional o matriz de orden N, por ejemplo,
   Se realizaron trabajos que proponen tenso-      un vector es un tensor de orden 1 y una matriz
res para reconocimiento facial. En este traba-     es un tensor de orden 2. Un tensor A de orden
jo dos artículos importantes se utilizarán co-     tres es una matriz de tres dimensiones, y está
mo soporte para nuestro algoritmo. Vasilescu       denotado por A ∈ RI1 ×I2 ×I3 donde cada dimen-
y Terzopoulos [4] han propuesto utilizar tensor    sión de la matriz es llamada modo del tensor.
SVD para reconocer rostros. Su trabajo inclu-      Este puede ser visualizado como un bloque en
ye una comparación entre PCA y TensorFaces         tres direcciones, como lo muestra la figura 1
y muestran buenos resultados al utilizar tenso-       Sus elementos están denotados por ai jk
res. La segunda obra propuesta por Rana [1]        donde 0 < i < I1 , 0 < j < I2 , 0 < k < I3 y se
desarrolla diferentes enfoques, en los cuales      obtienen fijando los índices i, j y k en cada
todos utilizan un algoritmo basado en SVD-         modo. Si en una matriz se fijan uno de sus
tensor. En este trabajo, se realizaba un estu-     índices se obtiene los vectores filas (primer
dio de diferentes algoritmos - todos basados       índice fijo) y columnas (segundo índice fijo).
                                                   El análogo en tensores se llaman f iber. En
      5 http://rekognition.com/
      6 http://news.cnet.com/8301-13579_                 8 http://www.wisdom.weizmann.ac.il/

3-20017018-37.html                                 ~vision/FaceBase/
   7 http://readwrite.com/2010/02/24/                  9 http://www.jdl.ac.cn/peal/

recognizr_facial_recognition_coming_to_               10 http://cvc.yale.edu/projects/

android_phones                                     yalefacesB/yalefacesB.html
Se definen ahora, dos conceptos de tensores
                                                                 importantes para el desarrollo del algoritmo.
                                                                    Matrización de un tensor: El concepto de
                                                                 matrización o tensor unfolding se refiere al
                                                                 proceso de transformar un tensor en una ma-
                                                                 triz. Para un tensor de orden tres este proceso
                                                                 se muestra en la figura 4
Figura 1: Representación de un tensor de or-
den tres.

un tensor de orden tres A ∈ RI1 ×I2 ×I3 , las
fiber son llamadas columnas, filas y tubos, las
cuales son denotadas por A(:, i2 , i3 ) = a:i2 i3 ,
A(i1 , :, i3 ) = ai1 :i3 y A(i1 , i2 , :) = ai1 i2 : respecti-
vamente.

  Las fiber en un tensor de orden tres se pue-
den observar en la figura 2

                                                                    Figura 4: Proceso de matrices unfolding.

Figura 2: Vectores Fiber de un tensor de orden
tres.                                                              Producto n-modo: El producto n-modo de
                                                                 un tensor A ∈ RI1 ×I2 ×···×In ···×IN y una matriz
                                                                 U ∈ RJn ×In denotado por A ×n U, es un tensor
   De manera análoga, las matrices de un ten-                    de dimensión I1 × I2 × · · · × Jn × · · · × IN defi-
sor de orden tres son llamadas slices, y están                   nido componente a componente por
denotadas por A(i1 , :, :) (sección horizontal),
A(:, i2 , :) (sección lateral) y A(:, :, i3 ) (sección
frontal). En la figura 3, se muestran las seccio-                         (A ×n U) = ∑ ai1 i2 ···in ···iN u jn in
                                                                                          in
nes de un tensor de orden tres.

                                                                 3.2   Descomposición de tensores
                                                                    Aquí, se propone describir la descompo-
                                                                 sición en valores singulares para tensores,
                                                                 denotada por HOSVD (Higher Order Singular
                                                                 Value Decomposition) [7] [5] [8] la cual es
                                                                 una generalización de la descomposición SVD
                                                                 para matrices. Para facilitar la comparación
                                                                 vamos a presentar la SVD matricial en la
Figura 3: Matrices slices de un tensor de orden                  notación inducida por el producto n-modo
                                                                 entre un tensor y una matriz.
tres.
SVD de matrices:
Toda matriz A ∈ RI1 ×I2 puede ser escrita como
el producto

A = USV T = S×1 U ×2 V T = S×1 U (1) ×2 U (2)

   Donde
   U (1) = U es una matriz unitaria de orden
I1 × I1
   U (2) = V T es una matriz unitaria de orden
I2 × I2                                                  Figura 5: HOSVD de un tensor de orden tres.
  S es una matriz de orden I1 × I2 con las si-
guientes propiedades:
                                                            Los valores singulares en los otros modos y
         S = diag(σ1 , σ2 , · · · σmin(I1 ,I2 ) )        su ordenación se definen de manera análoga.
                                                         Para un tensor de orden tres, un esquema de
           σ1 ≥ σ2 ≥ · · · ≥ σmin(I1 ,I2 )               tal descomposición se puede visualizar en la
                                                         figura 5.
  Los σi son los valores singulares de A.                   Esto es claramente una generalización de la
                                                         descomposición SVD para matrices, si se res-
  SVD de tensores (HOSVD):                               tringe el teorema a tensores de orden dos.
                                                            El algoritmo para calcular la descomposi-
Todo tensor A ∈ RI1 ×I2 ×I3 puede ser escrito co-        ción es:
mo el producto
                                                             1) Calcular las matrices Un , mediante el
        A = S ×1 U (1) ×2 U (2) ×N U (3)                        SVD de las matrices Tn , obtenidas por
donde                                                           matrización del tensor en cada modo.
                                                             2) Calcula el tensor S como:
                   U (1) ∈ RI1 ×I1
                   U (2) ∈ RI2 ×I2                                                T         T      T
                                                                    S = A ×1 U (1) ×2 U (2) ×3 U (3)
                   U (3) ∈ RI3 ×I3

   son matrices ortogonales.                             4     Datos Utilizados
   S ∈ RI1 ×I2 ×I3 llamado tensor core, tiene la
propiedad de ortogonalidad: cualquiera dos                 Se describe en esta sección con detalle, el
slices de S son ortogonales en el sentido del            proceso de generación de las imágenes utili-
producto escalar:                                        zadas en este trabajo. Se describen tanto las
                                                         cámaras utilizadas como el tipo y característi-
                                                         cas de las imágenes utilizadas para el entrena-
  hS(i, :, :), S( j, :, :)i = hS(:, i, :), S(:, j, :)i   miento y el proceso utilizado en las imágenes
                                                         de validación.
                            = hS(:, :, i), S(:, :, j)i
                            = 0 para i 6= j
                                                         4.1    Sesión de fotos
   Para el modo-1 se define los valores singu-              Intentos previos de los autores por utilizar
lares como:                                              una base de datos como YaleB, Weizmann y
           (1)                                           PEAL de manera similar a lo encontrado en
         σi      = kS(i, :, :)kf i = 1, · · · I1         los trabajos citados, resultaron infructuosos o
                                                         de resultados poco reproducibles, debido prin-
  Y están ordenados como sigue:                          cipalmente a que el procesamiento de las imá-
                 (1)      (1)           (1)
                                                         genes no está correctamente descripto. Mas
              σ1 ≥ σ2 ≥ · · · σI1                        aún los tensores entrenados con estas bases
de datos y completados con fotografías pro-         4.2   Preprocesamiento
pias, complican el funcionamiento del algorit-
mo, debido a que las imágenes no están toma-           Una vez tomada la serie de fotos de la ba-
das en las mismas condiciones, dando malos          se de entrenamiento, fueron tratadas con el fin
resultados. Por esta razón, decidimos formar        de poder ser utilizadas por el algoritmo. Se
una base de datos propia, que nos permite un        utilizó para ello software de edición de fotos
control sobre el proceso de preprocesamiento.       (The Gimp11 y Photoshop12 para el remues-
   Para el presente trabajo se tomaron imáge-       treo). Cada una de las fotos de la serie se trans-
nes de 6 voluntarios bajo diferentes condicio-      formaron a componentes blanco y negro redu-
nes controladas de iluminación, fondo, y ex-        ciendo la dimensión del problema. Luego, ca-
presión, según el siguiente detalle:                da foto se redujo a un tamaño de 200x200 pí-
                                                    xeles utilizando la función resampling de Pho-
     Foto A1: con expresión neutra, dos flash       toshop. Este paso se realiza para conseguir un
     frontales                                      total de 40000 píxeles de cada foto lo que re-
     Foto A2: con expresión sonriente, dos          sulta en un tensor de tamaño que puede ser
     flash frontales                                descompuesto en una PC de escritorio ordina-
     Foto B1: con expresión neutra, flash a la      ria utilizando Matlab, y al mismo tiempo con
     derecha                                        la precisión suficiente para efectuar el recono-
     Foto B2: con expresión sonriente, flash a      cimiento. Se obtuvo entonces una base de da-
     la derecha                                     tos formada por seis fotografías de seis perso-
     Foto C1: con expresión neutra, flash a la      nas, un total de 36 imágenes, donde las mismas
     izquierda                                      están ordenadas según la descripción efectua-
     Foto C2: con expresión sonriente, flash a      da arriba. Se puede ver una muestra de las 6
     la izquierda                                   fotos utilizadas para algunos de los sujetos en
                                                    (figura 6).
   Las fotos fueron tomadas teniendo en cuen-
ta lo siguiente:
     El fondo de la foto es neutral, sin compo-
     nentes ruidosos, como formas o sombras.
     La distancia de la cámara-persona es fija
     en 2 mts
     La distancia focal de la cámara es tal que
     el ángulo formado por las lentes muestra
     la cara de la persona en toda la superficie
     de la imagen.
     Las imágenes tomadas fueron encuadra-           Figura 6: Parte de la base de datos utilizada.
     das de manera tal que la parte superior del
     cabello toca el borde superior de la ima-         El preprocesamiento para las fotos de
     gen y la parte inferior del menton toca el     validación sigue casi el mismo proceso que
     borde inferior de la imagen.                   para las imágenes de la base de datos: se
El objetivo del proceso, es que el rostro ocupa     toma la foto, se transforma a blanco y negro,
más o menos el 70 % de la imagen total. Esta        y luego se modificaría para que coincida en
configuración se utiliza con el fin de evitar que   formato y características con las imágenes de
algunos factores como el fondo o la ropa de el      la base de entrenamiento.
sujeto afecten el análisis.
   Pruebas preliminares demostraron que el or-        Toma de fotos para uso el reconocimiento
den de las fotos expuesto no es crítico (pueden      1) Tomar una foto retrato de la persona con
intercambiarse poniendo por ejemplo las fotos           el dispositivo móvil
A2 antes de las A1 con idénticos resultados),
                                                      11 http://www.gimp.org/
pero resulta crítico cambiar en una persona al-
gunas de las condiciones descritas.                   12 http://www.photoshop.com/
2) Redimensionar o ampliar la foto al centro      Se decidió considerar en el modo-2 las
       y aproximar el rostro de la persona         seis imágenes de cada persona, ordenadas de
    3) Establecer la foto a blanco y negro         acuerdo a la iluminación y expresión, y no
                                                   de manera independiente, para trabajar con
    4) Cambiar el tamaño de la foto para una       un tensor de orden tres, ya que las pruebas
       imagen 200x200px                            realizadas con tensores de orden superior
    5) Probar esta imagen con el algoritmo         separando este caso, no produjeron mejoras
                                                   notables.
   A.3 Especificaciones de cámaras fotográ-
ficas utilizadas                                     Al realizar la descomposición HOSVD se
Todas las fotos de la base de datos fueron to-     obtiene:
madas con una cámara Nikon D7000, con len-
te 18-105, distancia focal de 70 mm (equiva-           T = S ×1 U persona ×2 Uexp.ilum ×3 U pixel
lente a 105 mm si fuera una cámara tradicio-
nal de rollos de 35 mm), y dos flash colocados        donde S ∈ R6×6×40000 es el llamado ten-
a ambos lados de la cámara, un Nikon SB700         sor core que interactúa con las matrices
y un Nissin Di622. Además se tomaron en for-       U persona , Uexp.ilum y U pixel , correspondientes a
mato jpg, bajo las mismas condiciones expli-       los modos del tensor T , para crear una imagen.
cadas antes.
Se tomaron además fotos con la cámara digi-          Las columnas de U persona , Uexp.ilum y U pixel
tal incorporada de un teléfono inteligente Sam-
sung Galaxy SII (I9100) con una distancia fo-      definen los subespacios vectoriales persona,
cal de 4,03 mm (equivalente a 30 mm en una         exp.ilum y píxel, respectivamente.
cámara tradicional de rollos de 35 mm), un
sensor de tamaño 1/3.2” con luz natural y flash       Las filas de la matriz U persona corresponden
incorporado de relleno, para validación del sis-   a una persona en particular, es decir, la
tema.                                              i − esima fila representa a la i − esima persona,
                                                   independiente de la expresión e iluminación.
                                                   Lo mismo ocurre con las filas de Uexpresion ,
5     Algoritmo y Experimentación                  donde cada una ellas corresponden a una
                                                   expresión en particular.
   En esta sección se describe el ordenamiento        La descomposición HOSVD puede ser con-
como Tensor de las imágenes utilizadas, y el       siderada de diferentes maneras, de acuerdo a
algoritmo utilizado.                               su utilidad. Aquí, se utiliza la siguiente expre-
   Según lo descripto en la sección anterior,      sión:
se utilizó una base de datos de 36 imágenes,
tomadas a seis personas en dos expresiones                   T = B ×1 U persona
diferentes y tres condiciones de iluminación,
tomándose así seis imágenes por persona. Al            donde B = S ×2 Uexp.ilum ×3 U pixel
igual que en [4], se reordenan cada imagen
como un vector 1 × 40,000, y se las ordena           Como lo muestra la figura 7
de manera que las imágenes estén representa-
das mediante un tensor T ∈ R6×6×40000 don-
de los modos corresponden a modo-persona,
modo-exp.ilum y modo-pixel respectivamen-
te. O sea, es una matriz 6 × 6 × 40,000, don-
de cada imagen está ordenada como un "tu-
bo"(fila y columna constante, ver sección 3),
cada slice horizontal del tensor (modo 1 cons-
tante) contiene las distintas fotos de una mis-         Figura 7: Descomposición HOSVD.
ma persona, y cada slice lateral del tensor (mo-
do 2 constante), contiene las imágenes de to-
das las personas en una misma condición de           Si se fija una persona p y una expresión e en
iluminación y expresión.                           particular, se obtiene el vector:
1) Calcular el tensor B
         T (p, e, :) = U(p, :) ×1 B(:, e, :)
  Si llamamos t p = T (p, e, :), u p = U(p, :) y            2) Dada la imagen de prueba It , calcular sus
Be = B(:, e, :) la ecuación se transforma en:                  coordenadas en una expresión e como:

                    t p = u p Be                                            dt = Pinv(Be ) ∗ It

                                                            3) Evaluar minkdt − u p k donde u p son las fi-
                                                               las de la matriz U persona

                                                            4) El vector u p que minimiza la expresión
                                                               kdt − u p k identifica a la persona descono-
                                                               cida como la persona p

            Figura 8: Vector imagen.                       Se realizaron pruebas con fotos de personas
                                                        desconocidas, y con fotos de personas de la ba-
                                                        se de datos, en diferentes condiciones, para op-
   Esto se puede interpretar como sigue: el             timizar el algoritmo. Los resultados obtenidos
vector t p representa la imagen de la persona           superaron nuestras expectativas y se muestran
p en la expresión e; las columnas de la matriz          en la sección 4.
Be forman una base para la expresión e y
el vector u p contiene las coordenadas de la
imagen t p , en dicha base.
                                                        6     Resultados Obtenidos
  Por lo tanto, el vector imagen de la persona
p en la expresión e está dado por:                      6.1     Positivos
                    I pe = u p Be                          Las primeras pruebas se realizaron con las
                                                        fotos de testeo, y con fotos de personas des-
  Así, las coordenadas de la imagen en dicha            conocidas. En todos los casos, los resultados
expresión, están representadas por el vector:           fueron óptimos, aún cuando las fotos fueron
                                                        tomadas en diferentes condiciones de ilumina-
                u p = I pe pinv(Be )                    ción o con una definición muy baja, como se
                                                        observa en la figura 9.
   Ahora si se considera la imagen de una per-
sona desconocida It , sus coordenadas en una
cierta expresión e estarán dadas por

                 dt = It Pinv(Be )

   Luego se compara este vector, con los vec-
tores fila u p = U(p, :) de la matriz U p , el vector
u p que minimiza la expresión

                     kdt − u p k
                                                        Figura 9: Resultados de reconocimiento con
  entre todas las expresiones, identifica la
imagen desconocida como la persona p.                   una foto borrosa. A la izquierda foto de prue-
  A continuación, se describe el algoritmo:             ba, a la derecha foto reconocida por el algorit-
                                                        mo.
  Algoritmo: SVD-multilineal
Input: Imagen de prueba It
6.2   Parámetros controlados
   Luego se consideró, para personas de la ba-
se de datos, imágenes tomadas anteriormente
en condiciones muy diferentes, como distan-
cia focal, iluminación, condiciones físicas de
la persona (barba, cabello, ropa, etc.). En este
caso se pudo observar que dichas condiciones
afectan, en algunos casos, al reconocimiento
mientras que en otros la persona fue reconoci-
da.                                                Figura 11: Modificación digital de la foto tes-
   Considere la figura 10 que representa algu-     teo (zoom).
nos casos donde el reconocimiento se obtiene
sin controlar los diferente parámetros.

                                                   Figura 12: Resultados de reconocimiento con
                                                   una foto modificada.

                                                   ración con personas parecidas.(figura 13). Ob-
                                                   servemos que en la foto, el rostro de la persona
                                                   está desviado. En otra imagen similar donde la
                                                   persona está correctamente orientada, el reco-
                                                   nocimiento es positivo.
Figura 10: Resultados de reconocimiento con
fotos que tienen ruido.

   En otro caso fue obligatorio modificar la
imagen, debido a que ésta abarca caracterís-
ticas (hombros, cuello, espacio físico) que ge-
neran ruido en el análisis. Para hacer esta mo-
dificación, se cambió el parámetro de distancia
focal (es decir, un zoom sobre el rostro sin mo-
dificar el tamaño de la foto, ver figura 11)
   Después de esta modificación el reconoci-       Figura 13: Resultados de reconocimiento erró-
miento llegó a un resultado positivo (figura       neo.
12).

6.3   Resultados negativos                         6.4   Resumen
   Al realizar las primeras pruebas, con las fo-      Las pruebas se realizaron con 28 fotos, de
tos de testeo de las personas de la base de da-    las cuales 21 corresponden a imágenes de per-
tos, se obtuvo, que para una de ellas, el algo-    sonas de la base de datos y 7 a personas desco-
ritmo falló, dando como resultado una compa-       nocidas. De estas 28 fotos, 23 de los casos die-
ron resultado positivo (82 %). Los resultados      es sensible al encuadre de la foto, lo que hace
negativos se obtuvieron de 5 imágenes de per-      imprescindible la incorporación de un sistema
sonas de la base de datos, de las cuales se mo-    para reconocer el rostro y adecuar el encuadre,
dificaron tres de ellas, que luego de una prueba   como trabajo futuro.
fueron reconocidas. Es decir, que el algoritmo        Los trabajos futuros incluyen la aplicación
arrojo un resultado positivo en un 93 % de los     de este proceso y algoritmo en dispositivos in-
casos.                                             teligentes, así como la mejora del proceso de
   Además, de las 21 fotos de las personas co-     entrenamiento, que según la experimentación
nocidas, sólo 16 de estas fueron reconocidas,      realizada debe ser efectuada en una PC debi-
más las 3 imágenes modificadas nos da un           do al alto poder de cómputo requerido. Tam-
90 % de resultado positivo con personas de la      bién la mejora del reconocimiento en bajo ni-
base de datos.                                     vel de iluminación, problema común en este ti-
   En el caso de las personas desconocidas, el     po de programas, sería un avance importante.
100 % de los casos fueron positivos.               Entre las posibilidades del sistema a futuro, es
   La figura 14 muestra la tabla de resultados.    perfectamente posible entrenarlo para recono-
                                                   cer otras personas, permitiendo que estas (fa-
                                                   miliares o similar) tengan acceso al sistema, o
                                                   que personas de características faciales simila-
                                                   res sean distinguidas. Estas posibilidades son
                                                   complicadas de realizar en otros de los siste-
                                                   mas actualmente en uso.

    Figura 14: Resultados de reconocimiento.       Agradecimientos

                                                      Agradecemos al Ingeniero Jorge Bustos de
                                                   la F.A.C.E.T., U.N.T., por su trabajo profesio-
7    Conclusiones                                  nal en la toma y preprocesamiento de las imá-
                                                   genes
   En este trabajo presentamos un método pa-
ra reconocimiento facial mediante un modelo        Referencias
basado en tensores, diseñado para ser ejecuta-
do en dispositivos móviles. Como característi-     [1] Santu Rana, Wanquan Liu, Mihai Lazares-
cas principales, es bastante robusto a cambios         cu, and Svetha Venkatesh. A unified ten-
en apariencia, resolución, cambios en la ves-          sor framework for face recognition. volu-
timenta o peinado, etc. El uso de más de una           me 42, pages 2850 – 2862, 2009.
persona y una cámara de buena calidad en el
entrenamiento han producido resultados muy         [2] Santu Rana, Wanquan Liu, Mihai Lazares-
superiores a los obtenidos entrenando con fo-          cu, and Svetha Venkatesh. Efficient tensor
tos de calidad normal. En las fotos probadas           based face recognition. In ICPR, pages 1–
con baja iluminación o menor calidad, el siste-        4. IEEE, 2008.
ma funcionó igualmente de manera correcta.
   El algoritmo desarrollado evalúa la proximi-    [3] Matthew Turk and Alex Pentland. Eigen-
dad lineal de una imagen con un conjunto de            faces for recognition. J. Cognitive Neuros-
imágenes presentes en la base de datos, que            cience, 3(1):71–86, jan 1991.
dan un resultado positivo (el reconocimiento o
no) en más de un 93 % de los casos. Se encon-      [4] M.A.O. Vasilescu and D. Terzopoulos.
tró sin embargo que resulta crítica la forma-          Multilinear image analysis for facial re-
ción de un conjunto de fotos de entrenamiento          cognition. 2:511–514 vol.2, 2002.
de alta calidad y de poses similares. La intro-
ducción de fotos de mala calidad, o con varia-     [5] Lars Eldén. Matrix Methods in Data Mi-
ciones en la posición o expresión en el conjun-        ning and Pattern Recognition. Society for
to de entrenamiento, disminuye sensiblemente           Industrial and Applied Mathematics, Phi-
el nivel de los resultados obtenidos. También          ladelphia, PA, USA, 2007.
[6] Paul Viola and Michael Jones. Robust
    real-time object detection. In Internatio-
    nal Journal of Computer Vision, 2001.
[7] Lieven De Lathauwer, Bart De Moor, and
    Joos Vandewalle. A multilinear singu-
    lar value decomposition. SIAM J. Matrix
    Anal. Appl, 21:1253–1278, 2000.
[8] Tamara G. Kolda and Brett W. Bader.
    Tensor decompositions and applications.
    SIAM REVIEW, 51(3):455–500, 2009.
También puede leer