The AI Attendance Application is a biometric attendance platform that uses face recognition and voice biometrics to automatically mark classroom attendance.
The application is built using Streamlit for the UI, and integrates machine learning pipelines for identity verification.
- Create subjects or courses
- Generate QR code for enrollment
- Start face attendance
- Start voice attendance
- View attendance records
- Manage student enrollment
- Join subjects via QR code
- Upload face profile
- Enroll voice profile
- Mark attendance using biometrics
The system uses two biometric pipelines.
Pipeline steps:
Camera Image
│
▼
Face Detection (dlib)
│
▼
Face Embedding Generation
│
▼
Embedding Similarity Comparison
│
▼
Student Identification
│
▼
Attendance Logged
Pipeline steps:
Audio Recording
│
▼
Audio Feature Extraction (Librosa)
│
▼
Speaker Embedding (Resemblyzer)
│
▼
Embedding Comparison
│
▼
Identity Verification
│
▼
Attendance Logged
ai-attendance-project-app-main
│
├── src
│ ├── components
│ │ ├── dialog_*.py
│ │ ├── header.py
│ │ └── footer.py
│ │
│ ├── database
│ │ ├── config.py
│ │ └── db.py
│ │
│ ├── pipelines
│ │ ├── face_pipeline.py
│ │ └── voice_pipeline.py
│ │
│ ├── screens
│ │ ├── home_screen.py
│ │ ├── teacher_screen.py
│ │ └── student_screen.py
│ │
│ └── ui
│ └── base_layout.py
│
├── app.py
└── requirements.txt
| Category | Technology |
|---|---|
| UI | Streamlit |
| Machine Learning | dlib, scikit-learn |
| Voice Recognition | Resemblyzer |
| Audio Processing | Librosa |
| Data Processing | NumPy, Pandas |
| Image Processing | Pillow |
| Database | Supabase |
| Security | bcrypt |
Navigate to the application folder:
cd ai-attendance-project-app-mainCreate virtual environment:
python -m venv venvActivate environment:
Windows:
venv\Scripts\activateInstall dependencies:
pip install -r requirements.txtStart the Streamlit app:
streamlit run app.pyOpen in browser:
http://localhost:8501
The application uses Supabase for cloud database management.
Stored data includes:
- Students
- Subjects
- Enrollment records
- Face embeddings
- Voice embeddings
- Attendance logs
Identity verification is performed using embedding similarity comparison.
Steps:
- Extract biometric embedding
- Compute similarity with stored embeddings
- Apply similarity threshold
- Identify user
- Record attendance
- Face liveness detection
- Anti-spoofing mechanisms
- Mobile device support
- Attendance analytics dashboard
- Real-time attendance monitoring
Satinder Singh Sall AI / ML Full-Stack Web & Mobile Engineer
Developed as part of the AI Projects Module
This project is licensed under the MIT License.