21
¡¡Chacho!! Que la lías, mira p’alante Beatriz Torre Jiménez Grado en Ingeniería en Sistemas de Telecomunicaciones [email protected]

Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones [email protected] . 1 Índice ... aproximada

Embed Size (px)

Citation preview

Page 1: Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones beatriz_torre@hotmail.com . 1 Índice ... aproximada

¡¡Chacho!! Que la lías, mira p’alante

Beatriz Torre Jiménez

Grado en Ingeniería en Sistemas de Telecomunicaciones

[email protected]

Page 2: Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones beatriz_torre@hotmail.com . 1 Índice ... aproximada

1

Índice Introducción .................................................................................................................................. 2

Motivación y Campos de aplicación .............................................................................................. 3

Hough Random Forest para detección de objetos y estimación de la pose ................................. 5

Entrenamiento .......................................................................................................................... 5

Entrenamiento con imágenes de profundidad ..................................................................... 6

Entrenamiento con imágenes de color ................................................................................. 7

Etapa de estimación .................................................................................................................. 8

Estimación en imágenes de profundidad .............................................................................. 8

Estimación en imágenes RGB ................................................................................................ 9

Resultados y conclusiones ........................................................................................................... 11

Análisis en imágenes de profundidad ..................................................................................... 11

Análisis en imágenes RGB ....................................................................................................... 13

Conclusiones del análisis comparativo de ambos resultados ................................................. 15

Futuras líneas de trabajo ............................................................................................................. 18

Bibliografía .................................................................................................................................. 20

Page 3: Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones beatriz_torre@hotmail.com . 1 Índice ... aproximada

2

Introducción

A pesar de que conducir es una tarea prácticamente rutinaria para la mayoría de nosotros, sigue siendo una actividad arriesgada que requiere de mucha atención por nuestra parte. Siempre se nos dice que el problema es la velocidad y no respetar los límites, quizás también se hace referencia al estado de las calzadas o incluso la meteorología, pero si analizamos el problema con curiosidad científica y nos fijamos en las estadísticas, vemos que en 1 de cada 2 accidentes graves ocurrido en el 2012, ha habido cierto grado de despiste o falta de atención [1]. Así pues, si nuestra intención es reducir esta tasa y mejorar la seguridad, debemos centrarnos en reducir las fuentes de distracciones, pero... ¿es eso posible? ¿es fácil? ¿es factible? A priori parece complicado: sólo hay que ver el gran presupuesto en publicidad para marquesinas de autobús o carteles que hay en las autopistas. Rótulos luminosos, carteles móviles, diseños enfocados en captar nuestra atención… en principio parece difícil resistirse a algo que ha sido específicamente diseñado para que nos fijemos. Así que en este trabajo que presentamos, vamos a rodear el obstáculo: en vez de eliminar las fuentes de distracción, vamos a detectar cuando el usuario se distrae y cuando dicha distracción supone un peligro grave y, de esta forma, alertarle convenientemente. Para ello vamos a recurrir a técnicas de machine learning y visión por computador. Lo que hemos hecho es entrenar a un ordenador a medir distintos parámetros en el usuario y entender si está mirando lo que tiene en la carretera o está distraído mirando un cartel de excelentes Miguelitos de la Roda y no ve que el coche de delante se ha parado por culpa del atasco.

En este trabajo vamos a presentar un modelo de regresión que es capaz de estimar el acimut, cenit y altura del rostro de una persona, fijando como punto de referencia la nariz. Para ello hemos entrenado el modelo utilizando un algoritmo de la familia de los bosques de decisión conocido como Hough Random Forest. Dicho entrenamiento utiliza como fuente de información una base de datos de imágenes de personas, anotada cada imagen con cada uno de los tres parámetros a estimar. De esta forma, el algoritmo tratará de encontrar una función que, partiendo de unas características de entrada, halle una función de transformación no lineal que permita calcular los parámetros deseados. A continuación, si definimos una función de error entre este mapeo y los valores anotados, podremos abstraer el problema y reducirlo a un problema matemático de optimización. [2]

Page 4: Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones beatriz_torre@hotmail.com . 1 Índice ... aproximada

3

Motivación y Campos de aplicación

El ejemplo que se menciona en la introducción, de distraerse con un cartel y chocarse con el coche de delante, no es fruto de la imaginación, sino que es un caso que me toca de cerca, lo que, unido a otras circunstancias, me ha llevado a interesarme por este campo. Como podemos ver, este trabajo es de aplicación directa, ya que el estudio de cómo mejorar la seguridad en la conducción es algo muy actual. Sin embargo, esta no es su única aplicación, la estimación de la pose puede servir para muchos campos distintos. Sin ir más lejos, para el desarrollo de experiencias 3D. Como podemos ver en la Figura 1, Amazon utiliza 4 cámaras integradas en las esquinas de su ultimo teléfono móvil para ser capaz de adaptar las imágenes mostradas por su pantalla al ángulo desde el cual las estamos visualizando, de esta forma es capaz de conseguir un efecto tridimensional: si mueves el teléfono podrás ver que hay detrás de la esquina del edificio de la Figura 2.

Figura 1 Presentación de la característica “dynamic perspective” del teléfono Fire Phone de Amazon.

Page 5: Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones beatriz_torre@hotmail.com . 1 Índice ... aproximada

4

Figura 2. : Integración de “dynamic perspective” con Google Maps. Esta tecnología proporciona una experiencia inmersiva mucho mayor.

Una aplicación muy importante de esta tecnología estaría en su uso como interfaz para personas con movilidad reducida. Utilizando una simple (y barata) webcam, una persona parapléjica podría, mediante pequeños movimientos de la cabeza, utilizar un ordenador de forma totalmente independiente y sin necesidad de pedir ayuda a otra persona (ver Figura 3)

Figura 3. Persona parapléjica interactúa con un ordenador de forma autónoma.

Page 6: Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones beatriz_torre@hotmail.com . 1 Índice ... aproximada

5

Hough Random Forest para detección de objetos y

estimación de la pose

Para detectar y estimar la pose de la cabeza partimos de un sistema basado en Hough Random

Forest (HFR) [1]. Este clasificador consiste en un conjunto de árboles de decisión que

previamente han sido entrenados de forma aleatoria.

Entrenamiento

Inicialmente se va a detallar cómo se realiza el entrenamiento de estos árboles ya que resulta

fundamental para poder comprender cómo se ha realizado la estimación. Se va a partir de un

conjunto de imágenes anotadas, que contengan tanto la posición de la cabeza cómo su

localización en la imagen. Posteriormente de dichas imágenes se extraen de forma aleatoria un

conjunto de parches. Los parches vendrán definidos de la siguiente manera,

Ecuación 1

Dónde ci es una etiqueta de clasificación. Se asigna valor “1” si el parche se encuentra en la cara

y “0” si está en cualquier otra zona, considerándose que pertenece al fondo de la imagen. θ i =

(θ1, θ2) (θ1 es la medida de localización y θ2 la de pose), e Ii representa la apariencia del parche

(los valores de los píxeles). El siguiente objetivo consiste en construir los árboles de decisión,

agrupando en una misma hoja los parches que posean una información similar. En una primera

fase se van a considerar todos los parches en un único nodo, denominado nodo raíz (S). Para

realizar la primera división en dos grupos, el modelo necesita encontrar aquel clasificador

sencillo, denominado en este trabajo test binario, que separa los parches del conjunto de entrada

S, en dos subconjuntos SD y SI de modo que la entropía de estos subconjuntos sea mínima. En

este caso los nodos son optimizados para minimizar la entropía de clasificación utilizando las

etiquetas ci de los parches, o las medidas de localización θ1 o pose θ2. Véase la Figura 4.

Figura 4. Asignación de los conjuntos de entrenamiento a cada nodo.

Page 7: Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones beatriz_torre@hotmail.com . 1 Índice ... aproximada

6

Según se trabaje con imágenes de profundidad o RGB, las definiciones tanto de los test binarios

como de las funciones de entropía utilizadas son diferentes, por lo que posteriormente se

detallarán estas ecuaciones para cada uno de los casos.

Entrenamiento con imágenes de profundidad

Al trabajar con imágenes de profundidad, los test binarios φ(I) son definidos como:

Ecuación 2

dónde, F1 y F2 son dos rectángulos asimétricos localizados en el interior del parche, τ es el umbral que se encarga de definir cuál será finalmente el resultado binario e I(q) representa el valor del píxel de la imagen de profundidad. La Ecuación 2 muestra que, la función de test binaria empleada se basa en la resta de los valores medios de los dos rectángulos asimétricos definidos en el interior del parche, un ejemplo se muestra en la Figura 5.

Figura 5. Ejemplo de parche de entrenamiento (Rectángulo rojo, el de mayor tamaño), dentro del cual, los

rectángulos F1 y F2 representan la elección de las zonas sobre las que realizar la función binaria de test, en el presente parche.

También es necesario definir la función de entropía que vamos a emplear. En este caso seguimos

la formulación propuesta en [1]. Dicha entropía se divide en dos partes. La primera realiza la

medida de regresión Hr(P), la cual indica la impureza tanto en coordenadas (θ1) como en

orientación (θ2) incluidos en los parches, y se encuentra reflejada en la Ecuación 3:

Ecuación 3

En esta ecuación, Σ representa la matriz de covarianza de las distribuciones Gaussianas

computadas a partir de los vectores θn, para n ∈ [1, 2], lo cual representa los vectores de

localización y orientación, comentados anteriormente en esta sección. La segunda parte de la

entropía realiza la medida de incertidumbre en las etiquetas de clasificación (c i), por ello se

conoce como entropía de clasificación. Su expresión matemática es la siguiente:

Page 8: Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones beatriz_torre@hotmail.com . 1 Índice ... aproximada

7

Ecuación 4

dónde K = 1, y p(c = k|P) se corresponde con la probabilidad de clasificación, la cual es

aproximada por la cantidad de parches con etiqueta de clasificación k en todo el conjunto de

parches P , dividida por el número total de parches.

Finalmente, en los nodos terminales o hojas, se almacenan tanto las probabilidades de

clasificación p(c = k|P), como las distribuciones continuas de los parámetros de pose de la

cabeza: p(θ1 = N(θ1; θ1, Σ1) y p(θ2 = N(θ2; θ2, Σ2). Tanto la probabilidad de clasificación como los

vectores de offset y de orientación, son obtenidos por las hojas a través de los parches de

entrenamiento que llegan a las mismas.

Entrenamiento con imágenes de color

En este tipo de imágenes, la apariencia Ii (Ecuación 1) de cada parche se distribuye a lo largo de

32 canales. Es decir, para cada parche, computamos 32 características visuales, consistentes

en: 3 canales de color, los valores absolutos de las derivadas de primer y segundo orden para x

e y, finalmente, 9 canales correspondientes a la característica HOG (Histograms of Oriented

Gradients) [3]. Con el objetivo de reducir el ruido en dichos canales, se les procesa mediante

sendos filtros de máximos y mínimos, por lo que se dispone finalmente, de C = 32 canales de

características, 16 para el filtro de máximos, y 16 para el de mínimos.

El test binario es similar al estudiado anteriormente para imágenes de profundidad, pero ahora

se encuentra dotado de una mayor estabilidad, como consecuencia de la inclusión de cuatro

rectángulos asimétricos en cada parche, en lugar de dos. Como se puede observar en la

Ecuación 5, la operación se basa en la resta de, la suma de los valores de uno de los 32 canales

(el canal identificado como τ1) computada en la región R1, y la suma de los valores del mismo

canal en otras 3 regiones. Destacar que la posición de estas regiones se obtiene de forma

aleatoria, como en el caso de las imágenes de profundidad.

Ecuación 5

Una vez definida la función binaria, el resultado del test de cada nodo viene dado por el sistema

mostrado a continuación, dónde τ2 es el umbral que se optimiza y fija dependiendo del nodo en

el que caiga el parche.

Ecuación 6

La entropía utilizada para hallar la incertidumbre en los datos etiquetados en cada parche, se

representa mediante tres ecuaciones matemáticas, cada una de las cuales, se refiere a un

aspecto distinto de las anotaciones mencionadas. Atendiendo a la siguiente ecuación de la

impureza de clasificación:

Page 9: Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones beatriz_torre@hotmail.com . 1 Índice ... aproximada

8

Ecuación 7

se debe notar la presencia en la misma de la entropía de clasificación:

Ecuación 8

La siguiente expresión hace referencia a la incertidumbre presente en las anotaciones de

coordenadas:

Ecuación 9

Adicionalmente a esta última ecuación, se ha empleado un criterio de pureza encargado de medir

el nivel de incertidumbre en las anotaciones de orientación de la pose en cada parche.

Ecuación 10

Esta ecuación está basada fundamentalmente en operar con la diferencia entre la información

de la orientación, presente en una etiqueta θj2, y la información de la orientación media θA

2 de

todo el resto de parches de zona facial. El cálculo analítico de la orientación media obtenida

proviene del concepto de media de cantidades circulares, y más concretamente, del cálculo de

ángulos medios, cuya forma matemática se presenta de la siguiente forma:

Ecuación 11

Finalmente, en los nodos hoja, se almacenan tanto las probabilidades de clasificación p(c

=k|P), como las distribuciones continuas de los parámetros de pose de la cabeza: p(θ1 =

N(θ1; θ1, Σ1) y p(θ2 = N(θ2; θ2, Σ2). Tanto la probabilidad de clasificación como los vectores de

offset y de orientación, son obtenidos por las hojas a través de los parches de entrenamiento que

llegan a las mismas.

Etapa de estimación

Estimación en imágenes de profundidad

Una vez que se ha conformado el árbol se puede proceder a realizar la tarea de estimación. Para

estimar la pose de la cabeza en una imagen de profundidad, primero se extraen diversos parches

de la misma, los cuales son lanzados por todos los árboles del bosque, y recorren el camino de

Page 10: Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones beatriz_torre@hotmail.com . 1 Índice ... aproximada

9

forma guiada como consecuencia de los test binarios emplazados en cada nodo, los cuales van

a encaminar cada parche al nodo hijo izquierdo o al derecho. La probabilidad p(c = k|P )

presente en las hojas evalúa la magnitud informativa de la hoja, es decir, que los parches que

caigan en hojas donde la concentración de parches de cara sea baja, serán marcados como

parches de fondo (y no cara).

Dada una imagen de profundidad, en la Figura 6 podemos observar cómo se han obtenido

diversos parches, posteriormente siendo clasificados como positivos (pertenecientes a la

cabeza), menos el que aparece de negro, ya que se encuentra localizado en la zona de los

hombros. Este último parche no se tendrá en cuenta a la hora de realizar las votaciones pos

posicionamiento y orientación de la pose. Por lo tanto, sólo serán aceptados los parches que

caigan en una hoja, cuya p(c = k|P ) = 1, así como serán filtradas las hojas con una covarianza

Gaussiana mayor que el límite fijado en un parámetro maxv = 400 (dicho límite puede ser

modificado si se desea). Una vez las hojas han determinado qué parches pertenecen a la cabeza,

votan por diferentes localizaciones y estimaciones de la pose. La estimación final se corresponde

con la localización y la pose más votada. Además, las votaciones referentes a cada uno de los

parches de la cabeza se ubican en las proximidades de la nariz cómo se puede observar

claramente a través de los puntos de color. Una vez realizadas las votaciones, la agrupación que

disponga de un mayor número de las mismas, será la que proporcione los resultados finales que

se emplearán para la representación final de la pose mediante un cilindro gráfico (véase Figura

6 b).

Figura 6. Etapa final del proceso de estimación, votación y representación. a) Votaciones realizadas empleando los diferentes parches extraídos de una imagen de profundidad, b) Representación gráfica a modo de cilindro, de la

situación de la cabeza y orientación de la pose facial. (Imagen tomada de [1]).

Estimación en imágenes RGB

En este caso el procedimiento que se va a seguir es diferente. Los parches irán cayendo en los

nodos terminales de cada árbol realizando las votaciones por parte de los parches almacenados

en dichos nodo hoja. Una vez más, solo votarán los parches de las hojas cuya concentración de

parches de cara sea elevada. De este modo identificamos si el parche de test pertenece a la cara

o al fondo. Las hojas de cada árbol acumulan sus votaciones en el espacio de Hough, donde al

finalizar los procesos de votación de todas las hojas, se realiza un proceso de suavizado. La

estimación final se toma como el valor con mayor número de votos presentes en el espacio de

Hough. En la Figura 7 se puede observar cómo, a partir del fragmento de la imagen total

Page 11: Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones beatriz_torre@hotmail.com . 1 Índice ... aproximada

10

seleccionado como rostro, se realiza la votación en el espacio de Hough, se realiza la tarea de

suavizado, y finalmente se obtienen unos valores a modo de resultado, que el demostrador

utiliza para la localización y representación tanto del centro de la cabeza, cómo de la orientación

de la pose.

Figura 7. Pasos desde la votación a la representación. a) Acumulación de votaciones realizadas por la totalidad de las hojas del bosque en el espacio de Hough. b) Estado del espacio tras realizar el proceso de suavizado. c)

Representación de la estimación de la pose, de acuerdo con los parámetros con número máximo de votaciones, facilitados por el detector.

Page 12: Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones beatriz_torre@hotmail.com . 1 Índice ... aproximada

11

Resultados y conclusiones

Como se ha visto se puede realizar la estimación de pose tanto en imágenes de profundidad

como en imágenes RGB, ya sean extraídas a partir de cámaras de baja resolución o webcams.

A continuación se mostrarán tanto los resultados cuantitativos como los cualitativos obtenidos.

Para los primeros se ha hecho uso de la base de datos BIWI [1].

Análisis en imágenes de profundidad

La estimación en imágenes de profundidad se caracteriza por su velocidad, lográndose un

refresco por imagen estimada a una velocidad de actualización muy próxima a los 30 fotogramas

por segundo. La combinación de una velocidad de ejecución totalmente a tiempo real con el alto

grado de precisión en las estimaciones, hace que el detector de pose, en su versión de

profundidad, sea una herramienta ágil y dinámica de cara a la obtención de la pose deseada. A

continuación, en la Figura 8 podemos observar una secuencia de imágenes tras la realización

sobre las mismas del proceso de estimación.

Figura 8. Secuencia de imágenes de profundidad tras la representación de la pose a través de un cilindro.

Como puede observarse, las estimaciones se caracterizan por un alto grado de precisión, sin

importar la dirección de la pose. En algunos casos, como por ejemplo en la Subfigura (g),

determinadas zonas del pelo no se muestran dentro de la nube de puntos, lo que viene motivado

por la no reflexión del rayo infrarrojo, desde dicha zona, de vuelta hacia el emisor de IR, y no por

una excesiva distancia del usuario a la cámara. Además, cabe destacar el uso de la densificación,

mediante polígonos triangulares, de la nube de puntos, para resaltar en mayor magnitud la figura

del usuario experimental, lo que conlleva a una mayor claridad en la muestra de resultados.

En los diversos experimentos el usuario se ha situado a una distancia de entre 60-70 cm, de

manera que el sensor IR ejecute su función de forma correcta (no excede la distancia umbral de

1 metro) y garantizando de este modo unos resultados óptimos.

Page 13: Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones beatriz_torre@hotmail.com . 1 Índice ... aproximada

12

Se debe destacar también que el estimador responde muy bien ante oclusiones u ocultaciones

parciales del rostro, que aunque dificulta la tarea de estimación permite una mayor varianza en

las votaciones de las hojas de los árboles de Hough. En la Figura 9 se muestran los resultados

obtenidos ante la presencia de un obstáculo frente al rostro. En general se obtienen resultados

muy precisos a excepción de la Subfigura (g), donde la oclusión interfiere con el exceso de

píxeles en el rostro, provocando un error en los resultados entregados por el estimador.

Figura 9. Muestras experimentales de la precisión y comportamiento del estimador, en presencia de oclusiones frente al rostro.

Por último, en la Tabla 1 se muestran los resultados cuantitativos del estimador en el caso de

imágenes de profundidad.

Tabla 1. Tabla de resultados cualitativos en la estimación de imágenes de profundidad: niveles de error, pérdidas y tiempo de estimación.

Haciendo uso de la base de datos BIWI [1], se han realizado tres experimentos de análisis del

nivel de error tanto en la estimación del centro, como de la orientación de la pose, para

diferentes números de parches extraídos a la hora de realizar la estimación de las imágenes. El

número de parches a omitir entre los que se utilizan para la estimación, viene dado por el

Page 14: Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones beatriz_torre@hotmail.com . 1 Índice ... aproximada

13

parámetro de pasos, a menor nivel de pasos, mayor número total de parches serán analizados.

Para un mayor número de parches extraídos, la precisión tiende a aumentar, y el tiempo

empleado en la estimación se ve incrementado, como consecuencia de disponer de una mayor

cantidad de parches a analizar.

Análisis en imágenes RGB

En este caso, dado que se trabaja con imágenes en RGB y el número de características que se

deben extraer es elevado (32), la velocidad alcanzada por el demostrador es de 1FPS.

A continuación, en la Figura 10 se muestran los resultados obtenidos para una configuración tal

que implica que el estimador de pose realiza la votación de 1 de cada 2 píxeles del fragmento de

imagen introducido al mismo. Este hecho facilita agilizar el proceso de estimación, al no analizar

la totalidad de la imagen. En términos de precisión, se observan los buenos resultados obtenidos,

en todas las diferentes poses mostradas, incluso habiendo realizado el experimento en un

entorno no controlado, dónde se pueden observar carteles y sillas de fondo, que podrían

despistar al estimador de pose.

Figura 10. Estimaciones de pose y detección de cabeza en imágenes RGB.

Posteriormente se ha realizado un experimento del mismo tipo y en las mismas condiciones que

el anterior con la diferencia de que ningún parche ha quedado exento de ser analizado por el

estimador. Si analizamos las imágenes, la relación velocidad-precisión ha decrecido de manera

notable con respecto al grupo de imágenes anterior. La velocidad se ha visto reducida, sin

embargo la precisión no ha aumentado de una forma claramente visible (véase Figura 11).

Page 15: Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones beatriz_torre@hotmail.com . 1 Índice ... aproximada

14

Figura 11. Secuencia de imágenes RGB bajo el proceso de estimación de pose.

Por otro lado, si realizamos un análisis de diferentes poses en las que el rostro se encuentre hacia arriba observamos como la precisión en la estimación de la pose decrece notablemente. En la Figura 12 se observan diversos fotogramas en los que apreciamos la disminución de precisión.

Figura 12. EstimacióndeimágenesRGBenpersonascuyaposeseencuentraorientadahaciaarriba.

Como se ha observado anteriormente para el análisis de imágenes en profundidad, el estimador de la aplicación para RGB también es funcional en presencia de oclusiones o elementos que

Page 16: Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones beatriz_torre@hotmail.com . 1 Índice ... aproximada

15

dificulte la visualización del rostro, aunque en aquellos casos, su precisión de estimación se vea reducida proporcionalmente a la magnitud o tamaño de la oclusión presente entre el sensor de imagen de la cámara y la cabeza del usuario. Las imágenes de la Figura 13 muestran lo robusto que es el estimador utilizado, con respecto a la ocultación de fragmentos del rostro, a la vez que también muestra los errores claros y puntuales del mismo, cuando el nivel de oclusión es demasiado alto, cómo es el caso de las Subfiguras (f) y (h).

Figura 13 Secuencia de imágenes de estimación, en presencia de oclusiones, para demostrar la robustez del demostrador.

Conclusiones del análisis comparativo de ambos resultados

En imágenes de color no existe ninguna dependencia respecto de la distancia umbral entre el usuario y el sensor de imagen de la cámara, es decir, se pueden obtener resultados de la orientación de la pose tanto para distancias cercanas a la cámara como para distancias mayores de un metro lo que permite una mayor flexibilidad. En la Figura 14 se comprueba lo expuesto, ya que a una distancia fija de 30 cm entre los sensores de la cámara y el usuario, la aplicación no funciona correctamente.

Page 17: Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones beatriz_torre@hotmail.com . 1 Índice ... aproximada

16

Figura 14. Comparación del uso del demostrador par imágenes de profundidad o RGB a una distancia corta de los sensores de la cámara.

Respecto a la dificultad de procesado, cuando se trabaja con imágenes en RGB se necesita realizar muchas más operaciones. Por ejemplo, si se añade un detector de piel, cómo herramienta de eliminación de zonas de la imagen no trascendentes para la estimación, además de ser vital para realizar las estimaciones en tiempo real, añade dificultad a la obtención de unos resultados adecuados, ya que un fallo en la selección del fragmento que debe incluir el rostro, produce un error total en los valores finales.

En la Figura 15 se pueden observar imágenes extraídas directamente del detector de piel, para condiciones lumínicas y emplazamientos de enfoque algo diferentes.

Figura 15 Resultados del detector de piel según la combinación de condiciones lumínicas y emplazamiento.

Page 18: Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones beatriz_torre@hotmail.com . 1 Índice ... aproximada

17

En la Figura 15 también se observa que cambio brusco de iluminación, combinado con un cambio notable de dirección de enfoque pueden contribuir a resultados erróneos dónde se detecte piel en píxeles del trasfondo de la imagen (véase Subfigura (c)).

A pesar de la mayor complejidad d de procesado de imagen en las imágenes RGB, los resultados en cuánto a precisión no son necesariamente mejores en imágenes de profundidad, ya que los HRF de ambos modos de estimación han sido sometidos a procesos de entrenamiento diferentes y que permiten resolver el problema de forma satisfactoria.

Page 19: Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones beatriz_torre@hotmail.com . 1 Índice ... aproximada

18

Futuras líneas de trabajo

De cara a un posterior desarrollo de este trabajo, hemos encontrado tres objetivos de estudio

muy importantes: el aumento de la precisión, el aumento de la robustez y la reducción del tiempo

de procesado. No obstante, para llevarlo al mundo industrial y desarrollar una aplicación práctica

y real, nos encontramos con que también tenemos que optimizar el espacio ocupado por el

dispositivo (cámara + procesador) más el coste de la producción, lo que incide de pleno en una

de las características más importantes que un ingeniero debe poseer: ser capaz de balancear el

grado de optimización de cada característica de tal forma que se cumplan los requisitos

económicos del proyecto sin sacrificar la funcionalidad necesaria y conseguir mantener un nivel

alto de calidad.

Aumento de la precisión: al analizar los resultados hemos podido observar que al

disponer de menos imágenes en las que el rostro se encuentra mirando hacia la parte

superior de la imagen, su precisión con respecto a otras poses distintas empeora

notablemente. Esta idea es consistente con una de las definiciones más populares del

machine learning: “un algoritmo se dice que aprende de la experiencia E con respecto

a un cierto tipo de tarea T midiendo su rendimiento como P si el rendimiento P en dicha

tarea T incrementa a medida que aumenta la experiencia E.” [4]

La manera de mejorar este aspecto, por tanto, es utilizar bases de datos mucho más

grandes y mejor balanceadas. Esto impactará directamente en el tiempo de

entrenamiento (fase de desarrollo), sin embargo el tiempo de estimación (cuando un

usuario final está utilizando la aplicación) se mantendrá constante con lo cual no

introducirá ninguna desventaja real.

Aumento de la robustez: como hemos visto, nuestro demostrador es bastante robusto

ante oclusiones, no obstante, al trabajar con cámaras en espacios abiertos tenemos que

tener en cuenta los grandes cambios de iluminación que nos podemos encontrar. Para

ello proponemos mejorar la segmentación de la piel estudiando otros modelos de color

como pueden ser el HSV[5] y el CieLAB[6].

Otra forma también muy interesante es la adición de información temporal, es decir, dejar

de analizar cada imagen de forma aislada y tratarla como un flujo de video. Es altamente

improbable que de un fotograma al siguiente exista una diferencia de la pose demasiado

grande, ya que estamos tratando con intervalos de tiempo muy reducidos. Así pues,

imponiendo restricciones espaciales de movimiento, podremos reducir muchos errores

de estimación. Una forma elegante de integrar esta información sería utilizando el

estimador conocido como Filtro de Kalman [7]. Esta herramienta matemática nos permite

predecir con gran precisión cual será la siguiente posición del punto que establezcamos

como referencia. Si detectamos que la distancia euclidea dada por el Filtro de Kalman y

por el Hough Random Forest es muy alta, podremos detectar una anomalía.

La reducción del tiempo de procesado es crucial: necesitamos poder procesar los datos

al mismo ritmo al que estos nos llegan. Para conseguir este objetivo hay multiples

enfoques y, dado que se ha implementado en uno de los lenguajes más rápidos

existentes en la actualidad, deberían probarse otras técnicas como el procesado en

paralelo. Los algoritmos que tratan con imágenes, por su carácter matricial, son unos de

los grandes candidatos a la paralelización. Este proceso podría implementarse en CPU

con unos máximos rondando los 8 hilos de procesamiento o incluso en GPU, donde nos

iríamos al rango de los millones de hilos. No obstante, esta elección influye

negativamente en el coste, en el consumo y en el espacio (dado que necesita mayor

Page 20: Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones beatriz_torre@hotmail.com . 1 Índice ... aproximada

19

refrigeración), por lo que quizás sería interesante valorar implementaciones hardware

como las FPGAs.

Page 21: Beatriz Torre Jiménez - Universidad de Alcalá (UAH) … Que la... · Grado en Ingeniería en Sistemas de Telecomunicaciones beatriz_torre@hotmail.com . 1 Índice ... aproximada

20

Bibliografía

[1] Dantone M. Fossati A. Gall J. Van Gool L. Fanelli, G. Random forests for real time

3d face analysis. Technical report, Computer Vision Laboratory, ETH Zurich, 2012. ix, ix, xx, xxi, xxiii, xxiv, 1, 2, 3, 5, 7, 11, 35, 36

[2] García, M. Sistema de estimación en tiempo real de la pose de la cabeza utilizando Kinect. (2014)

[3] Sudowe, P., Leibe, B.: Efficient use of geometric constraints for sliding-window object

detection in video. In: ICVS. (2011)

[4] Mitchell, T. (1997). Machine Learning, McGraw Hill. ISBN 0-07-042807-7, p.2.

[5] https://es.wikipedia.org/wiki/Modelo_de_color_HSV

[6] https://es.wikipedia.org/wiki/Espacio_de_color_Lab

[7] R. E. Kalman, “A new approach to linear filtering and prediction problems,”

Journal of Basic Engineering82 (1960): 35–45.