https://github.com/askitendo/face-attendence-python
A Facial Recognition attendance taking app working on python flask
https://github.com/askitendo/face-attendence-python
Last synced: 9 months ago
JSON representation
A Facial Recognition attendance taking app working on python flask
- Host: GitHub
- URL: https://github.com/askitendo/face-attendence-python
- Owner: AskitEndo
- License: mit
- Created: 2025-01-24T15:24:12.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-01-24T15:33:29.000Z (11 months ago)
- Last Synced: 2025-02-03T21:58:07.904Z (11 months ago)
- Language: Python
- Size: 989 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ๐ธ๐ค Face Recognition Attendance System
A web-based attendance system that uses face recognition to make attendance fun, fast, and foolproof! Built with ๐ Flask and ๐ป OpenCV, itโs time to wave goodbye to manual registers and say hello to the future. ๐
## ๐ฏ Features
- ๐ **Real-time Face Detection & Recognition** โ Smile, you're on camera!
- ๐ฅ **User-Friendly Registration** โ Add new users effortlessly with live face capture.
- โณ **Automatic Attendance Marking** โ No more roll calls.
- ๐ฎ๏ธ **Glass Morphism UI** โ Itโs not just smart; itโs pretty.
- ๐ **Real-Time Updates** โ See attendance as it happens.
- ๐ **CSV-Based Records** โ Attendance data you can trust.
- โ **AM/PM Time Format** โ Because we like to keep it classic.
- ๐ **Responsive Design** โ Looks good on any device.
## ๐ง Tech Stack
| **Component** | **Technology** |
| ----------------------- | ------------------------------- |
| ๐ง **Backend** | Python, Flask |
| ๐ต๏ธ **Computer Vision** | OpenCV, Haar Cascade Classifier |
| ๐ง **Machine Learning** | scikit-learn (KNN Classifier) |
| ๐จ **Frontend** | HTML, CSS, JavaScript |
| ๐ **Data Handling** | Pandas, NumPy |
| ๐ **Model Storage** | joblib |
## ๐ง Prerequisites
- Python 3.8 or higher ๐ค
- A webcam ๐ผ
- A modern web browser (preferably Chrome/Firefox) ๐
## ๐ Installation
1. **Clone the repository**:
```bash
git clone https://github.com/AskitEndo/Face-Attendence-python
cd face_recognition_flask
```
2. **Create and activate a virtual environment**:
```bash
python -m venv .venv
# On Windows
.\.venv\Scripts\Activate.ps1
# On Linux/Mac
source .venv/bin/activate
```
3. **Install dependencies**:
```bash
pip install -r requirements.txt
```
## ๐ Usage
1. **Start the application**:
```bash
python app.py
```
or
```bash
#for direct run
.\venv\Scripts\activate.ps1 && cd face_recognition_flask && python app.py
```
2. **Open your browser** and navigate to:
```
http://127.0.0.1:5000
```
3. **Add a new user**:
- Click on **Add New User**.
- Enter the userโs name and ID.
- Look at the camera โ say cheese! ๐
- The system will capture 10 images of your face.
#### The face recognition model (`face_recognition_model.pkl`) will be automatically created after the first user registration. This model file is essential for face recognition and will be updated each time a new user is added.
4. **Mark attendance**:
- Click **Take Attendance**.
- Look into the camera ๐.
- Press `SPACEBAR` to exit.
## ๐ฌ Project Structure
```
face_recognition_flask/
โโโ app.py # Main application file
โโโ requirements.txt # Python dependencies
โโโ haarcascade_frontalface_default.xml # Face detection model
โโโ templates/
โ โโโ home.html # HTML template
โโโ static/
โ โโโ faces/ # User face images
โ โโโ face_recognition_model.pkl # Trained model
โโโ Attendance/ # Daily attendance records
```
## ๐ Why Youโll Love It
- **No more forgetting to mark attendance.** Your face does the work for you!
- **Beautiful UI.** Even attendance can be aesthetically pleasing. ๐
- **Easy to use.** No steep learning curve.
- **Great for schools, offices, or hackathons.**
## App Demo Live ๐ค๐โโ๏ธ
## ๐ Contributing
Want to make this system even cooler? Follow these steps:
1. Fork the repository ๐.
2. Create your feature branch:
```bash
git checkout -b feature/AmazingFeature
```
3. Commit your changes:
```bash
git commit -m 'Add some AmazingFeature'
```
4. Push to the branch:
```bash
git push origin feature/AmazingFeature
```
5. Open a Pull Request ๐.
## ๐จโ๐ป Author
Crafted with ๐ป and โ by **AskitEndo**. Love building cool stuff and sharing knowledge! Found this helpful? Drop a ๐ or buy me a coffee! Let's inspire, not plagiarize. ๐
## ๐ License
This project is licensed under the MIT License. See the LICENSE file for details.