Emotion-detection classifies facial expressions into seven categories: angry, disgusted, fearful, happy, neutral, sad, and surprised. This project leverages deep convolutional neural networks (CNNs) trained on the FER-2013 dataset. The core problem addressed is accurate and real-time emotion recognition from visual data, enabling applications in human-computer interaction and affective computing.
This repository provides a practical implementation of facial emotion detection using a CNN, offering a foundational example for similar tasks. The code includes face detection using Haar cascades and utilizes the Keras API for model building. The project emphasizes clarity and reproducibility, with readily available pre-trained models and detailed instructions for training and inference.
- Face Detection: Utilizes Haar cascades for efficient face detection in webcam streams.
- CNN Model: Employs a 4-layer CNN architecture for emotion classification.
- Pre-trained Model: Offers a pre-trained model for immediate inference without retraining.
- Data Format: Uses PNG images for training and testing, streamlining dataset preparation.
- Keras API: Leverages the Keras API for model building and training.
- Webcam Support: Designed to process real-time video streams from a webcam.
- Data Preprocessing: Includes code for data preprocessing to handle CSV format datasets.
The project is a functional implementation with a clear structure and basic documentation. While the accuracy is moderate (63.2% in 50 epochs), it provides a solid starting point for further model optimization and experimentation. Recent commits indicate ongoing maintenance and support.
This project is beneficial for developers interested in exploring facial emotion recognition using deep learning. It provides a working example and necessary code for building emotion detection systems. It's useful for researchers and hobbyists looking to understand CNN-based emotion classification and experiment with real-time facial analysis.
