Giter Site home page Giter Site logo

suhastantri / real-time-emotion-detection Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 1.0 29.05 MB

This repository consists of a project where deep learning algorithms have been used to analyze facial emotions of the students in the class in real time using Open CV. A web app has also been created using streamlit for demonstration purposes.

Python 1.71% Jupyter Notebook 98.25% Shell 0.04%
python opencv deep-learning jupyer-notebook transfer-learning facial-emotion-detection streamlit-webapp

real-time-emotion-detection's Introduction

Real-time-emotion-detection [Deep Learning Capstone Project Almabetter]

The goal of the project is to do real time facial emotion recognition of students in a live class so that they can be monitored easily. This is done by using Deep learning algorithms and Open CV.

The project was done by me and my teammate Raghavendra A Kulkarni.

MobileNet Architecture

App Screenshot

  • The MobileNet structure is built on depthwise separable convolutions except for the first layer which is a full convolution. By defining the network in such simple terms we are able to easily explore network topologies to find a good network. All layers are followed by a batchnorm and ReLU nonlinearity with the exception of the final fully connected layer which has no nonlinearity and feeds into a softmax layer for classification. Counting depthwise and pointwise convolutions as separate layers, MobileNet has 28 layers.

Transfer Learning

App Screenshot

  • Transfer learning is a research problem in machine learning (ML) that focuses on storing knowledge gained while solving one problem and applying it to a different but related problem.

  • In this project Mobile-Net transfer learning is used along with computer vision for real time Facial emotion recognition through webcam. A streamlit web app has also been built.

  • The model is trained on FER-2013 dataset which has 5 emotions classes namely 'Happy','Neutral','Fear','Angry' and 'Disgust'.

  • The model gives an accuracy of 81 % on train data and 76 % on test data.

Here is an image showing the confusion matrix of the model classification

App Screenshot

{0: 'Angry', 1: 'fear', 2: 'Happy', 3: 'Neutral'}

  • The confusion matrix indicates that the model performs better on Happy and Neutral images.

Demo

streamlit demo gif (3)

Links

real-time-emotion-detection's People

Contributors

suhastantri avatar

Stargazers

 avatar

Watchers

 avatar

Forkers

desuche

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.