Skip to main content

Python implementation of Data Mining Sharpener (DMS)

Project description

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/.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

python_dms-1.2.1.tar.gz (20.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

python_dms-1.2.1-py3-none-any.whl (21.6 kB view details)

Uploaded Python 3

File details

Details for the file python_dms-1.2.1.tar.gz.

File metadata

  • Download URL: python_dms-1.2.1.tar.gz
  • Upload date:
  • Size: 20.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for python_dms-1.2.1.tar.gz
Algorithm Hash digest
SHA256 a3cfcbe5a6b669d71c6349d0b200c20e6bd6147858a928dc24703aab68af9230
MD5 2fabd728c47ce0475491af4542d2e58a
BLAKE2b-256 d91d566381f078e0c7cc03d047ce65989c40681a21e3ae0fd30002dcdba7fad1

See more details on using hashes here.

File details

Details for the file python_dms-1.2.1-py3-none-any.whl.

File metadata

  • Download URL: python_dms-1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 21.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for python_dms-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 fe234b885adfb3a5eab648bd41da9a788c7a8168b6702cbc9c57cc8d4cf38fd5
MD5 8fc7b44a9d1cf2d154bd9f3caf7682bc
BLAKE2b-256 abe6f57954baec2acd7e141d8d1806a7476c6a07196b4a407aac7129b4ba8ef8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page