--- 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 1. **Face Detection**: Uses MediaPipe to detect and extract facial landmarks 2. **Feature Extraction**: Calculates key facial measurements and ratios 3. **ML Classification**: Uses a trained Random Forest model to predict face shape 4. **Results**: Returns face shape, confidence scores, and facial measurements ## API Endpoints - `POST /analyze` - Upload an image for face shape analysis - `GET /` - Web interface for image upload - `GET /video_feed` - Real-time video feed (if camera available) ## Usage 1. Upload an image using the web interface 2. 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.