Skip to content
All projects

Computer Vision · ML

Facial Recognition Attendance

Replaced manual sign-in at KTP meetings with face detection and identity verification, making attendance up to 80% faster and more accurate.

Role
Solo
When
2025
Stack
PythonOpenCVface-recognitionNumPyPandas

TL;DR

  • Automated attendance for KTP meetings: a camera checks members in instead of a sign-in sheet.
  • Detection and identity verification with OpenCV and the face-recognition library.
  • Up to 80% faster and more accurate than the manual sign-in it replaced.
Faster attendance
up to 80%

The problem

Manual sign-in at chapter meetings was slow and error-prone, and the records still had to be cleaned up afterward.

How it works

  1. Enrollment. Each member's reference photo is encoded into a face embedding once.
  2. Detection. OpenCV reads frames from the camera, and faces are located in each frame.
  3. Verification. Each detected face is embedded and compared against the enrolled set. The closest match under a distance threshold is accepted.
  4. Logging. Recognized members are written to an attendance record with Pandas, ready to export.

Try the first stage

The demo below rebuilds just the detection stage for the browser with a tiny BlazeFace model. By design, it doesn't identify anyone. Recognition requires enrolled face data, and that doesn't belong on a public website.

Live demo

Real-time face detection

The detection stage of my attendance system, rebuilt for the browser. It finds faces and landmarks in your webcam feed. It does not identify anyone.

model
BlazeFace (short range)
size
~230 KB
runtime
MediaPipe · GPU

Uses your camera locally. Frames are processed on your device and never uploaded or stored.

Faces
—
Inference
—
FPS
—
Runs 100% in your browser. Nothing you provide leaves your device.

Trade-offs

  • Privacy. Face data is sensitive. Embeddings rather than raw photos, local processing, and opt-in enrollment matter as much as accuracy.
  • Threshold tuning. A strict threshold rejects real members in bad lighting; a loose one accepts look-alikes. The right setting depends on the room and the camera.

Next project

Early-Warning System for Assisted Living