Вы находитесь на странице: 1из 14

Reconocimiento de emociones usando redes neuronales

convolucionales
Moreno Moreno Miguel Angel1
1
Universidad de Cundinamarca, mangelmoreno@ucundinamarca.edu.co

RESUMEN

En este trabajo se presenta el diseño de un sistema artificialmente inteligente capaz de


reconocer las emociones mediante expresiones faciales. La técnica que emplearemos para
abordar el problema es: redes neuronales convolucionales; para la resolución de este
problema se empleara Python como lenguaje de programación, Tres arquitecturas de
redes neuronales prometedoras son personalizadas, entrenadas, y sometido a diversas
tareas de clasificación, después es optimizada aún más para que al final la aplicabilidad
de la el modelo final se presenta en una aplicación de video en vivo que puede devolver
instantáneamente la emoción del usuario.

PALABRAS CLAVE: Inteligencia Artificial, Deep Learning, Machine Learning,


Python, Anaconda, Keras, TFLearn, TensorFlow, OpenCV..

1. INTRODUCCIÓN

El objetivo de este trabajo es resolver el problema de reconocimiento de emociones


mediante técnicas de aprendizaje profundo (conocido como Deep Learning). Se empleado
técnica de aprendizaje automático y redes neuronales convolucionales.
Haciendo uso de estas redes neuronales se clasificara las emociones a partir de imágenes
de rostros.

1.1 Problema/cuestión

Esta investigación se centró en los sistemas de inteligencia artificial basados en redes


neuronales capaces de derivar la emoción de una persona a través de imágenes de su
rostro. Se experimentarán diferentes enfoques de la literatura existente y se evaluarán los
resultados de diversas elecciones en el proceso de diseño. La principal pregunta de
investigación, por lo tanto, dice lo siguiente:

 ¿Cómo se puede usar una red neuronal artificial para interpretar la expresión
facial de un humano?

El resto de este artículo describe los diversos pasos tomados para responder a la pregunta
principal de investigación, es decir, las subpreguntas. En la sección 2, una encuesta
bibliográfica aclarará cuál es el papel de las expresiones faciales en el reconocimiento de
emociones y qué tipos de redes son adecuadas para la clasificación de imágenes
automatizada. La tercera sección explica cómo se estructuran las redes neuronales en
cuestión y cómo se capacitan las redes. La Sección 4 describe cómo funciona el modelo
final, después de lo cual se incluye una conclusión. Cabe señalar que el objetivo de el
trabajo no es diseñar un reconocedor de emociones desde cero, sino revisar las opciones
de diseño y mejorar las técnicas existentes con algunas ideas nuevas
1.2 Objetivos

1.2.1 Objetivo general

desarrollar sistema artificialmente inteligente capaz de reconocer las emociones mediante


expresiones faciales.

1.2.2 Objetivos específicos

 resolver el problema de reconocimiento de emociones mediante técnicas de


aprendizaje profundo, empleando técnica de aprendizaje automático y redes
neuronales convolucionales.
 analizar las arquitecturas de redes neuronales prometedoras para decidir la que
mejor se ajuste a diversas tareas de clasificación.
 aplicar la red neuronal en el proyecto para clasificara las emociones a partir de
imágenes de rostros.
 desarrollar una aplicación de video en vivo que puede devolver
instantáneamente la emoción del usuario.

1.3 Revisión de la literatura

Para el desarrollo de un sistema que sea capaz de reconocer emociones a través de


expresiones faciales, se revisa la investigación previa sobre la forma en que los humanos
revelan las emociones y la teoría de la categorización automática de imágenes. En la
primera parte de esta sección, se discutirá el papel de la interpretación de las expresiones
faciales en el reconocimiento de emociones. La última parte estudia estudios previos
sobre clasificación automática de imágenes.

1.3.1 Emociones humanas:

Una característica clave en la interacción humana es la universalidad de las expresiones


faciales y el lenguaje corporal. Ya en el siglo XIX, Charles Darwin publicó sobre
expresiones faciales compartidas a nivel mundial que desempeñan un papel importante
en la comunicación no verbal [3]. En 1971, Ekman y Friesen declararon que los
comportamientos faciales están asociados universalmente con emociones particulares [5].
Aparentemente, los humanos, pero también los animales, desarrollan movimientos
musculares similares que pertenecen a cierto estado mental, a pesar de su lugar de
nacimiento, raza, educación, etc. Por lo tanto, si se modela correctamente, esta
universalidad puede ser una característica muy conveniente en la interacción humana-
máquina: un sistema bien entrenado puede entender las emociones, independientemente
de quién sea el sujeto. Se debe tener en cuenta que las expresiones faciales no son
necesariamente traducibles directamente en emociones, ni viceversa. La expresión facial
es además una función de, por ejemplo, estado mental, mientras que las emociones
también se expresan a través del lenguaje corporal y la voz [6]. Por lo tanto, los sistemas
de reconocimiento de emociones más elaborados también deberían incluir estas dos
últimas contribuciones. Sin embargo, esto está fuera del alcance de esta investigación y
seguirá siendo una recomendación para el trabajo futuro. Los lectores interesados en la
investigación sobre la clasificación de las emociones a través del reconocimiento de voz
se refieren a Nicholson et al. [14]. Como último punto de atención, las emociones no
deben confundirse con el estado de ánimo, ya que el estado de ánimo se considera un
estado mental a largo plazo. En consecuencia, el reconocimiento del estado de ánimo a
menudo implica un análisis de larga data del comportamiento y las expresiones de una
persona y, por lo tanto, se omite en este trabajo.

1.3.2 Técnicas de clasificación de imágenes.

El crecimiento del poder computacional disponible en las computadoras de consumo a


principios del siglo XXI dio un impulso al desarrollo de algoritmos utilizados para
interpretar imágenes. En el campo de la clasificación de imágenes, se pueden distinguir
dos puntos de partida. Por un lado, los extractores de características preprogramados se
pueden utilizar para desglosar analíticamente varios elementos de la imagen para
categorizar el objeto mostrado. Directamente opuesto a este enfoque, las redes neuronales
de autoaprendizaje proporcionan una forma de técnica de identificación de "caja negra".
En este último concepto, el propio sistema desarrolla reglas para la clasificación de
objetos mediante la capacitación en datos de muestra etiquetados. Fasel y Luettin [6]
ofrecen una amplia descripción de los extractores de características analíticas y los
enfoques de redes neuronales para el reconocimiento de la expresión facial. Se puede
concluir que al momento de escribir, a principios del siglo veintiuno, ambos enfoques
funcionan aproximadamente igual de bien. Sin embargo, dada la disponibilidad actual de
los datos de entrenamiento y la potencia computacional, se espera que el rendimiento de
los modelos basados en redes neuronales se pueda mejorar significativamente ahora.
Algunos logros recientes se enumeran a continuación.

i. Krizhevsky y Hinton [9] dan una publicación de avance sobre la clasificación


automática de imágenes en general. Este trabajo muestra una red neuronal
profunda que se asemeja a la funcionalidad de la corteza visual humana. Al usar
una colección etiquetada de desarrollo propio de 60000 imágenes en 10 clases,
llamada conjunto de datos CIFAR-10, se obtiene un modelo para categorizar
objetos a partir de imágenes. Otro resultado importante de la investigación es la
visualización de los filtros en la red, de manera que se puede evaluar cómo el
modelo descompone las tinturas.
ii. En otro trabajo que adopta el conjunto de datos CIFAR-10 [2], se desarrolla una
arquitectura de red muy amplia y profunda, combinada con el soporte de GPU
para disminuir el tiempo de entrenamiento. En los conjuntos de datos populares,
como los dígitos manuscritos MNIST, los caracteres chinos y las imágenes
CIFAR-10, se logra un rendimiento casi humano. Las tasas de error
extremadamente bajas superan significativamente los resultados anteriores del
estado del corazón. Sin embargo, debe mencionarse que la red utilizada para el
conjunto de datos CIFAR10 consta de 4 capas convolucionales con 300 mapas
cada una, 3 capas de agrupación máxima y 3 capas de salida totalmente
conectadas. Como resultado, aunque se utilizó una GPU, el tiempo de
entrenamiento fue de varios días.
iii. En 2010, la introducción del desafío anual Imagenet [4] impulsó la investigación
sobre la clasificación de imágenes y el conjunto gigantesco de datos etiquetados
perteneciente se usa a menudo en publicaciones desde entonces. En un trabajo
posterior de Krizhevsky et al. [10], una red con 5 capas convolucionales, 3 de
agrupación máxima y 3 totalmente conectadas se entrena con 1,2 millones de
imágenes de alta resolución del concurso ImageNet LSVRC-2010. Después de
implementar técnicas para reducir el sobreajuste, los resultados son prometedores
en comparación con los modelos de estado de los sistemas anteriores. Además,
los experimentos se realizan con la reducción del tamaño de la red, indicando que
el número de capas se puede reducir significativamente mientras que el
rendimiento se reduce solo un poco.
iv. Con respecto al reconocimiento de la expresión facial en particular, Lv et al. [13]
presenta una red de creencias profundas específicamente para usar con las bases
de datos de Expresión Facial Femenina Japonesa (JAFFE) y Cohn-Kanade (CK
+) extendida. La característica más notable de la red es el concepto de análisis
jerárquico de la cara, es decir, la imagen se pasa a través de la red varias veces
para detectar primero la cara, luego los ojos, la nariz y la boca, y finalmente la
emoción de pertenencia. Los resultados son comparables con la precisión obtenida
por otros métodos en la misma base de datos, como Support Vector Machine
(SVM) y Learning Vector Quantization (LVQ).
v. Otro trabajo en la base de datos Cohn-Kanade [1] utiliza el filtrado de Gabor para
el procesamiento de imágenes y la Máquina de vectores de soporte (SVM) para la
clasificación. Un filtro de Gabor es particularmente adecuado para el
reconocimiento de patrones en imágenes y se afirma que imita la función del
sistema visual humano. Las precisiones de reconocimiento de emociones son
altas, variando desde 88% en ira hasta 100% en sorpresa. Sin embargo, una gran
desventaja de este enfoque es que se requiere un procesamiento previo muy
preciso de los datos, de modo que cada imagen cumpla con un formato estricto
antes de introducirlo en el clasificador.
vi. Uno de los estudios más recientes sobre reconocimiento de emociones describe
una red neuronal capaz de reconocer la raza, la edad, el género y la emoción a
partir de imágenes de caras [7]. El conjunto de datos utilizado para la última
categoría se origina en el Desafío de reconocimiento de expresión facial (FERC-
2013). Una red profunda claramente organizada que consta de 3 capas
convolucionales, 1 capa completamente conectada y algunas capas pequeñas entre
ellas obtuvo una precisión promedio del 67% en la clasificación de las emociones,
que es igual a las publicaciones más avanzadas en el mismo conjunto de datos .
Además, esta tesis establece un valioso análisis del efecto de ajustar el tamaño de
la red, la agrupación y el abandono.

Subrayado por otra literatura, el concepto más prometedor para el análisis de la expresión
facial es el uso de redes neuronales convolucionales profundas. Sin embargo, la red de
[2] (ii) se considera demasiado pesada para nuestra cantidad limitada de recursos de
procesamiento disponibles. La red original de [10] (iii) también es grande, pero las
versiones más pequeñas se consideran igualmente adecuadas. Además, debido a sus
enfoques un tanto analíticos y no convencionales, no evaluaremos [13] (iv) y [1] (v). Por
lo tanto, en la siguiente sección, tres arquitecturas profundas en total estarán sujetas a un
problema de clasificación de emociones. Estas arquitecturas se derivan de las redes
descritas en los elementos i, iii y vi, pero no necesariamente son iguales.

2. Configuración del experimento

Para evaluar los tres enfoques mencionados anteriormente sobre su capacidad de


reconocimiento de emociones, desarrollamos tres redes basadas en los conceptos de [9],
[10] y [7]. Esta sección describe los datos utilizados para la capacitación y las pruebas,
explica los detalles de cada red y evalúa los resultados obtenidos con los tres modelos.
Figura 1: Muestras de los conjuntos de datos FERC-2013 (izquierda), CK + (centro) y
RaFD (derecha).

2.1 Dataset:

Las redes neuronales, y las redes profundas en particular, son conocidas por su necesidad
de grandes cantidades de datos de entrenamiento. Además, la elección de las imágenes
utilizadas para el entrenamiento es responsable de una gran parte del rendimiento del
modelo final. Esto implica la necesidad de un conjunto de datos tanto cualitativos como
cuantitativos. Para el reconocimiento de emociones, hay varios conjuntos de datos
disponibles para la investigación, que varían desde unos pocos cientos de fotos de alta
resolución a decenas de miles de imágenes más pequeñas. Los tres que discutiremos son
el desafío de reconocimiento de expresiones faciales (FERC-2013) [8], CohnKanade
extendido (CK +) [12] y la base de datos Radboud Faces (RaFD) [11], todos mostrados
en la figura 1. Los conjuntos de datos difieren principalmente Sobre cantidad, calidad y
'limpieza' de las imágenes. El conjunto FERC-2013, por ejemplo, tiene aproximadamente
32000 imágenes de baja resolución, donde el RaFD proporciona 8000 fotos de alta
resolución. Además, se puede observar que las expresiones faciales en CK + y RaFD
están ubicadas (es decir, ‘limpia’), mientras que el conjunto FERC-2013 muestra
emociones ’en la naturaleza’. Esto hace que las imágenes del FERC2013 sean más
difíciles de interpretar, pero dado el gran tamaño del conjunto de datos, la diversidad
puede ser beneficiosa para la robustez de un modelo. Razonamos que, una vez entrenados
en el conjunto FERC-2013, las imágenes de los conjuntos de datos "limpios" se pueden
clasificar fácilmente, pero no al revés. Por lo tanto, para las tres redes en consideración,
la capacitación se realizará utilizando 9000 muestras de los datos del FER-2013 (ver
figura 2) con otras 1000 muestras nuevas para validación. Posteriormente, se realizarán
pruebas con 1000 imágenes del conjunto RaFD para obtener una indicación del
rendimiento en datos limpios de alta calidad. Este último conjunto tiene una distribución
uniforme sobre todas las emociones.
8000

7000

6000

5000

4000

3000

2000

1000

0
enojado disgustado temeroso feliz neutral triste sorprendido

Figura 2: Número de imágenes por emoción en el conjunto de entrenamiento.

Tenga en cuenta que las caras no frontales y las imágenes con la etiqueta que desprecian
se sacan de los datos de RaFD, ya que no están representadas en el conjunto de
entrenamiento FERC-2013. Además, con el uso del clasificador en cascada Haar
Feature-Based en el marco de OpenCV [15], todos los datos están preprocesados. Para
cada imagen, solo la parte cuadrada que contiene la cara se toma, se vuelve a escalar y
se convierte en una matriz con valores de escala de grises 48x48.

2.2 Redes:

Las redes están programadas con el uso de la biblioteca TFLearn sobre TensorFlow, que
se ejecuta en Python. Este entorno reduce la complejidad del código, ya que solo se
deben crear las capas de neuronas, en lugar de cada neurona. El programa también
proporciona información en tiempo real sobre el progreso y la precisión del
entrenamiento, y facilita guardar y reutilizar el modelo después del entrenamiento. Se
pueden encontrar más detalles sobre este marco en la referencia [16].

A. La primera red en probar se basa en la investigación descrita anteriormente por


Krizhevsky y Hinton [9]. Esta es la red más pequeña de las tres, lo que significa
que tiene las demandas computacionales más bajas. Dado que una de las
aplicaciones futuras podría ser la forma de reconocimiento de emociones en vivo
en sistemas integrados, los algoritmos de trabajo rápido son benéficos. La red
consta de tres capas convolucionales y dos capas totalmente conectadas,
combinadas con capas de agrupación máxima para reducir el tamaño de la
imagen y una capa de exclusión para reducir la posibilidad de un ajuste
excesivo. Los hiper parámetros se eligen de tal manera que el número de
cálculos en cada capa convolucional permanezca aproximadamente igual. Esto
asegura que la información se conserve en toda la red. La capacitación se realiza
utilizando diferentes números de filtros convolucionales para evaluar su efecto
en el rendimiento.
B. En 2012, la red convolucional de AlexNet se desarrolló para clasificar imágenes
en más de 1000 clases diferentes, utilizando 1.2 millones de imágenes de
muestra del conjunto de datos de ImageNet. Debido al hecho de que en esta
investigación, el modelo solo tiene que distinguir siete emociones, y debido a
nuestros recursos informáticos limitados, el tamaño de la red original se
considera demasiado grande. Por lo tanto, en lugar de 5 capas convolucionales,
aplicamos 3, y en las 3 capas subsiguientes totalmente conectadas, el número de
nodos de cada uno totalmente conectado se redujo de 4096 a 1024. Mientras que
la red original se dividió para el entrenamiento paralelo, se observó que no era
así. Necesario para la versión más pequeña. La red también hace uso de la
normalización local para acelerar las capas de entrenamiento y abandono para
reducir el sobreajuste.
C. Los últimos experimentos se realizan en una red basada en el trabajo de Gudi
[7]. Dado que esta investigación también tuvo como objetivo reconocer 7
emociones utilizando el conjunto de datos FERC-2013, la arquitectura debería
ser un buen punto de partida para nuestra investigación. La red original
comienza con una capa de entrada de 48 por 48, que coincide con el tamaño de
los datos de entrada. A esta capa le sigue una capa convolucional, una capa de
normalización de contraste local y una capa de agrupación máxima
respectivamente. La red finaliza con dos capas convolucionales más y una capa
totalmente conectada, conectada a una capa de salida de softmax. La omisión se
aplicó a la capa totalmente conectada y todas las capas contienen unidades
ReLu. Para nuestra investigación, se aplica una segunda capa de agrupación
máxima para reducir el número de parámetros. Esto reduce la intensidad
computacional de la red, mientras que la reducción en el rendimiento se afirma
que es solo del 1-2%. Además se ajusta la tasa de aprendizaje. En lugar de
disminuir linealmente la velocidad de aprendizaje como lo hizo Gudi [7],
creemos que una velocidad de aprendizaje que hace uso del impulso convergerá
más rápido, ya que el impulso aumenta la velocidad de aprendizaje cuando el
gradiente continúa en la misma dirección.

2.3 Evaluación

Todas las redes están capacitadas para 60 épocas con los datos mencionados en la
sección 2.1 . La Figura 3 y la tabla 1 muestran varios detalles del proceso de
capacitación y el modelo final. Para la red A, la precisión final de los datos de
validación es de alrededor del 63%. Ya después de 10 épocas, la precisión aumentó por
encima del 60%, lo que indica capacidades de aprendizaje rápido. Además, cabe
destacar que el ajuste de la dimensión del filtro no tuvo una gran influencia en la
precisión, aunque sí lo ha hecho en el tiempo de procesamiento. Esto significa que los
modelos rápidos Se puede hacer con un rendimiento muy razonable.

Sorprendentemente, la segunda red, mucho más grande, también aprende rápidamente,


pero converge a una precisión de alrededor del 54%. Al parecer, la reducción del
tamaño de la red rompe el rendimiento prometedor de la red original más de lo
esperado. Junto con la intensidad computacional mucho más alta y, por lo tanto, el
rendimiento en vivo más lento, este modelo no es un rival digno de las otras dos
arquitecturas. La red C muestra una curva de aprendizaje algo más lenta, pero la
precisión final en el conjunto de validación es similar a la de la red A. Las demandas de
procesamiento se encuentran entre las otras redes, por lo que, según este hecho, la red A
parece ser la más importante. Enfoque prometedor para nuestra tarea de reconocimiento
de emociones. Sin embargo, el rendimiento de la red C en el conjunto de prueba RaFD
adicional es significativamente mejor (60%) que el de la red A (50%). Esto indica
mejores capacidades de generalización, lo cual es muy importante para aplicaciones
futuras. Por lo tanto, en el siguiente capítulo, el modelo de la red C será investigado más
a fondo y probado.

Figura 3: Precisión en el conjunto de validación durante las épocas de entrenamiento

red precisión tamaño


neuronal validación RaFD
a 63% 50% pequeña
b 53% 46% Grande
c 63% 60% mediana

Tabla 1: Detalles de las redes formadas.

3. Modelo final

Se observó que la última red descrita de la sección 3.2 tiene el rendimiento más
prometedor para aplicaciones prácticas. En la figura 4 se muestra una descripción general
de su arquitectura. Los archivos de origen de esta red, así como otros scripts utilizados
para este proyecto, se pueden encontrar en https://github.com/isseu/emotionrecognition-
neural-networks. Como se puede ver en la figura 3, la precisión parece aumentar aún en
las últimas épocas. Por lo tanto, capacitaremos a la red durante 100 épocas en la ejecución
final, para asegurarnos de que la precisión converja al óptimo. En un intento por mejorar
aún más el modelo final, la red se capacitará en un conjunto más amplio que el descrito
anteriormente. En lugar de 9000 imágenes, la capacitación se realizará con 20000
imágenes del conjunto de datos FERC2013. Las relaciones de las emociones presentes en
este conjunto se dan en la figura 5. También se utilizan la validación compuesta
recientemente (2000 imágenes) y los conjuntos de prueba (1000 imágenes) del conjunto
de datos FERC-2013, junto con el conjunto de prueba RaFD bien equilibrado de El
experimento anterior.
Figura 4: Visión general de la arquitectura de red del modelo final.

2000

1800

1600

1400

1200

1000

800

600

400

200

0
enojado disgustado temeroso feliz neutral triste sorprendido

Figura 5: Número de imágenes por emoción en el set de entrenamiento final

3.1 Test de resultados

Las tasas de precisión del modelo final se muestran en la tabla 2. En todas las validaciones
y conjuntos de pruebas, la precisión fue mayor que en las ejecuciones anteriores, lo que
subraya que más datos y una capacitación más larga pueden mejorar el rendimiento de
una red. Dado que las redes de estado del arte de investigaciones anteriores obtuvieron
alrededor del 67% en conjuntos de pruebas, y teniendo en cuenta los recursos limitados,
los resultados son, de hecho, bastante buenos.
Notable es la precisión en el conjunto de pruebas RaFD, que contiene imágenes
completamente diferentes a los datos de entrenamiento. Esto ilustra las potentes
capacidades de generalización de este modelo final. Para ver cómo se realiza el modelo
por emoción, se genera una tabla, que se muestra en la figura 6. Se obtienen tasas de
precisión muy altas en feliz (90%), neutral (80%) y sorprendido (77%). Estas son, de
hecho, las expresiones faciales más distinguibles según los humanos también. Sin
embargo, tristes, temerosos y enojados a menudo se clasifican erróneamente como
neutrales. Al parecer estas emociones se parecen mucho. La precisión más baja se obtiene
en triste (28%) y temeroso (37%). Finalmente, cabe destacar que aunque el porcentaje de
datos con etiqueta disgustada en el conjunto de entrenamiento es bajo, la tasa de
clasificación es muy razonable. En general, la diagonal principal, que muestra la
clasificación correcta, se puede distinguir claramente.

3.1 aplicación en vivo:

Como ya se mencionó, el reconocimiento de emociones en vivo a través del video es uno


de los puntos clave más importantes en la interacción hombre-máquina. Para mostrar las
capacidades de la red obtenida, se desarrolla una aplicación que puede procesar
directamente imágenes de la cámara web a través del modelo final.
Con el uso del programa de reconocimiento facial OpenCV mencionado anteriormente
[15], la cara más grande que aparece en el video en tiempo real es rastreada, extraída y
escalada a una entrada de 48x48 utilizable. Estos datos luego se envían a la entrada del
modelo de red neuronal, que a su vez devuelve los valores de la capa de salida.
Estos valores representan la probabilidad de que cada emoción sea representada por el
usuario. Se supone que la salida con el valor más alto es la emoción actual del usuario, y
se representa mediante un emoticono a la izquierda de la pantalla. Las figuras 7 a 13
muestran la aplicación en vivo y la interacción con los autores de esta investigación y con
la televisión en vivo.

4. Conclusiones
Aunque es difícil de evaluar objetivamente, la aplicación en vivo muestra un
rendimiento prometedor. Sin embargo, encuentra problemas cuando hay sombras en la
cara del sujeto. Todas las emociones se reconocen fácilmente cuando el usuario las
actúa, y cuando apunta la cámara a la pantalla, la mayoría de las emociones en la
naturaleza se pueden clasificar. Esto nuevamente enfatiza el poder de usar modelos
basados en redes neuronales para futuras aplicaciones en el reconocimiento de
emociones

5. REFERENCIAS

[1] T. Ahsan, T. Jabid, and U.-P. Chong. Facial expression recognition using local
transitional pattern on gabor filtered facial images. IETE Technical Review, 30(1):47–52,
2013.
[2] D. Ciresan, U. Meier, and J. Schmidhuber. Multi-column deep neural networks for
image classification. In Computer Vision and Pattern Recognition (CVPR), 2012 IEEE
Conference on, pages 3642–3649. IEEE, 2012.
[3] C. R. Darwin. The expression of the emotions in man and animals. John Murray,
London, 1872.
[4] J. Deng, W. Dong, R. Socher, L.-J. Li, K. Li, and L. Fei-Fei. Imagenet: A large-scale
hierarchical image database. In Computer Vision and Pattern Recognition, 2009. CVPR
2009. IEEE Conference on, pages 248–255. IEEE, 2009.
[5] P. Ekman and W. V. Friesen. Constants across cultures in the face and emotion.
Journal of personality and social psychology, 17(2):124, 1971.
[6] B. Fasel and J. Luettin. Automatic facial expression analysis: a survey. Pattern
recognition, 36(1):259–275, 2003.
[7] A. Gudi. Recognizing semantic features in faces using deep learning. arXiv preprint
arXiv:1512.00743, 2015.
[8] Kaggle. Challenges in representation learning: Facial expression recognition
challenge, 2013.
[9] A. Krizhevsky and G. Hinton. Learning multiple layers of features from tiny images,
2009.
[10] A. Krizhevsky, I. Sutskever, and G. E. Hinton. Imagenet classification with deep
convolutional neural networks. In Advances in neural information processing systems,
pages 1097–1105, 2012.
[11] O. Langner, R. Dotsch, G. Bijlstra, D. H. Wigboldus, S. T. Hawk, and A. van
Knippenberg. Presentation and validation of the radboud faces database. Cognition and
emotion, 24(8):1377– 1388, 2010.
[12] P. Lucey, J. F. Cohn, T. Kanade, J. Saragih, Z. Ambadar, and I. Matthews. The
extended cohn-kanade dataset (ck+): A complete dataset for action unit and emotion-
specified expression. In Computer Vision and Pattern Recognition Workshops
(CVPRW), 2010 IEEE Computer Society Conference on, pages 94–101. IEEE, 2010.
[13] Y. Lv, Z. Feng, and C. Xu. Facial expression recognition via deep learning. In Smart
Computing (SMARTCOMP), 2014 International Conference on, pages 303–308. IEEE,
2014.
[14] J. Nicholson, K. Takahashi, and R. Nakatsu. Emotion recognition in speech using
neural networks. Neural computing & applications, 9(4): 290–296, 2000.
[15] OpenSourceComputerVision. Face detection using haar cascades. URL
http://docs.opencv.org/master/d7/d8b/ tutorial_py_face_detection.html.
[16] TFlearn. Tflearn: Deep learning library featuring a higher-level api for tensorflow.
URL http://tflearn.org/.
Anexos imágenes de la aplicación en funcionamiento

Aprendizaje:

EJECUCIÓN

Вам также может понравиться