Skip to main content

Correct aerial and satellite imagery to surface reflectance.

Project description

Tests codecov PyPI version conda-forge docs License: AGPL v3

homonim

Correct aerial and satellite imagery to surface reflectance.

Description

homonim provides a command line interface and API for correcting remotely sensed imagery to approximate surface reflectance. It is a form of spectral harmonisation, that adjusts for spatially varying atmospheric and anisotropic (BRDF) effects, by fusion with satellite surface reflectance data. Manual reflectance measurements and target placements are not required.

It is useful as a pre-processing step for quantitative mapping applications such as biomass estimation or precision agriculture, and for reducing seamlines and other visual artefacts in image mosaics. It can be applied to multi-spectral drone, aerial and satellite imagery.

homonim is based on the method described in the paper: Radiometric homogenisation of aerial images by calibrating with satellite data.

See the documentation site for more detail: https://homonim.readthedocs.io/.

Installation

homonim is available as a python 3 package, via pip and conda.

conda

Under Windows, using conda is the easiest way to resolve binary dependencies. The Miniconda installation provides a minimal conda.

conda install -c conda-forge homonim

pip

pip install homonim

Quick Start

Download the homonim github repository to get the test imagery. If you have git, you can clone it with:

git clone https://github.com/dugalh/homonim.git

Alternatively, download it from here, extract the zip archive and rename the homonim-main directory to homonim.

Using the gain-blk-offset model and a 5 x 5 pixel kernel, correct the aerial images with the Sentinel-2 reference.

homonim fuse -m gain-blk-offset -k 5 5 -od . ./homonim/tests/data/source/*_RGB.tif ./homonim/tests/data/reference/COPERNICUS-S2-20151003T075826_20151003T082014_T35HKC_B432_Byte.tif

Statistically compare the raw and corrected aerial images with the included Landsat-8 reference.

homonim compare ./homonim/tests/data/source/*_RGB.tif ./*FUSE*.tif ./homonim/tests/data/reference/LANDSAT-LC08-C02-T1_L2-LC08_171083_20150923_B432_Byte.tif

Example

Mosaics of 0.5 m resolution aerial imagery before and after correction. A Landsat-7 surface reflectance image was used as reference, and is shown in the background. Correction was performed using the gain-blk-offset model and a 5 x 5 pixel kernel.

example

Usage

See the documentation here.

Terminology

homonim is shorthand for homogenise image and is a reference to the paper on which it is based.

Credits

homonim makes extensive use of the following excellent projects:

License

homonim is licensed under the terms of the AGPLv3. This project is developed in collaboration with InnovUS at Stellenbosch University, alternative licenses can be arranged by contacting them.

Citation

Please cite use of the code as: - Harris, D., Van Niekerk, A., 2019. Radiometric homogenisation of aerial images by calibrating with satellite data. Int. J. Remote Sens. 40, 2623–2647. https://doi.org/10.1080/01431161.2018.1528404.

Author

Dugal Harris - dugalh@gmail.com

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

homonim-0.2.3.tar.gz (53.3 kB view hashes)

Uploaded Source

Built Distribution

homonim-0.2.3-py3-none-any.whl (62.0 kB view hashes)

Uploaded Python 3

Supported by

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