Skip to content

Generates DTM (Digital Terrain Model) from DSM (Digital Surface Model).

License

Notifications You must be signed in to change notification settings

seedlit/dsm2dtm

Repository files navigation

dsm2dtm

This repo generates DTM (Digital Terrain Model) from DSM (Digital Surface Model).

GitHub Anaconda-Server Badge Conda Version GitHub contributors Python Version Supported Anaconda-Server Badge

Installation

Note: We are unable to install Saga as part of the dependency, as it is not avilable on PyPI or conda.
To install saga_cmd - sudo apt update; sudo apt install saga

From Conda:

conda install -c conda-forge dsm2dtm 

These step are for Linux. This will differ a bit for MacOS and windows.

From Source

# Step 1: Clone the repo
% git clone https://github.com/seedlit/dsm2dtm.git
# Step 2: Move in the folder
% cd dsm2dtm
# Step 3: Create a virtual environment
% python3 -m venv venv
# Step 4: Activate the environment
% source venv/bin/activate
# Step 5: Install requirements
% pip install -r requirements.txt
# Step 6: Install saga_cmd
% sudo apt update
% sudo apt install saga

Usage

Run the script dsm2dtm.py and pass the dsm path as argument.

python dsm2dtm.py --dsm data/sample_dsm.tif

Example1: Input DSM and generated DTM over a flat terrain

example

Example2: Input DSM, generated DTM, and groundtruth DTM (Lidar derived) over a hillside terrain

DSM was derived from this point cloud data example