🚀 Introduction:
Inspired by how streaming platforms measure actor screen time, I built a face recognition system from scratch. This project detects faces in a movie, groups them into characters, and calculates how long each face appears on screen.
🛠️ Tech Stack:
Python (OpenCV, Matplotlib)
RetinaFace for face detection
FaceNet for face recognition
DBSCAN for clustering
Jupyter Notebook for development
📚 Approach:
Read video frame-by-frame using OpenCV
Detect faces using RetinaFace
Generate embeddings using FaceNet
Cluster similar faces
Ask user to label clusters manually
Compute screen time per face
📈 What I Learned:
Practical pipeline development in computer vision
Face detection vs. recognition trade-offs
Using unsupervised learning to cluster images
🎁 Results:
Final output shows face clusters and their screen time in visual plots.
Face images saved and labeled.
Project ready for real-world analysis use cases.
🔗 Check it out: GitHub Repo
Top comments (0)