Method · Data pipeline

From pixels to planning data.

Two computer-vision models, three output layers, one common thread: every detection is traceable back to a piece of public imagery a planner could open and verify in under a minute.

At a glance

The pipeline, in one frame.

Before we walk through inputs, models, and outputs separately. Here's the whole thing in a single picture: what gets detected on the street, what's measured from above, and what lands in your GIS as planner-ready summaries.

Concept overview: Street View imagery with detected pedestrian signals, traffic signals, crosswalks, and curb ramps; aerial imagery with signalization-type detections; and dashboards summarizing crosswalk condition, signalization counts, and inventory progress.
Left & center · detections layered onto Street View and aerial imagery. Right · planner-facing summaries derived from the same outputs.

Inputs

Two public imagery sources, sampled deliberately.

Aerial · 15 cm/pixel

PASDA orthoimagery

Pennsylvania's open imagery program provides recent, high-resolution tiles. We use the most current vintage available for each study area so crosswalk paint is captured as it actually exists today.

Street View · Ground level

Google Street View imagery

For each detected intersection, we sample several headings facing into the crossing. This gives the object detector a fair shot at every approach instead of biasing toward one direction.

The three pipelines

Two computer-vision models, one planning interface.

Each pipeline owns a single, defensible output. We resisted the urge to merge them into a single model; separate pipelines are easier to retrain, audit, and explain.

Street View

YOLO detection

Fine-tuned object detection extracts stop signs and traffic lights from intersection-facing imagery. Outputs are point features with confidence scores, exported per neighborhood as GeoJSON and CSV.

  • Stop-sign F1: 0.77
  • Traffic-light F1: 0.58
  • Outputs include detection confidence and Street View metadata

YOLO 101: what it is, what it sees →

Aerial imagery

U-Net segmentation

Crosswalk markings are segmented from 15 cm/pixel aerial imagery to produce polygon outputs at scale. The U-Net architecture handles per-pixel classification well, even on faded paint.

  • Crosswalk F1: 0.94
  • Precision 0.93 · Recall 0.95
  • Deployable across multiple Philadelphia study areas

U-Net 101: why "U-shaped" matters →

Crossing width

Approach-level measurement

Perpendicular transects estimate curb-to-curb crossing width to create a screening metric planners can use without commissioning a survey crew.

  • Intersection-approach estimates in baseline CSV outputs
  • Median width plus spread from sampled transects
  • Designed for prioritization, not engineering survey replacement

Process

How a tile becomes a planning layer.

The diagram is intentionally human-scale. Anything more complicated would obscure the only question that matters in a planning meeting: where did this number come from?

Aerial imagery PASDA · 15 cm/pixel Street View Intersection-facing photos U-Net Pixel-wise segmentation YOLO Object detection Crosswalk polygons GeoJSON Crossing widths Per-approach CSV Stop signs GeoJSON points Traffic lights

Imagery → models → planner-ready layers. The crossing-width step (not shown) reuses U-Net polygons plus intersection geometry to compute curb-to-curb transects.

Results

Deployment scale, model fit, and screening value.

The numbers below are pilot-area results. They're meant to set realistic expectations before you trust an output in a memo, not to oversell.

Crosswalk segmentation

U-Net on PASDA tiles, evaluated against hand-labeled validation tiles.

0.94F1 score
0.93Precision
0.95Recall

Traffic-control detection

YOLO fine-tuned on Street View, evaluated by class.

0.77Stop-sign F1
0.58Traffic-light F1
3,745Total detections

Coverage

Pilot deployment across the project's eight Philadelphia neighborhoods.

9,950Street View images
3,610Crosswalk polygons
8Neighborhoods

What planners get

Outputs designed for GIS workflows, not just a demo.

Traffic-control points

Neighborhood-level GeoJSON for stop signs and traffic lights, each tagged with confidence + Street View link.

Intersection points

Detected intersections plus the Street View sampling points the model used, easy to inspect and validate.

Crossing widths

Approach-level measurements suitable for flagging unusually wide or high-variance crossings citywide.

Crosswalk polygons

U-Net polygon layers from aerial imagery, the foundation for future condition monitoring as imagery refreshes.

Limits and next steps

This is a screening system, not a final audit.

Current limits

  • Pilot-area training data. Models were tuned on a subset of Philadelphia. Performance on architecturally distinct neighborhoods is untested.
  • No citywide ground-truth audit yet. Validation was done on hand-labeled tiles, not field-walked corridors.
  • Lower recall for traffic lights in complex scenes; backlight, foliage, and far-away hardware all degrade detection.
  • Crossing widths are screening estimates, not engineering survey replacements.

Next steps

  • Expand validation with field-walked corridors and crash-data joins.
  • Connect outputs to accessibility datasets: curb ramps, ADA inventories, transit stops.
  • Extend the workflow to additional cities and street types beyond Philadelphia.
  • Add a feedback loop where planners can flag false positives, feeding the next training cycle.