Reconocimiento de expresiones faciales con Machine Learning

González Garzón, Germán (2020). Reconocimiento de expresiones faciales con Machine Learning. Proyecto Fin de Carrera / Trabajo Fin de Grado, E.T.S.I. de Sistemas Informáticos (UPM), Madrid.

Description

Title: Reconocimiento de expresiones faciales con Machine Learning
Author/s:
  • González Garzón, Germán
Contributor/s:
  • Ortega Requena, Fernando
Item Type: Final Project
Degree: Grado en Ingeniería del Software
Date: 2020
Subjects:
Freetext Keywords: Reconocimientos de formas; Redes neuronales convolucionales
Faculty: E.T.S.I. de Sistemas Informáticos (UPM)
Department: Sistemas Informáticos
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[img] PDF - Users in campus UPM only - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (2MB)
[img] Archive (ZIP) - Users in campus UPM only
Download (2MB)

Abstract

El rostro de una persona es un reflejo de las emociones que esta persona está experimentando. Analizando estas expresiones faciales es posible inferir las causas que originaron estas expresiones. De hecho, en el caso de que una persona sea muy expresiva, incluso se puede intuir lo que esa persona está pensando. Por otro lado, la inteligencia artificial ha hecho muchos avances en el campo del reconocimiento de imágenes, esto incluye el reconocimiento de las expresiones faciales. Por ello, el foco de este trabajo de fin de grado, serán las expresiones faciales y el reconocimiento de estas por medio de la inteligencia artificial. Para poder abarcar estos conceptos será necesario desarrollar lo que se denomina un proyecto de Machine Learning. El alcance de este proyecto comprende desde la parte de Machine Learning del trabajo (servidor), hasta la parte de la presentación de los resultados en una aplicación (cliente), pasando por la conexión entre ambas partes. No obstante, existen una gran cantidad de técnicas dentro del mundo de la inteligencia artificial que podrían cumplir el objetivo de reconocer expresiones faciales. Sin embargo, no todas las técnicas pueden ser de utilidad. La tipología de los datos que se van a utilizar, así como su origen y calidad son también factores clave a la hora de afrontar un proyecto de este tipo. Por ello, en este trabajo se ha realizado una investigación de varias técnicas disponibles y se ha recalcado la importancia de la calidad de los datos en este tipo de proyectos. Además de técnicas de inteligencia artificial, se han destacado dos algoritmos que pueden reconocer expresiones faciales: Random Forest y redes neuronales convolucionales. Sin embargo, aunque los dos algoritmos son bastante competentes en el objetivo propuesto, a través de los resultados de este proyecto, se podrá concluir que las redes neuronales convolucionales, como muchos autores afirman, son mejores a la hora de reconocer imágenes. Para la explotación del modelo, se ha desarrollado una aplicación móvil en Android sencilla pero suficiente para cumplir con el propósito del proyecto. Para resumir, el proyecto de Machine Learning que se desarrolla en el presente documento es una aplicación que reconoce 7 expresiones faciales. Para realizar esta tarea se utiliza una red neuronal convolucional, entrenada con fotografías de expresiones faciales, para poder hacer predicciones en base a una fotografía. Por otro lado, un dispositivo móvil Android envía fotografías a la red neuronal convolucional con el objetivo de recibir predicciones y mostrarlas al usuario de la forma más sencilla e intuitiva posible. Este trabajo de fin de grado proporciona una visión general de los pasos seguidos para la realización de un proyecto de Machine Learning, unos resultados aceptables y unas interesantes conclusiones. Abstract: The face of a person is the reflection of all emotions that this person is feeling. Analyzing these facial expressions, it is possible to guess causes which origin these expressions. In fact, in case one person is very expressive, you can even sense what this expressive person is thinking. On the other side, artificial intelligence has made a lot of progress in the image recognition discipline, including facial expression recognition itself. That is the reason, the focus of this final project is the facial expressions and facial expression recognition using artificial intelligence. To include these concepts will be necessary to develop a machine learning project. The scope of this project goes from the machine learning part (server) to the result presentation (client), going through the connection between both parts. However, there are a lot of techniques in the artificial intelligence discipline that could satisfy the facial expression recognition main objective. But, not all the techniques will be useful on our objective. The data typology that will be used in this project, as the data origin and quality are key factors when facing a machine learning project this magnitude. That is the reason why research about the available machine learning techniques has been made. Furthermore, this project emphasizes the data quality importance when you are facing this kind of project. In addition to artificial intelligence techniques, two algorithms that could recognize facial expressions have been selected: random forest and convolutional neural networks. Nevertheless, though these two algorithms are proficient when it comes to recognizing facial expressions, considering the results of this project, convolutional neural networks are, as many investigators claim, better than random forest when it comes to recognizing images. In order to run this project, a simple Android mobile application has been developed, this application will be enough to accomplish the main objective of this final work. To sum up, the machine learning project that is developed in this final work is an application that recognizes 7 facial expressions. To do this, a convolutional neural network is used, trained by facial expressions photographs, to make predictions based on a single photograph. On the other side, an Android device sends photographs to the convolutional neural network in order to get predictions and show them to the user in a simple and gentle way. This final work provides a general vision of the steps for making a machine learning project, good results, and interesting conclusions.

More information

Item ID: 63446
DC Identifier: http://oa.upm.es/63446/
OAI Identifier: oai:oa.upm.es:63446
Deposited by: Biblioteca Universitaria Campus Sur
Deposited on: 10 Aug 2020 12:24
Last Modified: 10 Aug 2020 12:24
  • Logo InvestigaM (UPM)
  • Logo GEOUP4
  • Logo Open Access
  • Open Access
  • Logo Sherpa/Romeo
    Check whether the anglo-saxon journal in which you have published an article allows you to also publish it under open access.
  • Logo Dulcinea
    Check whether the spanish journal in which you have published an article allows you to also publish it under open access.
  • Logo de Recolecta
  • Logo del Observatorio I+D+i UPM
  • Logo de OpenCourseWare UPM