https://github.com/singhxtushar/automark
This is a Smart Attendance System designed using a pre-trained model called Haar-Cascade Classifier, OpenCV and other various Dependencies to mark the attendance in a smarter way and saves the lecture time.
https://github.com/singhxtushar/automark
haar-cascade-classifier kneighborsclassifier opencv pickle pywin32 smart-attendance-system streamlit-webapp
Last synced: 8 months ago
JSON representation
This is a Smart Attendance System designed using a pre-trained model called Haar-Cascade Classifier, OpenCV and other various Dependencies to mark the attendance in a smarter way and saves the lecture time.
- Host: GitHub
- URL: https://github.com/singhxtushar/automark
- Owner: SINGHxTUSHAR
- License: mit
- Created: 2024-05-11T08:14:37.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-05-11T09:20:02.000Z (over 1 year ago)
- Last Synced: 2024-05-12T09:39:29.171Z (over 1 year ago)
- Topics: haar-cascade-classifier, kneighborsclassifier, opencv, pickle, pywin32, smart-attendance-system, streamlit-webapp
- Language: Python
- Homepage:
- Size: 7.41 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://github.com/SINGHxTUSHAR/AutoMark/blob/master/LICENSE)
[](https://GitHub.com/SINGHxTUSHAR/AutoMark/graphs/contributors/)
[](https://GitHub.com/SINGHxTUSHAR/AutoMark/issues/)
[](https://GitHub.com/SINGHxTUSHAR/AutoMark/pulls/)
[](http://makeapullrequest.com)[](https://GitHub.com/SINGHxTUSHAR/AutoMark/watchers/)
[](https://GitHub.com/SINGHxTUSHAR/AutoMark/network/)
[](https://GitHub.com/SINGHxTUSHAR/AutoMark/stargazers/)[](https://open.vscode.dev/SINGHxTUSHAR/AutoMark)
# AutoMark ππ»ββοΈπ:
AutoMark is a smart Attendance system that uses the OpenCV and Haar-Cascade Classifier to mark the attendance of the students.
This project implements a smart attendance system for students using OpenCV (Open Source Computer Vision Library) and a pre-trained Haar cascade classifier. Here's a breakdown of the functionalities:
### `System Components:`
* Camera: Captures real-time video feed of the students.
* OpenCV Libraries: Used for image processing tasks like frame grabbing, face detection, and drawing bounding boxes.
* Haar Cascade Classifier: A pre-trained model that efficiently detects frontal human faces within the video frames.
* Student Database: Stores student information like IDs, names, and potentially facial images (optional for enhanced recognition).
* Attendance Marking System: Logs attendance data, typically with timestamps and student IDs. This can be a simple text file, a spreadsheet, or integrated with existing attendance management software.### `Working Process:`
* Real-time Video Capture: The system continuously captures video frames from the camera.
* Face Detection: OpenCV utilizes the Haar cascade classifier to identify and locate faces within each frame.
* Student Recognition (Optional): If the system stores student facial data, additional algorithms (not necessarily Haar cascade) might be used to recognize specific students within the detected faces.
* Attendance Marking: Based on detected faces (and potentially recognized students), the system marks attendance in the database. This might involve recording timestamps and student IDs (or names).
* Visualization (Optional): The system can display the video feed with bounding boxes around the detected faces for real-time monitoring purposes.### `Benefits:`
* Automated Attendance: Eliminates the need for manual attendance checks, saving time and reducing errors.
* Scalability: The system can handle multiple students simultaneously.
* Reduced Contact (Optional): If facial recognition is implemented, students might not need to physically interact with a device to register attendance.
* Cost-effective: Leverages open-source libraries like OpenCV, making it a budget-friendly solution.### `Limitations:`
* Haar cascade limitations: The pre-trained model might struggle with angled faces, poor lighting conditions, or occlusions (e.g., hats, masks).
* Privacy Concerns: Storing student facial data raises privacy considerations that need to be addressed with proper security measures and user consent.## Commands βοΈ:
* This will be used to add face to dataset and face will be recorded via webcam.
```bash
python Add_faces.py
```
* Record attendance of added face , press 'o' to record attendance and it will create csv file corresponding to date present , name and timestamp will be recorded.
```bash
python test.py
```
* Attendance will be displayed here and can be downloaded in csv format.
```bash
streamlit run app.py
```## Output π:
For more output images visit: Link


## Reference π§§:
* Classifier Documentation
* Streamlit Documentation
* Research Paper Documentation## Requirementsπ» :
Ensure you have the following dependencies installed:
- Python (version 3.9.x || 3.12.x)
- IDE: VS-CODE or collab
- Virtual-environment(venv)
- Other dependencies (refer to the requirements.txt)You can install the required Python packages using:
```bash
pip install -r requirements.txt
```## Setup πΏ:
- Clone the repository:
```bash
git clone https://github.com/SINGHxTUSHAR/AutoMark.git
cd AutoMark
```
- Create a virtual environment (optional but recommended):
```bash
python -m venv venv
```
- Activate the virtual environment:
- On Windows:
```bash
venv\Scripts\activate
```
- On macOS/Linux:
```bash
source venv/bin/activate
```## Contributing π:
If you'd like to contribute to this project, please follow the standard GitHub fork and pull request process. Contributions, issues, and feature requests are welcome!## Suggestion π:
If you have any suggestions for me related to this project, feel free to contact me at tusharsinghrawat.delhi@gmail.com or LinkedIn.## License π:
This project is licensed under the MIT License - see the LICENSE file for details.