Skip to content

Build and train a convolutional neural network (CNN) in Keras from scratch to recognize facial expressions and directly serve the trained model to a web interface and perform real-time facial expression recognition on video and image data.

Notifications You must be signed in to change notification settings

nqkhanh2002/Facial-Expression-Recognition-with-Keras

Repository files navigation

Facial Expression Recognition


About The Project

In this work, I will build and train a convolutional neural network (CNN) in Keras from scratch to recognize facial expressions. The data consists of 48x48 pixel grayscale images of faces. The objective is to classify each face based on the emotion shown in the facial expression into one of seven categories (0=Angry, 1=Disgust, 2=Fear, 3=Happy, 4=Sad, 5=Surprise, 6=Neutral). I will use OpenCV to automatically detect faces in images and draw bounding boxes around them. Once you have trained, saved, and exported the CNN, I will directly serve the trained model predictions to a web interface and perform real-time facial expression recognition on video and image data.

Dataset

Dataset from kaggle competition. The data consists of 48x48 pixel grayscale images of faces. The faces have been automatically registered so that the face is more or less centered and occupies about the same amount of space in each image. The task is to categorize each face based on the emotion shown in the facial expression in to one of seven categories (0=Angry, 1=Disgust, 2=Fear, 3=Happy, 4=Sad, 5=Surprise, 6=Neutral).

Objectives

  1. Develop a facial expression recognition model in Keras

  2. Build and train a convolutional neural network (CNN)

  3. Deploy the trained model to a web interface with Flask

  4. Apply the model to real-time video streams and image data

Installation

  1. Clone the repo
    https://github.com/nqkhanh2002/Classify-Traffic-Signs-Using-Deep-Learning-for-Self-Driving-Cars.git
  2. Run the jupyter notebook Notebook will automatically download data to your device. During notebook execution, use the package installer for Python to install packages that you are missing.
  3. Edit parameter VideoCapture in camera.py to specific your video source. Edit any video in videos folder that you want to apply the model.
  4. Run file main.py to apply the model to real-time video streams and image data

Contact

About

Build and train a convolutional neural network (CNN) in Keras from scratch to recognize facial expressions and directly serve the trained model to a web interface and perform real-time facial expression recognition on video and image data.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages