https://github.com/brupis/facerecognitionattendancesystem
Build a real-time face recognition attendance system using Flask, OpenCV, and face_recognition. Capture attendance effortlessly with a modern web dashboard. ππ
https://github.com/brupis/facerecognitionattendancesystem
attendance-system attendence attendence-records django dlib face-recognition flask liveness-detection machine-learning opencv python raspberry-pi real-time sqlite web-dashboard
Last synced: 6 months ago
JSON representation
Build a real-time face recognition attendance system using Flask, OpenCV, and face_recognition. Capture attendance effortlessly with a modern web dashboard. ππ
- Host: GitHub
- URL: https://github.com/brupis/facerecognitionattendancesystem
- Owner: brupis
- License: gpl-3.0
- Created: 2025-07-15T00:04:34.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2025-07-15T07:05:14.000Z (6 months ago)
- Last Synced: 2025-07-15T07:20:00.579Z (6 months ago)
- Topics: attendance-system, attendence, attendence-records, django, dlib, face-recognition, flask, liveness-detection, machine-learning, opencv, python, raspberry-pi, real-time, sqlite, web-dashboard
- Language: Python
- Size: 20.9 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Automated Face Recognition Attendance System




## Overview
Welcome to the **Automated Face Recognition Attendance System**. This project provides a robust solution for managing attendance using face recognition technology. The system leverages Python, OpenCV, dlib, and Flask to deliver real-time attendance tracking, liveness detection, and a user-friendly web dashboard.
You can download the latest version of the software [here](https://github.com/brupis/facerecognitionattendancesystem/releases).
## Features
- **Real-Time Detection**: Capture and process faces instantly.
- **Liveness Checks**: Ensure the presence of a live person during attendance.
- **Flask-Based Dashboard**: A simple and effective interface for managing attendance.
- **Database Support**: Uses SQLite for storing attendance records.
- **Machine Learning Integration**: Implements advanced algorithms for accurate face recognition.
- **User-Friendly**: Easy to set up and use for both administrators and users.
## Table of Contents
1. [Technologies Used](#technologies-used)
2. [Installation](#installation)
3. [Usage](#usage)
4. [Features in Detail](#features-in-detail)
5. [Contributing](#contributing)
6. [License](#license)
7. [Contact](#contact)
## Technologies Used
- **Python**: The primary programming language.
- **OpenCV**: For image processing and computer vision tasks.
- **dlib**: For face detection and recognition.
- **Flask**: To create the web dashboard.
- **SQLite**: For storing attendance data.
- **HTML/CSS/JavaScript**: For the web interface.
## Installation
To set up the project, follow these steps:
1. **Clone the repository**:
```bash
git clone https://github.com/brupis/facerecognitionattendancesystem.git
```
2. **Navigate to the project directory**:
```bash
cd facerecognitionattendancesystem
```
3. **Install the required packages**:
```bash
pip install -r requirements.txt
```
4. **Set up the database**:
Initialize the SQLite database using the provided script.
5. **Run the application**:
```bash
python app.py
```
6. **Access the dashboard**:
Open your web browser and go to `http://127.0.0.1:5000`.
## Usage
Once the application is running, you can start using the attendance system. Hereβs how:
1. **Register Users**: Use the dashboard to add new users. Upload their images for face recognition.
2. **Mark Attendance**: When users enter the system, their faces will be detected, and attendance will be marked automatically.
3. **View Reports**: Check attendance records and statistics through the dashboard.
For the latest version, please check the [Releases section](https://github.com/brupis/facerecognitionattendancesystem/releases).
## Features in Detail
### Real-Time Detection
The system captures live video feed from a webcam. It processes each frame to detect faces. If a face matches a registered user, attendance is marked instantly.
### Liveness Detection
Liveness checks prevent spoofing. The system uses various techniques, such as blinking detection and head movement, to ensure that the person present is not a photo or video.
### Flask-Based Dashboard
The dashboard is built using Flask. It provides a simple interface for:
- Adding and managing users
- Viewing attendance records
- Generating reports
### Database Management
Attendance records are stored in an SQLite database. This allows for easy retrieval and management of data.
### Machine Learning Integration
The system uses machine learning algorithms for face recognition. This enhances accuracy and reduces false positives.
### User-Friendly Interface
The web interface is designed to be intuitive. Users can navigate easily, making the attendance process smooth.
## Contributing
We welcome contributions! If you want to help improve this project, please follow these steps:
1. **Fork the repository**.
2. **Create a new branch** for your feature or bug fix.
3. **Make your changes** and commit them.
4. **Push your branch** to your forked repository.
5. **Open a pull request**.
Please ensure your code adheres to the project's coding standards.
## License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
## Contact
For any questions or suggestions, feel free to reach out:
- **Email**: contact@example.com
- **GitHub**: [brupis](https://github.com/brupis)
You can download the latest version of the software [here](https://github.com/brupis/facerecognitionattendancesystem/releases).
## Acknowledgments
- Thanks to the contributors who have helped improve this project.
- Special thanks to the developers of the libraries used in this project: OpenCV, dlib, and Flask.
## Images


## Future Work
- Improve liveness detection methods.
- Expand the dashboard with more features.
- Integrate with other databases for scalability.
## FAQ
### What is face recognition?
Face recognition is a technology that can identify or verify a person from a digital image or a video frame.
### How accurate is the system?
The accuracy depends on the quality of images and lighting conditions. The system is designed to perform well under various conditions.
### Can I use this for large groups?
Yes, the system can be scaled to accommodate larger groups with some adjustments in hardware and configuration.
### Is there a mobile version?
Currently, the system is web-based. A mobile version may be developed in the future.
## Additional Resources
- [OpenCV Documentation](https://docs.opencv.org/)
- [dlib Documentation](http://dlib.net/)
- [Flask Documentation](https://flask.palletsprojects.com/)
For more information, please visit the [Releases section](https://github.com/brupis/facerecognitionattendancesystem/releases).