← All work

Research / Product · Ongoing research

Related portfoliosAcademic

Shaping Cool Cities

Urban-heat research across six European study areas, combining satellite observations, voxel-based 3D city models and street-level evidence. The work includes a 40,344-cell dataset, comparative maps and a visual research presentation; model validation is being rebuilt.

Use
A Python pipeline that aligns heat inputs across six European study areas. No validated scores yet.
Where the work stands
Model validation is being rebuilt after my own re-audit found problems in the temperature target and in how the spatial cross-validation folds were separated. Until that work is finished, no model score, explanation or cooling scenario here is a validated claim.
Six labelled isometric voxel models of Amsterdam, Athens, Barcelona, Berlin, Madrid and Paris, with grey buildings, green vegetation and blue water.Amsterdam study-area detail from the six-city research figure: an isometric voxel model with grey buildings, green vegetation and blue water.

Amsterdam study-area detail. Six cities in the case.

Six study areas, voxelised using VoxCity. Figure: Gerardo Ezequiel Martín Carreño. Declared inputs: EUBUCCO, © OpenStreetMap contributors, FABDEM and High Resolution 1 m Global Canopy Height Maps. Derived urban form; temperature predictions and cooling estimates remain unvalidated.View full image (WebP, 210 KB) (opens in a new tab)
My role
Researcher and developer
Period
2024–present
Status
Ongoing research
Focus
Six European study windows
FIELD 01 · ANALYSIS GRID WEB MERCATOR · READOUT WGS84SPATIAL EVIDENCE INSTRUMENTPMTILES · WEBGL · INPUTS

Read the urban conditions behind the heat question.

Compare vegetation, impervious surface and sky view across six study windows. Change city and layer, then select a cell to inspect the underlying values and missing data. Switch to 3D to see the same six windows as voxels.

Static view of the Amsterdam vegetation input field, with analysis cells, street context, legend, scale and source attribution.Static view of the Amsterdam vegetation input field, with analysis cells, street context, legend, scale and source attribution.

Compare six urban study areas.

Choose a city and compare vegetation, impervious surface and sky view. Select any cell to inspect its values and missing data.

40,344
Analysis cells
6
Study windows
3
Comparable input layers

Shaping Cool Cities spatial inputs, generated 7 August 2026 from the project repository. Vector cells and street context are served as a same-origin PMTiles v3 archive. Inspect the data manifest.

These layers describe selected inputs, not heat exposure, causal drivers or intervention effects. Map extrusion is a visual encoding, not physical elevation. VoxCity files are downsampled presentation extracts, not survey-grade city models.

The question

Surface temperature, vegetation, buildings and street conditions are usually analysed separately. My MSc research asked how these sources could be brought together to investigate urban heat across different cities without concealing differences in scale, coverage or uncertainty.

My contribution

I built a Python pipeline joining Landsat temperature and vegetation, VoxCity 3D city models, Urbanity street networks, Global Streetscapes image semantics and EUBUCCO footprints. I generated voxel models for Amsterdam, Athens, Barcelona, Berlin, Madrid and Paris, and comparative figures for the research presentation. Exploratory XGBoost models and SHAP helped inspect associations. A later audit identified problems in the temperature target and spatial folds; I am rebuilding those stages before publishing performance claims.

How I approached it

  1. Align the sources

    I brought satellite, urban-form, network and street-image data onto a common grid with stable city and cell identifiers.

  2. Explore the relationships

    I trained an interpretable tree model and inspected associations while keeping them distinct from intervention effects.

  3. Revisit the validation (in progress)

    I documented the target and fold defects and am rebuilding the analysis around corrected temperature inputs and complete spatial holdouts.

What exists

Six-city voxel models and comparative research figures, a 40,344-cell dataset, a Python pipeline and explorable input maps.

  • An integrated 40,344-cell dataset and voxel models for Amsterdam, Athens, Barcelona, Berlin, Madrid and Paris.
  • Comparative 3D figures and a visual research presentation explaining the study areas and input sources.
  • Public PMTiles maps and a source manifest for inspecting selected research inputs.
  • An audit documenting target, coordinate-feature and spatial-fold defects to resolve before publishing performance.
Design choices and constraints
  • Use a common grid while retaining source and cell identifiers.
  • Inspect model associations with SHAP without treating them as causal effects.
  • Hold complete spatial groups apart and remove coordinate leakage before publishing performance.
  • Compare six study areas rather than assume that one city represents the others.

The open sources differ in spatial scale, coverage and uncertainty. Spatial autocorrelation makes validation design central to the research.

Explore the work

For clients and teams

Heat inputs from several places to align before any modelling?

Discuss a project

For research collaborators

Working on spatial validation for urban heat data?

Discuss a research collaboration

Contact details and CVs