About this project
FaceAttend is a classroom attendance application that processes short videos to recognize students. It utilizes InsightFace for detection and ArcFace for generating 512-dimensional embeddings, which are then matched using FAISS similarity search.
Key capabilities include:
- Multi-embedding enrollment: Students can be enrolled using multiple images to improve recognition across different poses and lighting.
- Video processing pipeline: Includes frame sampling, face alignment, and a multi-frame voting system to reduce false positives (requiring a student to be recognized in multiple frames to be marked present).
- Active Learning: A teacher-review interface allows users to confirm uncertain face detections and append those embeddings to a student's gallery to improve future accuracy.
- Management tools: Features for editing student records, overriding attendance status, and exporting attendance reports to Excel.
- Evaluation metrics: Built-in tools to calculate precision, recall, and F1 scores against ground-truth data.
The system is built with a FastAPI backend, a vanilla JavaScript frontend, and uses SQLite for data storage. It supports both CPU and NVIDIA CUDA GPU acceleration via ONNX Runtime.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.