Skip to content

adela-marin/rospin-project

Repository files navigation

Bucharest Urban Heat and Green Space Analysis

Project Overview

This project supports public authorities with actionable geospatial insights for Bucharest, focusing on urban heat islands, green space distribution, and environmental challenges.
It combines GIS workflows (QGIS) and machine learning to analyze satellite data and propose solutions for urban planning.

Urban Heat Map
Urban heat map of Bucharest highlighting high-temperature zones

1. QGIS Workflow

Objectives

  • Map urban heat islands (UHI) using satellite thermal data.
  • Analyze green space distribution and urban expansion.
  • Assess air quality using satellite-derived proxies.
  • Provide recommendations for green infrastructure.

Data Sources

  • Landsat 8/9: Thermal band for surface temperature.
  • Sentinel-2: NDVI for vegetation analysis.
  • Sentinel-5P: NO2 for air quality proxy.

Steps

  1. Urban Heat Island Mapping

    • Extract thermal band (B10) from Landsat.
    • Calculate radiance and brightness temperature.
    • Visualize heatmap in QGIS.
  2. NDVI and Green Space Analysis

    • Calculate NDVI from Sentinel-2 bands.
    • Classify vegetation health (NDVI > 0.3 == good).
    • Overlay hot zones and poor vegetation to identify areas needing greening.
  3. Population Density and Air Quality

    • Integrate population density and NO2 layers.
    • Correlate with heat and vegetation maps.
  4. Export Layers

    • Save processed layers as GeoTIFFs for further analysis.

2. Machine Learning Workflow

Objectives

  • Predict land surface temperature using satellite-derived features.
  • Analyze feature importance for urban heat mitigation.

Data Preparation

  • Exported multi-band GeoTIFF from GEE containing NDVI, NO2, vegetation, and LST for Bucharest.
  • Uploaded GeoTIFF to Google Drive for analysis in Colab.

Workflow Steps

  1. Data Loading

    • Read GeoTIFF using rasterio.
    • Extract features (NDVI, NO2, vegetation) and target (LST).
  2. Preprocessing

    • Reshape data so each pixel is a sample.
    • Remove missing values.
  3. Model Training

    • Split data into train/test sets.
    • Train Random Forest regressor to predict LST.
  4. Evaluation

    • Calculate MAE, RMSE, and R2.
    • Visualize observed vs. predicted temperatures.
  5. Spatial Mapping

    • Predict temperature for all pixels.
    • Visualize predicted temperature map and overlay vegetation zones.
  6. Export Results

    • Save predicted temperature map as GeoTIFF for GIS use.
    • Plot feature importance.

3. Google Earth Engine (GEE) Data Preparation

Script Overview

  • Loads the administrative boundary for Bucharest from the GAUL dataset.
  • Loads pre-processed NDVI, NO2, and vegetation layers from GEE assets.
  • Computes Land Surface Temperature (LST) from Landsat 9 thermal band (ST_B10), averaged over the summer months of 2024.
  • Clips all layers to the Bucharest boundary.
  • Stacks NDVI, NO2, vegetation, and LST bands into a single multi-band image.
  • Casts all bands to Float32 for compatibility.
  • Visualizes each layer for sanity check in the GEE map viewer.
  • Exports the stacked image as a GeoTIFF to Google Drive for use in Colab.

Purpose:

  • This script generates the multi-band GeoTIFF containing all relevant features (NDVI, NO2, vegetation, LST) for Bucharest.
  • The exported file serves as the input for the machine learning analysis.

Usage

  1. Open the script in the GEE Code Editor.
  2. Run the script to process and export the data.
  3. Download the exported GeoTIFF from Google Drive and upload to Colab.

How to Use

  1. QGIS Analysis:

    • Follow the workflow steps above using QGIS and the provided satellite layers.
  2. GEE Data Export:

    • Use the provided GEE script to export the required GeoTIFF.
  3. Colab ML Analysis:

    • Open the Colab notebook.
    • Mount Google Drive and update file paths as needed.
    • Run all cells to reproduce the analysis and results.

Requirements

  • QGIS (latest version)
  • Google Earth Engine account
  • Google Colab (Python 3)
  • Python libraries: rasterio, scikit-learn, matplotlib, pandas

Future Work

  • Integrate population density data to further analyze the relationship between urban heat islands, green space distribution, and demographic patterns, enabling more targeted recommendations for urban planning and environmental interventions.

About

Urban heat island analysis of Bucharest by satellite using Landsat/Sentinel imagery, GIS, and machine learning. Processes Landsat/Sentinel images to extract NDVI, NO2, and vegetation features, and then employs Random Forest to classify land surface temperature. End-to-end pipeline from data preparation to export as GeoTIFF.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors