PriscilaProgramer07 / Facial_Recognition_Attendance_System

0 stars 0 forks source link

Face Attendance Recognition System

Overview

The Face Attendance Recognition System is an end-to-end solution that automates attendance logging using facial recognition technology. This project includes a fully integrated user interface, data storage, and cloud-based machine learning for facial recognition. It is designed to streamline attendance tracking for educational institutions or organizations.

Features

Click for access: https://priscilaprogramer07-facial-recognition-a-dashboardinicio-agrhui.streamlit.app/

Technologies Used

Project Structure

Facial_Recognition_Attendance_System/

├── Dashboard/

│ ├── dashboard.py # Main Streamlit app

│ ├── login.py # Authentication and session management

│ ├── usuarios.csv # User data CSV (now pulled from GitHub)

│ └── utils.py # Utility functions for handling DynamoDB operations

├── Database/

│ ├── jsons/

│ │ ├── courses.json # Sample data for courses

│ │ └── students.json # Sample data for students

│ ├── populate_data.py # Script for populating DynamoDB tables

├── Pages/

│ ├── inicio.py # Page for viewing the student list

│ ├── pagina1.py # Attendance page

│ ├── pagina2.py # New student registration page

│ ├── pagina3.py # Attendance report page

│ └── pagina4.py # About page

└── requirements.txt # Python package dependencies

Setup Instructions

Prerequisites

Step-by-Step Guide

  1. Clone the repository:

git clone https://github.com/your-repo/Facial_Recognition_Attendance_System.git

cd Facial_Recognition_Attendance_System
  1. Set up a virtual environment (recommended):
    
    python -m venv .venv

source .venv/bin/activate # On Windows use .venv\Scripts\activate


3.  **Install dependencies**
```bash
pip install -r requirements.txt
  1. Set up AWS credentials:

Ensure your AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, and AWS_DEFAULT_REGION are set as environment variables. You can add them to your ~/.bashrc, ~/.zshrc, or use a .env file.

  1. Run the Streamlit app:
    streamlit run Dashboard/dashboard.py

Usage

  1. Login: Enter your credentials to access the dashboard.

  2. Attendance Marking: Use the camera input to capture an image and mark attendance.

  3. Attendance Reports: View and download attendance summaries for specific date ranges.

  4. New Student Registration: Add new student details to the system.

  5. Logout: Use the logout button to end your session.

Sample Data

Use the provided JSON files in Database/jsons/ to populate your database for testing:

Security Considerations

Future Improvements

Author

Developed by

AWS Commands

Install aws-shell


pip  install  aws-shell

Configure AWS CLI


aws  configure

Create a Collection on AWS Rekognition


aws  rekognition  create-collection  --collection-id  facerecognition_collection  --region  us-east-1

Create a Table on DynamoDB


aws  dynamodb  create-table  --table-name  facerecognition  \

--attribute-definitions  AttributeName=RekognitionId,AttributeType=S  \

--key-schema  AttributeName=RekognitionId,KeyType=HASH  \

--provisioned-throughput  ReadCapacityUnits=1,WriteCapacityUnits=1  \

--region  us-east-1

Create an S3 Bucket


aws  s3  mb  s3://bucket-name  --region  us-east-1