← Back to Portfolio
CamCounter
Project Overview
An AI-powered people counter and surveillance analytics platform. A FastAPI backend runs YOLO person detection with ByteTrack for persistent multi-camera tracking, streamed live over WebSockets to a browser dashboard where tripwires and polygon zones can be drawn directly on the video feed for entrance/exit counts and occupancy monitoring.
Key Features
- Multi-source video pipeline: USB webcams, RTSP/IP cameras, MJPEG streams, and uploaded video files
- YOLO person detection with ByteTrack ID persistence, CUDA-accelerated with automatic CPU fallback
- On-screen editor for drawing directional tripwires and polygon occupancy zones directly on the live feed
- Live KPI dashboard (occupancy, in/out totals, peak, FPS) with CSV export and snapshot capture
- Optional opt-in age/gender/emotion analysis via a separate background worker, off by default for privacy and performance
Technical Challenges & Solutions
Running face-attribute analysis without dropping video framerate. Solved by moving it to a separate background thread per camera that refreshes each tracked ID every few seconds instead of every frame, so the detection/capture loop never blocks on it - and it is entirely opt-in given the biometric privacy implications of face-based inference.