4 research outputs found

    Investigation of hierarchical deep neural network structure for facial expression recognition

    Get PDF
    Facial expression recognition (FER) is still a challenging concept, and machines struggle to comprehend effectively the dynamic shifts in facial expressions of human emotions. The existing systems, which have proven to be effective, consist of deeper network structures that need powerful and expensive hardware. The deeper the network is, the longer the training and the testing. Many systems use expensive GPUs to make the process faster. To remedy the above challenges while maintaining the main goal of improving the accuracy rate of the recognition, we create a generic hierarchical structure with variable settings. This generic structure has a hierarchy of three convolutional blocks, two dropout blocks and one fully connected block. From this generic structure we derived four different network structures to be investigated according to their performances. From each network structure case, we again derived six network structures in relation to the variable parameters. The variable parameters under analysis are the size of the filters of the convolutional maps and the max-pooling as well as the number of convolutional maps. In total, we have 24 network structures to investigate, and six network structures per case. After simulations, the results achieved after many repeated experiments showed in the group of case 1; case 1a emerged as the top performer of that group, and case 2a, case 3c and case 4c outperformed others in their respective groups. The comparison of the winners of the 4 groups indicates that case 2a is the optimal structure with optimal parameters; case 2a network structure outperformed other group winners. Considerations were done when choosing the best network structure, considerations were; minimum accuracy, average accuracy and maximum accuracy after 15 times of repeated training and analysis of results. All 24 proposed network structures were tested using two of the most used FER datasets, the CK+ and the JAFFE. After repeated simulations the results demonstrate that our inexpensive optimal network architecture achieved 98.11 % accuracy using the CK+ dataset. We also tested our optimal network architecture with the JAFFE dataset, the experimental results show 84.38 % by using just a standard CPU and easier procedures. We also compared the four group winners with other existing FER models performances recorded recently in two studies. These FER models used the same two datasets, the CK+ and the JAFFE. Three of our four group winners (case 1a, case 2a and case 4c) recorded only 1.22 % less than the accuracy of the top performer model when using the CK+ dataset, and two of our network structures, case 2a and case 3c came in third, beating other models when using the JAFFE dataset.Electrical and Mining Engineerin

    Desarrollo de un sistema automático de análisis de expresiones faciales para la detección de la mentira en adultos utilizando técnicas de aprendizaje automático

    Get PDF
    Este completo estudio genera su base investigativa en 3 modelos los cuales estan citados y explicados con un alto indice de accuracy, su base metodologica promete resolver un claro indice de la relacion que existe entre las microexpresiones faciales y la verdad. logrando implementar así tecnología artificial de analisis profundo.Existen 7 tipos de expresiones faciales universales, las cuales son: enfado, disgusto, miedo, felicidad, tristeza, sorpresa y desprecio. Estas expresiones faciales son indiferentes a la raza o la cultura de las regiones del mundo. Estas expresiones pueden ser falsificadas y son los pequeños movimientos los que nos pueden decir si una expresión está siendo real o es una mentira. Estos pequeños movimientos se llaman microexpresiones faciales, los cuales ocurren entre 1/15 y 1/25 segundos y son imperceptibles al ojo humano. Este trabajo de grado tiene como objetivo reconocer las microexpresiones faciales mediante un modelo profundo de aprendizaje automático. Para este fin, se desarrollan 3 modelos cada uno para dos bases de datos de microexpresiones faciales SMIC (X. Li, T. Pfister, X. Huang, G. Zhao & M. Pietikäinen, 2013) y CASME II (Yan WJ, Li X, Wang SJ, Zhao G, Liu YJ, Chen YH & Fu X., 2014). El primer modelo implementado fue MicroExpSTCNN el cual fue propuesto por (S. P. Teja Reddy, S. Teja Karri, S. R. Dubey & S. Mukherjee, 2019) utilizando sobre las mismas bases de datos de microexpresiones faciales, este trabajo de grado logró obtener un accuracy mayor para ambas bases de datos (90 % para CASME II y 91.6 % para SMIC); que el reportado por la referencia, el cual fue de 87.80 % para la base de datos CASME II. El segundo modelo implementado fue un CNN 3D con data augmentation rotando las imágenes con cierto número de grados escogidos aleatoriamente, para este modelo se logró mejorar el acurracy para la base de datos CASME II (94.2 %). El tercer modelo se construyó con una CNN 2D temporal y una capa de LSTM, lo cual logró mejorar notablemente la predicción para ambas bases de datos de microexpresiones faciales, ya que tuvo en cuenta la característica temporal de los 18 frames. También se desarrolló una aplicación donde se creó el modelo de la red neuronal y se le cargaron los pesos entrenados previamente para ambas bases de datos de SMIC (X. Li, et al., 2013) y CASME II (Yan WJ, et al., 2014). Se usó el framework Flask para visualizar el video y mostrar la microexpresión facial que predice el modelo.There are 7 types of universal facial expressions, which are: anger, disgust, fear, happiness, sadness, surprise and contempt. These facial expressions are indifferent to the race or culture of the world regions. These expressions can be faked and it is the small movements that can tell us if an expression is being real or a lie. These small movements are called facial micro-expressions, which occur between 1/15 and 1/25 seconds and are imperceptible to the human eye. This degree work aims to recognize facial microexpressions using a deep machine learning model. For this purpose, 3 models each are developed for two databases of SMIC facial microexpressions (X. Li, T. Pfister, X. Huang, G. Zhao & M. Pietikäinen, 2013) and CASME II (Yan WJ, Li X, Wang SJ, Zhao G, Liu YJ, Chen YH & Fu X., 2014). The first model implemented was MicroExpSTCNN which was proposed by (SP Teja Reddy, S. Teja Karri, SR Dubey & S. Mukherjee, 2019) using the same databases of facial microexpressions, this degree work managed to obtain a higher accuracy for both databases (90% for CASME II and 91.6% for SMIC); than that reported by the reference, which was 87.80% for the CASME II database. The second model implemented was a CNN 3D with data augmentation rotating the images with a certain number of degrees chosen randomly, for this model it was possible to improve the acurracy for the CASME II database (94.2%). The third model was built with a temporal 2D CNN and an LSTM layer, which managed to significantly improve the prediction for both databases of facial microexpressions, since it took into account the temporal characteristic of the 18 frames. An application was also developed where the neural network model was created and the previously trained weights were loaded for both databases of SMIC (X. Li, et al., 2013) and CASME II (Yan WJ, et al., 2014). The Flask framework was used to visualize the video and show the facial microexpression predicted by the model.MaestríaMagíster en Ingeniería de Sistemas y ComputaciónContenido Lista de Tablas 12 Lista de Figuras 15 Notaciones 27 1. Introducción 29 1.1. Planteamiento del problema 30 1.1.1. Pregunta de Investigación 32 1.2 Justificación 33 1.2.1. Pertinencia 34 1.2.2. Viabilidad 34 1.2.3. Impacto 35 1.3. Objetivos de la investigación 36 1.3.1. Objetivo general 36 1.3.2. Objetivos específicos 36 2. Estado del Arte 37 3. Marco Teórico 48 3.1. Teoría de las emociones 48 3.1.1. Las 7 Emociones Universales 49 3.1.1.1. Enfado 50 3.1.1.2. Disgusto 50 3.1.1.3. Miedo 51 3.1.1.4. Felicidad 51 3.1.1.5. Tristeza 52 3.1.1.6. Sorpresa 53 3.1.1.7. Desprecio 53 3.2. Expresiones faciales 54 3.3. Micro expresiones faciales 55 3.4. Emoción espontánea 56 3.5. La mentira 56 3.6. Deep learning 59 3.6.1. Convolutional Neural Networks (CNNs) 59 3.6.1.1. Arquitecturas de Redes Neuronales Convolucionales CNN 62 3.6.1.1.1. Layer Patterns 64 3.6.1.1.2. Dropout 65 3.6.1.1.3. Max pooling 66 3.6.1.1.4. Data Augmentation 67 3.6.2. Redes Neuronales Convolucionales 3D CNN 67 3.6.3. Redes de memoria a corto/largo plazo LSTM 70 3.6.4. Redes residuales ResNet 73 3.6.5. Funciones de activación 74 3.6.5.1. Softmax 75 3.6.5.2. Función de perdida Cross Entropy 76 3.6.5.3. ReLu: Unidad lineal rectificada 76 3.6.6. Algoritmos de optimización 77 3.6.6.1. Adam 77 3.6.6.2. SGD 79 4. Materiales y Métodos 81 4.1. Preparación de los datos 81 4.1.1. Base de datos de microexpresiones faciales CASME II 82 4.1.2. Base de datos de microexpresiones faciales SMIC 82 4.2. Caja de herramientas 84 4.2.1. Google Colaboratory 84 4.2.2. Tensorflow 85 4.2.3. Keras 85 4.2.4. Sklearn 86 4.2.5. Flask 87 4.2.6. Anaconda 88 4.2.7. TensorBoard 89 4.2.8. OpenCV 91 4.3. Reconocimiento de expresiones faciales utilizando modelos profundos 92 4.3.1. PyEmotionRecognition 93 4.3.2. Landmarks 94 4.3.3. Reconocimiento de expresiones faciales con Keras 95 4.4. Evaluación de los modelos 97 4.4.1. F1 score 97 4.4.2. Accuracy 98 4.4.3. Precisión 99 4.4.4. Sensibilidad (recall) 100 4.4.5. Especificidad 101 4.4.6. Curva ROC 101 4.4.7. Matriz de Confusión 104 5. Resultados y Discusiones 105 5.1. Modelo convolucional MicroExpSTCNN 3D para el reconocimiento de microexpresiones faciales 105 5.1.1. Base de datos CASME II 108 5.1.1.1. Matriz de Confusión 112 5.1.1.2. Curva ROC y AUROC 114 5.1.2. Base de datos SMIC 115 5.1.2.1. Matriz de Confusión 117 5.1.2.2. Curva ROC y AUROC 119 5.2. Modelo convolucional 3D para el reconocimiento de microexpresiones faciales con data augmentation 120 5.2.1. Base de datos CASME II 124 5.2.1.1. Matriz de Confusión 129 5.2.1.2. Curva ROC y AUROC 131 5.2.2. Base de datos SMIC 132 5.2.2.1. Matriz de Confusión 136 5.2.2.2. Curva ROC y AUROC 138 5.3. Modelo temporal profundo para el reconocimiento de expresiones faciales 140 5.3.1. Base de datos CASME II 142 5.3.1.1. Matriz de Confusión 145 5.3.1.2. Curva ROC y AUROC 147 5.3.2. Base de datos SMIC 148 5.3.2.1. Matriz de Confusión 152 5.3.2.2. Curva ROC y AUROC 153 5.4. Evaluación cuantitativa de los modelos propuestos para diferentes métricas 154 5.5. Comparación con el estado del arte 159 5.6. Evaluación de la complejidad del modelo 162 5.7. Aplicación para el reconocimiento de microexpresiones faciales 163 5.7.1. Herramientas 167 5.7.2. Funcionalidades 167 5.7.3. Diagrama de Flujo 168 6. Conclusiones y Trabajos futuros 170 6.1. Conclusiones 170 6.2. Trabajos futuros 173 6.3. Difusión publicaciones 174 7. Referencias 175 Anexo a. Modelos Implementados en Google Colab 185 Modelo 1. Modelo convolucional MicroExpSTCNN 3D para el reconocimiento de microexpresiones faciales 185 Base de datos CASME II 185 Base de datos SMIC 196 Modelo 2. Modelo convolucional 3D para el reconocimiento de microexpresiones faciales con data augmentation 211 Base de datos CASME II 211 Base de datos SMIC 221 Modelo 3. Modelo temporal profundo para el reconocimiento de expresiones faciales 233 Base de datos CASME II 233 Base de datos SMIC 240 Anexo b. Artículo científico 251 Anexo c. Manual técnico Aplicación 27

    Desarrollo de un sistema automático de análisis de expresiones faciales para la detección de la mentira en adultos utilizando técnicas de aprendizaje automático

    Get PDF
    Este completo estudio genera su base investigativa en 3 modelos los cuales estan citados y explicados con un alto indice de accuracy, su base metodologica promete resolver un claro indice de la relacion que existe entre las microexpresiones faciales y la verdad. logrando implementar así tecnología artificial de analisis profundo.Existen 7 tipos de expresiones faciales universales, las cuales son: enfado, disgusto, miedo, felicidad, tristeza, sorpresa y desprecio. Estas expresiones faciales son indiferentes a la raza o la cultura de las regiones del mundo. Estas expresiones pueden ser falsificadas y son los pequeños movimientos los que nos pueden decir si una expresión está siendo real o es una mentira. Estos pequeños movimientos se llaman microexpresiones faciales, los cuales ocurren entre 1/15 y 1/25 segundos y son imperceptibles al ojo humano. Este trabajo de grado tiene como objetivo reconocer las microexpresiones faciales mediante un modelo profundo de aprendizaje automático. Para este fin, se desarrollan 3 modelos cada uno para dos bases de datos de microexpresiones faciales SMIC (X. Li, T. Pfister, X. Huang, G. Zhao & M. Pietikäinen, 2013) y CASME II (Yan WJ, Li X, Wang SJ, Zhao G, Liu YJ, Chen YH & Fu X., 2014). El primer modelo implementado fue MicroExpSTCNN el cual fue propuesto por (S. P. Teja Reddy, S. Teja Karri, S. R. Dubey & S. Mukherjee, 2019) utilizando sobre las mismas bases de datos de microexpresiones faciales, este trabajo de grado logró obtener un accuracy mayor para ambas bases de datos (90 % para CASME II y 91.6 % para SMIC); que el reportado por la referencia, el cual fue de 87.80 % para la base de datos CASME II. El segundo modelo implementado fue un CNN 3D con data augmentation rotando las imágenes con cierto número de grados escogidos aleatoriamente, para este modelo se logró mejorar el acurracy para la base de datos CASME II (94.2 %). El tercer modelo se construyó con una CNN 2D temporal y una capa de LSTM, lo cual logró mejorar notablemente la predicción para ambas bases de datos de microexpresiones faciales, ya que tuvo en cuenta la característica temporal de los 18 frames. También se desarrolló una aplicación donde se creó el modelo de la red neuronal y se le cargaron los pesos entrenados previamente para ambas bases de datos de SMIC (X. Li, et al., 2013) y CASME II (Yan WJ, et al., 2014). Se usó el framework Flask para visualizar el video y mostrar la microexpresión facial que predice el modelo.There are 7 types of universal facial expressions, which are: anger, disgust, fear, happiness, sadness, surprise and contempt. These facial expressions are indifferent to the race or culture of the world regions. These expressions can be faked and it is the small movements that can tell us if an expression is being real or a lie. These small movements are called facial micro-expressions, which occur between 1/15 and 1/25 seconds and are imperceptible to the human eye. This degree work aims to recognize facial microexpressions using a deep machine learning model. For this purpose, 3 models each are developed for two databases of SMIC facial microexpressions (X. Li, T. Pfister, X. Huang, G. Zhao & M. Pietikäinen, 2013) and CASME II (Yan WJ, Li X, Wang SJ, Zhao G, Liu YJ, Chen YH & Fu X., 2014). The first model implemented was MicroExpSTCNN which was proposed by (SP Teja Reddy, S. Teja Karri, SR Dubey & S. Mukherjee, 2019) using the same databases of facial microexpressions, this degree work managed to obtain a higher accuracy for both databases (90% for CASME II and 91.6% for SMIC); than that reported by the reference, which was 87.80% for the CASME II database. The second model implemented was a CNN 3D with data augmentation rotating the images with a certain number of degrees chosen randomly, for this model it was possible to improve the acurracy for the CASME II database (94.2%). The third model was built with a temporal 2D CNN and an LSTM layer, which managed to significantly improve the prediction for both databases of facial microexpressions, since it took into account the temporal characteristic of the 18 frames. An application was also developed where the neural network model was created and the previously trained weights were loaded for both databases of SMIC (X. Li, et al., 2013) and CASME II (Yan WJ, et al., 2014). The Flask framework was used to visualize the video and show the facial microexpression predicted by the model.MaestríaMagíster en Ingeniería de Sistemas y ComputaciónContenido Lista de Tablas 12 Lista de Figuras 15 Notaciones 27 1. Introducción 29 1.1. Planteamiento del problema 30 1.1.1. Pregunta de Investigación 32 1.2 Justificación 33 1.2.1. Pertinencia 34 1.2.2. Viabilidad 34 1.2.3. Impacto 35 1.3. Objetivos de la investigación 36 1.3.1. Objetivo general 36 1.3.2. Objetivos específicos 36 2. Estado del Arte 37 3. Marco Teórico 48 3.1. Teoría de las emociones 48 3.1.1. Las 7 Emociones Universales 49 3.1.1.1. Enfado 50 3.1.1.2. Disgusto 50 3.1.1.3. Miedo 51 3.1.1.4. Felicidad 51 3.1.1.5. Tristeza 52 3.1.1.6. Sorpresa 53 3.1.1.7. Desprecio 53 3.2. Expresiones faciales 54 3.3. Micro expresiones faciales 55 3.4. Emoción espontánea 56 3.5. La mentira 56 3.6. Deep learning 59 3.6.1. Convolutional Neural Networks (CNNs) 59 3.6.1.1. Arquitecturas de Redes Neuronales Convolucionales CNN 62 3.6.1.1.1. Layer Patterns 64 3.6.1.1.2. Dropout 65 3.6.1.1.3. Max pooling 66 3.6.1.1.4. Data Augmentation 67 3.6.2. Redes Neuronales Convolucionales 3D CNN 67 3.6.3. Redes de memoria a corto/largo plazo LSTM 70 3.6.4. Redes residuales ResNet 73 3.6.5. Funciones de activación 74 3.6.5.1. Softmax 75 3.6.5.2. Función de perdida Cross Entropy 76 3.6.5.3. ReLu: Unidad lineal rectificada 76 3.6.6. Algoritmos de optimización 77 3.6.6.1. Adam 77 3.6.6.2. SGD 79 4. Materiales y Métodos 81 4.1. Preparación de los datos 81 4.1.1. Base de datos de microexpresiones faciales CASME II 82 4.1.2. Base de datos de microexpresiones faciales SMIC 82 4.2. Caja de herramientas 84 4.2.1. Google Colaboratory 84 4.2.2. Tensorflow 85 4.2.3. Keras 85 4.2.4. Sklearn 86 4.2.5. Flask 87 4.2.6. Anaconda 88 4.2.7. TensorBoard 89 4.2.8. OpenCV 91 4.3. Reconocimiento de expresiones faciales utilizando modelos profundos 92 4.3.1. PyEmotionRecognition 93 4.3.2. Landmarks 94 4.3.3. Reconocimiento de expresiones faciales con Keras 95 4.4. Evaluación de los modelos 97 4.4.1. F1 score 97 4.4.2. Accuracy 98 4.4.3. Precisión 99 4.4.4. Sensibilidad (recall) 100 4.4.5. Especificidad 101 4.4.6. Curva ROC 101 4.4.7. Matriz de Confusión 104 5. Resultados y Discusiones 105 5.1. Modelo convolucional MicroExpSTCNN 3D para el reconocimiento de microexpresiones faciales 105 5.1.1. Base de datos CASME II 108 5.1.1.1. Matriz de Confusión 112 5.1.1.2. Curva ROC y AUROC 114 5.1.2. Base de datos SMIC 115 5.1.2.1. Matriz de Confusión 117 5.1.2.2. Curva ROC y AUROC 119 5.2. Modelo convolucional 3D para el reconocimiento de microexpresiones faciales con data augmentation 120 5.2.1. Base de datos CASME II 124 5.2.1.1. Matriz de Confusión 129 5.2.1.2. Curva ROC y AUROC 131 5.2.2. Base de datos SMIC 132 5.2.2.1. Matriz de Confusión 136 5.2.2.2. Curva ROC y AUROC 138 5.3. Modelo temporal profundo para el reconocimiento de expresiones faciales 140 5.3.1. Base de datos CASME II 142 5.3.1.1. Matriz de Confusión 145 5.3.1.2. Curva ROC y AUROC 147 5.3.2. Base de datos SMIC 148 5.3.2.1. Matriz de Confusión 152 5.3.2.2. Curva ROC y AUROC 153 5.4. Evaluación cuantitativa de los modelos propuestos para diferentes métricas 154 5.5. Comparación con el estado del arte 159 5.6. Evaluación de la complejidad del modelo 162 5.7. Aplicación para el reconocimiento de microexpresiones faciales 163 5.7.1. Herramientas 167 5.7.2. Funcionalidades 167 5.7.3. Diagrama de Flujo 168 6. Conclusiones y Trabajos futuros 170 6.1. Conclusiones 170 6.2. Trabajos futuros 173 6.3. Difusión publicaciones 174 7. Referencias 175 Anexo a. Modelos Implementados en Google Colab 185 Modelo 1. Modelo convolucional MicroExpSTCNN 3D para el reconocimiento de microexpresiones faciales 185 Base de datos CASME II 185 Base de datos SMIC 196 Modelo 2. Modelo convolucional 3D para el reconocimiento de microexpresiones faciales con data augmentation 211 Base de datos CASME II 211 Base de datos SMIC 221 Modelo 3. Modelo temporal profundo para el reconocimiento de expresiones faciales 233 Base de datos CASME II 233 Base de datos SMIC 240 Anexo b. Artículo científico 251 Anexo c. Manual técnico Aplicación 27
    corecore