Skip to main content

A suite of specialized data processors (Multibeam, Lidar, Raster), etc. for the Fetchez ecosystem.

Project description

Globato

Domo Arigato, Multi-Resolution Globato.

Version License Python PyPI version Project Chat

Globato (Global Bathymetry & Topography) is the next-generation DEM generation suite for the Fetchez ecosystem. Originally part of the CUDEM project, Globato unifies data discovery, download, and processing into a single, streaming pipeline.

❓ Why Globato?

Building Digital Elevation Models (DEMs) typically involves a "download-then-process" workflow that requires massive storage and directories full of custom scripts.

Globato changes this. It acts as a streaming extension to fetchez, allowing you to:

  • Stream, not store: Process points from remote sources (LiDAR, Multibeam, COGs) on-the-fly without saving raw files to disk.
  • Harmonize Resolution: Seamlessly blend high-resolution multibeam with coarse global topography (hence the M.R. in Mr. Globato).
  • Standardize Metadata:
  • ETC

Whether you are building a quick 30m regional map or a precision 1m surface, globato keeps your pipeline clean, reproducible, and memory-efficient.


🌎 Features

  • Streaming Gridders:
    • simple_stack: A lightweight, memory-safe stream for generating standard Z-elevation rasters (weighted mean).
    • multi_stack: A heavy-duty statistical engine that generates 7-band GeoTIFFs containing Elevation, Weight, Count, Uncertainty, Source Uncertainty, and average X/Y locations for every pixel.
  • Provenance Tracking: Automatically generate bitmask rasters that map exactly which datasets contributed to every pixel in your output.
  • Data Readers:
    • Native BAG Support: A Bathymetric Attributed Grid reader that handles Variable Resolution (VR).
    • COG Subsetting: Windowed fetching for Cloud Optimized GeoTIFFs.
  • Modern Architecture: Built on rasterio, numpy, and fetchez, dropping heavy legacy dependencies for a pure Python experience.
  • Declarative Recipes: Define complex, multi-sensor build pipelines in simple yaml files.

🔌 How Globato Extends Fetchez

globato does not provide a separate CLI tool. Instead, it acts as a plugin suite that injects advanced processing capabilities directly into the fetchez engine.

When you install globato, fetchez automatically detects and registers these new capabilities, allowing you to chain them into your existing workflows using the standard --hook syntax.

The Globato Toolkit

globato extends the core fetchez ecosystem by adding three types of components:

  1. Data Streams Standard fetchez downloads files. globato turns those files into streaming point clouds.

stream_data: Auto-detects file types (LAS, LAZ, BAG, XYZ, OGR) and converts them into a standardized stream of x,y,z,weight,uncertainty records.

stream_reproject: Reprojects streaming points on-the-fly using pyproj (e.g., converting WGS84 to UTM Zone 10N in memory).

  1. Filters Clean your data before it ever hits a grid.

block_thin: Decimate your data stream for faster processing.

outierz: Remove statistical outliers from you data stream

  1. Stackers The core of the globato engine; turning streams into surfaces.

simple_stack: A fast, memory-safe stacker for generating standard weighted-mean Elevation rasters.

multi_stack: The heavy-duty statistical engine. Generates 7-band GeoTIFFs (Z, Count, Weight, Uncertainty, Source Uncertainty, X-mean, Y-mean) for rigorous analysis.

provenance: Generates a bitmask raster tracking exactly which dataset contributed to each pixel.

  1. Specialized Modules

gebco_cog: A specialized fetch module for the GEBCO global bathymetry dataset, optimized for COG subsetting.

glob_coast: A "Super-Module" that fetches topographic, bathymetri can hydrographic datasets to generate a coastline-mask.

🤖 Usage Example

Because globato is just a set of hooks, a complex ETL job looks just like a standard fetchez command.

Example: The globato pipeline fetches multibeam data, filters outliers, reprojects to NAVD88, and grids it without saving intermediate files.

fetchez multibeam -R -124.5/-124.0/43.0/43.5 \
    --weight 1.0 --uncertainty 0.5 \
    # Turn download into a stream
    --hook stream_data \
    # Reproject stream to WGS84/NAVD88
    --hook stream_reproject:dst_srs=EPSG:4326+5703 \
    # Filter statistical outliers (3-sigma)
    --hook filter:method=outlierz:threshold=3.0 \
    # Grid into a 7-band statistical surface
    --hook multi_stack:res=10:mode=mean:output=coos_bay_stack.tif

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

globato-0.2.0.tar.gz (73.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

globato-0.2.0-py3-none-any.whl (117.9 kB view details)

Uploaded Python 3

File details

Details for the file globato-0.2.0.tar.gz.

File metadata

  • Download URL: globato-0.2.0.tar.gz
  • Upload date:
  • Size: 73.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for globato-0.2.0.tar.gz
Algorithm Hash digest
SHA256 597792903890bb37eed4bd08c4d6f30e85fb388ea7a5b8fab39d8c327ec0fc90
MD5 5043b61743273465a21bdc1d22d7b44e
BLAKE2b-256 2d0616d21026475ac8b524c5085fba0cf77d90267d5bcf816bb1595f83ec523e

See more details on using hashes here.

Provenance

The following attestation bundles were made for globato-0.2.0.tar.gz:

Publisher: publish.yaml on continuous-dems/globato

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file globato-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: globato-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 117.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for globato-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7bf4e852545a775e968cd7d07909255ba583917e92de03fd827b7a016c9350cc
MD5 2354c54de9b59ca22ef9a525012de296
BLAKE2b-256 d139aed179e7cfa0fff11d3ea65e65d9ba4cb5d67908e0d98eb9152bbfadc7e1

See more details on using hashes here.

Provenance

The following attestation bundles were made for globato-0.2.0-py3-none-any.whl:

Publisher: publish.yaml on continuous-dems/globato

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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