Deep Learning

Stable Diffusion for Geospatial Synthesis

Ddebwashis
·May 10, 2026·9 min read

Notes from my master thesis: conditioning Stable Diffusion on DTM + building mask to generate Digital Surface Models.

Why diffusion for DSM?

Classical photogrammetry pipelines need stereo imagery and a lot of compute. Diffusion models give us a way to synthesise plausible DSMs from much cheaper inputs.

The setup

We condition Stable Diffusion on two channels: a Digital Terrain Model (DTM) and a building footprint mask.

model.train_step(dtm, building_mask, target_dsm)

Evaluation

Geospatial fidelity matters more than pixel PSNR — so we built height-error histograms over building polygons.

This is paragraph 1. Data science work is part craft and part discipline — the best models are simple, well-validated, and easy to explain. In this post we walk through the intuition, the math just enough to be useful, and a clean implementation you can drop into your own pipeline.

This is paragraph 2. Data science work is part craft and part discipline — the best models are simple, well-validated, and easy to explain. In this post we walk through the intuition, the math just enough to be useful, and a clean implementation you can drop into your own pipeline.

Stay Updated

Subscribe to get the latest blog posts, project updates, and data science insights straight to your inbox.

No spam. Unsubscribe anytime.