Welcome to the Attendance System with Face Recognition repository! This project serves as a Proof of Concept (POC) web application that showcases the application of facial recognition technology for efficient attendance management. By leveraging the power of facial recognition, this web application provides a streamlined solution for tracking attendance within an organization. Specifically designed for companies, it offers an integrated platform to manage employee attendance effectively.
- Introduction
- Functionality Supported
- Technologies Used
- Recognition Process
- Usage
- Project Documents
- Contributing
- License
This repository houses a web application developed to demonstrate the feasibility of automating attendance management using facial recognition technology. It offers administrators the ability to register new employees, upload their photos for training the model, and subsequently track attendance efficiently. The system enhances employee experience by allowing them to view their personal attendance records.
- Admin and Employee Login: Secure login for administrators and employees.
- Register New Employees: Admins can register new employees within the system.
- Add Employee Photos: Admins can upload employee photos to train the facial recognition model.
- Train the Model: Admins can train the model to recognize registered employees.
- Attendance Reports: Admins can access detailed attendance reports with filtering options.
- View Personal Attendance Reports: Employees can view their own attendance records.
The project leverages various technologies for accurate and efficient face recognition:
- OpenCV: Open-source computer vision and machine learning library.
- Dlib: C++ library containing machine learning algorithms.
- face_recognition: A library by Adam Geitgey for simplified face recognition.
- Django: Python framework for web development.
- scikit-learn: Machine learning library for classification.
- Face Detection: Dlib's HOG facial detector identifies faces within images.
- Facial Landmark Detection: Dlib's 68-point shape predictor enhances recognition accuracy.
- Extraction of Facial Embeddings: The face_recognition library extracts unique facial embeddings.
- Classification of Unknown Embeddings: Linear SVM classifies unknown embeddings for recognition.
To run the web application locally:
- Clone this repository.
- Navigate to the project directory.
- Install dependencies using
pip install -r requirements.txt
. - Configure settings and database using Django commands.
- Run the development server:
python manage.py runserver
.
Explore the following project documents for additional insights:
- Project Demo Video
- Poster
- Presentation Slides
- Project Report
- Software Requirement Specification (SRS) Document
- Software Testing Document (STD) Document
Contributions are welcome! If you have improvements or additional features to suggest, please follow these steps:
- Fork this repository.
- Create a new branch for your feature:
git checkout -b feature/new-feature
. - Add your changes.
- Commit your changes:
git commit -m 'Add new feature'
. - Push to your branch:
git push origin feature/new-feature
. - Submit a pull request.
This project is open-source and available under the MIT License. Feel free to use, modify, and distribute the code for educational purposes.
With the Attendance System with Face Recognition repository, attendance management is reimagined through the power of facial recognition, offering a cutting-edge solution for modern organizations seeking efficient, accurate, and user-friendly attendance tracking.