Skip to content
  • Live lab

2023 · Computer vision · Face recognition · Academic project

Smart Attendance System

An automated computer-vision attendance system tested across lighting and pose variation, with biometric privacy and responsible-AI considerations built into the evaluation.

  • Python
  • OpenCV
  • Deep learning
  • Face recognition
  • NumPy
  • Pandas

Headline

Lighting × pose

Recognition tested across conditions

01 · Problem

Problem

Manual attendance is repetitive, slow and vulnerable to proxy attendance. The project explored whether face recognition could automate identity verification while staying aware of the limits and risks of biometric identification. The engineering question was not simply whether a face can be recognised, but whether an automated pipeline can work under realistic conditions, and what happens when it does not.

02 · Approach

Approach

System design

Camera input, frame processing, face detection, face preprocessing, feature extraction, identity matching, a confidence threshold, then an attendance decision. Confident matches become a timestamped attendance event; everything else becomes unknown or goes to human review. Repeat detections of the same person are ignored.

Method

A sequential computer-vision pipeline: capture frames, detect faces, extract and preprocess face regions, generate and compare facial representations, calculate identity similarity, apply a recognition threshold, record attendance only when the decision is confident enough, and flag uncertain cases instead of forcing a match. It was tested across variations in lighting, facial pose, recognition confidence and matching threshold.

Key concept

Accuracy is not the whole evaluation

A biometric system has to be judged on false acceptance, false rejection, robustness to conditions, differences between groups of people, sensitivity to the threshold, privacy and human oversight, not on one overall percentage. A lower threshold accepts more people, including wrong ones; a higher one misses real people.

Live lab

Try it

What you're looking at

Two modes: a simulation with drawn people under different lighting and poses, and a live mode that runs a face-detection and recognition model in your browser. Neither reports the original system’s accuracy.

Loading the demo…

03 · Results

Results

The resulting pipeline demonstrated real-time face detection, identity matching and attendance recording. Performance was sensitive to environmental conditions: recognition was strongest in favourable lighting with a frontal pose and degraded as lighting and pose became more challenging. That reinforced testing a vision system against its specific operating conditions instead of relying on one aggregate figure. No accuracy numbers are quoted here because the original test results are not reproduced on this page.

04 · Limitations

Limitations

What it does not show

The original Python implementation is not embedded here. The interactive demonstration on this page is a separate browser implementation: one mode is a simulation with drawn people whose score penalties are illustrative, and the other runs a different face-detection and recognition model in your browser. Neither reports the original system's accuracy, and false-match and bias evaluation are not part of the demo.

Lessons

Lighting and pose change the quality of the facial representation available. Thresholds are engineering decisions with trade-offs. A system that works in ideal conditions can still fail in deployment. And a useful deployment has to answer when it fails, how confident each decision is, what happens when it is wrong, what data it processes, and who is affected.

Responsible AI

A structured ethical review covered privacy and biometric data, consent, false recognition, false rejection, bias, surveillance and human oversight, treated as part of the engineering process. Low-confidence decisions are reviewable instead of being treated as truth.

All work