This repository contains a Python-based implementation of a facial emotion recognition system, designed to classify emotions from portrait images.
Facial Emotion Recognition through Portrait Images
Facial expression recognition is a crucial aspect of human-computer interaction, with applications in various fields like psychology, marketing, robotics, and virtual assistants. This project explores the performance of traditional machine learning models for classifying five basic emotions: anger, sadness, fear, happiness, and neutral.
- Traditional ML Models: The project implements Support Vector Machines (SVM), Random Forest, and Decision Tree with Gini Index.
- Feature Extraction: Utilizes Histogram of Oriented Gradients (HOG) for extracting facial features.
- Datasets: Employs AffectNet and Flickr Faces HQ datasets for training and evaluation.
- Performance Evaluation: Provides accuracy, precision, recall, and F1-score metrics for each emotion class.
Contributions are welcome! Please open an issue or submit a pull request.
This project is licensed under the MIT License - see the LICENSE file for details.
The following resources were used in the development of this project:
- Facial expressions training data - Kaggle
- Flickr-Faces-HQ Dataset (FFHQ) - Kaggle
- Decision Tree-Based Federated Learning: A Survey - Wang, Z.; Gai, K.
- Exploring the intricacies of random forest in machine learning - Peters, M.
- Machine Learning Algorithms(16) โ Support Vector Machine (SVM) - Dissanayake, K.
- Facial expression recognition based on random forest and convolutional neural network - Wang, Y., Li, Y., Song, Y. H., & Rong, X.
- Biometrics recognition using deep learning: A survey - Minaee, S., Abdolrashidi, A., Su, H., Bennamoun, M., & Zhang, D.
- Facial expression recognition via learning deep sparse autoencoders - Zeng, N., Zhang, H., Song, B., Liu, W., Li, Y., & Dobaie, A. M.
Truong Le Vinh Phuc