Bulldozer Command-Line Interface (CLI)
Bulldozer provides a command-line interface (CLI) to extract a Digital Terrain Model (DTM) from a Digital Surface Model (DSM).
The CLI can be used in two main ways:
General help
To display the short help message:
bulldozer --help
To display extended help:
bulldozer --long_usage
To display expert parameters:
bulldozer --expert_mode
To show the installed version:
bulldozer --version
Usage with a configuration file
bulldozer config.yaml
This mode allows you to define all parameters in a configuration file.
If additional CLI arguments are provided, they override the values defined in the configuration file.
Info
Configuration templates are available in the conf directory. You may also create your own configuration files, provided that they include at least the two mandatory parameters: dsm_path and output_dir.
The available optional parameters correspond to the long-form command-line options (--<parameter>) listed in the section usage with command line parameters. For a detailed description of their behavior, please refer to the page: Bulldozer parameters.
Info
This mode is recommended for: reproducible workflows, large-scale production processing, batch execution on HPC systems.
Usage with command-line parameters
Minimal example
bulldozer -dsm input_dsm.tif -out output_directory
Required arguments
| Argument | Description |
|---|---|
-dsm, --dsm_path |
Path to the input DSM (GeoTIFF). |
-out, --output_dir |
Output directory. |
Optional parameters (standard mode)
| Argument | Description |
|---|---|
-ndsm, --generate_ndsm |
Generate a Digital Height Model (nDSM = DSM − DTM). |
-max_size <value>, --max_object_size <value> |
Maximum size of foreground objects (meters). |
-ground <mask.tif>, --ground_mask_path <mask.tif> |
Path to a binary ground classification mask. |
-anchors, --activate_ground_anchors |
Activate automatic ground anchor detection. |
-workers <value>, --nb_max_workers <value> |
Maximum number of CPU cores to use. |
-dev, --developer_mode |
Keep intermediate processing results. |
Expert parameters
These optional parameters control internal algorithm behaviour and should be modified only by advanced users.
| Argument | Description |
|---|---|
-mtd <value>, --method <value> |
Processing mode: mem (all in memory) or no-mem (write temporary results to disk). |
-reg_it <value>, --reg_filtering_iter <value> |
Number of regular mask filtering iterations. |
-dsm_z <value>, --dsm_z_accuracy <value> |
Altimetric accuracy of the input DSM (meters). Default: 2 × DSM resolution. |
-max_slope <value>, --max_ground_slope <value> |
Maximum expected terrain slope (%). |
-unhook_it <value>, --prevent_unhook_iter <value> |
Number of unhook iterations. |
-outer <value>, --num_outer_iter <value> |
Number of gravity step iterations. |
-inner <value>, --num_inner_iter <value> |
Number of tension iterations. |
-context <value>, --mp_context <value> |
Multiprocessing context (spawn, fork, or forkserver). |
Command with options example
bulldozer -dsm input_dsm.tif -out results -ndsm -workers 8 -max_size 32 -mtd mem
Output products
The results products are listed in the Bulldozer outputs page.
Performance considerations
- Use
-workersto control CPU usage. - Use
-mtd memfor faster processing on systems with sufficient RAM. - Use
-mtd no-memfor large DSMs or memory-constrained environments. - On HPC systems, ensure allocated CPU cores match the
-workersvalue.