Story 3.8: AI Photo Attendance
| Field | Value |
|---|---|
| Story ID | NGE-13-8 |
| Story Points | 13 |
| Sprint | Sprint 15-16 |
User Story
As a Teacher
I want to take a photo of my class and have attendance automatically marked
So that I can save time (10 min → 30 sec) and prevent proxy attendance
How It Works
📸 SNAP → 🤖 DETECT → ✅ MARK
Teacher takes photo → AI recognizes faces → Auto-mark present
→ Low confidence → Teacher verifies
→ Not detected → Manual mark
Key Features
| Feature | Description |
|---|---|
| Multi-Photo | Up to 5 photos for large classes |
| Auto-Recognition | >85% confidence = auto-present |
| Verification Queue | 70-85% confidence = teacher confirms |
| Opt-Out Support | Parents can refuse face recognition |
| Progressive Learning | Gets better over time |
| Privacy-First | Store embeddings, NOT photos |
Recognition Thresholds
| Confidence | Action |
|---|---|
>85% | Auto-mark present |
70-85% | Show for verification |
<70% | Mark as unrecognized |
Tech Stack
- Face Detection: MTCNN / RetinaFace
- Embeddings: ArcFace (128-dim vectors)
- Storage: PostgreSQL + pgvector
- Offline: TensorFlow Lite fallback
DPDPA Compliance
- Explicit consent during admission
- Store embeddings only, not photos
- Right to opt-out anytime
- Embeddings deleted on exit