Correct aerial and satellite imagery to approximate surface reflectance.
Project description
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 ./*HOMO*.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.
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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.