|
Grado en Ingeniería Informática |
TRABAJOS FIN DE GRADO curso: 2017-18
Detección de emociones en imágenes mediante clasificadores Bayesianos |
Tecnologías Específicas
Computación
Descripcion y Objetivos
Poder conocer la impresión que un elemento -- por ejemplo una película, una campaña publicitaria o un post en las redes sociales -- provoca en el usuario, puede ser de vital importancia. Desde un punto de vista menos comercial, el conocimiento de las emociones de un paciente podría ser de gran ayuda en el análisis de cómo una terapia afecta a los individuos. Además, nos encontramos en un momento donde existen grandes bases de datos, tanto de imágenes como de vídeos (donde se pueden extraer las imágenes clave) ya etiquetadas con las emociones correspondientes. Por otro lado, la adquisión de imágenes es un procedimiento sencillo y barato, dada la buena resolución de las cámaras en los distintos dispositivos, no sólo PCs pero también smartphones o tablets. Finalmente, su almacenamiento también es factible y usual, ya que el espacio empleado es fácilmente abordable por una tarjeta SD, por ejemplo.
En base a estos elementos, ya se han desarrollado trabajos donde se pretende predecir la emoción que siente una persona a partir de una fotografía de su cara en ese momento. Extraer las características descriptivas para determinar el tipo de una expresión no es trivial, pero se ha abordado tanto desde el campo de visión artificial como desde el procesamiento de imágenes. Primeramente hay que detectar la zona de la cara y después extraer los valores deseados. Una vez que están definidas las características a emplear, y ya escogidas un conjunto de emociones (por ejemplo: alegría, tristeza, enfado y sorpresa), este problema se encuadra fácilmente dentro del marco de la clasificación supervisada en el aprendizaje automático.
Para este problema en particular se han empleado diferentes técnicas, principalmente Support Vector Machines (SVMs) y redes neuronales, a veces interrelacionadas con métodos denominados 'ensemble', como la técnica boosting. En este trabajo, proponemos el uso de clasificadores basados en Redes Bayesianas. Es un formalismo que combina modelos gráficos con distribuciones de probabilidad, y gracias a esta combinación nos ofrece una interpretación visual de las estructuras y un manejo de la incertidumbre de manera natural y sencilla, empleando probabilidades condicionadas y a posteriori. Los clasificadores basados en redes Bayesianas, BNCs del inglés, han demostrado un gran potencial en aplicaciones de diferente índole. En concreto, muy recientemente se han empleado para la localizacion automática en un edificio partiendo de una fotografía tomada por un robot. En estos trabajos los BNCs no sólo igualan o mejoran los resultados obtenidos por los SVMs sino quer además su naturaleza abre las puertas al uso de información contextual, es decir, información que no es específica de la imagen pero que o bien está disponible o se puede inferir. Creemos, por tanto, que en este campo concreto de detección de emociones estos tipos de clasificadores podrían funcionar bien, añadiendo el potencial adicional de poder admitir otras variables que hasta ahora no se han empleado. Por tanto, el objetivo principal de este trabajo sería el de realizar una exploración inicial de dichas posibilidades, aportando una experimentación con su correspondientes comparativa y análisis posteriores.
Metodología y Competencias
Con el fin de poder abordar y realizar este trabajo, diferentes tareas van a ser necesarias, aquí destacamos las más importantes:
- Estudio de las técnicas de procesamiento de imágenes aplicadas al reconocimiento de caras y extracción de sus características. Esto conlleva un estudio bibilográfico, la búsqueda de herramientas y librerías, y la selección y adaptación de aquellas que mejor se integren en la herramienta a desarrollar para poder llevar a cabo un estudio comparativo.
- Obtención de un conjunto de datos donde cada caso quedará caracterizado por los aspectos que se hayan decidido en el punto anterior, pero que además deben estar etiquetadas con la emoción correspondiente (subconjunto de emociones, o etiquetas de la clase, que también debe pre-establecerse).
- Estudio de los diferentes clasificadores Bayesianos disponibles para este problema. Inicialmente se estudiará Naive Bayes, con su variante continua, pero la idea es ampliar a otros clasificadores más complejos, que se encuadran en la familia semi-Naive (como kDB o TAN) .
- Dado que las características extraídas serán de tipo numérico o continuo, habrá que determinar cómo se discretizan esos valores, ya que la gran mayoría de los BNCs a emplear tendrán como requisito que los datos de entrada sean nominales. Por lo tanto, el alumno tendrá que estudiar diferentes ténicas de discretización y escoger una o varias para este trabajo. Es posible que haya que realizar algún otro tipo de procesamiento extra, como podría ser la selección de variables.
- Entrenamiento de los modelos, donde se construirán diferentes clasificadores Bayesianos a partir de la base de datos inicial ya pre-procesada.
- Validación de los distintos modelos, empleando medidas de rendimiento (accuracy principalmente) comparando los resultados obtenidos por diferentes clasificadores Bayesianos y sus parametrizaciones, pero también comparándolo con los valores obtenidios mediante los modelos SVMs.
- Análisis de los resultados.
Este TFG permite completar las competencias específicas [CM3][CM4] [CM5] y [CM7] de la Intensificación de Computación, es decir, se trabajarán principalmente (en distinto grado) las siguientes competencias específicas de la tecnología de computación:
- Capacidad para conocer los fundamentos, paradigmas y técnicas propias de los sistemas inteligentes y analizar, diseñar y construir sistemas, servicios y aplicaciones informáticas que utilicen dichas técnicas en cualquier ámbito de aplicación.
- Capacidad para adquirir, obtener, formalizar y representar el conocimiento humano en una forma computable para la resolución de problemas mediante un sistema informático en cualquier ámbito de aplicación, particularmente los relacionados con aspectos de computación, percepción y actuación en ambientes entornos inteligentes.
- Capacidad para adquirir, obtener, formalizar y representar el conocimiento humano en una forma computable para la resolución de problemas mediante un sistema informático en cualquier ámbito de aplicación, particularmente los relacionados con aspectos de computación, percepción y actuación en ambientes entornos inteligentes.
- Capacidad para conocer y desarrollar técnicas de aprendizaje computacional y diseñar e implementar aplicaciones y sistemas que las utilicen, incluyendo las dedicadas a extracción automática de información y conocimiento a partir de grandes volúmenes de datos.
Medios a utilizar
El desarrollo de este trabajo conlleva el uso de diferentes bases de datos, y posiblemente la extracción de alguna de ellas mediante un dispositivo con cámara y una cierta capacidad de almacenamiento.
Se integrarán diferentes herramientas, y se realizará una implementación donde todas ellas se interrelacionen en una aplicación final que permita desarrollar los experimentos. Es muy previsible que se emplee la librería OpenCV dado su potencial para este tipo de aplicaciones basadas en visión artificial. También se emplearán técnicas de visualización para poder analizar los resultados desde diferentes perspectivas.
Por todo ésto, será necesario para su desarrollo un PC con conexión a Internet y equipado con una cámara. Será necesario emplear diferentes herramientas de software, y escoger uno o varios lenguajes de programación aplicables a este ámbito (Python, Java, C/C++, que podrían estar complementados por utilidades estadísticas como R y numéricas como Matlab).
Bibliografía
- Ekman, P.: Basic emotions. Handbook of Cognition and Emotion, pp. 45–60 (1999)
- Flores, MJ; Gámez, JA, Martínez, AM: Supervised classification with Bayesian networks: A review on models and applications. Intelligent Data Analysis for Real World Applications. Theory and Practice (2012)
- Padgett, C; Cottrell. Representing face images for emotion classification. Advances in Neural Information Processing Systems, volume 9, MIT Press (2009).
- Rubio, F;Martínez-Gómez, J Flores, MJ; Puerta JM Itegration of contextual information into the scene classification problem. Robotics and Autonomous Systems 97, 171-181 (2017)
- Lozano-Monasor, E; López, M.T.; Fernández-Caballero, A.; Vigo-Bustos F. Facial Expression Recognition from Webcam Based on Active Shape Models and Support Vector Machines. IWAAL 2014: 147-154
- Lozano-Monasor E.; López, M.T., Vigo-Bustos, F. ; Fernández-Caballero., A. Facial expression recognition in ageing adults: from lab to ambient assisted living. J. Ambient Intelligence and Humanized Computing 8(4): 567-578 (2017)
Tutores LOPEZ BONAL, Mª TERESA FLORES GALLEGO, MARIA JULIA | Alumno
|
| |