ucam-eo/geotessera

Python library for the Tessera embeddings

GeoTessera – 地球衛星埋め込み用Pythonライブラリ

機能

  • Tessera 埋め込みへのプログラムによるアクセスを提供します。これは、1年分の Sentinel-1/2 画像を10 mピクセルごとに128チャンネルのベクトルに変換するピクセル単位の地球基礎モデルです。
  • このライブラリは、クラウドホスト型の Zarr ストアから直接埋め込みをストリーミングしたり、オフライン作業用に GeoTIFF/NumPy タイルとしてダウンロードしたりできます。
  • 一般的なタスク用の CLI (geotessera) が含まれています:領域のダウンロード、PCAによる可視化、Webマップタイルの生成、データカバレッジの確認。

使用方法

  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 環境で作業しており、すぐに使える GeoTIFF や Web マップタイルが必要な場合。

制限事項 / 現状

  • v2 埋め込みは現在オンデマンドで生成中のため、時間がかかる場合があります。
  • タイルベースのダウンロード (--source tiles) は非推奨であり、削除される予定です。
  • Sentinel の取得ジオメトリに起因する一部のアーティファクトが残っています。これらは文書化されていますが、完全には除去できません。

詳細情報


上記のすべての情報は、リポジトリの README から直接引用しています。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト