Skip to main content

a simple gdal translate/warp/addo python wrapper for raster batch processing

Project description




Idan Miara

Ben Avrahami


gdalos is a simple Python library and GUI for raster processing using GDAL:

  • creating Cloud Optimized GeoTIFFs

  • adding overviews

  • cropping

  • transforming

  • and more!

What is Cloud Optimized GeoTIFF?

A Cloud Optimized GeoTIFF (COG) is a regular GeoTIFF file, aimed at being hosted on a HTTP file server, with an internal organization that enables more efficient workflows on the cloud. It does this by leveraging the ability of clients issuing ​HTTP GET range requests to ask for just the parts of a file they need.

What is GDAL? GDAL

GDAL is a translator library for raster and vector geospatial data formats that is released under an X/MIT style Open Source License by the Open Source Geospatial Foundation. As a library, it presents a single raster abstract data model and single vector abstract data model to the calling application for all supported formats. It also comes with a variety of useful command line utilities for data translation and processing.

What is gdalos?

gdalos is a simple multi platform GDAL translate/warp/addo python wrapper for raster batch processing. It uses the gdal python interface and on top of it many rules to automate the batch processing. gdalos can be used to make a Cloud Optimized GeoTIFF easily with proper overviews from any raster that can be read with GDAL. I hope some of you might find it useful. look at for some examples.

  • What is gdalos_qt?

    gdalos_qt is a simple GUI wrapper for gdalos using the Qt5 library with the PyQt5 or PySide backends. gdalos package includes both gdalos and gdalos_qt


gdalos requires Python >= 3.6. If you want to use the gdalos_qt GUI you would need Python >= 3.7. gdalos also requires gdal to be installed on your Python. You can use install gdal in multiple ways, depending on your OS and configuration:

You can install gdalos using pip using one of these options:

$ pip install gdalos          # Installs gdalos without the gdalos_qt UI dependencies
$ pip install gdalos[pyqt]    # If you want to use gdalos_qt with the PyQt backend
$ pip install gdalos[pyside]  # If you want to use gdalos_qt with the PySide backend

Usage - Running:

  • Run with the Graphical UI:

    $ python -m gdalos_qt
  • Creating a cog in via the Python shell:

    >>> from gdalos import gdalos_trans
    >>> gdalos_trans('/maps/srtm.tif')

Using the gdalos_qt GUI:

  • gdalos main UI is very minimalistic…
    • press on the ‘…’ button next to button “0” to open the “New job GUI”

  • New Job UI
    • press on the ‘…’ button next to “source file” to select a source file

    • (optional) use whichever additional process you like
      • cropping

      • wrapping

      • output

    • press OK

    • (optional) press on the “0” button to add more job rows and repeat the above

    • press OK to start



If you find any issue on gdalos or have questions, please open an issue on our repository


You want to contribute? Awesome!

We recommend this GitHub workflow to fork the repository. To run the tests, use tox:

$ tox

Before you send us a pull request, remember to reformat all the code:

$ tox -e reformat

This will apply black, isort, and lots of love ❤️



gdalos is released under the MIT license, hence allowing commercial use of the library. Please refer to the LICENSE file.

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.

Source Distributions

No source distribution files available for this release. See tutorial on generating distribution archives.

Built Distribution

gdalos-0.64.1-py3-none-any.whl (87.3 kB view hashes)

Uploaded py3

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