AI automation

A facial-recognition attendance system in Python

An applied computer-vision project that automates attendance with real-time face recognition — Python, OpenCV, DLIB and a Streamlit dashboard.

Client
Applied ML project
Industry
Education / Applied AI
Stack
Python · OpenCV · DLIB · scikit-learn · Streamlit · NumPy
FACE RECOGNITIONReal-time
Real-time face recognition
0 manual roll-call

Representative applied-AI/ML project from the owner’s portfolio — included to show hands-on machine-learning range. Confirm details before it stays live (see README).

The problem

Manual attendance — calling names or passing a sheet — is slow, error-prone and easy to game. The goal was to automate it: identify who’s present from a camera feed, accurately and in real time, and record it without any manual roll-call.

The approach

I built a computer-vision pipeline around face detection and recognition:

  • Enrolment — capture reference images per person and compute face encodings (DLIB’s deep-learning face embeddings).
  • Detection & recognition — process the live camera feed with OpenCV, detect faces frame by frame, and match each against the known encodings.
  • Attendance logging — when a known face is recognized, mark the person present once and write a timestamped record automatically.
  • Dashboard — a Streamlit interface to enrol people, run live recognition, and view/export the attendance log.

The stack

Python with OpenCV and DLIB for the vision pipeline, scikit-learn and NumPy for the matching logic, and Streamlit for the interactive dashboard.

The result

A working system that turns a camera feed into accurate, real-time attendance with zero manual roll-call — demonstrating applied machine learning end to end, from data capture and feature encoding to a usable interface. The same computer-vision and ML fundamentals underpin the AI-automation work I build for clients.

Next step

Have a similar challenge?

Book a free 20-minute call. We'll map the fastest path from where you are to a working system — no pressure, no jargon.