ucam-eo/geotessera

Python library for the Tessera embeddings

GeoTessera – 地球卫星嵌入的 Python 库

功能说明

  • 提供程序化访问 Tessera 嵌入的功能,这是一种像素级地球基础模型,可将一年的 Sentinel-1/2 影像转换为每个 10 m 像素的 128 通道向量。
  • 该库可以直接从云端托管的 Zarr 存储库流式传输嵌入数据,或将其下载为 GeoTIFF/NumPy 切片以供离线使用。
  • 包含一个用于常见任务的 CLI (geotessera):下载区域、使用 PCA 可视化、生成网页地图切片以及检查数据覆盖范围。

如何使用

  1. 使用 pip install geotessera 安装 (Python 3.12+)。
  2. 创建客户端,例如 gt = GeoTesseraZarr()。
  3. 查询点位 (gt.probe(lon, lat, year)) 或整个区域 (gt.read_region(bbox, year))。
  4. 将结果导出为 GeoTIFFs (gt.export_geotiffs(...)) 或 NumPy 数组。
  5. 选择性执行 CLI:
    geotessera download --bbox '-3,53.4,-2.9,53.5' --year 2024 --output region/
    geotessera webmap --bbox '-3,53.4,-2.9,53.5' --year 2024 --output map/ --serve
    

关键技术细节

  • Zarr 后端:仅读取所需的字节范围,使用像素级比例因子对 int8 值进行反量化,并在原生 UTM 网格上返回 float-32 向量。
  • 切片系统:0.1° × 0.1° 切片 (~11 km) 以量化 .npy 加上比例文件存储;陆地掩膜切片提供正确的地理参考。
  • 注册表:每个数据集版本 (v1.1, v2) 的 Parquet 清单列出了可用切片,实现快速的空间/时间查询。
  • 元数据安全性:每次导出都会写入 tessera_metadata.json 并为 GeoTIFF 标记数据集版本;防止混合不同版本。
  • 代理技能:为 Claude-Code 代理学习 Zarr API 的可选技能。

何时选择 GeoTessera

  • 您需要用于大规模地球观测分析(例如土地覆盖变化、气候建模、农业监测)的密集多光谱嵌入。
  • 您不想下载整个全局数据集;流式 Zarr API 仅提取您需要的区域。
  • 您在 Python/GIS 环境中工作,并希望获得现成的 GeoTIFFs 或网页地图切片。

限制 / 当前状态

  • v2 嵌入仍在按需生成中;处理时间可能较慢。
  • 基于切片的下载 (--source tiles) 已弃用,将会被移除。
  • Sentinel 采集几何结构仍存在一些伪影;这些已记录在案但无法完全移除。

了解更多


以上所有信息均直接取自存储库的 README。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目