eomatch.generate_previews.generate_previews#
- eomatch.generate_previews.generate_previews(catalogue_path: str, collections: List[str] | None = None, platforms: List[str] | None = None, start_time: datetime | None = None, stop_time: datetime | None = None, bbox: List[float] | None = None, max_pixels: int = 512, overwrite: bool = False, generate_thumbnail: bool = True, generate_overview: bool = True, generate_event_thumbnail: bool = True, generate_event_overview: bool = True, context: EOMatchContext | None = None) int[source]#
Generate preview thumbnails for matchups and events in a STAC catalogue.
For each matchup item, optionally generates:
A side-by-side PNG thumbnail (
"thumbnail"asset) showing imagery from each sensor.A georeferenced RGBA GeoTIFF overview (
"overview"asset) that STAC Browser renders on the slippy map.
For each matchup event item, optionally generates:
A PNG thumbnail (
"thumbnail"asset) showing product footprints coloured by collection.A georeferenced RGBA GeoTIFF overview (
"overview"asset) with semi-transparent polygon footprints, suitable for overlay on the slippy map.
Only matchup assets for events whose source products have already been downloaded are generated. Event assets are generated whenever a matchup set is present. Assets that already exist are skipped unless
overwrite=True. Each asset is saved to thethumbnails/tree inside the catalogue and the item JSON is updated on disk immediately.Intended as a periodic job: running it repeatedly on the same catalogue is safe — already-generated items are left untouched.
Uses static
"thumbnail"/"overview"keys rather thanregister_analysis()’s dated-snapshot +:latestconvention: a thumbnail is a refreshed view of the same matchup, not a new analysis result to keep a history of, so there is nothing worth accumulating dated copies of —overwrite=Trueregenerates it in place instead.Example usage:
from eomatch.generate_previews import generate_previews n = generate_previews("/path/to/catalogue", max_pixels=256) n = generate_previews("/path/to/catalogue", generate_overview=True)
- Parameters:
catalogue_path – path to the root
catalog.jsonof an existingMatchupCatalogue.collections – restrict to one sensor pair, e.g.
["S2_MSI_L1C", "LANDSAT_C2L1"].platforms – return only events that include at least one of these platforms.
start_time – lower bound on event time (inclusive).
stop_time – upper bound on event time (inclusive).
bbox – spatial filter as
[lon_min, lat_min, lon_max, lat_max].max_pixels – maximum pixel extent in either spatial dimension of the generated assets.
overwrite – if
True, regenerate assets even when they already exist.generate_thumbnail – if
True(default), generate the side-by-side PNG thumbnail for matchups and register it as a"thumbnail"asset.generate_overview – if
True(default), generate a georeferenced RGBA GeoTIFF overview for matchups and register it as an"overview"asset. STAC Browser renders this asset on the slippy map.generate_event_thumbnail – if
True(default), generate a polygon footprint PNG thumbnail for events and register it as a"thumbnail"asset.generate_event_overview – if
True(default), generate a georeferenced RGBA GeoTIFF polygon overview for events and register it as an"overview"asset.context – optional
EOMatchContextsupplying thepreview.readconfig; defaults toEOMatchContext().
- Returns:
number of assets generated (all asset types combined).