Camera-based traffic monitoring platform built as a final-year Software Engineering project (CS3023SE). Replaces manual police radio coordination with real-time, AI-powered congestion detection and visualization.
A four-layer system that takes a vehicle crossing a camera frame to a live dashboard update in under 500ms.
Raspberry Pi Camera
→ YOLOv8n detection + ByteTrack tracking
→ Kafka event stream
→ Flink 5s aggregation + ST-GCN congestion forecast
→ FastAPI REST + WebSocket
→ Live operator & public dashboards
| Repo | What it does |
|---|---|
| its-main | Orchestrator - submodules, CI/CD pipeline, docker-compose |
| its-detection-edge | B1 - YOLOv8n + ByteTrack on Raspberry Pi, Kafka publishing, Balena OTA |
| its-data-intelligence | B2 - Flink stream processing, ST-GCN forecast, FastAPI, PostgreSQL |
| its-dashboard-ui | B3 - Next.js dashboards (operator, admin, public), BFF, Keycloak auth |
| its-infrastructure-ops | B4 - Kubernetes, ArgoCD GitOps, Kafka, Prometheus, Grafana |
Edge - Raspberry Pi 5 · YOLOv8n · ByteTrack · Balena OS
Data - Apache Kafka · Apache Flink · PostgreSQL · FastAPI · ST-GCN
Dashboards - Next.js 16 · Socket.IO · Tailwind CSS · Google Maps JS API · Keycloak
Platform - Kubernetes (DOKS) · ArgoCD · Traefik · Prometheus · Grafana · GitHub Actions · SonarCloud · Trivy