Coder Social home page Coder Social logo

cherrypiecoco / combined-cnn-rnn-for-emotion-recognition Goto Github PK

View Code? Open in Web Editor NEW

This project forked from denisrang/combined-cnn-rnn-for-emotion-recognition

0.0 0.0 0.0 15.19 MB

Predict valence and arousal from video data. Separate training of CNN and RNN. Feed RNN with simple feature vectors extracted from frames. Feature extraction is done by a simple CNN model.

License: MIT License

Jupyter Notebook 99.20% Python 0.80%

combined-cnn-rnn-for-emotion-recognition's Introduction


Emotion Recognition on large video dataset based on Convolutional Feature Extractor(CNN) and Recurrent Neural Network(RNN)

Paper Challenge Workshop Conference

Description

This repository holds the Tensorflow Keras implementation of the approach described in our report Emotion Recognition on large video dataset based on Convolutional Feature Extractor and Recurrent Neural Network, which is used for our entry to ABAW Challenge 2020 (VA track).

The main strength of this approach is separating training of CNN and RNN to feed RNN with simple feature vectors extracted from frames. It makes the RNN training process faster and gives the ability to exploit many video sequences with a lot of frames in a single batch. Featured extraction is done by simple CNN architecture proposed in How Deep Neural Networks Can Improve Emotion Recognition on Video Data. Exploiting of temporal dynamics of video data are done by GRU.

We provide models trained on Aff-Wild2 in data/checkpoints and tensorboard logs during training this models in data/logs. Also, all experiments such as validation of the CNN on small datasets, visualization of CNN layers, training and predicting are in notebooks.

Getting Started

Prepare environment

Firstly, install dependencies

# clone project   
git clone https://github.com/DenisRang/Combined-CNN-RNN-for-emotion-recognition.git
python3 -m pip install -r requirements.txt --user

Training

To train models, change paths in config.py with your ones. Then:

  • train CNN model using train_cnn.py
  • change CNN extractor model path in config.py with new one
  • extract features from cropped-aligned frames using extract_features.py
  • train RNN model on created features from previous step using train_rnn.py

Predicting

To predict emotions using our pretrained models, change paths in config.py with your ones and then run predict.py

Other

There are more scripts for different purposes like additional analysis. Every script is provided with describing comments on the top.

Citation

@article{denis2020,
Title - {Emotion Recognition on large video dataset based on Convolutional Feature Extractor and Recurrent Neural Network},
Author {Denis Rangulov and Muhammad Fahim},
booktitle={IEEE International Conference on Image Processing, Applications and Systems},
 year={2020},
organization={IEEE}
}

combined-cnn-rnn-for-emotion-recognition's People

Contributors

denisrang avatar

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.