// Case Study / 2025

Face Track Pro:
AI Attendance System

A single-file face recognition attendance system that identifies up to 20 students simultaneously per frame — using CNN (GPU) or HOG (CPU) detection, with SQLite storage, Tkinter UI, and Excel/PDF/chart exports.

Python 3.10OpenCVface_recognitiondlib (CNN/HOG)SQLiteTkinteropenpyxlfpdfMatplotlib
Face Track Pro — Desktop App

Face Recognition Attendance — Tkinter Desktop UI

Up to 20

Faces per frame

CNN + HOG

Detection model

CUDA / dlib

GPU support

Completed

Status

01 — The Problem

Why I Built This

Universities and companies in Kurdistan still use manual attendance — paper sheets, roll calls, and prone-to-error processes that waste class time and allow proxy attendance.

Existing solutions were either expensive commercial software or simple QR-code apps that required students to actively scan something. A truly passive, camera-based system was missing.

02 — Architecture

System Design

Face Detection: dlib CNN model with automatic CUDA GPU detection — falls back to HOG on CPU-only machines. Processes every 2nd frame at 50% scale for performance.

Storage: SQLite with 5 tables — students, teachers, classes, class_students, and attendance records with session tracking.

UI & Exports: Tkinter desktop GUI with Matplotlib charts, Excel (openpyxl) and PDF (fpdf) export, and unknown visitor photo logging.

03 — Key Features

What It Can Do

20 Faces Simultaneously

Processes up to 20 faces per camera frame — handles full classroom size in one shot without individual scanning.

GPU-Accelerated CNN

Uses dlib's CNN face detector with CUDA support for real-time speed. Automatically detects GPU availability and falls back to HOG on CPU.

Complete Analytics

Matplotlib attendance charts, Excel spreadsheets with color-coded formatting, PDF reports, and unknown visitor photo archive.

04 — Data Model

SQLite Schema

students
teachers
classes
class_students
attendance

Explore Related Projects

The Gesture Recognition Engine uses the same AI/CV stack — real-time body tracking with a custom ML model.