📌 Overview
This project implements an emotion recognition system using computer vision and deep learning. It detects human emotions from facial expressions in real-time via webcam or from static images. The system leverages Python, OpenCV, and TensorFlow/Keras to train and deploy a model capable of recognizing emotions such as happiness, sadness, anger, and surprise.
🗂️ Project Structure
app.py → Main application script
train_and_save_model.py → Script to train and save the emotion recognition model
test_model.py → Script to test the trained model
webcam_emotion_detection.py → Real-time emotion detection using webcam
emotion_recognition_model.h5 → Pre-trained model file
images/ → Dataset images (zipped folder)
test/ → Test dataset folder
.gitignore → Git ignore rules
LICENSE → License information
⚙️ Installation
Clone the repository:
git clone https://github.com/nensii21/mood-detection.git cd mood-detection
Install dependencies:
pip install -r requirements.txt
(Optional) If using large model files, install Git LFS:
git lfs install
Run the application:
python app.py
Train a new model:
python train_and_save_model.py
Test the model:
python test_model.py
Real-time detection:
python webcam_emotion_detection.py
📊 Dataset
The dataset consists of facial expression images categorized into multiple emotions. You can expand the dataset by adding more labeled images to improve accuracy.
🔧 Technologies Used
Python
OpenCV
TensorFlow / Keras
NumPy
Matplotlib
🚀 Features
Detects multiple emotions from facial expressions
Works with both static images and live webcam feed
Easy to retrain with custom datasets
Modular code structure for flexibility
📜 License
This project is licensed under the MIT License. See the LICENSE file for details.
🙌 Contributing
Contributions are welcome! Please fork the repository and submit a pull request.
👩💻 Author
Developed by Nensi Patel