• Inspiration Traffic incidents kill over 42,000 people in the U.S. every year, and a major factor is delayed detection — it takes 5–10 minutes on average before anyone even knows a crash happened. Secondary crashes pile up in that window. We asked: what if existing traffic cameras could detect incidents in seconds and reroute drivers instantly?
  • What it does LookOut analyzes live traffic camera feeds using AI, classifies incidents (accidents, hazards, speed sensors) with a severity rating, and alerts drivers in real time with voice warnings and smart rerouting that avoids every active incident on the map.
  • How we built it An 8-stage async pipeline: Gemini for multimodal image classification, SQLite for structured incident storage, Actian VectorAI DB for vector embeddings and similarity search, Sphinx as a decision/explanation engine, OSRM for intelligent multi-route scoring, and a Next.js/React/Leaflet frontend with real-time alerts and Web Speech API voice warnings. We also trained a YOLOv8 model as a swappable, cheaper perception layer for edge deployment at scale.
  • Accomplishments that we're proud of The rerouting actually works — it scores multiple route candidates and picks the shortest path that clears every incident. Gemini classifies raw camera frames into structured, actionable data in a single API call with no training data. And every decision in the pipeline is explainable through Sphinx.
  • What we learned OSRM's public server rate-limits aggressively — we learned to send sequential requests with delays instead of parallel blasts. We also learned that balancing route avoidance with efficiency is critical; maximizing distance from incidents without a duration penalty produces absurd detours.
  • What's next for LookOut Live camera integration (RTSP streams), two-tier inference (YOLOv8 screens every frame, Gemini classifies flagged ones), push notifications to nearby drivers via mobile, and city-level dashboards for DOT teams to monitor incident hotspots and response times.

Built With

Share this project:

Updates