| title | emoji | colorFrom | colorTo | sdk | pinned |
|---|---|---|---|---|---|
SpotMe CUSEC |
📸 |
blue |
purple |
docker |
false |
Find yourself in CUSEC 2026 photos using face recognition.
Upload a selfie and instantly discover all event photos where you appear.
- Face Recognition - Uses InsightFace (buffalo_l model) for accurate face detection and matching
- Fast Search - Pre-computed embeddings enable instant matching against thousands of photos
- iPhone Support - Accepts HEIC/HEIF images from iPhones
- Thumbnail Caching - Optimized image loading with server-side thumbnail generation
- Rate Limiting - Protected API with 10 requests/minute limit
- Privacy First - No uploaded images are stored
| Layer | Technology |
|---|---|
| Backend | Python, FastAPI, Uvicorn |
| Face Recognition | InsightFace, ONNX Runtime |
| Image Processing | Pillow, OpenCV, pillow-heif |
| Frontend | Vanilla HTML/CSS/JS |
| Storage | Google Drive (images), NumPy (embeddings) |
-
Preprocessing - Face embeddings are extracted from all event photos and stored in
data/embeddings/embeddings.npz -
Upload - User uploads a selfie through the web interface
-
Match - The uploaded face is compared against all stored embeddings using cosine similarity
-
Results - Photos with similarity above the threshold are returned, sorted by match confidence
| Setting | Default | Description |
|---|---|---|
| Threshold | 0.4 | Minimum similarity score (0-1). Lower = more results |
| Max Results | 50 | Maximum photos to return |
| File Size Limit | 10MB | Maximum upload size |
| Rate Limit | 10/min | Requests per minute per IP |
- Uploaded selfies are processed in memory and never stored
- All event photos are from publicly available sources
- No personal data is collected or retained
Made for CUSEC 2026 by Balawal