Skip to content
Protocolzone Protocolzone

Platform to Platform · Government & Civic

Detecting potholes and road defects from camera feeds

Road defects reach us through inspections and complaints, so we find out about a pothole when someone reports it or when it damages a vehicle.

This is a government & civic problem we approach through our Platform to Platform service line.

The problem

A road authority learns about a defect in one of three ways: a scheduled inspection finds it, a resident reports it, or it damages a vehicle and becomes a claim. All three are slow, and the third is expensive.

Meanwhile there is footage. Council fleet vehicles, waste trucks, buses and inspection utes cover most of the network most weeks, and some authorities already have dashcams recording all of it. The coverage exists. It is just not data.

The gap is not detection. It is that a video file is not a maintenance decision. What a works team can act on is a located, severity-ranked defect attached to a road segment, with enough history to know whether it is getting worse.

Why it’s hard

A pothole is geometry, and a camera gives you appearance. A dark patch on the road surface may be a hole, a shadow, a repair, a stain or standing water. Wet roads reflect and defeat most of the visual cues. Human inspectors resolve this with depth perception and context, which a single forward-facing camera does not have.

Severity thresholds are written in units the camera cannot see. Maintenance standards specify depth and dimension. Extent is measurable from imagery with calibration; depth generally is not. This is the constraint that decides whether you need stereo cameras, a depth sensor, or accelerometer data from the vehicle, and it is a procurement decision disguised as a modelling problem.

Duplicate detections are the dominant data quality issue. A route driven daily produces the same defect repeatedly. Without deduplication to a stable asset or segment identifier, the register fills with thousands of records describing dozens of potholes, and the counts become useless for planning.

Consumer GPS is not accurate enough to locate a defect by coordinate alone. Positional error of several metres puts a defect in the wrong lane or on the wrong side of an intersection. Matching detections to a road segment in the authority’s own network model matters more than the raw fix.

The model drifts with the surface and the season. A detector trained on dry sealed roads in summer degrades on wet roads, on unsealed shoulders, at low sun angles and after resurfacing changes what normal looks like. Without a retraining path the system’s accuracy peaks on the day it is accepted.

The deliverable is a work order. A bounding box in a dashboard changes nothing. Unless detections flow into the works management system the authority already uses, with the identifiers that system expects, the project produces a demonstration rather than a maintenance process.

How we approach it

Frame extraction and candidate selection first. Footage is decoded, frames are sampled and pre-processed, and only candidate frames go to the model. On continuous vehicle footage this is where most of the compute cost is either saved or wasted.

Detection with an explicit confidence policy. Every detection carries a confidence score, and the thresholds for automatic acceptance, operator review and discard are configuration set against the authority’s tolerance for false positives. A works team that receives ten false defects stops trusting the tenth report and every one after it.

An operator validation queue that retrains the model. Reviewers confirm, correct or reject detections, and those decisions become training data. This is the same loop we built for wildlife identification from live video, where operator validation feeds incremental retraining, and it is the reason a deployed detector improves rather than decays.

Deduplication and asset matching. Detections are map-matched to road segments in the authority’s network model and deduplicated against existing records, so repeat observations of the same defect accumulate as a history with a deterioration trend rather than as new work.

Geospatial output and export. Defects are presented on a map with imagery evidence per record, and exported to the works management or asset system with the identifiers it expects. The map is for the inspector; the export is for the process.

What we would not do. We would not promise depth-based severity from a single monocular camera. We would not auto-raise work orders without a review gate on the first deployment, because the calibration period is where the false-positive rate gets tuned. And we would not build this without agreeing the export format against the authority’s existing system first.

What it takes

Footage, with reliable time and position. Cameras already fitted to fleet vehicles are usually enough to start. Synchronised GPS is the requirement people forget.

A road network model to match against. Segment or asset identifiers from the authority’s own register. Without them, detections cannot be deduplicated or handed to a works process.

Labelled examples from your own roads. Surface types, materials and weather vary enough that a model trained elsewhere needs local retraining. Labelling is the first phase of the project.

A sensor decision, made against your severity standard. If the standard is written in depth, expect stereo or sensor data. Agreeing this before build is substantially cheaper than discovering it at acceptance testing.

An owner in the works team. The system’s value is realised in maintenance scheduling, not in the dashboard.

Where this has been done

This is a capability description, not a shipped reference. We are stating that plainly because the distinction matters more than the page does.

What is real is the lineage. We built and delivered a real-time video analytics platform for individual animal identification from live camera feeds — frame extraction, a detection and recognition model, an operator validation queue feeding incremental retraining, and geospatial output on an interactive map. That system is an anonymised reference with published accuracy, and infrastructure monitoring from municipal camera feeds was identified as a direct extension of it at the time.

Road-defect analysis work has been done, but we hold no published detail on it, so this page does not claim a reference for it. If you are evaluating us for this work, ask for a technical conversation about the wildlife delivery — it is the same pipeline with a different subject.

Position on this page

Evidence

Implementation approach

Industry

Government & Civic

Written for

Operations, Head of Product, CTO

Outcome

Camera footage becomes deduplicated, located defect records against the asset register, severity-ranked and exportable to works management.

Questions we get asked

Straight answers.

Can a single camera measure how deep a pothole is?
Not reliably. A monocular frame gives you extent and appearance, not depth, and depth is what most severity thresholds are written against. Stereo cameras, depth sensors or vehicle accelerometer data close that gap. If a project's severity rules depend on depth, the sensor decision has to come before the model decision.
What stops the same pothole being reported forty times?
Deduplication against a road-segment or asset identifier rather than against a coordinate. A defect seen on twelve passes over a week is one record with twelve observations and a deterioration trend, and that trend is more useful than any single detection.
Has Protocolzone delivered this?
We have delivered the detection-and-retraining pattern this depends on, in wildlife monitoring from live video. Road-defect analysis work has been done, but we have no published reference for it, so this page is written as a capability description rather than a shipped reference.

Is this your problem?

Bring the constraint that makes your version harder than this one. That is the part worth an hour.