Compartilhar via


Visão geral do STAC para o Microsoft Planetary Computer Pro

Este artigo fornece uma visão geral da especificação do Catálogo de Ativos SpatioTemporal (STAC) e como o Microsoft Planetary Computer Pro o usa.

Especificação do STAC

A especificação STAC é um padrão aberto e orientado pela comunidade que facilita a localização, a combinação e o uso de dados geoespaciais. O STAC fornece uma estrutura comum para descrever e catalogar "ativos espaciais". Essa estrutura permite indexar e organizar dados em espaço e tempo.

Com o STAC, as organizações podem tornar seus ativos geoespaciais acessíveis a uma ampla gama de usuários. Você pode usar catálogos STAC para organizar muitos tipos de dados de ativos geoespaciais, incluindo:

  • Imagens de satélite, aérea e drone
  • Dados LIDAR e SAR
  • Vídeo de movimento completo
  • Dados hiperespectrais
  • Outros formatos de dados derivados

Além disso, você pode usar o STAC com formatos de dados nativos de nuvem existentes e emergentes, como COGs (Cloud Optimized GeoTIFFs) e GeoParquet.

Desde seu lançamento em 2018, muitas organizações adotaram rapidamente o STAC para organizar seus dados espaciais. Essas organizações incluem operadores satélites, agências governamentais, grupos da sociedade civil e empresas comerciais.

A especificação stac consiste em quatro padrões complementares para descrever ativos geoespaciais, organizar esses ativos em grupos e tornar esses ativos pesquisáveis por meio de APIs comuns. Especificamente, esses padrões STAC incluem:

O Planetary Computer Pro usa a especificação STAC em todos os aspectos do gerenciamento de dados.

Diagrama mostrando os componentes de especificação stac e suas relações, incluindo Catálogo STAC, coleção STAC, Itens STAC e API STAC, com setas mostrando como eles se interconectam.

Catálogos STAC

Introdução ao GeoCatalogs

O serviço Planetry Computer Pro permite que você crie um recurso do GeoCatalog em sua assinatura do Azure para ingerir, gerenciar, pesquisar e distribuir conjuntos de dados geoespaciais. Um GeoCatalog é um recurso do Azure que, do ponto de vista da API STAC, é logicamente equivalente a um Catálogo STAC. Um Catálogo STAC é o objeto de nível superior na hierarquia STAC que agrupa logicamente coleções STAC e Itens STAC. Você pode visualizar o JSON do Catálogo STAC para um GeoCatálogo específico usando o visualizador web de JSON e acessando https://<your geocatalog uri>/json-api?path=/. Para obter mais informações sobre a especificação do Catálogo STAC, consulte StAC Catalog Spec.

Um GeoCatalog é definido usando as seguintes informações:

Campo Descrição
Subscrição Assinatura do Azure em que você implanta a instância do GeoCatalog
Grupo de Recursos Grupo de recursos do Azure em que você implanta a instância do GeoCatalog
Nome Nome da instância do GeoCatalog
Região Região do Azure em que você implanta a instância do GeoCatalog

Atualmente, o Planetry Computer Pro pode implantar GeoCatalogs nas seguintes regiões do Azure:

  • Leste dos EUA
  • Centro-Norte dos EUA
  • Oeste da Europa
  • Canadá Central
  • Sul do Reino Unido
  • Governo dos EUA Virgínia

Você pode implantar um GeoCatalog usando o portal do Azure ou a API REST do Azure. Para saber como implantar um GeoCatalog em sua assinatura do Azure, consulte criar um recurso do GeoCatalog.

Coleções STAC

Introdução às coleções

Um GeoCatalog permite que você crie coleções para armazenar e organizar conjuntos de dados geoespaciais no Azure. Use uma coleção STAC para descrever um grupo de itens STAC que compartilham propriedades e metadados, como uma área geográfica ou sensor comum. Para obter mais informações sobre o conceito da coleção STAC, consulte a especificação da coleção STAC.

Definição de coleção

O Planetary Computer Pro segue a especificação da coleção STAC, que define um conjunto de campos comuns para descrever o conjunto de dados e itens incluídos.

Em uma coleção, você pode especificar o tipo e a estrutura dos dados armazenados nessa coleção. Você também pode adicionar configurações de renderização para visualizar dados na coleção usando o Explorador do Planetary Computer Pro.

Você define coleções no GeoCatalog no formato JSON. A definição inclui os seguintes campos:

Campo Descrição
ID Obrigatório – Identificador para a coleção que é exclusiva em todo o provedor.
Tipo Obrigatório - Tipo de elemento STAC; deve ser "coleção."
Título Título descritivo curto de uma linha para a coleção.
Descrição Obrigatório – Descrição detalhada de várias linhas para explicar totalmente a coleção.
Licenças Obrigatório – licenças da coleção.
Extensão Obrigatório – descreve as extensões espaciais (longitude/latitude) e temporais (intervalo de datas) da coleção.
Provedores Organizações que capturam ou processam o conteúdo da coleção.
Resumos Lista de pares chave-valor que fornecem uma visão geral das propriedades dos Itens incluídos.
Ativos de coleção Arquivos de dados diretamente associados à coleção, como uma imagem em miniatura.
Ativos do item Informações de detalhes sobre os arquivos de dados incluídos nos Itens da coleção. Para obter mais informações, consulte Ativos de Item.
Links Obrigatório – Lista de objetos de link para recursos e URLs relacionadas.
Palavras-chave Lista de palavras-chave que descrevem a coleção.
Versão do STAC Obrigatório – versão STAC usada pela coleção.

Ativos de itens

O campo item_assets no nível da coleção mostra quais ativos (arquivos de dados) estão disponíveis em qualquer Item filho. Os ativos listados neste campo não implicam que todos os ativos estão disponíveis para todos os itens. O campo mostra a união dos ativos disponíveis, não a interseção. Habilite esse campo em um GeoCatalog por meio da extensão item_assets da especificação STAC. Você precisa da extensão de recursos de itens se quiser visualizar itens no GeoCatalog Explorer.

O item_assets campo é um objeto com pelo menos dois dos seguintes campos:

Campo Tipo Descrição
título cadeia O título exibido para clientes e usuários.
descrição cadeia Uma descrição do Ativo fornecendo mais detalhes, como como ele foi processado ou criado.
tipo cadeia Tipo de mídia do ativo.
roles lista de cadeias de caracteres Os papéis semânticos do recurso, semelhantes ao uso de "rel" em links.

Exemplos de JSON de coleção

O exemplo a seguir mostra uma coleção mínima em JSON. Para obter mais campos, consulte a especificação da coleção 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"
}

Para obter um JSON de exemplo um pouco mais complexo, veja este exemplo que descreve um conjunto de dados aberto do Programa Nacional de Imagens agrícolas (NAIP).

Configuração de coleta

Para visualizar coleções no Explorador geocatalog, você deve definir várias configurações, incluindo:

Itens STAC

Introdução aos itens STAC

Um GeoCatalog armazena e organiza conjuntos de dados geoespaciais em coleções. Um item STAC é o objeto principal da coleção de um GeoCatalog. Ele contém metadados para uma cena e links para ativos dessa cena, como uma imagem de satélite. Os metadados de um item permitem que o GeoCatalog pesquise e consulte ativos espaciais. Para obter mais informações sobre itens STAC, consulte StAC Item Spec.

Definição de item

O Planetary Computer Pro segue a Especificação de Item STAC, que define um conjunto de campos comuns para descrever um Item, como intervalo de tempo e os ativos relacionados ao Item. Você define itens no formato JSON e pode expandi-los de forma flexível para incluir mais metadados.

Um item STAC válido requer os seguintes campos:

Campo Descrição
ID Obrigatório – identificador para o Item que é exclusivo na coleção principal do Item
Tipo Obrigatório - Tipo de objeto GeoJSON; deve ser "Recurso"
Geometria Obrigatório – define a extensão total do ativo representado por este Item como um objeto Geometria GeoJSON
Caixa delimitadora Obrigatório - coordenadas da caixa delimitadora do ativo representado por esse Item
Propriedades Obrigatório - outros metadados para o Item
Ativos Obrigatório – ativos de dados associados ao Item, cada um com uma chave exclusiva
Cobrança Obrigatório – ID da coleção-mãe do item
Links Obrigatório – lista de objetos de link para recursos e URLs relacionadas
Versão do STAC Obrigatório – versão do STAC usada pelo Item

Metadados comuns para itens além desses campos necessários incluem data e hora, licenças, provedores, instrumento e muito mais.

Exemplo de item JSON

O exemplo a seguir mostra um item JSON básico.

{
  "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"
      ]
    }
  }
}

Extensões do STAC

Atualmente, um GeoCatalog adiciona automaticamente as seguintes extensões a todas as coleções ingeridas:

Você também pode usar extensões STAC no nível do item STAC.

Observação

Os itens STAC, incluindo extensões, são validados usando a biblioteca PySTAC. Se você encontrar erros de validação STAC, tente remover a extensão.

Para obter uma lista completa de extensões STAC, incluindo a maturidade de cada uma delas, consulte a página de extensões STAC no GitHub.

API STAC

As APIs do Planetário Computer Pro estão em conformidade com a especificação da API STAC, para que você possa pesquisar com rapidez e facilidade conjuntos de dados de escala petabyte para encontrar ativos de dados específicos que atendam às suas necessidades. Depois de identificar esses ativos, você pode exibir ou baixar os ativos usando as APIs do GeoCatalog.

Próximas etapas