project — remote sensing / cartographic automation

Mapping change around Qatar's World Cup stadiums, before and after the tournament.

Eight stadiums, three satellite snapshots each, and one script that builds and exports a complete map series without touching a single layout by hand. This is as much about automating repeatable cartography as it is about what changed on the ground.

ImagerySentinel-2 RGB composites, 2016 / 2022 / 2025
ToolsArcPy, ArcGIS Pro, Spatial Analyst
Scope7 of 8 Qatar 2022 stadiums
Automated map series export for Stadium 974, including title, legend, north arrow, and scale bar
fig. 01one page of the automated series, exactly as the script exported it — title, legend, and north arrow included

The setup

Qatar built or substantially renovated eight stadiums for the 2022 World Cup, several from scratch. The question here was simple: how much visibly changed at each site between 2016 (pre-construction), 2022 (tournament year), and 2025 (three years on) — and could that be shown consistently across all of them without manually building eight separate maps.

Al Bayt Stadium sits well north of the other seven and would have distorted a shared map extent, so it's excluded from this series and would need its own map on a different scale.

The approach

For each of the two comparison windows (2016→2022 and 2022→2025), the pipeline takes the absolute pixel difference between two Sentinel-2 RGB composites and converts the result to a single grayscale change-intensity band — brighter pixels mean more visible change at that location.

Official stadium locations were pulled directly from an ArcGIS Online feature service rather than digitized by hand, which kept the location data authoritative. Each point was then buffered by 1000 meters, zooming the map series directly to the raw points turned out to be unreliable, so the buffer polygon became the layer the series actually indexes on.

Project Highlight: The Layout Automation

The part worth highlighting isn't the raster math above, it's that all seven stadium maps come out of a single ArcGIS Pro layout, script-driven end to end. One Spatial Map Series, indexed on the buffer layer, iterates through every stadium automatically: the title text dynamically updates to the current stadium's name, the map frame re-centers, and the whole set exports as one 300 dpi PDF in a single run.

Automated map series export for Lusail Stadium
fig. 02 — Lusail Stadium's page from the same series, same title block and layout, different extent and label
Automated map series export for Ahmed Bin Ali Stadium
fig. 03 — Ahmed Bin Ali Stadium, a renovation rather than new construction, with a subtler change signature

A few real implementation snags, and how they got resolved:

What this would need to scale further

This runs cleanly across seven stadiums that share a common scale and imagery source. Applying it to a larger or more varied set of sites would mean making the buffer distance and map scale adaptive per site rather than fixed, which the current version doesn't do.

Get the files

Notebook (.ipynb)
full ArcPy pipeline, cleaned up for readability — see the note above on running it
view on GitHub
Full map series (PDF)
all seven stadiums, 2016–2022 comparison
download