Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Ten artykuł zawiera omówienie specyfikacji spatioTemporal Asset Catalog (STAC) i sposobu korzystania z niej przez firmę Microsoft Planetary Computer Pro.
Specyfikacja STAC
Specyfikacja STAC to otwarty, oparty na społeczności standard, który ułatwia znajdowanie, łączenie i używanie danych geoprzestrzennych. StaC zapewnia wspólną strukturę opisującą i katalogującą "zasoby spatiotemporalne". Ta struktura umożliwia indeksowanie i organizowanie danych zarówno w przestrzeni, jak i w czasie.
Dzięki funkcji STAC organizacje mogą udostępniać swoje zasoby geoprzestrzenne szerokiemu zakresowi użytkowników. Wykazy STAC umożliwiają organizowanie wielu typów danych zasobów geoprzestrzennych, w tym:
- Zdjęcia satelitarne, lotnicze i drony
- Dane LIDAR i SAR
- Wideo Pełnoruchemowe
- Dane hiperspektywne
- Inne formaty danych pochodnych
Ponadto można używać funkcji STAC z istniejącymi i pojawiającymi się formatami danych natywnych dla chmury, takimi jak Cloud Optimized GeoTIFFs (COGs) i GeoParquet.
Od czasu wydania w 2018 r. wiele organizacji szybko przyjęło STAC do organizacji danych przestrzennych. Organizacje te obejmują operatory satelitarne, agencje rządowe, grupy społeczeństwa obywatelskiego i firmy komercyjne.
Specyfikacja STAC składa się z czterech uzupełniających standardów dotyczących opisywania zasobów geoprzestrzennych, organizowania tych zasobów w grupach i dokonywania wyszukiwania tych zasobów za pośrednictwem typowych interfejsów API. W szczególności te standardy STAC obejmują:
Planetary Computer Pro używa specyfikacji STAC we wszystkich aspektach zarządzania danymi.
Wykazy STAC
Wprowadzenie do geokatalogów
Usługa Planetary Computer Pro umożliwia utworzenie zasobu GeoCatalog w ramach subskrypcji platformy Azure w celu pozyskiwania, wyszukiwania i dystrybuowania zestawów danych geoprzestrzennych oraz zarządzania nimi. GeoCatalog to zasób platformy Azure, który z perspektywy interfejsu API STAC jest logicznie odpowiednikiem wykazu STAC. Wykaz STAC to obiekt najwyższego poziomu w hierarchii STAC, który logicznie grupuje kolekcje STAC i elementy STAC. Kod JSON wykazu STAC można wyświetlić dla określonego geokatalogu przy użyciu przeglądarki internetowej JSON i przejść do strony https://<your geocatalog uri>/json-api?path=/. Aby uzyskać więcej informacji na temat specyfikacji wykazu STAC, zobacz specyfikację wykazu STAC.
GeoCatalog jest definiowany przy użyciu następujących informacji:
| (No changes needed) | Opis |
|---|---|
| Subskrypcja | Subskrypcja platformy Azure do wdrażania wystąpienia GeoCatalog |
| Grupa zasobów | Grupa zasobów platformy Azure, w której wdrażasz instancję GeoCatalog |
| Nazwa | Nazwa wystąpienia GeoCatalogu |
| Rejon | Region Azure, w którym wdrażasz instancję GeoCatalog |
Obecnie Planetary Computer Pro może wdrażać geokatalogy w następujących regionach świadczenia usługi Azure:
- Wschodnie stany USA
- Północno-środkowe stany USA
- Europa Zachodnia
- Kanada Środkowa
- Południowe Zjednoczone Królestwo
- Rząd USA Wirginia
Dziennik geograficzny można wdrożyć przy użyciu witryny Azure Portal lub interfejsu API REST platformy Azure. Aby dowiedzieć się, jak wdrożyć GeoCatalog w ramach subskrypcji Azure, zobacz Tworzenie zasobu GeoCatalog.
Kolekcje STAC
Wprowadzenie do kolekcji
GeoCatalog umożliwia tworzenie kolekcji do przechowywania i organizowania zestawów danych geoprzestrzennych na platformie Azure. Użyj kolekcji STAC, aby opisać grupę elementów STAC, które współdzielą właściwości i metadane, takie jak wspólny obszar geograficzny lub czujnik. Aby uzyskać więcej informacji na temat koncepcji kolekcji STAC, zobacz Specyfikacje kolekcji STAC.
Definicja kolekcji
Planetary Computer Pro jest zgodna ze specyfikacją kolekcji STAC, która definiuje zestaw typowych pól do opisania zestawu danych i uwzględnionych elementów.
W kolekcji można określić typ i strukturę danych przechowywanych w tej kolekcji. Możesz również dodać ustawienia konfiguracji renderowania , aby wizualizować dane w kolekcji przy użyciu Eksploratora komputerów planetarnych Pro.
Kolekcje definiuje się w GeoCatalogu w formacie JSON. Definicja zawiera następujące pola:
| (No changes needed) | Opis |
|---|---|
| identyfikator | Wymagane — identyfikator kolekcji, która jest unikatowa dla dostawcy. |
| Typ | Wymagane — typ elementu STAC; musi być "kolekcja". |
| Nazwa | Krótki opisowy tytuł jednoliniowy kolekcji. |
| Opis | Wymagane — szczegółowy opis wielowierszowy, który dokładnie wyjaśnia kolekcję. |
| Licencje | Wymagane — licencje kolekcji. |
| Zakres | Wymagane — opisuje zakresy przestrzenne (długość/szerokość geograficzna) i czasowe (zakres dat) kolekcji. |
| Dostawcy usługi | Organizacje, które przechwytują lub przetwarzają zawartość kolekcji. |
| Streszczeń | Lista par klucz-wartość, które zawierają omówienie właściwości uwzględnionych elementów. |
| Zasoby zbiorów | Pliki danych bezpośrednio skojarzone z kolekcją, takie jak obraz miniatury. |
| Zasoby przedmiotów | Szczegółowe informacje o plikach danych zawartych w elementach kolekcji. Aby uzyskać więcej informacji, zobacz Zasoby elementów. |
| Linki | Wymagane — lista obiektów łącza do zasobów i powiązanych adresów URL. |
| Słowa kluczowe | Lista słów kluczowych opisujących kolekcję. |
| Wersja STAC | Wymagane — wersja STAC używana w tej kolekcji. |
Zasoby elementów
Pole item_assets na poziomie kolekcji pokazuje, jakie zasoby (pliki danych) są dostępne w dowolnym elemencie podrzędnym. Wymienione zasoby w tym polu nie oznaczają, że wszystkie zasoby są dostępne dla wszystkich elementów. Pole zawiera związek dostępnych zasobów, a nie skrzyżowania. To pole można włączyć w GeoCatalog za pomocą rozszerzenia item_assets specyfikacji STAC. Potrzebujesz rozszerzenia zasobów elementów, jeśli chcesz wizualizować elementy w Eksploratorze geokatalogu.
Pole item_assets jest obiektem z co najmniej dwoma następującymi polami:
| (No changes needed) | Typ | Opis |
|---|---|---|
| tytuł | ciąg | Wyświetlany tytuł dla klientów i użytkowników. |
| opis | ciąg | Opis zasobu, który zawiera więcej szczegółów, takich jak sposób jego przetworzenia lub utworzenia. |
| typ | ciąg | Typ nośnika zasobu. |
| Ról | lista ciągów | Semantyczne role elementu zawartości, podobne do użycia rel w linkach. |
Przykłady kodu JSON kolekcji
W poniższym przykładzie przedstawiono minimalną strukturę JSON kolekcji. Aby uzyskać więcej pól, zobacz specyfikację kolekcji 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"
}
Aby zapoznać się z nieco bardziej złożonym przykładem JSON, zobacz ten przykład opisujący otwarty zestaw danych z Krajowego Programu Obrazów Rolnictwa (NAIP).
Konfiguracja kolekcji
Aby wizualizować kolekcje w Eksploratorze geokatalogu, należy zdefiniować kilka konfiguracji, w tym:
- Definicja mozaiki
- Konfiguracja renderowania
- Ustawienia kafelka
- Pola z możliwością wykonywania zapytań
Elementy STAC
Wprowadzenie do elementów STAC
Usługa GeoCatalog przechowuje i organizuje zestawy danych geoprzestrzennych w kolekcje. Element STAC jest podstawowym obiektem w kolekcji GeoCatalog. Zawiera metadane sceny i linki do zasobów z tej sceny, takie jak obraz satelitarny. Metadane elementu umożliwiają usłudze GeoCatalog wyszukiwanie zasobów przestrzennych i wykonywanie względem ich zapytań. Aby uzyskać więcej informacji na temat elementów STAC, zobacz STAC Item Spec (Specyfikacje elementów STAC).
Definicja elementu
Planetary Computer Pro jest zgodna ze specyfikacją elementu STAC, która definiuje zestaw typowych pól do opisania elementu, takiego jak zakres czasu i zasoby związane z elementem. Definiujesz elementy w formacie JSON i można je elastycznie rozszerzać, aby uwzględnić więcej metadanych.
Prawidłowy element STAC wymaga następujących pól:
| (No changes needed) | Opis |
|---|---|
| identyfikator | Wymagane — identyfikator elementu, który jest unikatowy w kolekcji nadrzędnej elementu |
| Typ | Wymagane — typ obiektu GeoJSON; musi mieć wartość "Funkcja" |
| Geometria | Wymagane — definiuje pełny zasięg zasobu, który jest reprezentowany przez ten element jako obiekt geometryczny GeoJSON. |
| Ramka ograniczająca | Wymagane — współrzędne ramki ograniczającej zasobu reprezentowanego przez ten obiekt |
| Właściwości | Wymagane — inne metadane elementu |
| Zasoby | Wymagane — zasoby danych skojarzone z elementem, z których każdy ma unikatowy klucz |
| Kolekcja | Wymagane — identyfikator kolekcji, do której należy element |
| Linki | Wymagane — lista obiektów linków do zasobów i powiązanych adresów URL |
| Wersja STAC | Wymagane — wersja STAC używana przez element |
Typowe metadane elementów poza tymi wymaganymi polami obejmują datę i godzinę, licencje, dostawców, instrumentację i inne.
Przykład kodu JSON elementu
Poniższy przykład przedstawia podstawowy element JSON.
{
"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"
]
}
}
}
Rozszerzenia STAC
Obecnie geocatalog automatycznie dodaje następujące rozszerzenia do wszystkich pozyskanych kolekcji:
Można również użyć rozszerzeń STAC na poziomie elementu STAC.
Uwaga / Notatka
Elementy STAC, w tym rozszerzenia, są weryfikowane przy użyciu biblioteki PySTAC. Jeśli wystąpią błędy weryfikacji STAC, spróbuj usunąć rozszerzenie.
Aby uzyskać pełną listę rozszerzeń STAC, w tym dojrzałość każdego z nich, zobacz stronę rozszerzeń STAC w witrynie GitHub.
STAC API
Interfejsy API Planetary Computer Pro są zgodne ze specyfikacją interfejsu API STAC, dzięki czemu można szybko i łatwo wyszukiwać zestawy danych petabajtów w celu znalezienia określonych zasobów danych spełniających Twoje potrzeby. Po zidentyfikowaniu tych zasobów możesz wyświetlić lub pobrać zasoby przy użyciu interfejsów API usługi GeoCatalog.