Face Analysis System: Emotion, Age, and Gender Estimation
Overview
This project is a multi-task face analysis system that combines three biometric capabilities into a single PyQt5-based GUI application:
- Emotion Estimation
- Age Estimation
- Gender Estimation
Built as part of the Biometrics II curriculum, the system leverages state-of-the-art deep learning models to analyze facial attributes in real-time or from uploaded images. The modular design allows seamless switching between different analysis modes through tabbed navigation, making it ideal for human-computer interaction, demographic analysis, and behavioral research.


Key Features
Unified Application Architecture
- Single Interface: Three specialized tabs for emotion, age, and gender estimation
- Real-Time Processing: Webcam integration for live analysis (10-15 FPS)
- Batch Image Analysis: Process multiple faces in uploaded images
- Visual Annotation: Color-coded bounding boxes with attribute labels
- Model Switching: Select between lightweight and high-accuracy models per task
Emotion Estimation Tab
- π 7 Emotion Classes: Angry, Disgust, Fear, Happy, Sad, Surprise, Neutral
- π€ Models: MobileNetV2 (85% accuracy) + Custom Sequential CNN (78% accuracy)
- π Confidence Display: Real-time emotion probability distribution
Age Estimation Tab
- πΆπ΄ Age Range: 0-116 years (UTKFace dataset)
- π€ Models: ResNet50 (MAE=6.2 years) + Custom CNN (MAE=8.1 years)
- π― Multi-Face Handling: Simultaneous age prediction for groups
Gender Estimation Tab
- π¨π© Binary Classification: Male/Female with probability scores
- π€ Models: ResNet50 (94% accuracy) + Custom CNN (89% accuracy)
- β‘ Optimized Inference: <150ms per face on CPU
Technical Details
Shared Components
- Face Detection: OpenCV Haar Cascades
Common Infrastructure
- GUI Framework: PyQt5
- Backend: TensorFlow 2.x
- Webcam Processing: Multi-threaded
- Model Management System
Demo
Live Demo of Face Emotion Estimation
Live Demo of Face Age Estimation
Live Demo of Face Gender Estimation
Impact & Applications
This integrated system demonstrates how multiple biometric tasks can be efficiently combined into a single application:
- Healthcare: Patient mood and demographic tracking
- Retail: Customer demographic analysis
- Security: Enhanced person description generation
- Research: Integrated platform for behavioral studies
Future Improvements
- Multi-Task Learning: Single model for all attributes
- Edge Deployment: TensorFlow Lite for mobile devices
- 3D Face Modeling: Improved angle robustness
- Privacy Features: On-device processing only
Links
- GitHub Repository
- Technical Report:
- Emotion Demo
- Age Demo
- Gender Demo