The Attendance Management System is a Python-based application that leverages face recognition technology to automate the process of tracking student attendance. This project uses OpenCV for face detection and recognition, along with a user-friendly graphical interface built with Tkinter. It includes features for capturing images for training, real-time face recognition, and managing attendance records efficiently.
- Face Recognition: Automatically recognize students' faces and mark their attendance.
- Image Capture: Capture and save images for training the recognition model.
- Manual Attendance: Option to manually fill attendance records.
- CSV Export: Generate attendance reports in CSV format.
- Database Integration: Store attendance records in a MySQL database.
- Python
- OpenCV
- Tkinter
- NumPy
- Pandas
- MySQL
- Pillow
git clone https://github.com/yourusername/attendance-management-system.git
cd attendance-management-system
Ensure Python is installed on your system, then install the necessary dependencies:
pip install -r requirements.txt
- Create a MySQL database to store attendance records.
- Update the database connection details in the code as needed.
Download the Haarcascade XML file for face detection from the OpenCV GitHub repository and place it in the project directory.
- Run
main_Run.py
to open the GUI. - Enter the student's enrollment number and name.
- Click on "Take Images" to capture their face images.
- After capturing images, click on "Train Images" to train the face recognition model.
- Select "Automatic Attendance" to start the face recognition process using the webcam.
- Use the "Manually Fill Attendance" option to manually fill attendance records.
- Access the admin panel to view the list of registered students and their details.
Attendance Management System using Face Recognition/
│
├── TrainingImage/ # Directory to store training images
├── TrainingImageLabel/ # Directory to save trained model
├── StudentDetails/ # Directory to save student details CSV
├── Attendance/ # Directory to save attendance records
├── haarcascade_frontalface_default.xml # Haarcascade file for face detection
├── requirements.txt # Required Python packages
├── main_Run.py # Main application file
├── training.py # Script for training the face recognition model
├── testing.py # Script for testing face recognition
├── mini_app.py # Simple GUI application for capturing images
├── app.py # Streamlit app for attendance visualization
└── README.md # Project documentation
Contributions are welcome! If you have suggestions for improvements or additional features, feel free to fork the repository and submit a pull request.
This project is licensed under the MIT License - see the MIT file for details.
Special thanks to the following:
- OpenCV for face detection and recognition functionalities.
- Tkinter for GUI development.
- NumPy and Pandas for data manipulation and analysis.
- MySQL for database management.
For any questions or issues, feel free to contact [email protected].