Notebooks, enrivonment and code to generate the taxonomy of Central European Urban Fabric.
-
First, make sure you have the correct folder structure in place or you will have to change it in the python scripts/notebooks.
-
Clone this repository and checkout the
resultsbranch. -
Run
pixi install, thenpixi run buildand optionallypixi run tests. These commands setup the enviroment and all the required packages.- Alternatively you can manually install the conda-forge dependencies, but you have to still run the pixi build and tests commands:
pixi add momepy umap-learn fast_hdbscan jupyterlab pyarrow matplotlib lonboard folium mapclassify datashader dask pip sidecar glasbey scikit-image colorcet pandas holoviews bokeh=3.1 esda pytest hdbscan
- Alternatively you can manually install the conda-forge dependencies, but you have to still run the pixi build and tests commands:
Then, run:
code/01_download_buildings_footprints.ipynbto download all the cadastre data for central europecode/02_standardise_footprints.ipynbto standardise all the cadstre data from different countries into a single formatcode/03_generate_regions.ipynbto split the buildings into regions for independent processingcode/04_download_streets.ipynbto download the raw Overture streets for every region- Run bulding processing. If running again, clean up processed data to avoid conflicts.
pixi run python src/core/generate_buildings.py > buildings_log.txtcode/05_preprocess_cz_housing.ipynbto update socialist housing in Czechia (needs to be run after building simplification)- Run the entire processing pipeline from building, street preprocessing, element generation, characters calculations and morphotope creation.
bash full_run.sh`code/06_morphotope_postprocessing.ipynbto fix morphotope geometries based on adjacency.code/07_morphotope_chars.ipynbto generate characteristics specific to morphotopes.code/08_clustering.ipynbto generate the heirarchy of morphotopes, and store the data.code/09_noise.ipynbto assign the noise points to the nearest clusters.code/10_cluster_characteristics.ipynbto generate characteristics of each cluster.code/11_evaluation.ipynbto generate comparisons with other data products.code/12_postprocess_morphotope_ids.ipynbto ensure uniqueness of noise IDs.
- Clone the repository
- Run
pixi install, then optionallypixi run generate_test_dataandpixi run tests. - Follow the same structure as above.
To extend the hierarchy with new data follow the notebooks starting with ext_ prefix.