Custom Face Authentication System

Domains

AI
Security
Backend
Research
AcademicJuly 1, 2021 - December 1, 2021
Custom Face Authentication System

Tech Stack

Python
Keras
Scikit-Learn
MTCNN
ResNet-50
Transfer Learning
Git

Project Summary

Abstract

Authentication systems must optimize for the costliest failure mode: incorrect acceptance, not just headline accuracy.

This project built a biometric verification pipeline using MTCNN-based face localization, ResNet-50 transfer learning, and cosine-distance matching on face embeddings.

The evaluation focused on threshold tuning across a curated dataset, with the final operating point selected to eliminate false positives while preserving strong overall accuracy.

What I Built

  • The embedding-based pipeline achieved 98.93% accuracy with an F1 score of 0.97 on 95 evaluation images.
  • Threshold tuning across 0.350 to 0.450 showed that 0.375 preserved accuracy while eliminating false positives.

Impact

  • Optimized the system for the failure mode that matters most in authentication: incorrect acceptance.
  • Shows applied computer-vision work with a security-first evaluation mindset rather than benchmark chasing alone.

Page Info

Face Detection and Alignment

Used MTCNN to detect face bounding boxes and landmarks such as eyes, nose, and mouth so the authentication stage compared faces instead of noisy background regions.

/face_authentication.png

Embedding-Based Matching

Repurposed a pre-trained ResNet-50 model by removing the final classification layer and extracting dense 2048-dimensional face embeddings.

/face_authentication.png

Security-Oriented Thresholding

Compared cosine distances across thresholds from 0.350 to 0.450 and selected 0.375 to preserve high accuracy while reducing false positives to zero.

/face_authentication.png

    Custom Face Authentication System | Vimal Rajesh | Applied AI and Platform Engineer