Skip to content

Face Expression Recognition with ensemble for InceptionV3, ResNet50, MobileNetV2

Notifications You must be signed in to change notification settings

Iliescu-Dorin/FaceExpressionEnsemble

Repository files navigation

Face Expression using Ensemble

Face Expression Recognition with ensemble for InceptionV3, ResNet50, MobileNetV2

Contributors Forks Stargazers Issues MIT License LinkedIn


Logo

Facial Expression Recognition

Detect human emotions from facial images

Table of Contents

About The Project

Facial expression recognition aims to detect the persons feeling by using a video stream from the webcam. This detector can detect 7 human emotions which are Angry, Disgust, Fear, Happy, Neutral, Sad, Surprise

The model was trained using the ICML 2013 Facial Expression Recignition dataset

The training dataset contains:

  • 436 disgust images

  • 4097 fear images

  • 3171 surprise images

  • 4965 neutral images

  • 7214 happy images

  • 84830 sad images

  • 3995 angry images

    I used the following architecture to train the model on Google Colab and downloaded the weights.

    Model Architecture

Built With

Getting Started

You will need Python (>3.6), TensorFlow 2 to run this.
Installation of required packages is covered under installation
To get a local copy up and running follow these simple example steps.

Installation

  1. Make sure you have python3 setup on your system
  2. Clone the repo
git clone https://github.com/radioactive11/Facial-Expression-Recognition
  1. Install requirements
pip install -r requirements.txt
  1. Open terminal and enter
python3 main.py
  1. Check port on which Flask Server is running (in this case it is 5000)

  1. Open any browser and enter URL (replace port with what you get on running main.py)

    127.0.0.1:<port>
    

Usage

In order to use this app, you must have a working webcam. If you want to run detections on a video, goto camera.py and change (line 11)

self.video = cv2.VideoCapture(0)

to

 self.video = cv2.VideoCapture("path to video.mp4")

Product Screenshot

product-screenshot

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

Contact

Andreea Coaja - Linkedin Profile
Mihail Dorin Iliescu - Linkedin Profile
Jamil Zaitouny - Linkedin Profile
Project Link: https://github.com/Iliescu-Dorin/FaceExpressionEnsemble/