Sign inSign up

tudelft3d/city4cfd

By tudelft3d

•Updated 2 months ago

Reconstruction of 3D city models tailored to urban CFD simulations

Image
Data science
0

3.0K

tudelft3d/city4cfd repository overview

⁠City4CFD

GitHub repository: https://github.com/tudelft3d/City4CFD⁠

City4CFD--City for CFD--is a tool that aims to automatically reconstruct 3D city geometries tailored for microscale urban flow simulations.

It can create automatically a terrain from a point cloud and imprint different surfaces (e.g. green areas, water, roads).

It enables us to reconstruct buildings from different sources and their combination, such as:

  • Reconstruction with the combination of 2D polygons and a point cloud,
  • Extrusion of footprints containing height or floor number attributes,
  • The import of existing building models.

The resulting geometry is watertight -- buildings and surfaces are seamlessly integrated into a terrain.

It can automatically or manually define the zone of influence and domain boundaries.

If you happen to use it, feedback is very much appreciated.

City4CFD is developed by the 3D Geoinformation Research Group⁠ at the Delft University of Technology.

⁠Data formats

Point clouds can be imported in LAS/LAZ, TXT/XYZ, or PLY format. We ask separately for ground and building points. While some datasets contain building-ground classification, some do not. Our point cloud preparation tool⁠ can extract ground and building points from user-defined classes, or use the Cloth Simulation Filter⁠ to separate the ground and non-ground points. If you would like to check your points, see if they are classified, or even conduct the filtering and classification yourself, we suggest you use CloudCompare⁠.

2D data (polygons) are imported in GDAL-supported formats⁠. For all pre-processing related to polygons you can use QGIS⁠.

Geometry import supports the following formats: OBJ, STL, PLY, OFF, VTP, and CityJSON.

Output is in the following formats: OBJ, STL, and CityJSON. The ID of each polygon is preserved, and there is a 1-to-1 mapping between the input and the output.

⁠Getting started

The folder examples of the repository contains example datasets you can run for your first reconstruction. To run through a Docker container, you can use one of docker scripts⁠ in docker/run/. The script with the extension .sh can be used in Linux and macOS, the one with the extension .ps1 in Windows Powershell, and the last one with .bat in Windows Command Prompt. You have to run a script (you can copy it beforehand) from the root directory of the project (e.g. examples/TUD_Campus), and the arguments are the same as for the compiled executable, e.g.:

../../docker/run/city4cfd_run.sh city4cfd config_bpg.json --output_dir results

The script pulls the latest release from the Docker Hub. For a specific release, replace latest in the script with the released version tag, e.g. 0.1.0. In Linux systems, you will probably have to run the command as a sudo unless you create a 'docker' group and add users to it.

More information on the project can be found in the documentation.

⁠Documentation

The wiki section⁠ of this project has details on reconstruction setup and also contains information and suggestions on data preparation.

⁠Citation

If you use City4CFD in a scientific context, please cite the following paper:

Pađen, Ivan, García-Sánchez, Clara and Ledoux, Hugo (2022). Towards Automatic Reconstruction of 3D City Models Tailored for Urban Flow Simulations. Frontiers in Built Environment, 8, 2022 [DOI⁠][BibTeX⁠]

⁠Acknowledgements

We would like to acknowledge the authors of the supporting libraries we use in this project: CGAL⁠, CSF⁠, GDAL⁠, LAStools⁠, nlohmann/json⁠, valijson⁠

Tag summary

Content type

Image

Digest

sha256:ec1f0bf8b…

Size

69 MB

Last updated

2 months ago

docker pull tudelft3d/city4cfd