Sdílet prostřednictvím


Přehled STAC pro Microsoft Planetární počítač Pro

Tento článek obsahuje přehled specifikace STAC (SpatioTemporal Asset Catalog) a způsobu, jakým ho Microsoft Planety Computer Pro používá.

Specifikace STAC

Specifikace STAC je otevřený standard řízený komunitou, který usnadňuje hledání, kombinování a používání geoprostorových dat. STAC poskytuje společnou strukturu pro popis a katalogizace "patiotemporálních prostředků". Tato struktura umožňuje indexovat a uspořádat data napříč prostorem i časem.

Díky STAC můžou organizace zpřístupnit své geoprostorové prostředky široké škále uživatelů. Katalogy STAC můžete použít k uspořádání mnoha typů geoprostorových dat aktiv, včetně:

  • Satelitní, satelitní a dronové snímky
  • Data LIDAR a SAR
  • Full Motion Video
  • Hyperspektrální data
  • Jiné odvozené formáty dat

Kromě toho můžete použít STAC se stávajícími a vznikajícími nativními cloudovými formáty dat, jako jsou GeoTIFF (Cloud Optimized GeoTIFFs) a GeoParquet.

Od svého vydání v roce 2018 mnoho organizací rychle přijalo STAC k uspořádání prostorových dat. Mezi tyto organizace patří satelitní operátoři, vládní agentury, skupiny občanské společnosti a komerční společnosti.

Specifikace STAC se skládá ze čtyř doplňkových standardů pro popis geoprostorových prostředků, uspořádání těchto prostředků do skupin a vyhledávání těchto prostředků prostřednictvím běžných rozhraní API. Konkrétně tyto standardy STAC zahrnují:

Planetární počítač Pro používá specifikaci STAC napříč všemi aspekty správy dat.

Diagram znázorňující komponenty specifikace STAC a jejich vztahy, včetně katalogu STAC, kolekce STAC, položek STAC a rozhraní STAC API, se šipkami ukazujícími, jak se vzájemně propojují

Katalogy STAC

Úvod do GeoCatalogs

Služba Planetární počítač Pro umožňuje vytvořit ve svém předplatném Azure prostředek GeoCatalog pro příjem, správu, vyhledávání a distribuci geoprostorových datových sad. GeoCatalog je prostředek Azure, který z hlediska rozhraní STAC API logicky odpovídá katalogu STAC. Katalog STAC je objekt nejvyšší úrovně v hierarchii STAC, který logicky seskupuje kolekce STAC a položky STAC. Kód JSON katalogu STAC můžete zobrazit pro konkrétní GeoCatalog pomocí webového prohlížeče JSON a přejít na https://<your geocatalog uri>/json-api?path=/. Další informace o specifikaci katalogu STAC naleznete v tématu STAC Catalog Spec.

GeoCatalog je definován pomocí následujících informací:

Pole Popis
Předplatné Předplatné Azure, ve kterém nasazujete instanci GeoCatalogu
Skupina zdrojů Skupina prostředků Azure, do které nasadíte instanci GeoCatalogu
Název Název instance GeoCatalog
Región Oblast Azure, ve které nasazujete instanci GeoCatalogu

Planetární počítač Pro může v současné době nasazovat GeoCatalogs v následujících oblastech Azure:

  • USA – východ​
  • Střed USA – sever
  • Západní Evropa
  • Kanada – střed
  • Velká Británie – jih
  • Státní správa USA – Virginie

GeoCatalog můžete nasadit pomocí webu Azure Portal nebo rozhraní Azure REST API. Informace o nasazení GeoCatalogu do předplatného Azure najdete v tématu Vytvoření prostředku GeoCatalog.

Kolekce STAC

Úvod do kolekcí

GeoCatalog umožňuje vytvářet kolekce pro ukládání a uspořádání geoprostorových datových sad v Azure. Pomocí kolekce STAC můžete popsat skupinu položek STAC, které sdílejí vlastnosti a metadata, například společnou geografickou oblast nebo senzor. Další informace o konceptu kolekce STAC naleznete v tématu STAC collection Spec.

Definice kolekce

Planetární počítač Pro dodržuje specifikaci kolekce STAC, která definuje sadu společných polí pro popis datové sady a zahrnutých položek.

V rámci kolekce můžete zadat typ a strukturu dat uložených v této kolekci. Pomocí Průzkumníka planetárního počítače Pro můžete také přidat nastavení konfigurace vykreslování pro vizualizaci dat v kolekci.

Kolekce definujete v GeoCatalogu ve formátu JSON. Definice obsahuje následující pole:

Pole Popis
ID Povinné – identifikátor kolekce, která je jedinečná v rámci zprostředkovatele.
Typ Povinné – typ elementu STAC; musí být "collection" (kolekce).
Titulek Krátký, popisný název kolekce na jeden řádek.
Popis Povinné – podrobný víceřádkový popis k úplnému vysvětlení kolekce.
Licence Povinné – licence pro kolekci.
Rozsah Povinné – popisuje prostorové rozsahy (zeměpisná délka/zeměpisná šířka) a časové rozsahy (rozsah kalendářních dat) kolekce.
Poskytovatelé Organizace, které zaznamenávají nebo zpracovávají obsah kolekce.
Souhrny Seznam párů klíč-hodnota, které poskytují přehled vlastností zahrnutých položek.
Aktiva kolekce Datové soubory přímo přidružené ke kolekci, jako je třeba miniatura.
Assety položek Podrobnosti o datových souborech, které jsou zahrnuty v položkách kolekce. Další informace naleznete v sekci Majetek položky.
Odkazy Povinné – seznam objektů odkazů na zdroje a související adresy URL.
Klíčová slova Seznam klíčových slov popisujících kolekci
Verze STAC Povinné – verze STAC používaná kolekcí.

Assety položek

Pole item_assets na úrovni kolekce ukazuje, jaké prostředky (datové soubory) jsou k dispozici v jakékoli podřízené položce. Uvedené prostředky v tomto poli neznamenají, že všechny prostředky jsou dostupné pro všechny položky. Pole zobrazuje sjednocení dostupných aktiv, nikoli průnik. Toto pole povolíte v GeoCatalogu prostřednictvím rozšíření item_assets specifikace STAC. Pokud chcete vizualizovat položky v Průzkumníku GeoCatalogu, potřebujete rozšíření pro zobrazení položek.

Pole item_assets je objekt s alespoň dvěma z následujících polí:

Pole Typ Popis
název řetězec Zobrazený název pro klienty a uživatele
popis řetězec Popis prostředku poskytující další podrobnosti, například způsob jeho zpracování nebo vytvoření.
typ řetězec Typ média prostředku.
Role seznam řetězců Sémantické role prostředku, podobně jako použití rel v odkazech.

Příklady JSON kolekce

Následující příklad ukazuje minimální JSON kolekce. Další pole najdete ve specifikaci kolekce STAC.

{
  "id": "example-collection",
  "type": "Collection",
  "title": "Example collection",
  "description": "An example collection",
  "license": "CC-BY-4.0",
  "extent": {
    "spatial": {
      "bbox": [
        [
          -180,
          -90,
          180,
          90
        ]
      ]
    },
    "temporal": {
      "interval": [
        [
          "2018-01-01T00:00:00Z",
          "2018-12-31T23:59:59Z"
        ]
      ]
    }
  },
  "links": [],
  "stac_version": "1.0.0"
}

Trochu složitější příklad JSON najdete v tomto příkladu popisující otevřenou datovou sadu z programu NAIP (National Agriculture Imagery Program).

Konfigurace kolekce

Pokud chcete vizualizovat kolekce v Průzkumníku GeoCatalogu, musíte definovat několik konfigurací, mezi které patří:

Položky STAC

Úvod k položkám STAC

GeoCatalog ukládá a organizuje geoprostorové datové sady do kolekcí. Položka STAC je základním objektem v kolekci GeoCatalogu. Obsahuje metadata scény a odkazy na objekty z této scény, například satelitní obrázek. Metadata položky umožňuje GeoCatalogu vyhledávat a dotazovat prostorové zdroje. Další informace o položkách STAC naleznete v tématu STAC Item Spec.

Definice položky

Planetární počítač Pro dodržuje specifikaci položky STAC, která definuje sadu společných polí pro popis položky, jako je časový rozsah a prostředky související s položkou. Položky definujete ve formátu JSON a můžete je flexibilně rozšířit, aby obsahovaly více metadat.

Platná položka STAC vyžaduje následující pole:

Pole Popis
ID Povinné – identifikátor položky, která je jedinečná v nadřazené kolekci položky
Typ Povinné – typ objektu GeoJSON; musí být "Funkce"
Geometrie Je požadován – definuje úplnou plochu aktiva reprezentovaného touto položkou jako GeoJSON geometrický objekt.
Ohraničující rámeček Povinné – souřadnice ohraničujícího rámečku aktiva reprezentované touto položkou
Vlastnosti Povinné – další metadata položky
Aktiva Povinné – datové prostředky přidružené k položce, každý s jedinečným klíčem
Sbírka Povinné – ID kolekce nadřazené položky
Odkazy Povinné – seznam objektů odkazu na prostředky a související adresy URL
Verze STAC Povinné – verze STAC používaná položkou

Mezi běžná metadata položek, která přesahují tato povinná pole, patří datum a čas, licence, poskytovatelé, nástroj a další.

Příklad JSON položky

Následující příklad ukazuje základní kód JSON položky.

{
  "stac_version": "1.0.0",
  "stac_extensions": [],
  "type": "Feature",
  "id": "20201211_223832_CS2",
  "bbox": [
    172.91173669923782,
    1.3438851951615003,
    172.95469614953714,
    1.3690476620161975
  ],
  "geometry": {
    "type": "Polygon",
    "coordinates": [
      [
        [
          172.91173669923782,
          1.3438851951615003
        ],
        [
          172.95469614953714,
          1.3438851951615003
        ],
        [
          172.95469614953714,
          1.3690476620161975
        ],
        [
          172.91173669923782,
          1.3690476620161975
        ],
        [
          172.91173669923782,
          1.3438851951615003
        ]
      ]
    ]
  },
  "properties": {
    "datetime": "2020-12-11T22:38:32.125000Z"
  },
  "collection": "simple-collection",
  "links": [
    {
      "rel": "collection",
      "href": "./collection.json",
      "type": "application/json",
      "title": "Simple example collection"
    },
    {
      "rel": "root",
      "href": "./collection.json",
      "type": "application/json",
      "title": "Simple example collection"
    },
    {
      "rel": "parent",
      "href": "./collection.json",
      "type": "application/json",
      "title": "Simple example collection"
    }
  ],
  "assets": {
    "visual": {
      "href": "[URL]",
      "type": "image/tiff; application=geotiff; profile=cloud-optimized",
      "title": "3-Band Visual",
      "roles": [
        "visual"
      ]
    },
    "thumbnail": {
      "href": "[URL]",
      "title": "Thumbnail",
      "type": "image/jpeg",
      "roles": [
        "thumbnail"
      ]
    }
  }
}

Rozšíření STAC

V současné době GeoCatalog automaticky přidá následující rozšíření do všech přijatých kolekcí:

Můžete také použít rozšíření STAC na úrovni položky STAC.

Poznámka:

Položky STAC včetně rozšíření se ověřují pomocí knihovny PySTAC. Pokud dojde k chybám ověření STAC, zkuste rozšíření odebrat.

Úplný seznam rozšíření STAC, včetně vyspělosti jednotlivých rozšíření, najdete na stránce rozšíření STAC na GitHubu.

STAC API

Rozhraní API planetárního počítače Pro odpovídají specifikaci rozhraní STAC API, takže můžete rychle a snadno vyhledávat petabajtové datové sady, abyste našli konkrétní datové prostředky, které vyhovují vašim potřebám. Jakmile tyto prostředky identifikujete, můžete je zobrazit nebo stáhnout pomocí rozhraní API GeoCatalogu.

Další kroky