A Cloud-Integrated, Edge-Optimized Attendance Tracking System Using Facial Recognition

Group 7 - ICT/20 Batch 5

Faculty of Technology, University of Sri Jayewardenepura

About the Project

This project focuses on developing and evaluating an automated attendance tracking system leveraging a hybrid architecture. It combines on-device facial embedding extraction on a low-powered Raspberry Pi with cloud-based recognition and robust data management using AWS. The system aims to address the inefficiencies and inaccuracies of traditional attendance methods while optimizing for cost, privacy, and scalability.

The Problem We Address

Traditional attendance methods (manual logs, RFID cards) are often inefficient, prone to errors (forgotten cards, manual mistakes), time-consuming, and susceptible to fraudulent practices like buddy punching. Purely cloud-based facial recognition systems can suffer from high bandwidth usage, latency, and privacy concerns due to constant raw image transmission. Purely edge-based systems face limitations in processing power for large-scale database comparisons and managing reference data across multiple devices. Our project aims to develop a system that balances edge and cloud processing to mitigate these issues, achieving high accuracy, efficiency, scalability, and security while ensuring real-time feedback and mitigating privacy risks.

Our Solution: A Hybrid Approach

Our system employs a hybrid edge-cloud architecture:

System Architecture

The system follows a distributed architecture dividing tasks between the edge device and the cloud.

System Architecture Diagram
High-Level System Architecture

(Include diagrams for Data Flow, Process Flow, and Database Schema if you have them and want to show them.)

Key Features

Technology Stack

Edge Device (Raspberry Pi)

  • Hardware: Raspberry Pi 4 Model B (8GB), Pi Camera v2
  • OS: Raspberry Pi OS (64-bit)
  • Software: Python
  • Libraries: OpenCV, TFLite Runtime, Paho-MQTT, Requests, Picamera2, Tkinter, Pillow

Cloud Backend (AWS)

  • API Gateway (REST API for embeddings)
  • Lambda (Python for recognition logic)
  • DynamoDB (NoSQL database for user data, embeddings, attendance logs)
  • IoT Core (MQTT for real-time feedback)
  • IAM (for secure access control)
  • S3 (Potentially for storing enrollment images - optional)

Enrollment & Admin Dashboard

  • Enrollment App: Python, Flask, HTML, CSS, JavaScript
  • Admin Dashboard: Python, Flask, HTML, CSS, JavaScript, Boto3

Machine Learning Model

  • Base Architecture: FaceNet (inspired by MobileNetV2)
  • Framework: Keras/TensorFlow
  • Deployment Model: TensorFlow Lite (TFLite) with float16 quantization
  • Training Dataset: Subset of VGGFace2, custom augmentation

The Team (Group 7)

JPB

J. P. Balasooriya

ICT/20/810

Networking Technology

Key Contributions: Lead on-device software, AWS cloud backend architecture & configuration, enrollment app, admin dashboard, ML model training & evaluation.

BVST

B. V. S. Tharaka

ICT/20/943

Software Technology

(No Specific Contributions worth mentioning)

JTNP

J. T. N. Perera

ICT/20/901

Software Technology

(Nothing worth mentioning, other than yapping)

Supervisors

Ms. Upeksha Hansani (Internal Supervisor), Lecturer, Department of ICT, Faculty of Technology, USJ

Dr. Nimal Skandhakumar (External Supervisor)

Conclusion & Future Work

This project successfully demonstrates a cloud-integrated, edge-optimized attendance tracking system using facial recognition. The hybrid architecture effectively balances on-device processing for privacy and efficiency with cloud capabilities for scalability and robust data management. The system achieves real-time performance, addresses key limitations of traditional and purely centralized/decentralized systems, and provides a practical solution for automated attendance. The individual contributions, particularly in developing the edge software, cloud backend, enrollment/admin tools, and the ML model pipeline, were integral to realizing the project's objectives.

Future Work