pypi Conda Tests pre-commit black Apache DOI


Library gathering functions for all SERTIT’s projects.

Find the API documentation here.



For installing this library to your environment, please type this: pip install sertit[full]

[full] will allow you to use the whole library, but you will need to install also rioxarray and geopandas (with GDAL installation issues on Windows, so please install them from wheels that you can find here).

However, if you do not need everything, you can type instead:

  • nothing, and you won’t need rasterio, rioxarray: pip install sertit --extra-index-url ...

  • [rasters], and you won’t need rioxarray: pip install sertit[rasters] --extra-index-url ...

  • [rasters_rio]: pip install sertit[rasters_rio] --extra-index-url ...

  • [colorlog]: pip install sertit[colorlog] --extra-index-url ... to have colorlog installed

  • [dask]: pip install sertit[dask] --extra-index-url ... to have dask installed


You can install it via conda (but you will automatically have the full version):

conda config --env --set channel_priority strict

conda install -c conda-forge sertit

What is in it ?#


Helpers for files, i.e. :

  • paths

  • Create archive

  • Add folder to zip file

  • file extraction

  • file name

  • copy/remove

  • find files

  • JSON/pickles

  • hash


Helpers for logs, i.e. :

  • Init simple logger

  • Create complex logger (file and stream + color)

  • Shutdown and reset logger


Helpers of all sort, i.e. :

  • Function on lists: convert a list to a dict, remove empty values…

  • Function on dicts: nested set, check mandatory keys, find by key

  • Run a command line

  • Get a function name

  • Test if in docker

  • Change current directory (cd) as a context manager


Helpers for string manipulation, i.e. :

  • Conversion from string to bool, logging level, list, list of dates…

  • Convert the string to be usable in command line

  • Case conversion (snake_case to/from CamelCase)


Helpers for vector functions, i.e. :

  • Read vectors from disk or on the cloud

  • Load an AOI as WKT

  • Get UTM projection from lat/lon

  • Manage bounds and polygons

  • Get geopandas.Geodataframe from polygon and CRS

Rasters and rasters_rio#

Helpers for rasters functions, i.e. :

  • Get extent and footprint of a raster

  • Read/write overload of rasterio functions

  • Masking and cropping with masked array

  • Collocation (superimpose)

  • Sieving

  • Vectorization and get nodata vector

  • Merge rasters (as GTiff and VRT)

  • Get the path of the BEAM-DIMAP image that can be read by rasterio

  • Manage bit arrays

  • Hillshade and slope computation

The main difference between the two is that rasters outputs one xarray variable when rasters_rio outputs + dict for the raster array and its metadata.



Helpers for SNAP, such as creating a GPT command line with optimizations


Helpers for handling XMLs objects (lxml.etree Elements), i.e.:

  • Read and write elements

  • Add, update and remove nodes


Helpers for CI with function asserting equality between rasters, geometry, files, XML…


Helpers for arcpy integration, i.e. a logger class designed to work with ArcGis logs.


Helpers scaling images for display purposes.


An HTML documentation is provided to document the code. It can be found:

  • online (here),

  • on git, in docs. To consult it, just open the index.html file in a web browser (you need first to clone this project) To generate the HTML documentation, just type pdoc sertit -o docs\html -f --html -c sort_identifiers=False

Site content#


Source Code: sertit/sertit-utils