Analysis of digital elevation models (DEMs)
xDEM is an open source project to develop a core Python package for the analysis of digital elevation models (DEMs).
It aims at providing modular and robust tools for the most common analyses needed with DEMs, including both geospatial
operations specific to DEMs and a wide range of 3D alignment and correction methods from published, peer-reviewed studies.
The core manipulation of DEMs (e.g., vertical alignment, terrain analysis) are conveniently centered around DEM
and dDEM
classes (that, notably, re-implements all tools
of gdalDEM). More complex pipelines (e.g., 3D rigid coregistration, bias corrections, filtering) are built around
modular Coreg
, BiasCorr
and Filter
classes that easily interface between themselves. Finally, xDEM includes advanced
uncertainty analysis tools based on spatial statistics of SciKit-GStat.
Additionally, xDEM inherits many convenient functionalities from GeoUtils such as implicit loading, numerical interfacing and convenient object-based geospatial methods to easily perform the most common higher-level tasks needed by geospatial users (e.g., reprojection, cropping, vector masking). Through GeoUtils, xDEM relies on Rasterio, GeoPandas and Pyproj for georeferenced calculations, and on NumPy and Xarray for numerical analysis. It allows easy access to the functionalities of these packages through interfacing or composition, and quick inter-operability through object conversion.
If you are looking for an accessible Python package to write the Python equivalent of your GDAL command lines, or of your QGIS analysis pipeline without a steep learning curve on Python GIS syntax, xDEM is perfect for you! For more advanced users, xDEM also aims at being efficient and scalable by supporting lazy loading and parallel computing (ongoing).
For a quick start, full feature description or search through the API, see xDEM's documentation at: https://xdem.readthedocs.io.
mamba install -c conda-forge xdem
See mamba's documentation to install mamba
, which will solve your environment much faster than conda
.
When using a method implemented in xDEM, please cite both the package and the related study:
Citing the related study:
We welcome new contributions, and will happily help you integrate your own DEM routines into xDEM!
After discussing a new feature or bug fix in an issue, you can open a PR to xDEM with the following steps:
GlacioHack/xdem:main
.More details on our contributing page.