Settlement Delineation and Analysis
1.0

Workflow Type: Unrecognized workflow type
Stable

Description

The Settlement Delineation and Analysis (SDA) workflows generates a settlement network from geospatial settlement data. It can process geotiff and shapefile inputs and was originally designed to operate on the World Settlement Footprint dataset. Through multiple workflow stages, a settlement network is constructed, contracted (i.e. clustered) and ultimately analysed with centrality measures. The output shapefile stores the aggregated settlement (multi-)polygons and their centrality values in fields. Optionally, the edges of the settlement graph can be visualized in a separate file as well.

Implementation

The workflow comprises four main stages, each implemented as a standalone executable, with the interface wrapped in a CWL definition file.

  • Filter: At first, the raster input is polygonized, and settlements not fulfilling the user-specified filter condition are dropped
  • Neighbours: The adjacencies of the settlements are computed according to a user-configurable criterion. The graph is stored in a central graph database.
  • Contraction: The settlement graph is contracted with edges fulfilling the contraction criterion being removed from the graph and the incident vertices merged. The connectivity to former neighbors of aggregated vertices is restored afterwards.
  • Analysis: The final stage computes selected centrality measures on the contracted graph and writes the centrality values in the output shapefile. Optionally, this stage can visualize the graph's edges in a separate output file.

Additionally, three orchestrational task are needed:

  • Split: Splits the input geotiff or shapefile to enable concurrent processing.
  • Components: Identifies connected components in the settlement graph, which are the unit of parallelization for the Contraction and Analysis stage.
  • Merge: Merges the output files of the Analysis stage into a single file.

The Job Generator creates CWL jobs for the aformentionend tasks and models their dependencies in a directed acyclic graph (DAG). The Scheduler queues the jobs according to the DAG and submits them to an CWL executor, which runs the job in a separate child process. Both the job generator and scheduler are utilized by the workflow's main file (SettlementDelineation.h/cpp).

Deployment

The workflow can be easily deployed with a docker-compose setup. Since the workflow requires a running graph database instance, the docker-compose file joins both the Memgraph database and the fishnet/sda image.

docker compose up -d

Then change your directory to the mounted directory, specified in the docker-compose, by default: ~/fishnet. The workflow can then be executed using the docker exec, specifying the inputs/config/outputs as relative paths from the mounted directory.

docker exec fishnet SettlementDelineation -i INPUT_FILE  -c CFG_FILE -o OUTPUT_FILE

For example:

docker exec fishnet SettlementDelineation -i input/Astana_KAZ.tiff -c cfg/sda-workflow.json -o output/AstanaAnalysis.shp

Version History

1.0 (earliest) Created 25th Feb 2025 at 08:41 by Lorenz Gruber

Initial commit


Frozen 1.0 6b3a1b7
help Creators and Submitter
Creator
Submitter
Citation
Gruber, L. (2025). Settlement Delineation and Analysis. WorkflowHub. https://doi.org/10.48546/WORKFLOWHUB.WORKFLOW.1308.1
Activity

Views: 117   Downloads: 18

Created: 25th Feb 2025 at 08:41

Last updated: 25th Feb 2025 at 09:38

help Attributions

None

Total size: 2.38 MB
Powered by
(v.1.16.0)
Copyright © 2008 - 2024 The University of Manchester and HITS gGmbH