Skip to main content

pyDMS

Python implementation of Data Mining Sharpener (DMS): a decision tree based algorithm for sharpening (disaggregation) of low-resolution images using high-resolution images. The implementation is mostly based on [Gao2012].

The DMS is trained with high-resolution data resampled to low resolution and low-resolution data and then applied directly to high-resolution data to obtain high-resolution representation of the low-resolution data.

The implementation includes selecting training data based on homogeneity statistics and using the homogeneity as weight factor ([Gao2012], section 2.2), performing linear regression with samples located within each regression tree leaf node ([Gao2012], section 2.1), using an ensemble of regression trees ([Gao2012], section 2.1), performing local (moving window) and global regressions and combining them based on residuals ([Gao2012] section 2.3) and performing residual analysis and bias correction ([Gao2012], section 2.4)

Additionally, the Decision Tree regressor can be replaced by Neural Network regressor.

Installation

python_dms requires GDAL to be installed on your system. Since GDAL provides compiled binaries that vary by platform, this package does not bundle them. You will need to install GDAL yourself before installing python_dms.

  1. Install GDAL

    macOS (Homebrew)

    brew install gdal
    

    Ubuntu / Debian

    sudo apt-get update
    sudo apt-get install -y gdal-bin libgdal-dev
    

    Windows

    Download and install GDAL from GIS Internals or install via conda:

    conda install -c conda-forge gdal
    

    You can verify your installation by running:

    gdalinfo --version
    
  2. Install python_dms

    Once GDAL is installed and available in your environment, install python_dms with pip:

    pip install python_dms
    

    or download the project to your local system, enter the download directory and then type

    python setup.py install

Usage

For usage template see run_pyDMS.py.

Copyright: (C) 2024 Radoslaw Guzinski and contributors.

References

  • [Gao2012] Gao, F., Kustas, W. P., & Anderson, M. C. (2012). A Data Mining Approach for Sharpening Thermal Satellite Imagery over Land. Remote Sensing, 4(11), 3287–3319. https://doi.org/10.3390/rs4113287

  • [Guzinski2019] Guzinski, R., & Nieto, H. (2019). Evaluating the feasibility of using Sentinel-2 and Sentinel-3 satellites for high-resolution evapotranspiration estimations. Remote Sensing of Environment, 221, 157–172. https://doi.org/10.1016/j.rse.2018.11.019

  • [Guzinski2023] Guzinski, R., Nieto, H., Ramo Sánchez, R., Sánchez, J.M., Jomaa, I., Zitouna-Chebbi, R., Roupsard, O., and López-Urrea, R. (2023). Improving field-scale crop actual evapotranspiration monitoring with Sentinel-3, Sentinel-2, and Landsat data fusion. International Journal of Applied Earth Observation and Geoinformation 125, 103587. https://doi.org/10.1016/j.jag.2023.103587

License

pyDMS: a Python Data Mining Sharpener implementation

Copyright 2024 Radoslaw Guzinski and contributors.

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

Metadata

Release files for python-dms 1.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for python-dms 1.2.1
File Size Uploaded
python_dms-1.2.1.tar.gz 20.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for python-dms 1.2.1
File Interpreter ABI Platform
python_dms-1.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 42.4 kB

Release files / python_dms-1.2.1.tar.gz

Download URL python_dms-1.2.1.tar.gz
Size 20.8 kB
Tags Source
SHA-256 checksum
How to use checksums
a3cfcbe5a6b669d71c6349d0b200c20e6bd6147858a928dc24703aab68af9230
BLAKE2b-256 checksum
How to use checksums
d91d566381f078e0c7cc03d047ce65989c40681a21e3ae0fd30002dcdba7fad1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / python_dms-1.2.1-py3-none-any.whl

Download URL python_dms-1.2.1-py3-none-any.whl
Size 21.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fe234b885adfb3a5eab648bd41da9a788c7a8168b6702cbc9c57cc8d4cf38fd5
BLAKE2b-256 checksum
How to use checksums
abe6f57954baec2acd7e141d8d1806a7476c6a07196b4a407aac7129b4ba8ef8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release history Release notifications | RSS feed

This release

1.2.1 This release

2 release files

1.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page