À propos du projet

FaceAttend est une application de présence en classe qui traite de courtes vidéos pour reconnaître les étudiants. Elle utilise InsightFace pour la détection et ArcFace pour générer des plongements (embeddings) de 512 dimensions, lesquels sont ensuite appariés via la recherche de similarité FAISS. Les capacités clés incluent : - Inscription multi-embeddings : Les étudiants peuvent être inscrits à l'aide de plusieurs images afin d'améliorer la reconnaissance selon différentes poses et éclairages. - Pipeline de traitement vidéo : Comprend l'échantillonnage de trames, l'alignement des visages et un système de vote multi-trames pour réduire les faux positifs (nécessitant qu'un étudiant soit reconnu dans plusieurs trames pour être marqué présent). - Apprentissage actif (Active Learning) : Une interface de révision pour l'enseignant permet aux utilisateurs de confirmer les détections de visages incertaines et d'ajouter ces embeddings à la galerie d'un étudiant pour améliorer la précision future. - Outils de gestion : Fonctionnalités pour modifier les dossiers des étudiants, modifier manuellement le statut de présence et exporter les rapports de présence vers Excel. - Métriques d'évaluation : Outils intégrés pour calculer la précision, le rappel et les scores F1 par rapport aux données de référence (ground-truth). Le système est construit avec un backend FastAPI, un frontend en JavaScript pur, et utilise SQLite pour le stockage des données. Il prend en charge l'accélération CPU et GPU NVIDIA CUDA via ONNX Runtime.