Cloud-native version of the Version 2 High Resolution Canopy Height Maps by WRI and Meta from https://registry.opendata.aws/dataforgood-fb-forestsv2/
A cloud-native repackaging of Meta's DINOv3 Global Canopy Height Map v2 (ml3): a global ~1.19 m canopy-height raster (213,109 Web-Mercator tiles, ~23.8 TB of COGs).
This package does not copy the 23.8 TB of pixels. Instead it adds the three things the original distribution lacks for streaming + analysis, and references Meta's COGs in place:
0 is both true-zero and
no-data (the source sets no explicit nodata mask).This is a static STAC catalog: a collection.json plus a stac-geoparquet
items.parquet (213,109 Items). No STAC API server is required. The parquet is
written in 54 quadkey-sorted (Z-order) row groups with per-group bbox statistics, so a
spatial query reads only the matching byte ranges over HTTP — e.g. a city-scale bbox
touches ~3 of 54 row groups, skipping ~94% of the file. Point any of these tools straight
at the public URL:
https://data.source.coop/tge-labs/meta-chm-v2/stac/items.parquet
Collection metadata (pystac):
Search the Items — pick your tool, all stream + prune row groups:
Also works: geopandas read_parquet(..., bbox=...), Polars scan_parquet, and the
stac-geoparquet library. For teams that specifically need the pystac-client API
(Client.open(...).search(...)), serve items.parquet behind
stac-fastapi-geoparquet — no
database required.
Search → xarray (odc.stac): turn found Items into a lazily-loaded, dask-backed
xarray cube reading the COGs directly (EPSG:3857, no reprojection):
See examples/search_and_read.py and examples/odc_stac_load.py in the
chm-zarr repo.
CC-BY-4.0. Underlying data © Meta / Data for Good; repackaging by Taylor
Geospatial Engine Labs. See LICENSE. Cite Tolan et al. (2024),
https://arxiv.org/abs/2304.07213.
The VirtualiZarr store contains only chunk references (offsets/lengths) into Meta's public COGs — if Meta's bucket moves, the Zarr reads break by design.