A tool for using GDAL to make a mosaic of multiple input images. Its main advantage is that it reads the input files block-by-block with multiple threads. On systems where there is significant latency on reading, this allows the process to be significantly faster.
It should be emphasized that on a system with all inputs on local disk, and a sensible operating system, this approach is unlikely to provide much benefit. It is difficult to perform better than the operating system’s own caching and disk management. The benefits are mainly seen when the input data is stored somewhere like an S3 bucket.
This tool is similar in spirit to GDAL’s own gdal_merge.py
. The main differences
are:
gdal_merge.py
’s -separate
option. This is not a stacking tool.The package name is in honour of the Moa, a large flightless bird from New Zealand (sadly, now extinct).
Moamosaic can be run from the command line. The command usage is described here
The moamosaic package is written in Python, and can be called directly from Python. The API documentation is available here
An analysis of performance timings is available here
The source for moamosaic is available at https://github.com/ubarsc/moamosaic
Moamosaic can be downloaded as a tar.gz file from https://github.com/ubarsc/moamosaic/releases
Release notes for different versions are available here
The tar.gz file can then be installed using pip, for example
pip install moamosaic-1.0.0.tar.gz
It does require a sufficiently modern version of setuptools to install. Version 69 works fine, but version 59 does not. I am unsure of exactly the minimum requirement.