Tiny-Face is an ultra-lightweight face detection model specifically designed for deployment on mobile and edge devices where computational resources are limited. Unlike conventional face detection models that prioritize accuracy at the cost of model size and inference speed, Tiny-Face achieves an optimal balance between detection performance and computational efficiency.

Building upon the core concepts of RetinaFace, Tiny-Face introduces several key optimizations that make it practical for real-world deployment on mobile phones, embedded systems, and IoT devices. The model is streamlined to use minimal memory and processing power while maintaining high precision in face detection across various challenging conditions.

GitHub Repository

Downloads GitHub Repo stars GitHub Repository

Key Features

  • Ultra-lightweight Architecture: Model sizes ranging from 1.4MB to 1.8MB, ideal for mobile deployment
  • Multiple Configurations: SlimFace, RFB, and MobileNet variants optimized for different resource constraints
  • Real-time Performance: Achieves real-time inference on mobile CPUs without GPU acceleration
  • Pretrained Models: Ready-to-use weights trained on WiderFace dataset for immediate deployment

Performance on WiderFace Dataset

Multi-scale Image Size

Models Pretrained on ImageNet Easy Medium Hard #Params(M) Size(MB)
SlimFace False 79.50% 79.40% 68.36% 0.343 1.4
RFB False 80.49% 81.51% 75.73% 0.359 1.5
RetinaFace True 87.69% 86.39% 80.21% 0.426 1.8

Original Image Size

Models Pretrained on ImageNet Easy Medium Hard #Params(M)
SlimFace False 87.10% 84.36% 67.38% 0.343
RFB False 87.09% 84.61% 69.22% 0.359
RetinaFace True 90.26% 87.48% 72.85% 0.426

Technical Implementation

The model architecture incorporates several optimization techniques:

  • Depthwise Separable Convolutions: Reduces computational cost while maintaining representational power
  • Feature Pyramid Network: Multi-scale feature extraction for detecting faces of various sizes
  • Efficient Anchor Design: Optimized anchor boxes specifically tuned for face detection tasks
  • Quantization-Friendly: Architecture designed to maintain accuracy after INT8 quantization

Use Cases

Tiny-Face is particularly well-suited for:

  • Mobile Applications: Face detection in camera apps, social media filters, and photo editing tools
  • Edge Computing: Real-time face detection on IoT devices and smart cameras
  • Embedded Systems: Integration into resource-constrained hardware for access control and monitoring
  • Offline Applications: Face detection without requiring cloud connectivity or GPU acceleration

Explore the GitHub repository for detailed setup instructions, training scripts, and deployment examples for various platforms including Android, iOS, and embedded Linux systems.