Skip to content

ChinnappaSwami/Face_Attendence_Tracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Logo

🎯 Mentor-Mentee Face Attendance Tracker

An intelligent, real-time face recognition-based attendance system for mentor-mentee teams.

Python OpenCV MediaPipe Face Recognition License


📖 About

Mentor-Mentee Face Attendance Tracker is a desktop application that uses real-time face recognition to identify mentors via webcam and allows them to mark attendance for their assigned mentees through a sleek GUI. The system features a futuristic face mesh overlay powered by MediaPipe and stores attendance records in CSV format for easy access and reporting.


✨ Features

Feature Description
🎥 Real-Time Face Detection Live webcam feed with face detection and scanning animation
🧠 Face Recognition Automatically identifies registered mentors using facial encodings
🕸️ Face Mesh Overlay Futuristic MediaPipe face mesh visualization on the live feed
📋 Attendance GUI Beautiful Tkinter-based interface to mark mentee attendance
🖼️ Display Pictures Shows mentor profile photos in the attendance window
💾 CSV Export Attendance records saved to attendance.csv for easy reporting
⚙️ Configurable Teams Mentor-mentee relationships managed via a simple info.txt file
🔁 Continuous Detection Supports scanning multiple mentors in a single session

🛠️ Tech Stack

Python
Python
OpenCV
OpenCV
NumPy
NumPy

🧠
face_recognition

🕸️
MediaPipe

🖼️
Pillow (PIL)

🖥️
Tkinter

📊
CSV

⚙️
dlib

📁 Project Structure

Mentor-Mentee_Face_Attendance/
│
├── face_app.py              # Main application entry point
├── info.txt                 # Mentor-mentee relationship config
├── Requirements.txt         # Python dependencies
├── attendance.csv           # Generated attendance records
│
├── faces/                   # Mentor face images for recognition
│   ├── mentor1.jpg
│   ├── mentor2.jpg
│   └── ...
│
├── DisplayPicture/          # Mentor display photos for the GUI
│   ├── mentor1.jpg
│   ├── mentor2.jpg
│   └── ...
│
└── required_images/         # App assets
    ├── Logo.jpg             # Application logo/icon
    └── Background_Image.jpg # GUI background image

🚀 Getting Started

Prerequisites

  • Python 3.8+ installed on your system
  • A working webcam connected to your computer
  • CMake and Visual Studio Build Tools (required for dlib compilation)

Installation

1. Clone the repository

git clone https://github.com/ChinnappaSwami/Mentor-Mentee-Face-Attendance.git
cd Mentor-Mentee-Face-Attendance

2. Create a virtual environment (recommended)

python -m venv venv

3. Activate the virtual environment

# Windows
venv\Scripts\activate

# macOS / Linux
source venv/bin/activate

4. Install dependencies

pip install -r Requirements.txt

Run the Application

python face_app.py

💡 Tip: Press Q on the camera window to quit the application at any time.


⚙️ Configuration

Adding Mentors & Mentees

Edit the info.txt file to define mentor-mentee relationships:

1. John_Doe
   a. Alice_Smith
   b. Bob_Johnson
   c. Carol_Williams

2. Jane_Doe
   a. Dave_Brown
   b. Eve_Davis

Adding Face Data

  1. Place a clear face photo of each mentor in the faces/ folder
    → Filename must match: mentor_name.jpg (e.g., John_Doe.jpg)

  2. Place a display picture in the DisplayPicture/ folder
    → Same naming convention: John_Doe.jpg


🖥️ How It Works

┌──────────────┐     ┌──────────────────┐     ┌─────────────────┐
│  Webcam Feed │────▶│  Face Detection  │────▶│ Face Recognition│
│              │     │  + Mesh Overlay   │     │  (Match Mentor) │
└──────────────┘     └──────────────────┘     └────────┬────────┘
                                                       │
                                                       ▼
                     ┌──────────────────┐     ┌─────────────────┐
                     │  Save to CSV     │◀────│ Attendance GUI  │
                     │  (attendance.csv)│     │ (Mark Mentees)  │
                     └──────────────────┘     └─────────────────┘
  1. Launch the app — the webcam activates with a futuristic face mesh overlay.
  2. Confirm face detection when prompted via a popup dialog.
  3. Recognize — the system scans and matches the face against registered mentors.
  4. Mark Attendance — an attendance window opens showing the mentor's mentees.
  5. Save — attendance is recorded to attendance.csv with Present/Absent status.
  6. Repeat — the system loops back for the next mentor.

📸 Screenshots

Camera Feed Attendance Window
Camera Attendance

📝 Requirements

Package Purpose
opencv-python Camera access & image processing
Pillow Image loading & GUI display
face_recognition Facial encoding & matching
mediapipe Face mesh landmark detection
dlib Backend for face_recognition
numpy Numerical operations

🤝 Contributing

Contributions, issues, and feature requests are welcome!

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📄 License

This project is licensed under the MIT License — see the LICENSE file for details.


👤 Author

ChinnappaSwami

Email


Made with ❤️ by ChinnappaSwami

⭐ Star this repository if you found it helpful!

About

Face Recognition based attendance tracker

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages