Research · Vision · Pilot

Site slope from phone photos

Can a phone photo replace a site visit? Not yet.

3.4
Best model, pts of grade error
4.1
Flat guess, pts of grade error
91%
Paid-grading lots flagged
106
Real slab sites
Summary
  • Before pouring a slab, the ground under it has to be made level. How much dirt work that takes depends on the slope of the lot, which today means someone drives out to look.
  • We tested whether frontier vision models can estimate that slope from a few phone photos, on 106 of our real slab sites, scored against 1-meter public elevation data.
  • The best models were off by 3.4 points of grade on average, barely better than assuming every lot is flat. They are not accurate enough to price from.
  • They are good at one thing: flagging the lots that need significant earthwork. That is enough to decide which sites need a visit.

Definition. Site slope, or percent grade, is the rise of the ground over a horizontal distance. A one-foot drop over fifty feet is a 2% grade.

Part of our work on AI data labeling for construction.

How is site slope measured and priced?

Slope is measured in percent grade: the rise over a horizontal distance. A lot that drops one foot over fifty feet is a 2% grade. In our pricing, lots up to 2% need no extra work. Above that, cost rises with the grade and the size of the slab, because more soil has to be cut away or brought in and compacted. We group lots into five price bands: flat (0 to 2%), slight (3 to 5%), moderate (6 to 10%), steep (11 to 20%), and severe (above 20%).

Estimating slope from photos is a hard geometry problem. A single photo has no reliable sense of gravity or scale, the camera is rarely level, and gentle slopes look flat to the eye.

What data did we use?

213 crew photos from 106 slab jobs, one to three per job. Each job was matched to the location on its order. Jobs whose location was only known to the city level were removed.

None of these sites had a survey, so we built a reference from public elevation data: the U.S. Geological Survey's 3D Elevation Program, at 1-meter resolution for most sites. We fit a plane over a patch the size of the slab and took its slope. The sites split into 49 flat, 18 slight, 23 moderate, 12 steep, and 4 severe.

How did we test it?

Five vision-language models were shown each site's photos and asked for a percent grade. We also ran an open-source monocular depth model, which estimates a depth map from a single image, and fit a ground plane to its output. Every estimate was converted to a price band and to the dirt-work cost our pricing tool would charge.

What did we find?

MethodMean error (pts of grade)Exact price bandWithin one bandMean cost error
reference check: DEM 40 m window2.365%94%$1,515
Claude Sonnet 5.53.438%82%$2,950
GPT-5.53.434%88%$3,005
Claude Opus 5.53.436%81%$3,113
GPT-5.4 mini3.722%86%$3,342
Claude Haiku 5.53.833%76%$3,131
baseline: dataset median (2.3%)3.817%85%$3,288
baseline: always 1% (flat)4.146%63%$3,475
Monocular depth model9.128%59%$10,297
Baseline: call every lot flat4.146%63%$3,475
Noise check: reference vs itself2.365%94%$1,515
Figure 1. Slope estimation on 106 sites. Lower error is better. The noise check compares the elevation reference against itself with a different patch size, which shows how uncertain the reference itself is.

The best models beat a flat guess on average error, but a flat guess lands in the correct price band more often. On the 63 sites with the most uniform terrain, where location error matters least, the best models were about 2.1 points off against 2.6 for a flat guess. The depth model mostly measured how the camera was tilted.

The models do rank lots in the right direction. The best one caught 91% of lots that needed paid grading. As a filter that decides which sites need a person to visit, that is already useful.

Why is estimating slope from photos hard?

Our reference has its own error. An order's location may sit on the road rather than the building pad, and the elevation data may predate any site work. Changing nothing but the patch size moves the reference by 2.3 points on average, which is close to the models' own error. Part of what we measured is the reference, not the models.

The photos were also the wrong input. They were taken during or after the pour, when the ground is already level. A customer's before-photos would show the real slope.

What comes next?

The fix is better ground truth and better input. Our crews already measure the height difference across the forms when they set them for a pour. Logging that one tape-measure reading on the next 30 to 50 jobs gives real ground truth. Paired with guided before-photos from the customer and the public elevation data, we expect a combined estimate to do much better than either alone.

Pilot study. Reference is public elevation data, not a site survey. Model cost about $3.50.

Frequently asked questions

Can you estimate land slope from a photo?

Roughly. The best vision-language models were off by about 3.4 points of grade on average, barely better than assuming every lot is flat.

Is it accurate enough to price grading?

No. Models landed in the wrong price band about two times in three, a typical dirt-work cost error of about $3,000.

What is it good for?

Triage. The best model flagged 91% of lots that needed paid grading, which is enough to decide which sites need a visit.

What would improve it?

Real ground truth from crews, guided customer before-photos, and combining photos with public elevation data.

Sources

Related research

About the authors

Lead Engineer, Metal America

Hunter Cordes

Hunter is Lead Engineer at Metal America, where he builds the software and data systems behind the company's jobs and research.