StreetSpecter — Real-Time Pothole Detection
Custom-trained YOLOv8s on 5,493 images — 90% detection accuracy. OpenStreetMap API integration to map 1,000+ km of road data for geolocated pothole reporting. Dockerized deployment.
Problem
Road damage reporting becomes more useful when detection is geolocated. StreetSpecter combines object detection with map context so potholes can be identified and tied to road segments.
Approach
- –Trained YOLOv8s on 5,493 pothole images to keep inference lightweight while retaining strong detection quality.
- –Wrapped the model with a Flask service so detections can be served through a simple backend boundary.
- –Integrated OpenStreetMap data to connect detections with geolocated road reporting across 1,000+ km of mapped roads.
System Diagram
Image/video input
Frames are submitted to the detection service for pothole inference.
YOLOv8s model
Runs object detection over road imagery and returns pothole bounding boxes.
Flask API
Exposes inference results and keeps model serving deployable.
OpenStreetMap layer
Maps detections to road context and geolocation data.
Reporting output
Produces geolocated pothole reports for downstream review.
Key Decisions
Why YOLOv8s
The small model balances speed and accuracy, which matters for a real-time road-inspection workflow.
Why OpenStreetMap
Raw detections are only half the product; map data turns them into actionable road-segment reports.
Concepts Used
Outcomes
- –Custom-trained detector reached 90% detection accuracy.
- –Mapped 1,000+ km of road data for geolocated reporting.
- –Packaged the app with Docker for repeatable deployment.