MSc Thesis – Emotion Recognition from Images using Deep Learning

Emotion Recognition from Images using Deep Learning

Project Overview

Designed and developed a deep learning image classification pipeline to predict human facial emotions from static grayscale images. Built using Convolutional Neural Networks (CNNs) and fine-tuned on the Kaggle FER-2013 dataset (48×48 pixel facial imagery), the project evaluated transfer learning techniques applied to pre-trained VGG16 and Inception-v3 architectures. To enhance generalization, mitigate overfitting, and improve model performance, target dataset augmentation techniques were integrated throughout training.

Purpose

The primary aim of this work was to categorize facial expressions into seven distinct emotion classes, anger, disgust, fear, joy, sadness, surprise, and neutral, with a specific focus on evaluating student emotional states during examination settings. By training pre-trained deep learning networks and visualizing prediction metrics through detailed analytical graphs, the project evaluated model efficacy and feature convergence across emotion categories. Detailed findings regarding the training methodology and performance evaluations are fully documented in the Master’s Thesis, highlighting broad applicability across human-computer interaction, academic monitoring, and service robotics.

Key Features & Capabilities
  • Facial emotion recognition pipeline trained on the Kaggle FER-2013 dataset (48×48 pixel grayscale images)
  • Comparative deep learning implementation utilizing pre-trained VGG16 and Inception-v3 architectures
  • Transfer learning strategy optimizing feature extraction and fine-tuning dense classification layers
  • Data augmentation techniques applied to reduce overfitting and improve evaluation performance
  • Modular computer vision architecture designed for downstream integration in robotics and real-time vision systems

Development

Operating Systems Ubuntu 18.04.2 LTS, Windows 10, Interl i7, 32GB RAM, Nvidia GTX1080, 1TB HDD
IDE PyCharm
Programming Language Python
Libraries NumPy, Matplotlib, OpenCV, dlib, scikit-learn, HDF5, pandas, TensorFlow, Keras
Dataset FER-2013
Repository

Screenshots & Images