How It Works — Road Inspection System

Gary Hein  ·  Healthy Roads monitoring program
← Back to Portal

How Data Is Captured

On-Vehicle

Once a year (or seasonally when needed), a vehicle equipped with a camera, motion sensor, and GPS unit drives the entire road network in a single pass. The drive takes under an hour and captures everything needed to run all of the analysis tools on the site.

On-board equipment

Camera

  • High-resolution video, every frame saved
  • Wide-angle lens — full road width
  • ~29 frames per second
  • On-camera compression, no frames dropped
  • 5-minute segments, continuous run time

Motion Sensor (IMU)

  • 200 shock readings per second
  • Detects bumps, ruts, rough pavement
  • Runs simultaneously with the camera
  • Each event timestamped for GPS matching

GPS (RTK)

  • Sub-meter accuracy (RTK)
  • Real-time correction signals
  • 5–10 positions per second
  • Geo-locates every video frame
Timing
All three sensors share the same clock GPS positions are matched to video frames after the drive Clock is locked during capture to prevent drift

What Gets Saved

· Video segments (every 5 minutes of driving) · Motion sensor readings (200/second) · GPS track with accuracy ratings · Timing reference file linking all three together
Full road network covered in under 1 hour One frame roughly every 22 inches at normal driving speed Each road point passes through the camera view 5–6 times per drive Same data set feeds all analysis tools simultaneously

How the Data Is Analyzed

Software Processing

After the drive, the video and sensor data are processed on a desktop computer. The video is broken into individual frames and each frame is given a precise GPS location. From there, the same set of frames feeds several independent analysis tools — each one looking for something different.

Step 1 — Prepare the data

Extract frames

  • Video → individual image files
  • 5 frames per second (roughly every 22 in.)
  • GPU-accelerated for speed

Attach GPS

  • Match each frame to a GPS position
  • Calculate distance along road
  • Assign to named road segment

Detect road edge

  • Find where pavement meets shoulder
  • Per-frame edge position saved
  • Used as anchor for all detections
↓   The same frames then run through each detection tool independently   ↓
Step 2 — Detection tools (currently active)
Active

Vegetation Encroachment

  • Scans the road-edge strip in each frame
  • Detects green vegetation using color analysis
  • Flags frames where plants are encroaching
  • Results shown by road on the vegetation map
Beta

Shoulder Drainage

  • Reads brightness profile beyond the road edge
  • Classifies each frame: GOOD (drains away), FLAT (pools), or BERM (water toward road)
  • Shown as color-coded segments on map
Active

Road Roughness

  • Reads the motion sensor, not the video
  • Flags vertical shock events (bumps, ruts)
  • Each event is placed on the map by GPS
  • Sorted by severity: low, medium, high
Step 3 — Planned tools (same video, no new drive needed)
Planned

Road Edge Loss

  • Detects where the road shoulder is eroding
  • Year-over-year comparison
Planned

Snow Plow Damage

  • Compares pre- and post-winter drives
  • Flags edge damage and gravel loss
Planned

Overall Road Score

  • Combines vegetation, drainage, roughness, and culvert data
  • Single health score per road segment

Results go to the Portal

Interactive maps (Leaflet.js) Photo thumbnails per detection Breakdown by road Year-over-year comparison Public web access
Key advantage: One annual drive produces the raw data — new analysis tools can be applied to the archived footage without re-surveying the roads.
Gary Hein  ·  Healthy Roads © 2026 Gary Hein