ucam-eo/geotessera
Python library for the Tessera embeddings
GeoTessera – 地球卫星嵌入的 Python 库
功能说明
- 提供程序化访问 Tessera 嵌入的功能,这是一种像素级地球基础模型,可将一年的 Sentinel-1/2 影像转换为每个 10 m 像素的 128 通道向量。
- 该库可以直接从云端托管的 Zarr 存储库流式传输嵌入数据,或将其下载为 GeoTIFF/NumPy 切片以供离线使用。
- 包含一个用于常见任务的 CLI (
geotessera):下载区域、使用 PCA 可视化、生成网页地图切片以及检查数据覆盖范围。
如何使用
- 使用
pip install geotessera安装 (Python 3.12+)。 - 创建客户端,例如
gt = GeoTesseraZarr()。 - 查询点位 (
gt.probe(lon, lat, year)) 或整个区域 (gt.read_region(bbox, year))。 - 将结果导出为 GeoTIFFs (
gt.export_geotiffs(...)) 或 NumPy 数组。 - 选择性执行 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 采集几何结构仍存在一些伪影;这些已记录在案但无法完全移除。
了解更多
- 完整文档:https://geotessera.readthedocs.io
- 模型论文:TESSERA v2: Scaling Pixel-wise Earth Foundation Models (arXiv:2607.03949)
- 示例笔记本:https://github.com/ucam-eo/geotessera-examples
以上所有信息均直接取自存储库的 README。
相关
- 项目
- 项目
- 项目
- 项目
- 项目