This project implements a real-time facial recognition attendance system. The system utilizes JavaScript primarily for processing tasks, including importing models, converting images into AI data, and comparing live video frames for facial recognition. Additionally, users can capture attendance either through live video feed or by uploading photos, providing a swift and accurate attendance recording process.
- Real-time facial recognition
- Photo capture attendance recording
- Secure storage of attendance records
- Elegant presentation of results using canvas overlay
- Front-end: HTML5, CSS, JavaScript
- Back-end: Python, Flask , JavaScript
- Database: MySQL
- AI Model: Face-API
- Clone the repository:
git clone https://github.com/chaitanya566/Auto-Attendence-recorder.git
- Navigate to the project directory:
cd Auto-Attendence-recorder
- Install dependencies
- Navigate to the project directory and install Python dependencies:
pip install -r requirements.txt
- Set up MySQL database and configure connection details in the Flask app.
-
The project directory is structured as follows:
- data: Contains user-specific data and images.
- current_user: Stores temporary frames for current user processing.
- images: Holds user images organized by folders, each representing a user.
- database: Contains scripts or files related to database operations.
- scripts: Includes Python scripts for various functionalities.
- static: Stores static files such as CSS and JavaScript.
- templates: Holds HTML templates for the user interface.
- data: Contains user-specific data and images.
- User Account Creation
- Users need to create their accounts, which initiates the storage of their information in the data/images directory. Each user's folder is named after their username and contains their images for recognition
- Image Processing
- Execute
Camera_input.py
to capture frames and store them temporarily indata/current_user
. This process selects high-quality frames suitable for recognition.
- Execute
- Facial Recognition
- Open
Server.html
to initiate automatic attendance by comparing the captured frames with stored user images. The system utilizes AI model to identify users in real-time and record attendance seamlessly.
- Open
- Real-time Recognition: Users' names are dynamically updated to green upon successful recognition. The system provides an intuitive interface for users to mark attendance swiftly.
- Photo Upload: Users can also upload photos for attendance comparison. The system intelligently compares uploaded photos against stored data to generate attendance records accurately.
-
Flask - Web framework for Python
-
Flask-Cors - Extension for handling Cross-Origin Resource Sharing (CORS)
-
Flask-SocketIO - WebSocket support for Flask applications
-
asyncio - Asynchronous I/O in Python
-
websockets - Websockets library for Python
-
mysql-connector-python - MySQL connector for Python