An open API service indexing awesome lists of open source software.

https://github.com/iam-salma/face-recognition-attendance-system

AI-based face recognition attendance system using OpenCV and Streamlit. Mark, view, and manage attendance with real-time webcam capture.
https://github.com/iam-salma/face-recognition-attendance-system

attendance-system face-recognition haarcascade opencv opencv-python python streamlit

Last synced: 2 months ago
JSON representation

AI-based face recognition attendance system using OpenCV and Streamlit. Mark, view, and manage attendance with real-time webcam capture.

Awesome Lists containing this project

README

          


ChatGPT Image Jul 20, 2025, 06_13_39 AM


Face Recognition Based Attendance System



Stars


Forks


Issues


Pull Requests

Last Commit

A real-time face recognition-based attendance system built using **Streamlit** for the user interface, **OpenCV** for face detection and recognition, and **Haar Cascade classifiers** for facial feature extraction. This system allows you to register students, train a face recognition model, and take or view attendance with ease.

---

## 🚀 Features

- 🧑‍🎓 Register students with facial image capture
- 🧠 Train model using OpenCV and Haar Cascades
- 🤖 Automatic attendance using webcam and face recognition
- ✍️ Manual attendance entry
- 📅 View attendance records by subject and date + percentage
- 🗑️ Delete student data from the system
- 🔈 Text-to-speech for better accessibility

---

## 🛠️ Tech Stack

- **Python 3.8+**
- **Streamlit** – GUI and user interactions
- **OpenCV** – Image processing and recognition
- **Haar Cascades** – Face detection
- **CSV** – Storage of student details and attendance logs

---

## 📁 Project Structure

```
📦face-recognition-attendance/
├── app.py # Main Streamlit app
├── takeImage.py # Capture and save student face
├── trainImage.py # Train recognition model
├── automaticAttendance.py # Detect and mark attendance
├── takemanually.py # Manual attendance input
├── view_attendance.py # Display attendance by subject/date
├── delete.py # Delete student and retrain
├── db.py # CSV-based student DB utilities
├── TrainingImage/ # Folder storing face images
├── TrainingImageLabel/ # Trained model file (e.g., .yml)
├── StudentDetails/ # CSV file for student info
├── Attendance/ # Attendance records
├── HaarCascade/haarcascade_frontalface_default.xml
```

---

## ▶️ How to Run

1. **Install dependencies**
```bash
pip install -r requirements.txt
```

2. **Run the app**
```bash
streamlit run app.py
```

3. **Use Interface**
- Register students
- Train model
- Take automatic or manual attendance
- View or delete records

---

## ✅ Requirements

- Webcam-enabled system
- Python 3.8 or higher

---

## 📌 Notes

- Make sure the `haarcascade_frontalface_default.xml` file is available in the correct path.
- After deleting a student, the model is retrained automatically.
- CSV files are used for storage – you can upgrade to a database like PostgreSQL if needed.

---

If you found this project helpful or interesting, please consider giving it a ⭐️ on GitHub — it motivates and helps others discover it! ✌️

ENJOY! 🎉