metadata
title: Face Shape Detection
emoji: 👤
colorFrom: blue
colorTo: purple
sdk: docker
pinned: false
license: mit
app_port: 7860
short_description: AI face shape detection with MediaPipe & ML
Face Shape Detection
An AI-powered application that analyzes facial features to determine face shape using MediaPipe landmarks and machine learning.
Features
- Real-time face shape detection from uploaded images
- 5 face shape categories: Heart, Oval, Round, Square, Oblong
- Facial measurements with confidence scores
- Interactive web interface with image upload
- RESTful API for integration
How it Works
- Face Detection: Uses MediaPipe to detect and extract facial landmarks
- Feature Extraction: Calculates key facial measurements and ratios
- ML Classification: Uses a trained Random Forest model to predict face shape
- Results: Returns face shape, confidence scores, and facial measurements
API Endpoints
POST /analyze- Upload an image for face shape analysisGET /- Web interface for image uploadGET /video_feed- Real-time video feed (if camera available)
Usage
- Upload an image using the web interface
- The system will analyze the face and return:
- Detected face shape
- Confidence scores for all categories
- Facial measurements (length, width, etc.)
- Annotated image with landmarks
Technical Details
- Framework: Flask
- Computer Vision: MediaPipe, OpenCV
- ML Model: Random Forest (scikit-learn)
- Image Processing: Smart preprocessing with face detection
- Deployment: Docker container optimized for Hugging Face Spaces
Model Performance
The model uses optimized features extracted from 468 facial landmarks and achieves high accuracy in face shape classification across diverse face types.
Requirements
- Python 3.10+
- MediaPipe
- OpenCV
- scikit-learn
- Flask
- NumPy
License
MIT License - feel free to use and modify for your projects.