About pytreedb

Laser scanning data is gaining increasing importance in forest research and management. Improved tree detection and segmentation algorithms allow for analysing the properties of single trees and reconstructing their 3D structure. This creates the need for laser scanning tree databases to manage this data and make it openly accessible for others.

pytreedb is a file- and object-based database for managing laser scanning and inventory data of single trees.

Trees are imported from GeoJSON files which contain information on tree location, species, and tree properties, and link to one or multiple point clouds. These single tree 3D datasets may be extracted from airborne, UAV-borne or terrestrial laser scanning data.

All trees submitted to pytreedbmust adhere to the following format. Individual additions depending on the available data are possible because of the object-based, NOSQL format.



While there are some mandatory fields (id, tree species, tree position), custom tree properties can be defined according to the dataset and the use case and an arbitrary number of measurements and data entries can be added.

pytreedb allows filtering the data, e.g., by location, tree properties, linked data types or acquisition dates. Selected data can be viewed on a map and exported in different formats: GeoJSON files ("Save JSON”), CSV files of tree properties and metadata ("Export to CSV”), and LAS point cloud files ("Point Clouds”).

The database may be used to populate synthetic forest stands of given species composition and stand density for laser scanning simulations or radiative transfer models. For example, tree point clouds can be loaded as voxel models in HELIOS++, 3DGeo’s general purpose LiDAR simulator, with the “xyzloader” and virtually scanned in a simulation. For more information on the LiDAR simulator, please visit https://uni-heidelberg.de/helios.

In another application, the database may be used to select trees to insert to a 3D city model for analyses of solar potential or urban heat.

pytreedb was developed in the SYSSIFOSS project by the 3DGeo Research Group of Heidelberg University and the Institute of Geography and Geoecology (IFGG) of Karlsruhe Institute of Technology (KIT). The project is funded by the Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) - 411263134 / 2019-2022.

Adding Your Data

If you are in possession of laser scanning data of trees and are able to fulfil the minimal requirements of the GeoJSON shown above, we welcome you to contribute your data to the database. We do not provide a hosting service, but allow integration of your metadata into the database, so that query results may come from multiple sources. This way, you have full control over the data at all times. You can also use this website as template to implement your own web frontend for your own dataset. Check out pytreedb on GitHub and learn how to deploy your webserver.

If you want to contribute or know more about the concept, please contact us:

Prof. Dr. Bernhard Höfle hoefle@uni-heidelberg.de

Accessing the API

You can directly send requests to our API with an API key. Please scan the QR code below to access the key.

QR code

A detailed documentation can be seen on our Github repository