This repository contains the code and resources for the paper "Spatial-Temporal analysis of urban environmental variables using building height features" by M. Kakooei and Y. Baleghi.
Kakooei M, Baleghi Y. Spatial-Temporal analysis of urban environmental variables using building height features. Urban Climate. 2023 Nov 1;52:101736. https://doi.org/10.1016/j.uclim.2023.101736
This project utilized a combination of satellite imagery to generate temporal building height data. A spatiotemporal analysis was then conducted, incorporating urban environmental variables and building height features.
Clone this repository and install the required packages:
git clone https://github.com/Mohammadkakooei/Height_Environment.git
cd Height_Environment
pip install -r requirements.txt
This repository demonstrates how the models are trained, how the maps are generated, and how the spatiotemporal analysis is conducted. For more details on building height map generation, please refer to the Building_Height repository.
Training a variety of deep models Jupyter Notebook
Five fold cross-validation is used to evaluate the trained deep models Jupyter Notebook
Export satellite data patches for building height estimation Python Script
Load the trained model and predict the building height per patch and save it as GeoTif Jupyter Notebook
Generate a mosaic building height map from predicted GeoTifs Jupyter Notebook
Shallow regression algorithms are applied to explore how different building height feature configurations contribute to environmental variables such as NO, SO2, and CO, as captured by the Sentinel-5 satellite. Various scenarios are compared to identify the most informative features. The following regressors are utilized in this phase: Ridge Regression (RR), Support Vector Regression with a Linear Kernel (SVRL), Multi-Layer Perceptron Neural Networks (NNs), Gradient Boosting (GB), Random Forest (RF) with 100 tree estimators, and Voting (VOT). Jupyter Notebook
GEE app showing the building height map and the relevant enviorenmental variable