https://github.com/xharshit/face-recognition-based-student-attendance-system-using-ml
Automated attendance system using face recognition with Python, OpenCV, and machine learning. Real-time detection, logging, and GUI support.
https://github.com/xharshit/face-recognition-based-student-attendance-system-using-ml
attendance-system computer-vision face-detection face-recognition keras machine-learning mtcnn-face-detection opnecv python tensorflow
Last synced: 3 months ago
JSON representation
Automated attendance system using face recognition with Python, OpenCV, and machine learning. Real-time detection, logging, and GUI support.
- Host: GitHub
- URL: https://github.com/xharshit/face-recognition-based-student-attendance-system-using-ml
- Owner: xHarshit
- License: mit
- Created: 2025-06-24T13:17:57.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-24T14:45:52.000Z (about 1 year ago)
- Last Synced: 2025-06-24T15:21:44.647Z (about 1 year ago)
- Topics: attendance-system, computer-vision, face-detection, face-recognition, keras, machine-learning, mtcnn-face-detection, opnecv, python, tensorflow
- Language: Python
- Homepage:
- Size: 92.1 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ๐ธ Face Recognition Based Student Attendance System Using ML
An AI-powered attendance system that uses face recognition to automatically mark students' attendance. Built with Python and Machine Learning, the system integrates face detection, encoding, and classification models to log attendance securely and efficiently.
---
## ๐ง Technologies Used
- Python
- OpenCV
- TensorFlow / Keras
- MTCNN for face detection
- FaceNet for face embeddings
- Support Vector Machine (SVM) for classification
- Tkinter (GUI)
- Firebase (optional)
- Pandas, NumPy
---
## ๐ Features
- ๐ฏ Real-time face detection and recognition
- ๐งโ๐ Auto-attendance logging with name and timestamp
- ๐ Dataset creation and embedding generation
- ๐๏ธ Secure model training and classification using SVM
- ๐ค Export attendance logs to Excel
- ๐ฅ๏ธ GUI interface using Tkinter
---
## ๐ Folder Structure
```
.
โโโ Dataset/ # Student face images
โโโ Images_GUI/ # UI and app icons
โโโ classifier/ # Trained SVM models
โโโ encodings/ # Face embeddings
โโโ architecture.py # FaceNet model structure
โโโ facenet_keras_weights.h5 # Pre-trained FaceNet weights
โโโ generateDataset.py # Script to capture student images
โโโ homepage.py # GUI application
โโโ recognizer.py # Face recognition and attendance logging
โโโ train_v2.py # Train SVM on embeddings
โโโ requirements.txt # Dependencies
```
---
## โ๏ธ Installation
1. Clone the repository:
```bash
git clone https://github.com/xHarshit/Face-Recognition-Based-Student-Attendance-System-Using-ML.git
cd Face-Recognition-Based-Student-Attendance-System-Using-ML
```
2. Install the dependencies:
```bash
pip install -r requirements.txt
```
3. Run the GUI application:
```bash
python homepage.py
```
---
## ๐ผ๏ธ Screenshots
1. Homepage

2. Face Recognition

3. Attendance Logging

---
## ๐งช How It Works
1. Use generateDataset.py to capture images of each student.
2. Train the classifier using train_v2.py.
3. Launch the GUI with homepage.py.
4. Recognizer detects faces from webcam and marks attendance in Excel.
---
## ๐ Future Enhancements
- Add liveness detection to prevent spoofing
- Create dashboard for admin analytics
- Add notification system for parents
- Mobile/web app integration for real-time access
---
## ๐ License
This project is licensed under the [MIT License](LICENSE). Feel free to use and modify it for your own learning or projects.