Automated Attendance System

Overview

The Automated Attendance System streamlines attendance tracking using facial recognition and machine learning. The system comprises a Flutter-based frontend, a Flask-powered backend, and leverages OpenCV, face_recognition, TensorFlow, and Keras for facial recognition and machine learning.

Components

1. Frontend (Flutter)

  • Create a natively compiled application for mobile, web, and desktop platforms with a single codebase.
  • Ensure a consistent user experience across different devices.

2. Backend (Flask)

  • Develop a robust API for communication between the frontend and backend server.
  • Handle image upload, model training, and attendance tracking.

3. Facial Recognition (OpenCV and face_recognition)

  • Utilize OpenCV and face_recognition libraries for accurate and efficient face detection and recognition.

4. Machine Learning Model (TensorFlow/Keras)

  • Build a Convolutional Neural Network (CNN) with TensorFlow and Keras for facial recognition.

Usage

  1. Frontend Interaction:

    • Users upload images through the Flutter application.
  2. Backend Processing:

    • Flask processes image data, detects faces, and performs facial recognition.
  3. Facial Recognition:

    • OpenCV and face_recognition libraries identify faces.
    • A trained machine learning model matches detected faces.
  4. Attendance Tracking:

    • The system records attendance based on recognized faces.

Installation

  1. Clone the repository:
    git clone https://github.com/OlyadTemesgen/automated-attendance-system.git