An Attendance system which detracts face and takes attendance. It makes with Python.
developed by Tarak's Team.
- Detects faces in real-time using the webcam feed.
- Compares the detected faces with known faces to recognize individuals.
- Tracks attendance by matching the recognized faces with a pre-defined list of known faces.
- Records attendance in a CSV file with the format "YYYY-MM-DD.csv", where each row represents an attendance entry.
- Python 3.x
- Clone the repository or download the code files.
- Install the required dependencies using the following command:
pip install -r requirements.txt
This command will read the requirements.txt
file and install the necessary modules (opencv-python
, face_recognition
, numpy
).
- Place the images of the known individuals in the "photos" directory. Ensure that each image contains only one face.
- Update the
known_faces_names
list with the names and relevant information of the known individuals. - Run the script using the following command:
python main.py
The webcam feed will open, and faces detected in real-time will be compared with the known faces.
If a recognized face matches a known face, their attendance will be marked in the CSV file for the current date.
Press 'q' to stop the program and close the webcam feed.
The attendance records for each day will be saved in separate CSV files with the format "YYYY-MM-DD.csv".
- You can modify the code to include additional features or customize the user interface.
- Adjust the window padding, font, font size, and colors according to your preferences.
- The accuracy of face recognition depends on the quality of the input images and environmental conditions (lighting, angles, etc.).
- The script assumes that each person's image contains only one face.
- In multi-face scenarios, the script may recognize the most similar face from the known faces.
- Large-scale deployment may require additional optimizations and considerations.
This project is licensed under the MIT License.
- This script was developed based on the
face_recognition
library by Adam Geitgey. - The script was created as a demonstration project for educational purposes.
Feel free to update the README.md file with any additional information or instructions as per your requirements.