diff --git a/README.md b/README.md index c06642c..c4a6fcc 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # eoAPI FedGeoDay25 workshop -[![Binder](https://binder.opensci.2i2c.cloud/badge_logo.svg)](https://binder.opensci.2i2c.cloud/v2/gh/developmentseed/eoapi-fedgeoday25-workshop/HEAD?urlpath=%2Fdoc%2Ftree%2Findex.ipynb) +[![Binder](https://binder.opensci.2i2c.cloud/badge_logo.svg)](https://binder.opensci.2i2c.cloud/v2/gh/developmentseed/eoapi-fedgeoday25-workshop/v0.1?urlpath=%2Fdoc%2Ftree%2Fdocs%2F00-introduction.ipynb) This repository contains the materials for the eoAPI workshop at FedGeoDay25 in Washington D.C. on April 23, 2025. The materials will all be contained in Jupyter notebooks that participants can interact with in their web browser via a 2i2c Jupyter Hub provisioned by NASA. diff --git a/docs/00-introduction.ipynb b/docs/00-introduction.ipynb new file mode 100644 index 0000000..2e0551b --- /dev/null +++ b/docs/00-introduction.ipynb @@ -0,0 +1,517 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "b0fe2745-eb52-407c-8855-58f5073a7e2a", + "metadata": {}, + "source": [ + "# eoAPI: FedGeoDay25 Workshop\n", + "\n", + "April 23, 2025 - Washington D.C.\n", + "\n", + "" + ] + }, + { + "cell_type": "markdown", + "id": "667dcad8-178f-4ba9-a32c-a9812b710201", + "metadata": {}, + "source": [ + "## Welcome to the eoAPI Workshop!\n", + "\n", + "This interactive session will introduce you to eoAPI - a powerful cloud-native framework that simplifies access to Earth observation data. By the end of this workshop, you'll understand how to use eoAPI to catalog, discover, visualize, and analyze geospatial data efficiently.\n", + "\n", + "## Workshop Objectives\n", + "\n", + "- Explore how eoAPI can fit into your geospatial workflows\n", + "- Learn about STAC (SpatioTemporal Asset Catalog) and its role in Earth observation\n", + "- Explore the key components of eoAPI and how they work together\n", + "- Gain hands-on experience working with metadata, raster, and vector services\n", + "\n", + "\n", + "## Workshop Infrastructure:\n", + "\n", + "* Project homepage: \n", + "* For the workshop on April 23, 2025 we have a fresh eoAPI stack deployed to AWS using eoapi-cdk (see [DEPLOYMENT.md](../DEPLOYMENT.md) for details) \n", + " * This stack will be torn down after the workshop \n", + " * eoAPI API endpoints: \n", + " * titiler-pgstac: \n", + " * stac-fastapi-pgstac: \n", + " * tipg: \n", + " * Workshop participants will given access credentials for the `pgstac` database during the workshop so they can interact with the pgstac PostgreSQL database directly \n", + "* binder notebook server (https://binder.opensci.2i2c.cloud/): \n", + " * Hosted by NASA \n", + " * [https://binder.opensci.2i2c.cloud/v2/gh/developmentseed/eoapi-fedgeoday25-workshop/HEAD?urlpath=doc/tree/docs/introduction.ipynb](https://binder.opensci.2i2c.cloud/v2/gh/developmentseed/eoapi-fedgeoday25-workshop/HEAD?urlpath=doc/tree/docs/introduction.ipynb) \n", + "\n", + "\n", + "## Interactive tutorial outline\n", + "\n", + "1. [STAC metadata generation](./stac_metadata.ipynb) \n", + "2. [The Database: pgstac](./database.ipynb)\n", + "3. [The STAC API: stac-fastapi-pgstac](./stac_fastapi_pgstac.ipynb)\n", + "4. [The raster API: titiler-pgstac](./titiler_pgstac.ipynb)\n", + "5. [The vector API: tipg](./tipg.ipynb)\n" + ] + }, + { + "cell_type": "markdown", + "id": "aa185d92-eb0f-40d0-851d-cd60ffbeab67", + "metadata": {}, + "source": [ + "## 1. Introduction\n", + "![](./media/earth.jpg)" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "id": "dd7dd4e0-c4dd-490e-abde-0ec0eb6b4447", + "metadata": {}, + "source": [ + "### 1.1 What is eoAPI?\n", + "\n", + "eoAPI is an assemblage of state-of-the-art services that combine to enable data discovery, search, visualization, and access.\n", + "\n", + "eoAPI presents an open-source and reusable framework for harnessing earth observation data. eoAPI takes the work out of constructing a cloud-native EO infrastructure through a set of sensible defaults that fit most EO and geospatial infrastructure needs. Built with modularity as a core principle, eoAPI can easily be customized to your needs.\n", + "\n", + "#### Additional resources\n", + "\n", + "- eoAPI homepage: " + ] + }, + { + "cell_type": "markdown", + "id": "1f844b8c-ebd2-405f-aee2-318aa6f177a5", + "metadata": {}, + "source": [ + "### 1.2 Why would you use eoAPI?\n", + "\n", + "- You want to make your data catalog easily searchable for internal and/or external users \n", + "- You want to serve dynamic visualizations of collections in data catalog\n", + "- You want to use the growing list of tools and frameworks that can consume STAC metadata" + ] + }, + { + "cell_type": "markdown", + "id": "2d267c76-1777-4d36-9a20-b7e2bc65edd2", + "metadata": {}, + "source": [ + "## 2. Cloud Fundamentals" + ] + }, + { + "cell_type": "markdown", + "id": "f370ecea-5b78-4d80-92a1-2ccd1e244891", + "metadata": {}, + "source": [ + "### 2.1 The Cloud-Native Approach\n", + "\n", + "Traditional geospatial workflows involve:\n", + "- Downloading entire datasets\n", + "- Processing them on local machines\n", + "- Managing complex software installations\n", + "- Dealing with interoperability challenges\n", + "\n", + "Cloud-native geospatial changes this paradigm:\n", + "\n", + "- **Data stays in place**: Access only what you need, when you need it\n", + "- **Compute happens near the data**: Minimize data movement, run analyses in the cloud (like this binder notebook server!)\n", + "- **Standards-based interfaces**: Interoperate with existing tools\n", + "- **Scalable infrastructure**: Automatically scale up compute resources when you need them, turn them off when you don't\n", + "\n", + "eoAPI's components enable you to adopt cloud-native practices with relative ease. Tradiditional workflows are still possible with the eoAPI stack, though. For example, if your users still want to download files to their own disk they can use the STAC API to search for the items they need then use the download links for the assets in each item.\n", + "\n", + "#### Additional resources\n", + "\n", + "- Cloud-Native Geospatial Forum: \n", + "- Cloud-Optimized Geospatial Formats Guide: " + ] + }, + { + "cell_type": "markdown", + "id": "ddc8f833-f7d1-4776-ad58-ad6aaf30f84b", + "metadata": {}, + "source": [ + "### 2.2 Infrastructure as Code\n", + "\n", + "A key concept for reliable and reproducible cloud resource deployments is **Infrastructure as Code (IaC)**, which:\n", + "- Defines your infrastructure in code files rather than manual configuration in a web portal\n", + "- Makes deployments reproducible and versioned\n", + "- Enables easy scaling and updates\n", + "- Enables review of proposed changes via code review\n", + "\n", + "eoAPI provides IaC templates for [AWS CDK](https://aws.amazon.com/cdk/) and [Kubernetes](https://kubernetes.io/)" + ] + }, + { + "cell_type": "markdown", + "id": "ab9a51ff-80f1-49ac-be58-f80b8cbbe9d3", + "metadata": {}, + "source": [ + "## 3. STAC 101\n", + "\n", + "" + ] + }, + { + "cell_type": "markdown", + "id": "eee695ea-bcaa-4c04-8f2b-ace24bb3a87c", + "metadata": {}, + "source": [ + "### 3.1 What is STAC?\n", + "\n", + "The SpatioTemporal Asset Catalog (STAC) specification is a common language for describing geospatial data:\n", + "\n", + "- **Simple**: Based on JSON, a widely-used data format\n", + "- **Extensible**: Core specification with optional extensions\n", + "- **Self-describing**: Contains both metadata and links to data\n", + "- **Hierarchical**: Collections contain items which reference assets (the actual data files)\n", + "\n", + "STAC helps solve a fundamental problem: making Earth observation data findable, accessible, interoperable, and reusable (FAIR principles).\n", + "\n", + "#### Additional resources\n", + "\n", + "- STAC specification homepage: \n", + "- STAC specification GitHub: \n", + "- STAC Index: " + ] + }, + { + "cell_type": "markdown", + "id": "1e253d94-7cf2-40ce-b669-2c7f46774439", + "metadata": {}, + "source": [ + "### 3.2 STAC Structure\n", + "\n", + "STAC has a few key concepts:\n", + "\n", + "- **Catalog**: A container that organizes collections and items\n", + "- **Collection**: A group of items sharing common metadata\n", + "- **Item**: A single observation or dataset with specific spatial and temporal extent\n", + "- **Asset**: The actual data file (e.g., GeoTIFF, NetCDF, etc.)\n", + "\n", + "Here's a simplified representation:\n", + "\n", + "```\n", + "Catalog\n", + "├── Collection A\n", + "│ ├── Item 1\n", + "│ │ ├── Asset 1 (e.g., visual.tif)\n", + "│ │ ├── Asset 2 (e.g., metadata.xml)\n", + "│ │ └── Asset 3 (e.g., thumbnail.png)\n", + "│ └── Item 2\n", + "│ └── ...\n", + "└── Collection B\n", + " └── ...\n", + "```" + ] + }, + { + "cell_type": "markdown", + "id": "06f3b31f-584b-47c8-b0f0-2e41d85fca1e", + "metadata": { + "jp-MarkdownHeadingCollapsed": true + }, + "source": [ + "### 3.3 STAC Extensions\n", + "\n", + "The STAC specification can be extended to support specific use cases:\n", + "\n", + "- **Electro-Optical**: For optical imagery\n", + "- **SAR**: For synthetic aperture radar data\n", + "- **Projection**: For specifying coordinate reference systems\n", + "- **Scientific**: For scientific datasets\n", + "- **Datacube**: For multidimensional data\n", + "- **And many more**\n", + "\n", + "#### Additional resources:\n", + "- STAC Extensions homepage: " + ] + }, + { + "cell_type": "markdown", + "id": "f2048d7a-f337-43bd-8162-5966ed2474ce", + "metadata": {}, + "source": [ + "### 3.4 STAC API\n", + "\n", + "While static STAC catalogs are useful, the real power comes from making them searchable via STAC **API**:\n", + "\n", + "- **STAC API**: RESTful API for searching STAC Items and Collections\n", + "- **Filtering**: Search by time, location, properties, etc.\n", + "- **Pagination**: Handle large result sets efficiently\n", + "- **Extensions**: Additional capabilities like sorting, transactions, etc.\n", + "\n", + "#### Additional resources\n", + "\n", + "- STAC API specification GitHub: " + ] + }, + { + "cell_type": "markdown", + "id": "1c80147a-d7dd-42e3-a42b-3fa566f7611b", + "metadata": {}, + "source": [ + "### 3.5 STAC Ecosystem\n", + "\n", + "STAC has grown into a vibrant ecosystem:\n", + "\n", + "- **Creation tools**: stactools, pystac, rio-stac\n", + "- **API implementations**: stac-fastapi, stac-fastapi-pgstac, stac-fastapi-elasticsearch\n", + "- **Clients**: pystac-client, stac-browser, rstac, stacrs\n", + "- **Visualization**: titiler, stac-browser\n", + "- **Validation**: stac-validator, pystac, stac-pydantic\n", + "\n", + "#### Additional resources\n", + "\n", + "- STAC Index Ecosystem of tools: " + ] + }, + { + "cell_type": "markdown", + "id": "7ce38260-5313-4f34-a4f8-67e0b67517c4", + "metadata": {}, + "source": [ + "## 4. eoAPI Components\n", + "\n", + "" + ] + }, + { + "cell_type": "markdown", + "id": "8f6d73db-5848-4bdc-8bd7-1b81160479f6", + "metadata": {}, + "source": [ + "### 4.1 Database: pgSTAC\n", + "\n", + "\n", + "At the center of eoAPI is the pgSTAC database:\n", + "\n", + "- PostgreSQL extension for storing and querying STAC metadata\n", + "- Optimized for performance with millions of items\n", + "- Supports complex filtering with CQL2\n", + "- Handles spatio-temporal queries efficiently\n", + "\n", + "**Advantages**:\n", + "- Builds on top of PostgreSQL\n", + "- Designed for industrial-scale datasets (like Microsoft Planetary Computer)\n", + "- Transaction support (add/update/delete)\n", + "\n", + "**Disadvantages**:\n", + "- Requires running a PostgreSQL database\n", + "\n", + "#### Additional resources\n", + "- pgstac homepage: \n", + "- pgstac GitHub: " + ] + }, + { + "cell_type": "markdown", + "id": "c76d60c8-7b4b-421c-bbb2-fa9df5883907", + "metadata": {}, + "source": [ + "### 4.2 STAC API: stac-fastapi-pgstac\n", + "\n", + "\n", + "\n", + "To make the catalog searchable, eoAPI uses stac-fastapi-pgstac:\n", + "\n", + "- REST API following the STAC API specification\n", + "- Built on FastAPI for modern Python performance\n", + "- Connects to pgSTAC for efficient queries\n", + "- Supports core STAC API endpoints:\n", + " - `/collections`: List and filter collections\n", + " - `/collections/{id}/items`: Get items in a collection\n", + " - `/search`: Search across collections\n", + " - `/queryables`: Expose searchable properties\n", + "\n", + "#### Additional resources\n", + "- stac-fastapi-pgstac GitHub: " + ] + }, + { + "cell_type": "markdown", + "id": "87d59909-0801-4140-9279-099fcee58706", + "metadata": {}, + "source": [ + "### 3.3 Raster Service: titiler-pgstac\n", + "\n", + "\n", + "For visualizing and analyzing raster data, eoAPI includes titiler-pgstac:\n", + "\n", + "- Dynamic map tile server that connects directly to a `pgstac` database to identify relevant assets for rendering tiles for a mosaic of images from a STAC collection\n", + "- Powered by [titiler](https://github.com/developmentseed/titiler)\n", + "- On-the-fly processing of most file formats supported by GDAL\n", + "- Supports filtering, band selection, color correction, expressions\n", + "- Creates web-friendly tiles for use in mapping applications\n", + "- Enables mosaics of multiple items based on STAC queries\n", + "\n", + "Key capabilities:\n", + "\n", + "- Easily generate OGC API Tiles endpoints that any map client can use\n", + "- [Dynamic tiling](https://developmentseed.org/titiler/dynamic_tiling/): store your data once, visualize it how you want it when you want it\n", + "- Single item rendering\n", + "- Multi-item mosaics\n", + "- Collection-wide mosaics!\n", + "- Band math and indices (e.g., NDVI)\n", + "- Color manipulation (stretch, colormap)\n", + "- WMTS endpoints\n", + "\n", + "#### Additional resources\n", + "\n", + "- titiler documentation: \n", + "- titiler-pgstac documentation: \n" + ] + }, + { + "cell_type": "markdown", + "id": "4650ea88-ebd1-42ad-81e7-51b7d14d056c", + "metadata": {}, + "source": [ + "### 4.4 Vector Service: tipg\n", + "\n", + "\n", + "For working with vector data stored in PostgreSQL, eoAPI uses tipg:\n", + "\n", + "- Connects to PostGIS tables and views\n", + "- OGC API Features + OGC API Tiles implementation\n", + "- FastAPI-based Python application\n", + "- Vector tile generation\n", + "\n", + "tipg is not the only tool for serving features/tiles from PostGIS, but it is written in Python with FastAPI which makes it a nice complement to the other eoAPI services.\n", + "\n", + "Alternatives to tipg:\n", + "\n", + "- pg_tileserv: \n", + "- Martin: \n", + "\n", + "#### Additional resources\n", + "\n", + "- tipg documentation: " + ] + }, + { + "cell_type": "markdown", + "id": "eddb68b9-9895-41dc-90ff-3e64d8ae3e32", + "metadata": {}, + "source": [ + "## 5. eoAPI Deployment Options\n", + "\n", + "eoAPI offers multiple deployment options to suit your needs:" + ] + }, + { + "cell_type": "markdown", + "id": "327f1911-6317-4002-9b27-05e7100a11c7", + "metadata": {}, + "source": [ + "### 5.1 Local Development with Docker\n", + "\n", + "For testing and development, eoAPI provides a Docker compose setup:\n", + "\n", + "```bash\n", + "git clone https://github.com/developmentseed/eoAPI.git\n", + "cd eoAPI\n", + "docker compose up\n", + "```\n", + "\n", + "This creates a local environment with all services running in containers on your laptop which you can interact with via any http client.\n", + "\n", + "- stac-fastapi-pgstac: \n", + "- titiler-pgstac: \n", + "- tipg: \n", + "- stac-browser: \n", + "\n", + "The pgstac database will be accessible via `psql` on port 5439:\n", + "```bash\n", + "psql postgresql://username:password@localhost:5439/postgis\n", + "```" + ] + }, + { + "cell_type": "markdown", + "id": "af9fae0b-7cb7-4939-befb-90e1e91ffa42", + "metadata": {}, + "source": [ + "### 5.2 AWS Deployment with CDK\n", + "\n", + "For production deployments on AWS, use [eoapi-cdk](https://github.com/developmentseed.org/eoapi-cdk):\n", + "\n", + "- Deploys a pgstac database to AWS' Relational Database Service (RDS) with an EC2 instance running `pgbouncer` for connection pooling\n", + "- Deploys stac-fastapi-pgstac, titiler-pgstac, and tipg as serverless Lambda functions\n", + "- Sets up API Gateway endpoints for the REST APIs\n", + "- Handles permissions and networking between the services\n", + "\n", + "#### Advantages\n", + "- Lowest cost deployment option\n", + "- Autoscaling: serverless functions that spin up when you need them, turn off when you aren't using them\n", + "- Most mature eoAPI deployment system available\n", + "\n", + "#### Disadvantages\n", + "- Locked into AWS\n", + "- Serverless functions can take be slow to warm up from a cold start" + ] + }, + { + "cell_type": "markdown", + "id": "0f367bae-f637-48c6-848b-d8a3b921d295", + "metadata": {}, + "source": [ + "### 5.3 Kubernetes Deployment\n", + "\n", + "For container-based deployments, use [eoapi-k8s](https://github.com/developmentseed.org/eoapi-k8s):\n", + "\n", + "- Helm charts for Kubernetes\n", + "- Deployable to any Kubernetes cluster\n", + "- Suitable for on-premises or cloud deployments\n", + "\n", + "#### Advantages\n", + "- Cloud-agnostic: run anywhere you can run a Kubernetes cluster\n", + "- Autoscaling: Kubernetes can handle autoscaling based on demand\n", + "\n", + "#### Disadvantages\n", + "- Less mature than eoapi-cdk\n", + "- More expensive to run a Kubernetes cluster than just a PostgreSQL database and some serverless functions" + ] + }, + { + "cell_type": "markdown", + "id": "f5944a57-d1e0-47fb-9ea8-99e75b0cce29", + "metadata": {}, + "source": [ + "## Next: Interactive Exploration\n", + "\n", + "next, you will get a chance to interact with the eoAPI services that have been set up for this workshop. You'll learn how to:\n", + "\n", + "1. Create STAC metadata\n", + "2. Load STAC metadata into a pgstac database\n", + "3. Search for data using the STAC API\n", + "4. Visualize raster data with dynamic tiling\n", + "5. Work with vector data in interactive maps\n", + "\n", + "Now you are ready to get started with [Creating STAC Metadata](./stac_metadata.ipynb)!" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.10" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/docs/01-stac_metadata.ipynb b/docs/01-stac_metadata.ipynb new file mode 100644 index 0000000..54c8038 --- /dev/null +++ b/docs/01-stac_metadata.ipynb @@ -0,0 +1,20317 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "6a734a55-1935-4c9b-a51f-758a285528c1", + "metadata": {}, + "source": [ + "# 1. STAC metadata generation\n", + "\n", + "There are several ways to create STAC metadata. We will explore a few of those to give you a sense of the possibilities and provide guidance for your best options in several scenarios.\n", + "\n", + "Methods:\n", + "- write JSON by hand\n", + "- use `pystac` or `stac-pydantic`\n", + "- use `rio-stac`\n", + "- use a `stactools` package\n", + "\n", + "We will be using the [Sentinel-2 Cloud-Optimized GeoTIFFs collection on the AWS Open Data Registry](https://registry.opendata.aws/sentinel-2-l2a-cogs/) to explore STAC metadata.\n", + "\n", + "This particular collection is available in a STAC API maintained by Element 84: [earth-search.aws.element84.com/v1](earth-search.aws.element84.com/v1) but it is a great example to show the advantages of some of the tools that are available for this purpose.\n", + "\n", + "The files are stored as cloud-optimized geotiffs (COGs) in an S3 bucket in the us-west-2 region. Here is a look at the files available for a single granule. " + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "9d87e64d-f601-46ed-92e8-be11240c7697", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/AOT.tif',\n", + " 'sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B01.tif',\n", + " 'sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B02.tif',\n", + " 'sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B03.tif',\n", + " 'sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B04.tif',\n", + " 'sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B05.tif',\n", + " 'sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B06.tif',\n", + " 'sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B07.tif',\n", + " 'sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B08.tif',\n", + " 'sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B09.tif',\n", + " 'sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B11.tif',\n", + " 'sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B12.tif',\n", + " 'sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B8A.tif',\n", + " 'sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/L2A_PVI.tif',\n", + " 'sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/S2B_28GGV_20250417_0_L2A.json',\n", + " 'sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/SCL.tif',\n", + " 'sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/TCI.tif',\n", + " 'sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/WVP.tif',\n", + " 'sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/granule_metadata.xml',\n", + " 'sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/preview.jpg',\n", + " 'sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/tileinfo_metadata.json']" + ] + }, + "execution_count": 1, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import boto3\n", + "from botocore import UNSIGNED\n", + "from botocore.client import Config\n", + "\n", + "region = \"us-west-2\"\n", + "bucket_name = \"sentinel-cogs\"\n", + "prefix = \"sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/\"\n", + "\n", + "s3 = boto3.client(\"s3\", region_name=region, config=Config(signature_version=UNSIGNED))\n", + "s3_keys = []\n", + "\n", + "for page in s3.get_paginator(\"list_objects_v2\").paginate(\n", + " Bucket=bucket_name, Prefix=prefix\n", + "):\n", + " if \"Contents\" in page:\n", + " s3_keys.extend([obj[\"Key\"] for obj in page[\"Contents\"]])\n", + "\n", + "s3_keys" + ] + }, + { + "cell_type": "markdown", + "id": "5c549845-7e77-4ea4-9b13-6d9024f30f75", + "metadata": {}, + "source": [ + "Since these files are publicly available in S3, let's convert the S3 URIs to https URLs to make it easier for clients to use them later:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "95bfdf44-1425-4ffe-88ba-1f9049119a63", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'AOT': 'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/AOT.tif',\n", + " 'B01': 'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B01.tif',\n", + " 'B02': 'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B02.tif',\n", + " 'B03': 'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B03.tif',\n", + " 'B04': 'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B04.tif',\n", + " 'B05': 'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B05.tif',\n", + " 'B06': 'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B06.tif',\n", + " 'B07': 'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B07.tif',\n", + " 'B08': 'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B08.tif',\n", + " 'B09': 'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B09.tif',\n", + " 'B11': 'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B11.tif',\n", + " 'B12': 'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B12.tif',\n", + " 'B8A': 'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B8A.tif',\n", + " 'L2A_PVI': 'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/L2A_PVI.tif',\n", + " 'S2B_28GGV_20250417_0_L2A': 'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/S2B_28GGV_20250417_0_L2A.json',\n", + " 'SCL': 'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/SCL.tif',\n", + " 'TCI': 'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/TCI.tif',\n", + " 'WVP': 'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/WVP.tif',\n", + " 'granule_metadata': 'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/granule_metadata.xml',\n", + " 'preview': 'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/preview.jpg',\n", + " 'tileinfo_metadata': 'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/tileinfo_metadata.json'}" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from pathlib import Path\n", + "\n", + "\n", + "urls = {\n", + " Path(key).stem: f\"https://{bucket_name}.s3.{region}.amazonaws.com/{key}\"\n", + " for key in s3_keys\n", + "}\n", + "urls" + ] + }, + { + "cell_type": "markdown", + "id": "0d65d2b2-f678-41f4-a683-e3372fa99ab5", + "metadata": {}, + "source": [ + "We can infer some details about the files from the path but we have to make a few assumptions!\n", + "- sensor: Sentinel-2B\n", + "- MGRS tile: 28GGV\n", + "- date: 20250417\n", + "\n", + "In theory you could figure out which granule covers a specific area of interest on a particular date, but it would require a bunch of S3 path listing and filtering.\n", + "There are probably software tools that do this kind of thing to locate Sentinel-2 files, but fortunately there is a better way: STAC!" + ] + }, + { + "cell_type": "markdown", + "id": "7139bab8-db8e-45b6-929f-418193eaf054", + "metadata": {}, + "source": [ + "### 1.1 Writing STAC \"by hand\"\n", + "\n", + "Let's try creating the bare minimum STAC item by writing a Python dictionary by hand. We can verify that it is valid by loading it with `pystac` when we are done.\n", + "\n", + "Start by figuring out the extent and CRS of one of the raster files:" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "1c97f76b-f570-4979-8455-fe6b89da0d82", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "EPSG:32728 BoundingBox(left=699960.0, bottom=5390200.0, right=809760.0, top=5500000.0) (10980, 10980)\n" + ] + } + ], + "source": [ + "import rasterio\n", + "\n", + "with rasterio.open(urls[\"B02\"]) as src:\n", + " crs = src.crs\n", + " bounds = src.bounds\n", + " shape = src.shape\n", + "\n", + "print(crs, bounds, shape)" + ] + }, + { + "cell_type": "markdown", + "id": "dfb06158-649b-492f-96d3-fd5bc66626ff", + "metadata": {}, + "source": [ + "To create the bare minimum STAC item, we only need to populate a few fields (and a few constants like `type` and `stac_version`):\n", + " - id: unique identifier for the item\n", + " - bbox: item bounding box coordinates (EPSG:4326)\n", + " - datetime: `YYYY-mm-ddTHH:MM:SSZ`\n", + " - assets: dictionary of assets with hrefs and media types" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "e860db1e-f6be-4298-9371-c2c20acc56f4", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " \"type\": \"Feature\",\n", + " \"stac_version\": \"1.1.0\",\n", + " \"id\": \"S2B_28GGV_20250417_0_L2A\",\n", + " \"bbox\": [\n", + " -12.635791766296055,\n", + " -41.61487677746372,\n", + " -11.284390704259561,\n", + " -40.59281342182659\n", + " ],\n", + " \"geometry\": {\n", + " \"type\": \"Polygon\",\n", + " \"coordinates\": [\n", + " [\n", + " [\n", + " -11.284390704259561,\n", + " -41.61487677746372\n", + " ],\n", + " [\n", + " -11.284390704259561,\n", + " -40.59281342182659\n", + " ],\n", + " [\n", + " -12.635791766296055,\n", + " -40.59281342182659\n", + " ],\n", + " [\n", + " -12.635791766296055,\n", + " -41.61487677746372\n", + " ],\n", + " [\n", + " -11.284390704259561,\n", + " -41.61487677746372\n", + " ]\n", + " ]\n", + " ]\n", + " },\n", + " \"properties\": {\n", + " \"datetime\": \"2025-04-17T00:00:00Z\"\n", + " },\n", + " \"assets\": {\n", + " \"AOT\": {\n", + " \"href\": \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/AOT.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + " },\n", + " \"B01\": {\n", + " \"href\": \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B01.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + " },\n", + " \"B02\": {\n", + " \"href\": \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B02.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + " },\n", + " \"B03\": {\n", + " \"href\": \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B03.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + " },\n", + " \"B04\": {\n", + " \"href\": \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B04.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + " },\n", + " \"B05\": {\n", + " \"href\": \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B05.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + " },\n", + " \"B06\": {\n", + " \"href\": \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B06.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + " },\n", + " \"B07\": {\n", + " \"href\": \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B07.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + " },\n", + " \"B08\": {\n", + " \"href\": \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B08.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + " },\n", + " \"B09\": {\n", + " \"href\": \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B09.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + " },\n", + " \"B11\": {\n", + " \"href\": \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B11.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + " },\n", + " \"B12\": {\n", + " \"href\": \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B12.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + " },\n", + " \"B8A\": {\n", + " \"href\": \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B8A.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + " },\n", + " \"L2A_PVI\": {\n", + " \"href\": \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/L2A_PVI.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + " },\n", + " \"SCL\": {\n", + " \"href\": \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/SCL.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + " },\n", + " \"TCI\": {\n", + " \"href\": \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/TCI.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + " },\n", + " \"WVP\": {\n", + " \"href\": \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/WVP.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + " }\n", + " }\n", + "}\n" + ] + } + ], + "source": [ + "import json\n", + "from pathlib import Path\n", + "\n", + "from rasterio.warp import transform_bounds\n", + "from shapely.geometry import box, mapping\n", + "\n", + "bbox = transform_bounds(crs, \"epsg:4326\", *bounds)\n", + "\n", + "item_dict = {\n", + " \"type\": \"Feature\",\n", + " \"stac_version\": \"1.1.0\",\n", + " \"id\": \"S2B_28GGV_20250417_0_L2A\",\n", + " \"bbox\": bbox,\n", + " \"geometry\": mapping(box(*bbox)),\n", + " \"properties\": {\n", + " \"datetime\": \"2025-04-17T00:00:00Z\",\n", + " },\n", + " \"assets\": {\n", + " key: {\n", + " \"href\": url,\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " }\n", + " for key, url in urls.items()\n", + " if url.endswith(\".tif\")\n", + " },\n", + "}\n", + "\n", + "print(json.dumps(item_dict, indent=2))" + ] + }, + { + "cell_type": "markdown", + "id": "b5a7ad34-f4f5-49bd-a376-c66207cb783c", + "metadata": {}, + "source": [ + "Great! We made a STAC item by hand. It is not verbose but it has all of the critical information that a client application would need to infer some details about the data without opening any tif files.\n", + "\n", + "Now let's validate it with our next tool: `pystac`" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "ed94c7dc-82da-42fb-8a96-0e42bc6b2f80", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['https://schemas.stacspec.org/v1.1.0/item-spec/json-schema/item.json']" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import pystac\n", + "\n", + "pystac.Item.from_dict(item_dict).validate()" + ] + }, + { + "cell_type": "markdown", + "id": "dc70d890-c7e2-45bc-bdc0-b1843e02aede", + "metadata": {}, + "source": [ + "Item metadata is important but Collection metadata is also critical! We can create a bare-bones collection document like this:" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "222f6df8-07d9-45a0-924c-bf45c4de9be2", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"sentinel-2-l2a-cogs\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"Sentinel-2 L2A cloud-optimized geotiffs\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 0 items\n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -180\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " -90\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " 180\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 90\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2015-06-27T10:25:31.456000Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " None\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"proprietary\"\n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "collection_dict = {\n", + " \"type\": \"Collection\",\n", + " \"stac_version\": \"1.1.0\",\n", + " \"id\": \"sentinel-2-l2a-cogs\",\n", + " \"description\": \"Sentinel-2 L2A cloud-optimized geotiffs\",\n", + " \"extent\": {\n", + " \"spatial\": {\"bbox\": [[-180, -90, 180, 90]]},\n", + " \"temporal\": {\"interval\": [[\"2015-06-27T10:25:31.456000Z\", None]]},\n", + " },\n", + " \"links\": [],\n", + " \"license\": \"proprietary\",\n", + "}\n", + "\n", + "pystac.Collection.from_dict(collection_dict)" + ] + }, + { + "cell_type": "markdown", + "id": "a430e6c6-386a-42bf-b2d4-70a046a7d851", + "metadata": {}, + "source": [ + "### 1.2 Using `pystac` to write STAC\n", + "\n", + "Writing STAC JSON by hand can be hard especially when you want to use some of the more advanced features of STAC metadata. Creating STAC items with `pystac` is a bit more ergonomic than specifying the structure by hand because you can get type hints on all of the possible fields and can take advantage of pre-defined constants (like `pystac.MediaType.COG`) instead of trying to remember the actual values. Plus, you will be forced to populate all of the required fields from the STAC spec which can help you avoid heartburn induced by invalid STAC items." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "d5cae1c9-c499-4f41-a368-0c5c8b2ea4f4", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Feature\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 0 items\n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"S2B_28GGV_20250417_0_L2A\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " geometry\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " type\n", + " \"Polygon\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " coordinates[] 1 items\n", + " \n", + "
        \n", + " \n", + " \n", + "
      • \n", + " 0[] 5 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -11.284390704259561\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " -41.61487677746372\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 1[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -11.284390704259561\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " -40.59281342182659\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 2[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -12.635791766296055\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " -40.59281342182659\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 3[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -12.635791766296055\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " -41.61487677746372\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 4[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -11.284390704259561\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " -41.61487677746372\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " bbox[] 4 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " -12.635791766296055\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + " -41.61487677746372\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + " -11.284390704259561\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + " -40.59281342182659\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " properties\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " datetime\n", + " \"2025-04-17T00:00:00Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 0 items\n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " AOT\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/AOT.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B01\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B01.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B02\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B02.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B03\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B03.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B04\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B04.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B05\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B05.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B06\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B06.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B07\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B07.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B08\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B08.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B09\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B09.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B11\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B11.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B12\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B12.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B8A\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B8A.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " L2A_PVI\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/L2A_PVI.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " SCL\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/SCL.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " TCI\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/TCI.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " WVP\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/WVP.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from datetime import datetime\n", + "\n", + "item = pystac.Item(\n", + " id=\"S2B_28GGV_20250417_0_L2A\",\n", + " bbox=bbox,\n", + " geometry=mapping(box(*bbox)),\n", + " datetime=datetime(2025, 4, 17),\n", + " properties={},\n", + " assets={\n", + " key: pystac.Asset(\n", + " href=url,\n", + " media_type=pystac.MediaType.COG,\n", + " )\n", + " for key, url in urls.items()\n", + " if url.endswith(\".tif\")\n", + " },\n", + ")\n", + "\n", + "item" + ] + }, + { + "cell_type": "markdown", + "id": "f192bec5-7458-494f-aa89-543c6dd3e43b", + "metadata": {}, + "source": [ + "That was a little easier, but client applications would appreciate a bit more information to the item like the projection of the files! We could have added this in the \"by hand\" example, too, but it would have been a multi-step process updating the list of `stac_extensions` and the `proj` properties. `pystac` handles these for us in one step." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "6158e057-f770-4599-82c3-89ef5cc00a7d", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Feature\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/projection/v2.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"S2B_28GGV_20250417_0_L2A\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " geometry\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " type\n", + " \"Polygon\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " coordinates[] 1 items\n", + " \n", + "
        \n", + " \n", + " \n", + "
      • \n", + " 0[] 5 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -11.284390704259561\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " -41.61487677746372\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 1[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -11.284390704259561\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " -40.59281342182659\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 2[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -12.635791766296055\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " -40.59281342182659\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 3[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -12.635791766296055\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " -41.61487677746372\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 4[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -11.284390704259561\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " -41.61487677746372\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " bbox[] 4 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " -12.635791766296055\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + " -41.61487677746372\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + " -11.284390704259561\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + " -40.59281342182659\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " properties\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " datetime\n", + " \"2025-04-17T00:00:00Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " proj:code\n", + " \"EPSG:32728\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " proj:bbox[] 4 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " 699960.0\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " 5390200.0\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 2\n", + " 809760.0\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 3\n", + " 5500000.0\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    • \n", + " proj:shape[] 2 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " 10980\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " 10980\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 0 items\n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " AOT\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/AOT.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B01\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B01.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B02\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B02.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B03\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B03.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B04\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B04.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B05\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B05.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B06\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B06.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B07\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B07.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B08\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B08.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B09\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B09.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B11\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B11.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B12\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B12.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B8A\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/B8A.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " L2A_PVI\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/L2A_PVI.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " SCL\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/SCL.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " TCI\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/TCI.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " WVP\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/28/G/GV/2025/4/S2B_28GGV_20250417_0_L2A/WVP.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "item.ext.add(\"proj\")\n", + "\n", + "item.ext.proj.apply(\n", + " epsg=crs.to_epsg(),\n", + " bbox=bounds,\n", + " shape=shape,\n", + ")\n", + "\n", + "item" + ] + }, + { + "cell_type": "markdown", + "id": "f25280ff-7dd7-4997-b53e-0f980035c204", + "metadata": {}, + "source": [ + "Now you can create the same collection object that we made by hand but this time using `pystac`:" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "4ecd03a2-7761-4f4f-9c96-db7e9ff1df2b", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"sentinel-2-l2a-cogs\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"Sentinel-2 L2A cloud-optimized geotiffs\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 0 items\n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -180\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " -90\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " 180\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 90\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2015-06-27T10:25:31Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " None\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"other\"\n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "collection = pystac.Collection(\n", + " id=\"sentinel-2-l2a-cogs\",\n", + " description=\"Sentinel-2 L2A cloud-optimized geotiffs\",\n", + " extent=pystac.Extent(\n", + " spatial=pystac.SpatialExtent([[-180, -90, 180, 90]]),\n", + " temporal=pystac.TemporalExtent(\n", + " [[datetime(2015, 6, 27, hour=10, minute=25, second=31), None]]\n", + " ),\n", + " ),\n", + ")\n", + "collection" + ] + }, + { + "cell_type": "markdown", + "id": "2e419a45-661e-4a59-8e04-699079ce5154", + "metadata": {}, + "source": [ + "### 1.3 Writing STAC with `rio-stac`\n", + "\n", + "`rio-stac` does some of the work that we had to do to calculate the bounding box, geometry, etc for you. It will be slower than infering properties from the storage path schema or some existing metadata file, but it will reliably read the extent/geometry/etc from the actual assets which can be valuable.\n", + "\n", + "- rio-stac docs: " + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "ca0ba117-37a6-4c76-8c23-5fc26f8ad6ca", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Feature\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/projection/v1.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"S2B_28GGV_20250417_0_L2A\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " geometry\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " type\n", + " \"Polygon\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " coordinates[] 1 items\n", + " \n", + "
        \n", + " \n", + " \n", + "
      • \n", + " 0[] 5 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -3.0011418260871032\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 80.97326367216651\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 1[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " 3.2429668983245636\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 80.92029861094787\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 2[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " 3.9932737088384376\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 81.89742371353259\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 3[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -3.0012803542668025\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 81.95691940369268\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 4[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -3.0011418260871032\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 80.97326367216651\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " bbox[] 4 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " -3.0012803542668025\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + " 80.92029861094787\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + " 3.9932737088384376\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + " 81.95691940369268\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " properties\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " proj:epsg\n", + " 32630\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " proj:geometry\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"Polygon\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " coordinates[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 5 items\n", + " \n", + "
            \n", + " \n", + " \n", + "
          • \n", + " 0[] 2 items\n", + " \n", + "
              \n", + " \n", + " \n", + " \n", + "
            • \n", + " 0\n", + " 499980.0\n", + "
            • \n", + " \n", + " \n", + " \n", + "
            \n", + " \n", + "
              \n", + " \n", + " \n", + " \n", + "
            • \n", + " 1\n", + " 8990220.0\n", + "
            • \n", + " \n", + " \n", + " \n", + "
            \n", + " \n", + "
          • \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + "
          • \n", + " 1[] 2 items\n", + " \n", + "
              \n", + " \n", + " \n", + " \n", + "
            • \n", + " 0\n", + " 609780.0\n", + "
            • \n", + " \n", + " \n", + " \n", + "
            \n", + " \n", + "
              \n", + " \n", + " \n", + " \n", + "
            • \n", + " 1\n", + " 8990220.0\n", + "
            • \n", + " \n", + " \n", + " \n", + "
            \n", + " \n", + "
          • \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + "
          • \n", + " 2[] 2 items\n", + " \n", + "
              \n", + " \n", + " \n", + " \n", + "
            • \n", + " 0\n", + " 609780.0\n", + "
            • \n", + " \n", + " \n", + " \n", + "
            \n", + " \n", + "
              \n", + " \n", + " \n", + " \n", + "
            • \n", + " 1\n", + " 9100020.0\n", + "
            • \n", + " \n", + " \n", + " \n", + "
            \n", + " \n", + "
          • \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + "
          • \n", + " 3[] 2 items\n", + " \n", + "
              \n", + " \n", + " \n", + " \n", + "
            • \n", + " 0\n", + " 499980.0\n", + "
            • \n", + " \n", + " \n", + " \n", + "
            \n", + " \n", + "
              \n", + " \n", + " \n", + " \n", + "
            • \n", + " 1\n", + " 9100020.0\n", + "
            • \n", + " \n", + " \n", + " \n", + "
            \n", + " \n", + "
          • \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + "
          • \n", + " 4[] 2 items\n", + " \n", + "
              \n", + " \n", + " \n", + " \n", + "
            • \n", + " 0\n", + " 499980.0\n", + "
            • \n", + " \n", + " \n", + " \n", + "
            \n", + " \n", + "
              \n", + " \n", + " \n", + " \n", + "
            • \n", + " 1\n", + " 8990220.0\n", + "
            • \n", + " \n", + " \n", + " \n", + "
            \n", + " \n", + "
          • \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " proj:bbox[] 4 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " 499980.0\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " 8990220.0\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 2\n", + " 609780.0\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 3\n", + " 9100020.0\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    • \n", + " proj:shape[] 2 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " 10980\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " 10980\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    • \n", + " proj:transform[] 9 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " 10.0\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 1\n", + " 0.0\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 2\n", + " 499980.0\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 3\n", + " 0.0\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 4\n", + " -10.0\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 5\n", + " 9100020.0\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 6\n", + " 0.0\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 7\n", + " 0.0\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 8\n", + " 1.0\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " datetime\n", + " \"2025-04-17T00:00:00Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 0 items\n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " AOT\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/AOT.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B01\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/B01.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B02\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/B02.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B03\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/B03.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B04\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/B04.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B05\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/B05.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B06\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/B06.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B07\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/B07.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B08\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/B08.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B09\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/B09.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B11\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/B11.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B12\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/B12.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " B8A\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/B8A.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " CLD_20m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/CLD_20m.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " L2A_PVI\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/L2A_PVI.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " SCL\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/SCL.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " SNW_20m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/SNW_20m.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " TCI\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/TCI.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " WVP\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/WVP.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from rio_stac.stac import create_stac_item\n", + "\n", + "item = create_stac_item(\n", + " source=urls[\"B02\"],\n", + " input_datetime=datetime(2025, 4, 17),\n", + " id=\"S2B_28GGV_20250417_0_L2A\",\n", + " with_proj=True,\n", + " with_eo=False,\n", + " assets={\n", + " key: pystac.Asset(\n", + " href=url,\n", + " media_type=pystac.MediaType.COG,\n", + " )\n", + " for key, url in urls.items()\n", + " if url.endswith(\".tif\")\n", + " },\n", + ")\n", + "\n", + "item" + ] + }, + { + "cell_type": "markdown", + "id": "2a8567de-5744-434e-8433-d3be0ed87ffe", + "metadata": {}, + "source": [ + "That was nice an easy! I didn't have to use `rasterio` for anything myself, `rio-stac` took care of that for me. There are more tools in `rio-stac` which can be used to derive metadata for more extensions (like `eo`) so check out the docs!\n", + "\n", + "There are not any collection generation convenience functions in `rio-stac` so that's all for this section." + ] + }, + { + "cell_type": "markdown", + "id": "d2bee875-cc74-42ba-8e90-42a1fd5d11fb", + "metadata": {}, + "source": [ + "### 1.4 Writing STAC with `stactools` packages\n", + "\n", + "You may have been thinking \"surely someone has already done the work to sort out the STAC metadata configuration for the Sentinel 2 dataset\". You are right! Sometimes the data providers or the community will produce STAC metadata alongside the data and the most common method for publishing the STAC metadata generation workflow is via [`stactools` packages](https://github.com/stactools-packages).\n", + "\n", + "Many datasets/collections have a package that can be used from python or a CLI to generate collection and item STAC metadata, including Sentinel-2. At this time the [`stactools-sentinel2`](https://github.com/stactools-packages/sentinel2) package is not configured for the files that we have been working with so far in this notebook so we will reference files in a different bucket for this section." + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "969ce7ed-536f-43a0-a5a2-620c21bae7e8", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "S2A_OPER_MSI_L2A_TL_VGS1_20220401T110010_A035382_T34LBP\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/henry/.conda/envs/fedgeoday25-workshop/lib/python3.12/site-packages/antimeridian/_implementation.py:441: FixWindingWarning: The exterior ring of this shape is wound clockwise. Since this is a common error in real-world geometries, this package is reversing the exterior coordinates of the input shape before running its algorithm. If you know that your input shape is correct (i.e. if your data encompasses both poles), pass `fix_winding=False`.\n", + " FixWindingWarning.warn()\n" + ] + }, + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Feature\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 7 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/eo/v1.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + " \"https://stac-extensions.github.io/raster/v1.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + " \"https://stac-extensions.github.io/projection/v2.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + " \"https://stac-extensions.github.io/mgrs/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + " \"https://stac-extensions.github.io/grid/v1.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 5\n", + " \"https://stac-extensions.github.io/view/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 6\n", + " \"https://stac-extensions.github.io/sentinel-2/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"S2A_T34LBP_20220401T090142_L2A\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " geometry\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " type\n", + " \"Polygon\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " coordinates[] 1 items\n", + " \n", + "
        \n", + " \n", + " \n", + "
      • \n", + " 0[] 5 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " 18.842570191774456\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " -9.943916470908118\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 1[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " 18.837533655044183\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " -9.975080024847411\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 2[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " 19.264327857851356\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " -10.048676709777588\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 3[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " 19.26487070909741\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " -9.946373650856408\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 4[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " 18.842570191774456\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " -9.943916470908118\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " bbox[] 4 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " 18.837534\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + " -10.048677\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + " 19.264871\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + " -9.943916\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " properties\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " created\n", + " \"2025-04-18T14:44:52.000201Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " providers[] 1 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " name\n", + " \"ESA\"\n", + "
        • \n", + " \n", + " \n", + " \n", + " \n", + "
        • \n", + " roles[] 3 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"producer\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"processor\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " \"licensor\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + " \n", + " \n", + "
        • \n", + " url\n", + " \"https://earth.esa.int/web/guest/home\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " platform\n", + " \"sentinel-2a\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " constellation\n", + " \"sentinel-2\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " instruments[] 1 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"msi\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " eo:cloud_cover\n", + " 92.696983\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " proj:code\n", + " \"EPSG:32734\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " proj:centroid\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " lat\n", + " -9.98196\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " lon\n", + " 19.08968\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " mgrs:utm_zone\n", + " 34\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " mgrs:latitude_band\n", + " \"L\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " mgrs:grid_square\n", + " \"BP\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " grid:code\n", + " \"MGRS-34LBP\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:azimuth\n", + " 99.04269285441343\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:incidence_angle\n", + " 9.662129915241508\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:sun_azimuth\n", + " 61.4514369440134\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:sun_elevation\n", + " 59.757571576334996\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:tile_id\n", + " \"S2A_OPER_MSI_L2A_TL_VGS1_20220401T110010_A035382_T34LBP_N04.00\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:degraded_msi_data_percentage\n", + " 0.0172\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:nodata_pixel_percentage\n", + " 97.087371\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:saturated_defective_pixel_percentage\n", + " 0.0\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:dark_features_percentage\n", + " 0.0\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:cloud_shadow_percentage\n", + " 7.112898\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:vegetation_percentage\n", + " 0.094889\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:not_vegetated_percentage\n", + " 0.001937\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:water_percentage\n", + " 0.0\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:unclassified_percentage\n", + " 0.093294\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:medium_proba_clouds_percentage\n", + " 16.551426\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:high_proba_clouds_percentage\n", + " 76.137125\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:thin_cirrus_percentage\n", + " 0.008429\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:snow_ice_percentage\n", + " 0.0\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:product_type\n", + " \"S2MSI2A\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:processing_baseline\n", + " \"04.00\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:product_uri\n", + " \"S2A_MSIL2A_20220401T083601_N0400_R064_T34LBP_20220401T110010.SAFE\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:generation_time\n", + " \"2022-04-01T11:00:10.000000Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:datatake_id\n", + " \"GS2A_20220401T083601_035382_N04.00\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:datatake_type\n", + " \"INS-NOBS\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:datastrip_id\n", + " \"S2A_OPER_MSI_L2A_DS_VGS1_20220401T110010_S20220401T090142_N04.00\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:reflectance_conversion_factor\n", + " 1.00413041106276\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " datetime\n", + " \"2022-04-01T09:03:19.283000Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 1 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"license\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://sentinel.esa.int/documents/247904/690755/Sentinel_Data_Legal_Notice\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " red\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R10m/B04.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red - 10m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B04\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"red\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.665\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.038\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " green\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R10m/B03.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Green - 10m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B03\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"green\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.56\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.045\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " blue\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R10m/B02.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Blue - 10m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B02\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"blue\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.49\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.098\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " wvp_10m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R10m/WVP.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Water Vapour (WVP)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " unit\n", + " \"cm\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " aot_10m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R10m/AOT.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Aerosol optical thickness (AOT)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " visual\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R10m/TCI.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"True color image\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B04\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"red\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.665\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.038\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B03\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"green\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.56\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.045\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B02\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"blue\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.49\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.098\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"visual\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " nir\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R10m/B08.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"NIR 1 - 10m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B08\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"nir\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.842\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.145\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " swir22\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/B12.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"SWIR 2.2μm - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B12\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"swir22\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 2.19\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.242\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " rededge2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/B06.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red Edge 2 - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B06\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"rededge\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.74\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.018\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " rededge3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/B07.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red Edge 3 - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B07\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"rededge\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.783\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.028\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " rededge1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/B05.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red Edge 1 - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B05\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"rededge\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.704\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.019\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " swir16\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/B11.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"SWIR 1.6μm - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B11\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"swir16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 1.61\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.143\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " red_20m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/B04.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B04\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"red\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.665\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.038\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " green_20m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/B03.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Green - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B03\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"green\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.56\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.045\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " blue_20m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/B02.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Blue - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B02\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"blue\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.49\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.098\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " wvp\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/WVP.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Water Vapour (WVP)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " unit\n", + " \"cm\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " nir08\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/B8A.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"NIR 2 - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B8A\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"nir08\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.865\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.033\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " scl\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/SCL.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Scene classification map (SCL)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " aot\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/AOT.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Aerosol optical thickness (AOT)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " visual_20m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/TCI.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"True color image\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B04\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"red\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.665\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.038\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B03\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"green\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.56\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.045\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B02\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"blue\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.49\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.098\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"visual\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " nir_20m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/B08.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"NIR 1 - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B08\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"nir\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.842\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.145\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " swir22_60m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B12.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"SWIR 2.2μm - 60m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B12\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"swir22\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 2.19\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.242\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " rededge2_60m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B06.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red Edge 2 - 60m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B06\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"rededge\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.74\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.018\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " rededge3_60m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B07.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red Edge 3 - 60m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B07\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"rededge\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.783\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.028\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " rededge1_60m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B05.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red Edge 1 - 60m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B05\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"rededge\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.704\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.019\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " swir16_60m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B11.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"SWIR 1.6μm - 60m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B11\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"swir16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 1.61\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.143\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " red_60m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B04.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red - 60m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B04\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"red\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.665\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.038\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " coastal\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B01.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Coastal - 60m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B01\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"coastal\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.443\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.027\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 60\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " green_60m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B03.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Green - 60m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B03\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"green\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.56\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.045\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " blue_60m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B02.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Blue - 60m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B02\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"blue\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.49\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.098\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " wvp_60m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/WVP.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Water Vapour (WVP)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 60\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " unit\n", + " \"cm\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " nir08_60m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B8A.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"NIR 2 - 60m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B8A\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"nir08\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.865\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.033\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " scl_60m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/SCL.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Scene classification map (SCL)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 60\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " aot_60m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/AOT.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Aerosol optical thickness (AOT)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 60\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " nir09\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B09.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"NIR 3 - 60m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B09\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"nir09\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.945\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.026\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 60\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " visual_60m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/TCI.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"True color image\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B04\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"red\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.665\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.038\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B03\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"green\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.56\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.045\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B02\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"blue\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.49\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.098\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 60\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"visual\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " nir_60m\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B08.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"NIR 1 - 60m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B08\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"nir\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.842\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.145\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " cloud\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/qi/CLD_20m.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Cloud Probabilities\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"cloud\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " snow\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/qi/SNW_20m.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Snow Probabilities\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:bbox[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 8790220.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 309780.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 199980.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 8900020.0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"snow-ice\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " preview\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/qi/L2A_PVI.jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jp2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"True color preview\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B04\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"red\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.665\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.038\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B03\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"green\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.56\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.045\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B02\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"blue\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.49\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.098\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"overview\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " granule_metadata\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/metadata.xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"metadata\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " tileinfo_metadata\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/tileInfo.json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"metadata\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " product_metadata\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/products/2022/4/1/S2A_MSIL2A_20220401T083601_N0400_R064_T34LBP_20220401T110010/metadata.xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"metadata\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from stactools.sentinel2.stac import create_item as create_sentinel2_item\n", + "\n", + "\n", + "item = create_sentinel2_item(\n", + " granule_href=\"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/\",\n", + ")\n", + "\n", + "item" + ] + }, + { + "cell_type": "markdown", + "id": "9c8b702d-3d8a-41e8-80af-09d9b56dbd0f", + "metadata": {}, + "source": [ + "## Conclusion\n", + "\n", + "That's it! You have seen a few ways of creating STAC metadata. There is a time and a place for each of these methods so keep them all in mind when considering the best path for cataloging your data." + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.10" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/docs/02-database.ipynb b/docs/02-database.ipynb new file mode 100644 index 0000000..569b99e --- /dev/null +++ b/docs/02-database.ipynb @@ -0,0 +1,8602 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "9edbdd3b-5b35-4bbb-9e15-e5152260aa24", + "metadata": {}, + "source": [ + "# 2. The Database: pgstac\n", + "\n", + "pgstac is a PostgreSQL extension that enables STAC metadata management in a PostgreSQL database.\n", + "eoAPI is useful to many organizations because the other components are configured to work seamlessly with STAC metadata that is stored in your pgstac database.\n", + "\n", + "**pypgstac** is a Python package for interacting with a pgstac database. You will learn how to use pypgstac to perform the following operations on a pgstac database:\n", + "1. Generate STAC collection record\n", + "2. Add the record to the `collections` table with `Loader.load_collections`\n", + "3. Generate STAC item records\n", + "4. Add new records to the `items` table with `Loader.load_items`\n", + "5. Delete an item from the `items` table\n", + "\n", + "For production deployments your STAC metadata generation and ingestion workflow will probably not take place in a notebook but the basic steps will be the same!\n", + "\n", + "Fill in the input boxes below to get started with your own personal Sentinel-2 STAC collection!\n", + "- You will be using the `username` value to create a unique STAC collection\n", + "- Set a location that is special to you in the lat/lon field - this will determine the spatial extent of your STAC collection\n", + "- You will need to enter the database credentials here in order to post data to the database in this notebook." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "196e7c1d-b82b-4d66-bf96-4942cd02392c", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [ + "hide-input" + ] + }, + "outputs": [ + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "48ceae6e001247f1b7e59b4d5b57f89c", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Text(value='', description='username:', placeholder='Enter your username')" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "ee2e54a3abcc4ae1997d052309b2c73f", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "BoundedFloatText(value=38.9, description='latitude:', max=90.0, min=-90.0)" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "da58e7a295094dff9b2e345b7436474e", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "BoundedFloatText(value=-77.0, description='longitude:', max=180.0, min=-180.0)" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "da3cd0bc447a4f6e9e80c7ac1a7bb667", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Text(value='pgstac_user', description='db user:', placeholder='Enter database username')" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "c60f19046ae844f6ae850d48ddd64a6b", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Text(value='', description='db password:', placeholder='Enter database password')" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "28f3dd3d962b4b0991e87b391daa9ea8", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Text(value='', description='db host:', placeholder='Enter database host address')" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "b6d420a070344133a5d64c7b1b418c85", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Text(value='5432', description='db port:', placeholder='Enter database port')" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "85910ac384a644d3b960a8ad31cee4c3", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Text(value='pgstac', description='db dbname:', placeholder='Enter database dbname')" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import os\n", + "\n", + "import ipywidgets as widgets\n", + "from IPython.display import display\n", + "\n", + "username_input = widgets.Text(\n", + " value=\"\", placeholder=\"Enter your username\", description=\"username:\", disabled=False\n", + ")\n", + "\n", + "lat_input = widgets.BoundedFloatText(\n", + " value=38.9,\n", + " min=-90,\n", + " max=90,\n", + " placeholder=\"enter the latitude of your hometown\",\n", + " description=\"latitude:\",\n", + " disabled=False,\n", + ")\n", + "lon_input = widgets.BoundedFloatText(\n", + " value=-77.0,\n", + " min=-180,\n", + " max=180,\n", + " placeholder=\"enter the longitude of your hometown\",\n", + " description=\"longitude:\",\n", + " disabled=False,\n", + ")\n", + "\n", + "db_user_input = widgets.Text(\n", + " value=os.getenv(\"POSTGRES_USER\", \"pgstac_user\"),\n", + " placeholder=\"Enter database username\",\n", + " description=\"db user:\",\n", + " disabled=False,\n", + ")\n", + "db_password_input = widgets.Text(\n", + " value=os.getenv(\"POSTGRES_PASSWORD\", \"\"),\n", + " placeholder=\"Enter database password\",\n", + " description=\"db password:\",\n", + " disabled=False,\n", + ")\n", + "db_host_input = widgets.Text(\n", + " value=os.getenv(\"POSTGRES_HOST\", \"\"),\n", + " placeholder=\"Enter database host address\",\n", + " description=\"db host:\",\n", + " disabled=False,\n", + ")\n", + "db_port_input = widgets.Text(\n", + " value=os.getenv(\"POSTGRES_PORT\", \"5432\"),\n", + " placeholder=\"Enter database port\",\n", + " description=\"db port:\",\n", + " disabled=False,\n", + ")\n", + "\n", + "db_dbname_input = widgets.Text(\n", + " value=os.getenv(\"POSTGRES_DBNAME\", \"pgstac\"),\n", + " placeholder=\"Enter database dbname\",\n", + " description=\"db dbname:\",\n", + " disabled=False,\n", + ")\n", + "\n", + "# Display the widgets\n", + "display(username_input)\n", + "display(lat_input)\n", + "display(lon_input)\n", + "display(db_user_input)\n", + "display(db_password_input)\n", + "display(db_host_input)\n", + "display(db_port_input)\n", + "display(db_dbname_input)" + ] + }, + { + "cell_type": "markdown", + "id": "e6d710ec-c2b0-4784-a8ce-a9c3694abc35", + "metadata": {}, + "source": [ + "## 2.1 Load a collection object\n", + "\n", + "Start by creating a collection that will contain items within ~2 degrees of your provided location between January 1 2025 and April 18 2025." + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "1a09b4e5-1727-4ee2-96ef-e0772267829d", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"hrodmn-sentinel-2-c1-l2a\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"hrodmn's personal Sentinel-2 L2A collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 0 items\n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -94.0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 45.0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " -90.0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 49.0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2025-01-01T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"2025-04-23T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"other\"\n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from datetime import datetime\n", + "\n", + "import pystac_client\n", + "from pystac import Collection, Extent, SpatialExtent, TemporalExtent\n", + "from pypgstac.db import PgstacDB\n", + "from pypgstac.load import Loader, Methods\n", + "from shapely.geometry import Point\n", + "\n", + "stac_api_endpoint = os.getenv(\"STAC_API_ENDPOINT\")\n", + "\n", + "collection_id = f\"{username_input.value}-sentinel-2-c1-l2a\"\n", + "bbox = Point(lon_input.value, lat_input.value).buffer(2).bounds\n", + "temporal_extent = [datetime(2025, 1, 1), datetime(2025, 4, 23)]\n", + "\n", + "my_collection = Collection(\n", + " id=collection_id,\n", + " description=f\"{username_input.value}'s personal Sentinel-2 L2A collection\",\n", + " extent=Extent(\n", + " spatial=SpatialExtent([[*bbox]]),\n", + " temporal=TemporalExtent([temporal_extent]),\n", + " ),\n", + ")\n", + "my_collection" + ] + }, + { + "cell_type": "markdown", + "id": "c5599078-40a9-49ed-a2a4-4c4dd409ce39", + "metadata": {}, + "source": [ + "To connect to the `pgstac` database and upload data we need to generate the `dsn` and instantiate a `PgstacDB` and `Loader` pair." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "0536d319-0b51-40b4-8fe2-4ceb3ceacfec", + "metadata": {}, + "outputs": [], + "source": [ + "db_creds = {\n", + " \"password\": db_password_input.value,\n", + " \"dbname\": \"pgstac\",\n", + " \"engine\": \"postgres\",\n", + " \"port\": 5432,\n", + " \"host\": db_host_input.value,\n", + " \"username\": db_user_input.value,\n", + "}\n", + "pgstac_dsn = \"postgresql://{username}:{password}@{host}:{port}/{dbname}\".format(\n", + " **db_creds\n", + ")\n", + "\n", + "db = PgstacDB(dsn=pgstac_dsn)\n", + "loader = Loader(db)" + ] + }, + { + "cell_type": "markdown", + "id": "af1fa92d-97b3-4b70-b7b9-b371a06741a3", + "metadata": {}, + "source": [ + "The `load_collections` method accepts an iterable of STAC collection dictionaries or a file path to a collection.json file or a .ndjson file with multiple collection records. You already have your `pystac.Collection` in memory in this session so you can just write it to a dictionary and upload it (in a list). \n", + "\n", + "The `upsert` method will add your collection to the `collections` table if it does not exist and update any fields with new values if the record does already exist." + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "7ae2471c-8164-466f-a56d-745213cb7316", + "metadata": {}, + "outputs": [], + "source": [ + "loader.load_collections([my_collection.to_dict()], insert_mode=Methods.upsert)" + ] + }, + { + "cell_type": "markdown", + "id": "a607a1ca-d23d-4c42-bc55-e1def489599f", + "metadata": {}, + "source": [ + "Now if you run a query on the database you will find a record for your collection!" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "7d71b6b1-70c3-4e5d-9444-f1dddb4e98c3", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[('hrodmn-sentinel-2-c1-l2a',)]" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "list(db.query(f\"SELECT id from collections where id = '{my_collection.id}';\"))" + ] + }, + { + "cell_type": "markdown", + "id": "e62c2e30-5e0a-4a9f-9a35-16bdd24e88e8", + "metadata": {}, + "source": [ + "## 2.2 Upload items\n", + "\n", + "You already learned how to create STAC items from scratch in the [STAC metadata](./stac_metadata.ipynb) notebook so you get to take a shortcut for this one. Instead of creating STAC metadata from scratch you can just copy some from an existing STAC collection - this will be sufficient for our exercises during the workshop.\n", + "\n", + "This code will find Sentinel-2 L2A items for the first few months of 2025 that intersect the bounding box of a 2 degree radius around the coordinate that you entered at the top of the notebook." + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "6a858a2d-57b7-40e9-8235-2c341f43a8de", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1254\n" + ] + } + ], + "source": [ + "source_client = pystac_client.Client.open(\"https://earth-search.aws.element84.com/v1\")\n", + "\n", + "search = source_client.search(\n", + " collections=\"sentinel-2-c1-l2a\",\n", + " bbox=bbox,\n", + " datetime=temporal_extent,\n", + " limit=100, # pagination limit\n", + ")\n", + "\n", + "items = search.item_collection()\n", + "\n", + "print(len(items))" + ] + }, + { + "cell_type": "markdown", + "id": "34af967a-b837-4910-afde-6145582cf216", + "metadata": {}, + "source": [ + "You are going to upload these items to the items table in the `pgstac` database but to do so you need to make sure the items' collection ID matches an existing collection - set it to match the collection that you uploaded in the previous step." + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "id": "a410af0b-6d3c-4a8a-87ee-b16265afcd6a", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Feature\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 10 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/eo/v1.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + " \"https://stac-extensions.github.io/file/v2.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + " \"https://stac-extensions.github.io/grid/v1.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + " \"https://stac-extensions.github.io/mgrs/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + " \"https://stac-extensions.github.io/processing/v1.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 5\n", + " \"https://stac-extensions.github.io/projection/v2.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 6\n", + " \"https://stac-extensions.github.io/raster/v1.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 7\n", + " \"https://stac-extensions.github.io/sentinel-2/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 8\n", + " \"https://stac-extensions.github.io/storage/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 9\n", + " \"https://stac-extensions.github.io/view/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"S2C_T15TXK_20250422T165141_L2A\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " geometry\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " type\n", + " \"Polygon\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " coordinates[] 1 items\n", + " \n", + "
        \n", + " \n", + " \n", + "
      • \n", + " 0[] 5 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -91.04668800446919\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 45.13712145311703\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 1[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -91.37653580048908\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 44.15383889083003\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 2[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -90.37727088068323\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 44.135260005438454\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 3[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -90.33239204379824\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 45.122663184970506\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 4[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -91.04668800446919\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 45.13712145311703\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " bbox[] 4 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " -91.376536\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + " 44.13526\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + " -90.332392\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + " 45.137121\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " properties\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " created\n", + " \"2025-04-22T23:29:04.875Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " platform\n", + " \"sentinel-2c\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " constellation\n", + " \"sentinel-2\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " instruments[] 1 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"msi\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " eo:cloud_cover\n", + " 79.83669\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " proj:centroid\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " lat\n", + " 44.60994\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " lon\n", + " -90.78851\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " mgrs:utm_zone\n", + " 15\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " mgrs:latitude_band\n", + " \"T\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " mgrs:grid_square\n", + " \"XK\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " grid:code\n", + " \"MGRS-15TXK\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:azimuth\n", + " 105.39782341405969\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:incidence_angle\n", + " 9.180592897883939\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:sun_azimuth\n", + " 153.25487457856\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:sun_elevation\n", + " 55.2712363199598\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:tile_id\n", + " \"S2C_OPER_MSI_L2A_TL_2CPS_20250422T220013_A003285_T15TXK_N05.11\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:degraded_msi_data_percentage\n", + " 0.03\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:nodata_pixel_percentage\n", + " 37.910435\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:saturated_defective_pixel_percentage\n", + " 0\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:cloud_shadow_percentage\n", + " 2.011531\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:vegetation_percentage\n", + " 3.47597\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:not_vegetated_percentage\n", + " 10.796284\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:water_percentage\n", + " 0.131523\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:unclassified_percentage\n", + " 3.492936\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:medium_proba_clouds_percentage\n", + " 11.579089\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:high_proba_clouds_percentage\n", + " 68.040597\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:thin_cirrus_percentage\n", + " 0.217005\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:snow_ice_percentage\n", + " 0\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:product_type\n", + " \"S2MSI2A\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:processing_baseline\n", + " \"05.11\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:product_uri\n", + " \"S2C_MSIL2A_20250422T164901_N0511_R026_T15TXK_20250422T220013.SAFE\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:generation_time\n", + " \"2025-04-22T22:00:13.000000Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:datatake_id\n", + " \"GS2C_20250422T164901_003285_N05.11\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:datatake_type\n", + " \"INS-NOBS\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:datastrip_id\n", + " \"S2C_OPER_MSI_L2A_DS_2CPS_20250422T220013_S20250422T165141_N05.11\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:reflectance_conversion_factor\n", + " 0.991921727658156\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " datetime\n", + " \"2025-04-22T17:01:41.600000Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " earthsearch:payload_id\n", + " \"roda-sentinel-2-c1-l2a/workflow-sentinel-2-c1-l2a-to-stac/8a2eafe7baf23cb31a472d5ca0bf496a\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " storage:platform\n", + " \"AWS\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " storage:region\n", + " \"us-west-2\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " storage:requester_pays\n", + " False\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " processing:software\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " sentinel-2-c1-l2a-to-stac\n", + " \"v2024.02.01\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " updated\n", + " \"2025-04-22T23:29:04.875Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " proj:code\n", + " \"EPSG:32615\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 7 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2C_T15TXK_20250422T165141_L2A\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"canonical\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/S2C_T15TXK_20250422T165141_L2A.json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"via\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"s3://sentinel-s2-l2a/tiles/15/T/XK/2025/4/22/0/metadata.xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Granule Metadata in Sinergize RODA Archive\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://earth-search.aws.element84.com/v1\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Earth Search by Element 84\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 5\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2C_T15TXK_20250422T165141_L2A/thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 6\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"collection\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " None\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " red\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B04.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red - 10m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B04\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"red\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.665\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.038\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12206a82a3a377f2fc189dd1c206b956fce39b5880ae8baac2f145963216e8fc4d24\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 129435113\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " green\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B03.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Green - 10m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B03\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"green\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.56\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.045\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12206a4e9e310b2d148276f4ba287178f909f3bf206f7d5889f532a6f34b18ddc336\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 129562333\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " blue\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B02.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Blue - 10m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B02\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"blue\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.49\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.098\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12204b1f07ecc83e948a6bbcf79a456e65ca27c13e122876b9bb9f15a7d3c7e15844\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 130084997\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " visual\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/TCI.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"True color image\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B04\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"red\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.665\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.038\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B03\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"green\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.56\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.045\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B02\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"blue\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.49\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.098\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"122035b0769adfb74c1d2b78be7edcfdf248e157ece6de8679cd9035f3094c3c7f9a\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 67394093\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"visual\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " nir\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B08.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"NIR 1 - 10m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B08\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"nir\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.842\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.145\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220ec1752dcb59a0c6a54dd2b277179c0cec1a41cab197544b036abddd0b3d60480\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 128049080\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " swir22\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B12.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"SWIR 2.2μm - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B12\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"swir22\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 2.19\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.242\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220181be3b6d851cb5a4a626ce3116171cfd21497b2d7ad7d9d090d98b6dc530b4c\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 38261811\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " rededge2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B06.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red Edge 2 - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B06\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"rededge\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.74\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.018\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"122041c6e92aecf414c124567b0d0a9b9fff667094e4eff02562225102c9062f6991\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 39094091\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " rededge3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B07.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red Edge 3 - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B07\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"rededge\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.783\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.028\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220abd6e9995120b846d668a9abf42e434043228ac015e144af551c24bd25feaced\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 38991206\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " rededge1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B05.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red Edge 1 - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B05\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"rededge\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.704\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.019\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220f8dac1f22ed7d6ea4ede24411fbde4aa63a39dee3e3c727f876174aeacf9e903\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 39143161\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " swir16\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B11.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"SWIR 1.6μm - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B11\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"swir16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 1.61\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.143\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12204b2f1aa7c19acb0dfd43bebb964a892df2500dd55d0f5cefb06712a06764bc5a\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 38472033\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " wvp\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/WVP.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Water Vapour (WVP)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " unit\n", + " \"cm\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220eba18520a516965622c96664972926264d03e142ce228c1e51bcd4ac090df6b9\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 5590987\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " nir08\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B8A.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"NIR 2 - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B8A\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"nir08\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.865\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.033\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"122081a32a7d6322a4049f225d014db6bbded061dbe26f10f0737e7aad815d428f5b\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 38930601\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " scl\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/SCL.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Scene classification map (SCL)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220418cb080af76e48c61b0b0ef21f5c4bfd65973d246fb30e19ad3d7e6b9a718c8\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 1758688\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " aot\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/AOT.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Aerosol optical thickness (AOT)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220207e1599a4a8af00a569e258a28b0dd4311fdf1728cdcd926800aff2210e8f19\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 1110411\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " coastal\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B01.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Coastal - 60m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B01\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"coastal\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.443\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.027\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 60\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220610e702e26ab52fd4db9ca21b9f3eb98133c0b441264f9e061bfe98cda1dfa00\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 4611032\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " nir09\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B09.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"NIR 3 - 60m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B09\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"nir09\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.945\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.026\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 60\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220c51c7ced7a26d3cad839976f67cbb530cf31af3fcb93885b867732e2601bc834\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 4479072\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " cloud\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/CLD_20m.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Cloud Probabilities\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12204bb258248a9e48d5fba4a4fac487e887a3ace9cc4aa5400da6346ac6d9722d2e\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 4715455\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"cloud\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " snow\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/SNW_20m.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Snow Probabilities\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220bfa01525755a18dd7e6b3f380f34bfb9bc09da89c7746a876d9fecc561a6ac9a\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 110471\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"snow-ice\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " preview\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/L2A_PVI.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"True color preview\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B04\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"red\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.665\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.038\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B03\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"green\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.56\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.045\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B02\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"blue\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.49\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.098\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12208c64ab44b28e712e35741b445039e5f3d8c8d7d31cd14ac7b39021d05848217d\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 108570\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"overview\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " granule_metadata\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/metadata.xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220fe253a3771ed7ff7551bd09efae3050519d4e00ff0273b60a2e2a48bed2e2349\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 369609\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"metadata\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " tileinfo_metadata\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/tileInfo.json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12204f9875ee0e6a76846904c9e50d2572d176bb1c37cd160212888c16965b02065a\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 1518\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"metadata\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " product_metadata\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/product_metadata.xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"122017e98e4652b99cfc35b9785555f07a048b661c46e6e519ca01c3c6d1697e340f\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 58820\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"metadata\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/L2A_PVI.jpg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail of preview image\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220d8e51a37a994bb9881c8cc1325016c4566870dfd609a66a616bc676bf4d3a978\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 23384\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " collection\n", + " \"hrodmn-sentinel-2-c1-l2a\"\n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# override the collection id to match your new collection\n", + "for item in items:\n", + " item.set_collection(my_collection)\n", + "\n", + "items[0]" + ] + }, + { + "cell_type": "markdown", + "id": "05a5a11e-9c20-41c0-aa5c-b078731173d8", + "metadata": {}, + "source": [ + "Now you can use the `load_items` method to upload the list of STAC item dictionaries to the items table in the `pgstac` database. The `insert_ignore` method will upload any items that do not exist in the table and skip records that already exist." + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "82443eb2-0d59-46b2-9178-25acb3d0593e", + "metadata": {}, + "outputs": [], + "source": [ + "loader.load_items([item.to_dict() for item in items], insert_mode=Methods.insert_ignore)" + ] + }, + { + "cell_type": "markdown", + "id": "680a5d26-05c0-4cf9-ac7a-ccc555675a18", + "metadata": {}, + "source": [ + "Hooray you uploaded some items! Now run a query to verify that the records landed in the items table." + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "id": "48133d14-e301-45b4-973d-1b846a6c503a", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "there are 1254 items\n" + ] + } + ], + "source": [ + "n_items = db.query_one(\n", + " f\"SELECT COUNT(*) FROM items where collection = '{my_collection.id}';\"\n", + ")\n", + "print(f\"there are {n_items} items\")" + ] + }, + { + "cell_type": "markdown", + "id": "579370f8-3cde-4f6f-bff2-796aa08344eb", + "metadata": {}, + "source": [ + "Here is your first glimpse of the power of STAC metadata. You just uploaded these items to the database and now you can browse the data in a beautiful interface without doing any more work!\n", + "\n", + "[Radiant Earth](https://radiant.earth/) built a tool called [STAC Browser](https://radiantearth.github.io/stac-browser/#/?.language=en) that is a human-readable interface to a STAC API. Your collection is immediately availble in the STAC API so you can browse it in STAC Browser. Take a tour around the STAC Browser page for your collection. " + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "id": "ba5f6278-4d92-4386-af1d-94ca5aed6c30", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from IPython.display import IFrame\n", + "\n", + "IFrame(\n", + " f\"https://radiantearth.github.io/stac-browser/#/external/{stac_api_endpoint}/collections/{my_collection.id}\",\n", + " 1200,\n", + " 800,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "cdd2d506-7dad-48f1-acb4-4188b54c0346", + "metadata": {}, + "source": [ + "## 2.3 Delete an item\n", + "\n", + "It is less common but you might want to delete a STAC record some day. There are not yet any `pypgstac` functions for doing this but it is relatively easy to do via PostgreSQL query.\n", + "\n", + "Try deleting the last item in the list." + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "id": "4c6782bf-b043-49a0-a338-7676ff52d005", + "metadata": {}, + "outputs": [], + "source": [ + "with db.connect() as conn:\n", + " cur = conn.cursor()\n", + " cur.execute(f\"DELETE FROM items where id = '{items[-1].id}';\")\n", + " cur.close()\n", + " conn.commit()" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "id": "d3030aa7-4aaa-4ead-8589-b88759968f99", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "now there are 1253 items\n" + ] + } + ], + "source": [ + "new_n_items = db.query_one(\n", + " f\"SELECT COUNT(*) FROM items where collection = '{my_collection.id}';\"\n", + ")\n", + "print(f\"now there are {new_n_items} items\")" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "id": "dd34e829-0fc7-4abd-88ed-6fce8e73d1bf", + "metadata": {}, + "outputs": [], + "source": [ + "# put it back :)\n", + "loader.load_items([items[-1].to_dict()], insert_mode=Methods.insert_ignore)" + ] + }, + { + "cell_type": "markdown", + "id": "14f29b16-f8f3-4533-af79-98b471c21671", + "metadata": {}, + "source": [ + "## 2.4 Search with pypgstac\n", + "\n", + "It is not going to be the best option for searching a pgstac database in most cases (you should probably send a request to stac-fastapi-pgstac), but you can use pypgstac to search for items. You can provide a JSON request body like you would provide to a STAC API in the `query` arg of `PgstacDB.search`:" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "id": "7137a06e-135c-478a-a79f-d7134bd48d3d", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\"type\":\"FeatureCollection\",\"links\":[{\"rel\":\"root\",\"href\":\".\",\"type\":\"application/json\"},{\"rel\":\"self\",\"href\":\"./search\",\"type\":\"application/json\"},{\"rel\":\"next\",\"href\":\"./search?token=next:hrodmn-sentinel-2-c1-l2a:S2C_T15TXK_20250422T165141_L2A\",\"type\":\"application/geo+json\",\"method\":\"GET\"}],\"features\":[{\"id\":\"S2C_T15TXK_20250422T165141_L2A\",\"bbox\":[-91.376536,44.13526,-90.332392,45.137121],\"type\":\"Feature\",\"links\":[{\"rel\":\"self\",\"href\":\"https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2C_T15TXK_20250422T165141_L2A\",\"type\":\"application/geo+json\"},{\"rel\":\"canonical\",\"href\":\"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/S2C_T15TXK_20250422T165141_L2A.json\",\"type\":\"application/json\"},{\"rel\":\"via\",\"href\":\"s3://sentinel-s2-l2a/tiles/15/T/XK/2025/4/22/0/metadata.xml\",\"type\":\"application/xml\",\"title\":\"Granule Metadata in Sinergize RODA Archive\"},{\"rel\":\"parent\",\"href\":\"https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a\",\"type\":\"application/json\"},{\"rel\":\"root\",\"href\":\"https://earth-search.aws.element84.com/v1\",\"type\":\"application/json\",\"title\":\"Earth Search by Element 84\"},{\"rel\":\"thumbnail\",\"href\":\"https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2C_T15TXK_20250422T165141_L2A/thumbnail\"},{\"rel\":\"collection\",\"type\":\"application/json\"}],\"assets\":{\"aot\":{\"gsd\":20,\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/AOT.tif\",\"type\":\"image/tiff; application=geotiff; profile=cloud-optimized\",\"roles\":[\"data\"],\"title\":\"Aerosol optical thickness (AOT)\",\"file:size\":1110411,\"proj:shape\":[5490,5490],\"raster:bands\":[{\"scale\":0.001,\"nodata\":0,\"offset\":0,\"data_type\":\"uint16\",\"spatial_resolution\":20}],\"file:checksum\":\"1220207e1599a4a8af00a569e258a28b0dd4311fdf1728cdcd926800aff2210e8f19\",\"proj:transform\":[20,0,600000,0,-20,5000040]},\"nir\":{\"gsd\":10,\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B08.tif\",\"type\":\"image/tiff; application=geotiff; profile=cloud-optimized\",\"roles\":[\"data\",\"reflectance\"],\"title\":\"NIR 1 - 10m\",\"eo:bands\":[{\"name\":\"B08\",\"common_name\":\"nir\",\"center_wavelength\":0.842,\"full_width_half_max\":0.145}],\"file:size\":128049080,\"proj:shape\":[10980,10980],\"raster:bands\":[{\"scale\":0.0001,\"nodata\":0,\"offset\":-0.1,\"data_type\":\"uint16\",\"spatial_resolution\":10}],\"file:checksum\":\"1220ec1752dcb59a0c6a54dd2b277179c0cec1a41cab197544b036abddd0b3d60480\",\"proj:transform\":[10,0,600000,0,-10,5000040]},\"red\":{\"gsd\":10,\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B04.tif\",\"type\":\"image/tiff; application=geotiff; profile=cloud-optimized\",\"roles\":[\"data\",\"reflectance\"],\"title\":\"Red - 10m\",\"eo:bands\":[{\"name\":\"B04\",\"common_name\":\"red\",\"center_wavelength\":0.665,\"full_width_half_max\":0.038}],\"file:size\":129435113,\"proj:shape\":[10980,10980],\"raster:bands\":[{\"scale\":0.0001,\"nodata\":0,\"offset\":-0.1,\"data_type\":\"uint16\",\"spatial_resolution\":10}],\"file:checksum\":\"12206a82a3a377f2fc189dd1c206b956fce39b5880ae8baac2f145963216e8fc4d24\",\"proj:transform\":[10,0,600000,0,-10,5000040]},\"scl\":{\"gsd\":20,\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/SCL.tif\",\"type\":\"image/tiff; application=geotiff; profile=cloud-optimized\",\"roles\":[\"data\"],\"title\":\"Scene classification map (SCL)\",\"file:size\":1758688,\"proj:shape\":[5490,5490],\"raster:bands\":[{\"nodata\":0,\"data_type\":\"uint8\",\"spatial_resolution\":20}],\"file:checksum\":\"1220418cb080af76e48c61b0b0ef21f5c4bfd65973d246fb30e19ad3d7e6b9a718c8\",\"proj:transform\":[20,0,600000,0,-20,5000040]},\"wvp\":{\"gsd\":20,\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/WVP.tif\",\"type\":\"image/tiff; application=geotiff; profile=cloud-optimized\",\"roles\":[\"data\"],\"title\":\"Water Vapour (WVP)\",\"file:size\":5590987,\"proj:shape\":[5490,5490],\"raster:bands\":[{\"unit\":\"cm\",\"scale\":0.001,\"nodata\":0,\"offset\":0,\"data_type\":\"uint16\",\"spatial_resolution\":20}],\"file:checksum\":\"1220eba18520a516965622c96664972926264d03e142ce228c1e51bcd4ac090df6b9\",\"proj:transform\":[20,0,600000,0,-20,5000040]},\"blue\":{\"gsd\":10,\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B02.tif\",\"type\":\"image/tiff; application=geotiff; profile=cloud-optimized\",\"roles\":[\"data\",\"reflectance\"],\"title\":\"Blue - 10m\",\"eo:bands\":[{\"name\":\"B02\",\"common_name\":\"blue\",\"center_wavelength\":0.49,\"full_width_half_max\":0.098}],\"file:size\":130084997,\"proj:shape\":[10980,10980],\"raster:bands\":[{\"scale\":0.0001,\"nodata\":0,\"offset\":-0.1,\"data_type\":\"uint16\",\"spatial_resolution\":10}],\"file:checksum\":\"12204b1f07ecc83e948a6bbcf79a456e65ca27c13e122876b9bb9f15a7d3c7e15844\",\"proj:transform\":[10,0,600000,0,-10,5000040]},\"snow\":{\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/SNW_20m.tif\",\"type\":\"image/tiff; application=geotiff; profile=cloud-optimized\",\"roles\":[\"data\",\"snow-ice\"],\"title\":\"Snow Probabilities\",\"file:size\":110471,\"proj:shape\":[5490,5490],\"raster:bands\":[{\"nodata\":0,\"data_type\":\"uint8\",\"spatial_resolution\":20}],\"file:checksum\":\"1220bfa01525755a18dd7e6b3f380f34bfb9bc09da89c7746a876d9fecc561a6ac9a\",\"proj:transform\":[20,0,600000,0,-20,5000040]},\"cloud\":{\"gsd\":20,\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/CLD_20m.tif\",\"type\":\"image/tiff; application=geotiff; profile=cloud-optimized\",\"roles\":[\"data\",\"cloud\"],\"title\":\"Cloud Probabilities\",\"file:size\":4715455,\"proj:shape\":[5490,5490],\"raster:bands\":[{\"nodata\":0,\"data_type\":\"uint8\",\"spatial_resolution\":20}],\"file:checksum\":\"12204bb258248a9e48d5fba4a4fac487e887a3ace9cc4aa5400da6346ac6d9722d2e\",\"proj:transform\":[20,0,600000,0,-20,5000040]},\"green\":{\"gsd\":10,\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B03.tif\",\"type\":\"image/tiff; application=geotiff; profile=cloud-optimized\",\"roles\":[\"data\",\"reflectance\"],\"title\":\"Green - 10m\",\"eo:bands\":[{\"name\":\"B03\",\"common_name\":\"green\",\"center_wavelength\":0.56,\"full_width_half_max\":0.045}],\"file:size\":129562333,\"proj:shape\":[10980,10980],\"raster:bands\":[{\"scale\":0.0001,\"nodata\":0,\"offset\":-0.1,\"data_type\":\"uint16\",\"spatial_resolution\":10}],\"file:checksum\":\"12206a4e9e310b2d148276f4ba287178f909f3bf206f7d5889f532a6f34b18ddc336\",\"proj:transform\":[10,0,600000,0,-10,5000040]},\"nir08\":{\"gsd\":20,\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B8A.tif\",\"type\":\"image/tiff; application=geotiff; profile=cloud-optimized\",\"roles\":[\"data\",\"reflectance\"],\"title\":\"NIR 2 - 20m\",\"eo:bands\":[{\"name\":\"B8A\",\"common_name\":\"nir08\",\"center_wavelength\":0.865,\"full_width_half_max\":0.033}],\"file:size\":38930601,\"proj:shape\":[5490,5490],\"raster:bands\":[{\"scale\":0.0001,\"nodata\":0,\"offset\":-0.1,\"data_type\":\"uint16\",\"spatial_resolution\":20}],\"file:checksum\":\"122081a32a7d6322a4049f225d014db6bbded061dbe26f10f0737e7aad815d428f5b\",\"proj:transform\":[20,0,600000,0,-20,5000040]},\"nir09\":{\"gsd\":60,\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B09.tif\",\"type\":\"image/tiff; application=geotiff; profile=cloud-optimized\",\"roles\":[\"data\",\"reflectance\"],\"title\":\"NIR 3 - 60m\",\"eo:bands\":[{\"name\":\"B09\",\"common_name\":\"nir09\",\"center_wavelength\":0.945,\"full_width_half_max\":0.026}],\"file:size\":4479072,\"proj:shape\":[1830,1830],\"raster:bands\":[{\"scale\":0.0001,\"nodata\":0,\"offset\":-0.1,\"data_type\":\"uint16\",\"spatial_resolution\":60}],\"file:checksum\":\"1220c51c7ced7a26d3cad839976f67cbb530cf31af3fcb93885b867732e2601bc834\",\"proj:transform\":[60,0,600000,0,-60,5000040]},\"swir16\":{\"gsd\":20,\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B11.tif\",\"type\":\"image/tiff; application=geotiff; profile=cloud-optimized\",\"roles\":[\"data\",\"reflectance\"],\"title\":\"SWIR 1.6μm - 20m\",\"eo:bands\":[{\"name\":\"B11\",\"common_name\":\"swir16\",\"center_wavelength\":1.61,\"full_width_half_max\":0.143}],\"file:size\":38472033,\"proj:shape\":[5490,5490],\"raster:bands\":[{\"scale\":0.0001,\"nodata\":0,\"offset\":-0.1,\"data_type\":\"uint16\",\"spatial_resolution\":20}],\"file:checksum\":\"12204b2f1aa7c19acb0dfd43bebb964a892df2500dd55d0f5cefb06712a06764bc5a\",\"proj:transform\":[20,0,600000,0,-20,5000040]},\"swir22\":{\"gsd\":20,\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B12.tif\",\"type\":\"image/tiff; application=geotiff; profile=cloud-optimized\",\"roles\":[\"data\",\"reflectance\"],\"title\":\"SWIR 2.2μm - 20m\",\"eo:bands\":[{\"name\":\"B12\",\"common_name\":\"swir22\",\"center_wavelength\":2.19,\"full_width_half_max\":0.242}],\"file:size\":38261811,\"proj:shape\":[5490,5490],\"raster:bands\":[{\"scale\":0.0001,\"nodata\":0,\"offset\":-0.1,\"data_type\":\"uint16\",\"spatial_resolution\":20}],\"file:checksum\":\"1220181be3b6d851cb5a4a626ce3116171cfd21497b2d7ad7d9d090d98b6dc530b4c\",\"proj:transform\":[20,0,600000,0,-20,5000040]},\"visual\":{\"gsd\":10,\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/TCI.tif\",\"type\":\"image/tiff; application=geotiff; profile=cloud-optimized\",\"roles\":[\"visual\"],\"title\":\"True color image\",\"eo:bands\":[{\"name\":\"B04\",\"common_name\":\"red\",\"center_wavelength\":0.665,\"full_width_half_max\":0.038},{\"name\":\"B03\",\"common_name\":\"green\",\"center_wavelength\":0.56,\"full_width_half_max\":0.045},{\"name\":\"B02\",\"common_name\":\"blue\",\"center_wavelength\":0.49,\"full_width_half_max\":0.098}],\"file:size\":67394093,\"proj:shape\":[10980,10980],\"raster:bands\":[{\"nodata\":0,\"data_type\":\"uint8\",\"spatial_resolution\":10},{\"nodata\":0,\"data_type\":\"uint8\",\"spatial_resolution\":10},{\"nodata\":0,\"data_type\":\"uint8\",\"spatial_resolution\":10}],\"file:checksum\":\"122035b0769adfb74c1d2b78be7edcfdf248e157ece6de8679cd9035f3094c3c7f9a\",\"proj:transform\":[10,0,600000,0,-10,5000040]},\"coastal\":{\"gsd\":60,\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B01.tif\",\"type\":\"image/tiff; application=geotiff; profile=cloud-optimized\",\"roles\":[\"data\",\"reflectance\"],\"title\":\"Coastal - 60m\",\"eo:bands\":[{\"name\":\"B01\",\"common_name\":\"coastal\",\"center_wavelength\":0.443,\"full_width_half_max\":0.027}],\"file:size\":4611032,\"proj:shape\":[1830,1830],\"raster:bands\":[{\"scale\":0.0001,\"nodata\":0,\"offset\":-0.1,\"data_type\":\"uint16\",\"spatial_resolution\":60}],\"file:checksum\":\"1220610e702e26ab52fd4db9ca21b9f3eb98133c0b441264f9e061bfe98cda1dfa00\",\"proj:transform\":[60,0,600000,0,-60,5000040]},\"preview\":{\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/L2A_PVI.tif\",\"type\":\"image/tiff; application=geotiff; profile=cloud-optimized\",\"roles\":[\"overview\"],\"title\":\"True color preview\",\"eo:bands\":[{\"name\":\"B04\",\"common_name\":\"red\",\"center_wavelength\":0.665,\"full_width_half_max\":0.038},{\"name\":\"B03\",\"common_name\":\"green\",\"center_wavelength\":0.56,\"full_width_half_max\":0.045},{\"name\":\"B02\",\"common_name\":\"blue\",\"center_wavelength\":0.49,\"full_width_half_max\":0.098}],\"file:size\":108570,\"file:checksum\":\"12208c64ab44b28e712e35741b445039e5f3d8c8d7d31cd14ac7b39021d05848217d\"},\"rededge1\":{\"gsd\":20,\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B05.tif\",\"type\":\"image/tiff; application=geotiff; profile=cloud-optimized\",\"roles\":[\"data\",\"reflectance\"],\"title\":\"Red Edge 1 - 20m\",\"eo:bands\":[{\"name\":\"B05\",\"common_name\":\"rededge\",\"center_wavelength\":0.704,\"full_width_half_max\":0.019}],\"file:size\":39143161,\"proj:shape\":[5490,5490],\"raster:bands\":[{\"scale\":0.0001,\"nodata\":0,\"offset\":-0.1,\"data_type\":\"uint16\",\"spatial_resolution\":20}],\"file:checksum\":\"1220f8dac1f22ed7d6ea4ede24411fbde4aa63a39dee3e3c727f876174aeacf9e903\",\"proj:transform\":[20,0,600000,0,-20,5000040]},\"rededge2\":{\"gsd\":20,\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B06.tif\",\"type\":\"image/tiff; application=geotiff; profile=cloud-optimized\",\"roles\":[\"data\",\"reflectance\"],\"title\":\"Red Edge 2 - 20m\",\"eo:bands\":[{\"name\":\"B06\",\"common_name\":\"rededge\",\"center_wavelength\":0.74,\"full_width_half_max\":0.018}],\"file:size\":39094091,\"proj:shape\":[5490,5490],\"raster:bands\":[{\"scale\":0.0001,\"nodata\":0,\"offset\":-0.1,\"data_type\":\"uint16\",\"spatial_resolution\":20}],\"file:checksum\":\"122041c6e92aecf414c124567b0d0a9b9fff667094e4eff02562225102c9062f6991\",\"proj:transform\":[20,0,600000,0,-20,5000040]},\"rededge3\":{\"gsd\":20,\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/B07.tif\",\"type\":\"image/tiff; application=geotiff; profile=cloud-optimized\",\"roles\":[\"data\",\"reflectance\"],\"title\":\"Red Edge 3 - 20m\",\"eo:bands\":[{\"name\":\"B07\",\"common_name\":\"rededge\",\"center_wavelength\":0.783,\"full_width_half_max\":0.028}],\"file:size\":38991206,\"proj:shape\":[5490,5490],\"raster:bands\":[{\"scale\":0.0001,\"nodata\":0,\"offset\":-0.1,\"data_type\":\"uint16\",\"spatial_resolution\":20}],\"file:checksum\":\"1220abd6e9995120b846d668a9abf42e434043228ac015e144af551c24bd25feaced\",\"proj:transform\":[20,0,600000,0,-20,5000040]},\"thumbnail\":{\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/L2A_PVI.jpg\",\"type\":\"image/jpeg\",\"roles\":[\"thumbnail\"],\"title\":\"Thumbnail of preview image\",\"file:size\":23384,\"file:checksum\":\"1220d8e51a37a994bb9881c8cc1325016c4566870dfd609a66a616bc676bf4d3a978\"},\"granule_metadata\":{\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/metadata.xml\",\"type\":\"application/xml\",\"roles\":[\"metadata\"],\"file:size\":369609,\"file:checksum\":\"1220fe253a3771ed7ff7551bd09efae3050519d4e00ff0273b60a2e2a48bed2e2349\"},\"product_metadata\":{\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/product_metadata.xml\",\"type\":\"application/xml\",\"roles\":[\"metadata\"],\"file:size\":58820,\"file:checksum\":\"122017e98e4652b99cfc35b9785555f07a048b661c46e6e519ca01c3c6d1697e340f\"},\"tileinfo_metadata\":{\"href\":\"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2C_T15TXK_20250422T165141_L2A/tileInfo.json\",\"type\":\"application/json\",\"roles\":[\"metadata\"],\"file:size\":1518,\"file:checksum\":\"12204f9875ee0e6a76846904c9e50d2572d176bb1c37cd160212888c16965b02065a\"}},\"geometry\":{\"type\":\"Polygon\",\"coordinates\":[[[-91.04668800446919,45.13712145311703],[-91.37653580048908,44.15383889083003],[-90.37727088068323,44.135260005438454],[-90.33239204379824,45.122663184970506],[-91.04668800446919,45.13712145311703]]]},\"collection\":\"hrodmn-sentinel-2-c1-l2a\",\"properties\":{\"created\":\"2025-04-22T23:29:04.875Z\",\"updated\":\"2025-04-22T23:29:04.875Z\",\"datetime\":\"2025-04-22T17:01:41.600000Z\",\"platform\":\"sentinel-2c\",\"grid:code\":\"MGRS-15TXK\",\"proj:code\":\"EPSG:32615\",\"s2:tile_id\":\"S2C_OPER_MSI_L2A_TL_2CPS_20250422T220013_A003285_T15TXK_N05.11\",\"instruments\":[\"msi\"],\"view:azimuth\":105.39782341405969,\"constellation\":\"sentinel-2\",\"mgrs:utm_zone\":15,\"proj:centroid\":{\"lat\":44.60994,\"lon\":-90.78851},\"eo:cloud_cover\":79.83669,\"s2:datatake_id\":\"GS2C_20250422T164901_003285_N05.11\",\"s2:product_uri\":\"S2C_MSIL2A_20250422T164901_N0511_R026_T15TXK_20250422T220013.SAFE\",\"storage:region\":\"us-west-2\",\"s2:datastrip_id\":\"S2C_OPER_MSI_L2A_DS_2CPS_20250422T220013_S20250422T165141_N05.11\",\"s2:product_type\":\"S2MSI2A\",\"mgrs:grid_square\":\"XK\",\"s2:datatake_type\":\"INS-NOBS\",\"storage:platform\":\"AWS\",\"view:sun_azimuth\":153.25487457856,\"mgrs:latitude_band\":\"T\",\"s2:generation_time\":\"2025-04-22T22:00:13.000000Z\",\"view:sun_elevation\":55.2712363199598,\"processing:software\":{\"sentinel-2-c1-l2a-to-stac\":\"v2024.02.01\"},\"s2:water_percentage\":0.131523,\"view:incidence_angle\":9.180592897883939,\"earthsearch:payload_id\":\"roda-sentinel-2-c1-l2a/workflow-sentinel-2-c1-l2a-to-stac/8a2eafe7baf23cb31a472d5ca0bf496a\",\"s2:processing_baseline\":\"05.11\",\"s2:snow_ice_percentage\":0,\"storage:requester_pays\":false,\"s2:vegetation_percentage\":3.47597,\"s2:thin_cirrus_percentage\":0.217005,\"s2:cloud_shadow_percentage\":2.011531,\"s2:nodata_pixel_percentage\":37.910435,\"s2:unclassified_percentage\":3.492936,\"s2:not_vegetated_percentage\":10.796284,\"s2:degraded_msi_data_percentage\":0.03,\"s2:high_proba_clouds_percentage\":68.040597,\"s2:reflectance_conversion_factor\":0.991921727658156,\"s2:medium_proba_clouds_percentage\":11.579089,\"s2:saturated_defective_pixel_percentage\":0},\"stac_version\":\"1.1.0\",\"stac_extensions\":[\"https://stac-extensions.github.io/eo/v1.1.0/schema.json\",\"https://stac-extensions.github.io/file/v2.1.0/schema.json\",\"https://stac-extensions.github.io/grid/v1.1.0/schema.json\",\"https://stac-extensions.github.io/mgrs/v1.0.0/schema.json\",\"https://stac-extensions.github.io/processing/v1.1.0/schema.json\",\"https://stac-extensions.github.io/projection/v2.0.0/schema.json\",\"https://stac-extensions.github.io/raster/v1.1.0/schema.json\",\"https://stac-extensions.github.io/sentinel-2/v1.0.0/schema.json\",\"https://stac-extensions.github.io/storage/v1.0.0/schema.json\",\"https://stac-extensions.github.io/view/v1.0.0/schema.json\"]}],\"numberReturned\":1}\n" + ] + } + ], + "source": [ + "search_results = db.search(query={\"collections\": [my_collection.id], \"limit\": 1})\n", + "\n", + "print(search_results)" + ] + }, + { + "cell_type": "markdown", + "id": "241a54e8-1ec2-401f-bded-7a87bd1931e2", + "metadata": {}, + "source": [ + "## 2.5 Aggregations\n", + "\n", + "Since your metadata is now cataloged in a PostgreSQL database, you can summarize it using SQL!" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "id": "81f8addb-d890-434f-984e-b4ea591e94ef", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "('hrodmn-sentinel-2-c1-l2a', 1254)\n" + ] + } + ], + "source": [ + "summary_query = db.query(\n", + " \"SELECT collection, COUNT(*) as count FROM items GROUP BY collection;\"\n", + ")\n", + "for res in summary_query:\n", + " print(res)" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "id": "a9438ee2-50ee-48e6-907f-4b7e6c6ac151", + "metadata": {}, + "outputs": [], + "source": [ + "db.close()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.10" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/docs/03-stac_fastapi_pgstac.ipynb b/docs/03-stac_fastapi_pgstac.ipynb new file mode 100644 index 0000000..28df8ef --- /dev/null +++ b/docs/03-stac_fastapi_pgstac.ipynb @@ -0,0 +1,26277 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "7f4f9109-ac1f-473b-b30b-c35294ae426d", + "metadata": {}, + "source": [ + "# 3. The STAC API: stac-fastapi-pgstac\n", + "\n", + "The STAC API provided by eoAPI is [stac-fastapi-pgstac](https://github.com/stac-utils/stac-fastapi-pgstac): a stac-fastapi application with a pgstac backend.\n", + "stac-fastapi-pgstac translates STAC API requests into pgstac queries and returns the results to the requester.\n", + "\n", + "The stac-fastapi-pgstac STAC API can be accessed using any HTTP client but STAC API clients like `pystac-client` provide a more intuitive interface. In this tutorial you will learn how to use HTTP requests via `httpx` as well as `pystac-client` methods." + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "id": "c8ec4c5b-1156-4608-8ab9-b2cdcbcc47e1", + "metadata": {}, + "source": [ + "## 3.1 stac-fastapi-pgstac structure\n", + "\n", + "A standard eoAPI deployment will run an unmodified version of the FastAPI application defined in `stac_fastapi.pgstac.app:app` ([source](https://github.com/stac-utils/stac-fastapi-pgstac/blob/main/stac_fastapi/pgstac/app.py)). Unless otherwise specified, all of the extensions except the `transaction` and `bulk-transaction` extensions will be enabled but be sure to double check this in your own deployment.\n", + "\n", + "
\n", + "Warning: Do not turn on the transaction or bulk transactions extensions for a public-facing STAC API without some kind of auth layer enabled! Enabling the transactions extensions enables users to POST collections or items to the database via stac-fastapi-pgstac.\n", + "
\n", + "\n", + "stac-fastapi-pgstac implements a pgstac client that is capable of serving the routes defined by stac-fastapi's base `StacApi` factory class ([source](https://github.com/stac-utils/stac-fastapi/blob/main/stac_fastapi/api/stac_fastapi/api/app.py)). The pgstac client's methods contain the logic for translating API requests into pgstac database queries.\n", + "\n", + "For example, a search request for items in the \"amazing\" collection where the item bounding box intersects (0, 0, 10, 10) would get converted to a PostgreSQL query like this pseudo-sql:\n", + "```sql\n", + "SELECT * FROM items\n", + "WHERE \n", + " collection = 'amazing' AND\n", + " ST_Intersects(bbox, ST_MakeEnvelope(0, 0, 10, 10));\n", + "```\n", + "stac-fastapi-pgstac transforms the search results into the format expected in the API response and return it to the user. If you want to see how the actual SQL queries look in `pgstac`, check out the [pgstac source code](https://github.com/stac-utils/pgstac/tree/main/src/pgstac/sql).\n", + "\n", + "### 3.1.1 Customization\n", + "There are several options in the default stac-fastapi-pgstac application that are configurable at run time via environment variables (using [pydantic's settings features](https://docs.pydantic.dev/latest/concepts/pydantic_settings/)):\n", + "- the `ENABLED_EXTENSIONS` environment variable controls which extensions are enabled\n", + "- `pgstac` database credentials are set by `POSTGRES_*` environment variables ([source](https://github.com/stac-utils/stac-fastapi-pgstac/blob/main/stac_fastapi/pgstac/config.py))\n", + "- take a look at [stac_fastapi/pgstac/config.py](https://github.com/stac-utils/stac-fastapi-pgstac/blob/main/stac_fastapi/pgstac/config.py) for the settings module.\n", + "\n", + "Any other modifications to the default application will require a custom runtime in your eoAPI deployment. If you do this you will need to provide the full custom runtime (application code and handler) via a Dockerfile. Check out [eoapi-devseed](https://github.com/developmentseed/eoapi-devseed) for an example of building custom runtimes for eoAPI services.\n", + "\n", + "### 3.1.2 Authentication\n", + "stac-fastapi-pgstac does not contain any authentication mechanism out-of-the-box, meaning your STAC API will be accessible to anyone if it is deployed to a public web address. If you want to make your STAC API accessible only with a username/password or token, check out the [FastAPI docs](https://fastapi.tiangolo.com/tutorial/security) for examples of how to add them to the application in a custom runtime.\n", + "\n", + "There is a new project called [stac-auth-proxy](https://github.com/developmentseed/stac-auth-proxy) that can provide fine-grained access controls to a STAC API by adding a proxy layer between users and the actual STAC API.\n", + "\n", + "### 3.1.3 STAC API interface\n", + "Once your STAC API is up and running, its capabilities will be described in the `/conformance` endpoint response:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "3d4e7fe4-c21b-45c8-a56c-9b649f9f4924", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " \"conformsTo\": [\n", + " \"http://www.opengis.net/spec/cql2/1.0/conf/basic-cql2\",\n", + " \"http://www.opengis.net/spec/cql2/1.0/conf/cql2-json\",\n", + " \"http://www.opengis.net/spec/cql2/1.0/conf/cql2-text\",\n", + " \"http://www.opengis.net/spec/ogcapi-common-2/1.0/conf/simple-query\",\n", + " \"http://www.opengis.net/spec/ogcapi-features-1/1.0/conf/core\",\n", + " \"http://www.opengis.net/spec/ogcapi-features-1/1.0/conf/geojson\",\n", + " \"http://www.opengis.net/spec/ogcapi-features-1/1.0/conf/oas30\",\n", + " \"http://www.opengis.net/spec/ogcapi-features-3/1.0/conf/features-filter\",\n", + " \"http://www.opengis.net/spec/ogcapi-features-3/1.0/conf/filter\",\n", + " \"https://api.stacspec.org/v1.0.0-rc.1/collection-search\",\n", + " \"https://api.stacspec.org/v1.0.0-rc.1/collection-search#fields\",\n", + " \"https://api.stacspec.org/v1.0.0-rc.1/collection-search#filter\",\n", + " \"https://api.stacspec.org/v1.0.0-rc.1/collection-search#free-text\",\n", + " \"https://api.stacspec.org/v1.0.0-rc.1/collection-search#query\",\n", + " \"https://api.stacspec.org/v1.0.0-rc.1/collection-search#sort\",\n", + " \"https://api.stacspec.org/v1.0.0-rc.2/item-search#filter\",\n", + " \"https://api.stacspec.org/v1.0.0/collections\",\n", + " \"https://api.stacspec.org/v1.0.0/core\",\n", + " \"https://api.stacspec.org/v1.0.0/item-search\",\n", + " \"https://api.stacspec.org/v1.0.0/item-search#fields\",\n", + " \"https://api.stacspec.org/v1.0.0/item-search#query\",\n", + " \"https://api.stacspec.org/v1.0.0/item-search#sort\",\n", + " \"https://api.stacspec.org/v1.0.0/ogcapi-features\",\n", + " \"https://api.stacspec.org/v1.0.0/ogcapi-features#fields\",\n", + " \"https://api.stacspec.org/v1.0.0/ogcapi-features#query\",\n", + " \"https://api.stacspec.org/v1.0.0/ogcapi-features#sort\"\n", + " ]\n", + "}\n" + ] + } + ], + "source": [ + "import json\n", + "import os\n", + "\n", + "import httpx\n", + "\n", + "stac_api_endpoint = os.getenv(\"STAC_API_ENDPOINT\")\n", + "\n", + "conformance_response = httpx.get(f\"{stac_api_endpoint}/conformance\").json()\n", + "\n", + "print(json.dumps(conformance_response, indent=2))" + ] + }, + { + "cell_type": "markdown", + "id": "94af52ad-87b1-461c-8d74-fc0158e488e5", + "metadata": {}, + "source": [ + "The result is hard (for a human) to read, but these conformance classes help client applications (like `pystac-client` or STAC Browser) understand the API's capabilities. The list will change as you enable/disable various extensions or endpoints.\n", + "\n", + "
\n", + "Note: If you visit the urls listed in the conformance classes you may get a 404 - this is expected\n", + "
" + ] + }, + { + "cell_type": "markdown", + "id": "09e419d9-42e8-4b4b-9fdc-8d118bcc87c1", + "metadata": {}, + "source": [ + "## 3.2 Collections\n", + "\n", + "The `/collections` endpoint is useful for finding collections in the catalog. To retrieve all collections in the catalog you can simply send a GET request to the `/collections` endpoint. This will return a paginated list (length of each page is set by the `limit` parameter) of all of the collections in the catalog." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "ca0033ed-4898-4c21-8aa9-aaf79fc8d570", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " \"collections\": [\n", + " {\n", + " \"id\": \"hrodmn-sentinel-2-c1-l2a\",\n", + " \"type\": \"Collection\",\n", + " \"links\": [\n", + " {\n", + " \"rel\": \"items\",\n", + " \"type\": \"application/geo+json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a/items\"\n", + " },\n", + " {\n", + " \"rel\": \"parent\",\n", + " \"type\": \"application/json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/\"\n", + " },\n", + " {\n", + " \"rel\": \"root\",\n", + " \"type\": \"application/json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/\"\n", + " },\n", + " {\n", + " \"rel\": \"self\",\n", + " \"type\": \"application/json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a\"\n", + " },\n", + " {\n", + " \"rel\": \"http://www.opengis.net/def/rel/ogc/1.0/queryables\",\n", + " \"type\": \"application/schema+json\",\n", + " \"title\": \"Queryables\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a/queryables\"\n", + " }\n", + " ],\n", + " \"extent\": {\n", + " \"spatial\": {\n", + " \"bbox\": [\n", + " [\n", + " -94.0,\n", + " 45.0,\n", + " -90.0,\n", + " 49.0\n", + " ]\n", + " ]\n", + " },\n", + " \"temporal\": {\n", + " \"interval\": [\n", + " [\n", + " \"2025-01-01T00:00:00Z\",\n", + " \"2025-04-18T00:00:00Z\"\n", + " ]\n", + " ]\n", + " }\n", + " },\n", + " \"license\": \"other\",\n", + " \"description\": \"hrodmn's personal Sentinel-2 L2A collection\",\n", + " \"stac_version\": \"1.1.0\"\n", + " }\n", + " ],\n", + " \"links\": [\n", + " {\n", + " \"rel\": \"root\",\n", + " \"type\": \"application/json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/\"\n", + " },\n", + " {\n", + " \"rel\": \"self\",\n", + " \"type\": \"application/json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections?limit=2\"\n", + " }\n", + " ],\n", + " \"numberMatched\": 1,\n", + " \"numberReturned\": 1\n", + "}\n" + ] + } + ], + "source": [ + "collections_response = httpx.get(\n", + " f\"{stac_api_endpoint}/collections\", params={\"limit\": 2}\n", + ").json()\n", + "\n", + "print(json.dumps(collections_response, indent=2))" + ] + }, + { + "cell_type": "markdown", + "id": "ad74c861-7b4b-491e-9e17-82bcafd1cec4", + "metadata": {}, + "source": [ + "You can retrieve all of a catalog's collection using the `get_all_collections` method from `pystac-client`:" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "48664f4b-453d-47b8-9e3b-24a13c11cfcd", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "hrodmn-sentinel-2-c1-l2a\n" + ] + } + ], + "source": [ + "import pystac_client\n", + "\n", + "client = pystac_client.Client.open(stac_api_endpoint)\n", + "\n", + "collections = list(client.get_all_collections())\n", + "for collection in collections:\n", + " print(collection.id)" + ] + }, + { + "cell_type": "markdown", + "id": "c066ffe0-5506-4268-be8b-26329b4e70fd", + "metadata": {}, + "source": [ + "Some APIs contain many many collections so, if the `collection-search` extension is enabled, it can be helpful to apply filters using the available query parameters like:\n", + "- `q`: free-text search parameter\n", + "- `datetime`: temporal filters\n", + "- `bbox`: spatial filters\n", + "- `filter`: cql2-text filters\n", + "\n", + "To check if any STAC API has the `collection-search` extension enabled, you can look for it in the `/conformance` endpoint response." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "6a463071-ade7-4baf-bba5-500a9304d145", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "https://api.stacspec.org/v1.0.0-rc.1/collection-search\n", + "https://api.stacspec.org/v1.0.0-rc.1/collection-search#fields\n", + "https://api.stacspec.org/v1.0.0-rc.1/collection-search#filter\n", + "https://api.stacspec.org/v1.0.0-rc.1/collection-search#free-text\n", + "https://api.stacspec.org/v1.0.0-rc.1/collection-search#query\n", + "https://api.stacspec.org/v1.0.0-rc.1/collection-search#sort\n" + ] + } + ], + "source": [ + "for conformance_class in conformance_response[\"conformsTo\"]:\n", + " if \"collection-search\" in conformance_class:\n", + " print(conformance_class)" + ] + }, + { + "cell_type": "markdown", + "id": "b03ff54f-0548-443c-86f0-1f064f3fe7cf", + "metadata": {}, + "source": [ + "Since the `collection-search` base conformance class is listed that means we can pass the `bbox` and `datetime` parameters to the `/collections` endpoint. Additional parameters are unlocked by the various extensions that are implemented alongside the `collection-search` extension. For example, you can also see `https://api.stacspec.org/v1.0.0-rc.1/collection-search#filter` which means we can use the `filter` parameter in requests to the `/collections` endpoint!\n", + "\n", + "
\n", + "stac-fastapi-pgstac ships with the `collection-search` extension paired with the `free-text` extension which enables simple text searches against the collection title, description, and keywords fields.\n", + "
\n", + "\n", + "For a nice view of the available query parameters for the `/collections` endpoint, check out the spiffy API documentation that the `stac-fastapi-pgstac` application generates using `FastAPI`." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "8201551a-b51d-4ee5-b238-4fd79547afe1", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from IPython.display import IFrame\n", + "\n", + "IFrame(\n", + " f\"{stac_api_endpoint}/api.html#/default/Get_Collections_collections_get\", 1200, 800\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "5a9f5c87-ef5b-49d3-b6b8-e8fdca6cef1e", + "metadata": {}, + "source": [ + "Try applying the `filter` parameter to do a cql2-text query on the id field to find the collection you created in the `database` exercies.\n", + "\n", + "
\n", + "Tip: Try out the CQL2 Playground to learn how to write cql2-text or cql2-json queries\n", + "
\n", + "\n", + "" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "30844f03-1834-4e93-9494-a59abdc4f651", + "metadata": {}, + "outputs": [ + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "fcdd071aa49345579c299a54f3fd3335", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Text(value='hrodmn', description='username:', placeholder='Enter your username')" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import ipywidgets as widgets\n", + "from IPython.display import display\n", + "\n", + "username_input = widgets.Text(\n", + " value=\"hrodmn\",\n", + " placeholder=\"Enter your username\",\n", + " description=\"username:\",\n", + " disabled=False,\n", + ")\n", + "\n", + "display(username_input)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "8d9d740d-1e2d-45c4-8fcc-1c7cb31a19cc", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"henrydevseed2-sentinel-2-c1-l2a\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " description\n", + " \"henrydevseed2's personal Sentinel-2 L2A collection\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 5 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/henrydevseed2-sentinel-2-c1-l2a/items\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"stac-fastapi\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/henrydevseed2-sentinel-2-c1-l2a\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"http://www.opengis.net/def/rel/ogc/1.0/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/henrydevseed2-sentinel-2-c1-l2a/queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/schema+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Queryables\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " extent\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " spatial\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " bbox[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 4 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -79.0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 36.9\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 2\n", + " -75.0\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 3\n", + " 40.9\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " temporal\n", + "
        \n", + " \n", + " \n", + "
      • \n", + " interval[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " \"2025-01-01T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " \"2025-04-18T00:00:00Z\"\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " license\n", + " \"other\"\n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# using pystac-client\n", + "my_collection_search = client.collection_search(\n", + " filter=f\"id LIKE '%{username_input.value}%'\"\n", + ")\n", + "\n", + "results = my_collection_search.collection_list()\n", + "\n", + "if results:\n", + " my_collection = results[0]\n", + " display(my_collection)" + ] + }, + { + "cell_type": "markdown", + "id": "1d7fe9b0-f05c-4e0b-a24a-e8040b9d09c4", + "metadata": {}, + "source": [ + "
\n", + "Note: If your collection did not appear, try adjusting your collection search terms!\n", + "
" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "5f75438e-cca6-4447-b9cb-f3349ae04c76", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " \"collections\": [\n", + " {\n", + " \"id\": \"hrodmn-sentinel-2-c1-l2a\",\n", + " \"type\": \"Collection\",\n", + " \"links\": [\n", + " {\n", + " \"rel\": \"items\",\n", + " \"type\": \"application/geo+json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a/items\"\n", + " },\n", + " {\n", + " \"rel\": \"parent\",\n", + " \"type\": \"application/json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/\"\n", + " },\n", + " {\n", + " \"rel\": \"root\",\n", + " \"type\": \"application/json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/\"\n", + " },\n", + " {\n", + " \"rel\": \"self\",\n", + " \"type\": \"application/json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a\"\n", + " },\n", + " {\n", + " \"rel\": \"http://www.opengis.net/def/rel/ogc/1.0/queryables\",\n", + " \"type\": \"application/schema+json\",\n", + " \"title\": \"Queryables\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a/queryables\"\n", + " }\n", + " ],\n", + " \"extent\": {\n", + " \"spatial\": {\n", + " \"bbox\": [\n", + " [\n", + " -94.0,\n", + " 45.0,\n", + " -90.0,\n", + " 49.0\n", + " ]\n", + " ]\n", + " },\n", + " \"temporal\": {\n", + " \"interval\": [\n", + " [\n", + " \"2025-01-01T00:00:00Z\",\n", + " \"2025-04-18T00:00:00Z\"\n", + " ]\n", + " ]\n", + " }\n", + " },\n", + " \"license\": \"other\",\n", + " \"description\": \"hrodmn's personal Sentinel-2 L2A collection\",\n", + " \"stac_version\": \"1.1.0\"\n", + " }\n", + " ],\n", + " \"links\": [\n", + " {\n", + " \"rel\": \"root\",\n", + " \"type\": \"application/json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/\"\n", + " },\n", + " {\n", + " \"rel\": \"self\",\n", + " \"type\": \"application/json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections?filter=id+LIKE+%27%25hrodmn%25%27\"\n", + " }\n", + " ],\n", + " \"numberMatched\": 1,\n", + " \"numberReturned\": 1\n", + "}\n" + ] + } + ], + "source": [ + "# using http client\n", + "print(\n", + " json.dumps(\n", + " httpx.get(\n", + " f\"{stac_api_endpoint}/collections\",\n", + " params={\"filter\": \"id LIKE '%hrodmn%'\"},\n", + " ).json(),\n", + " indent=2,\n", + " )\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "7eae366c-977d-45af-bf19-275e67ee8058", + "metadata": {}, + "source": [ + "Now that you found your collection, you have what you need to do an effective item search within your collection! " + ] + }, + { + "cell_type": "markdown", + "id": "56657240-5905-4ddf-a76a-afd2a28959b0", + "metadata": {}, + "source": [ + "## 3.3 Items\n", + "\n", + "Once you have the collection ID there are several ways to perform an effective item search:\n", + "- GET request to `/collections/{collection_id}/items`\n", + "- GET or POST request to `/search`\n", + "\n", + "There are not any particular advantages to either approach unless you want to search for items using an intersection with a geometry in which case you should use a POST request to `/search` with the `intersects` parameter in the request body (instead of url-encoding a geojson!).\n", + "\n", + "Item search request responses will be returned in pages with `{limit}` results. If your search returns more than a single page of results, the next page will be retrievable via the `next` link in the list of `links`." + ] + }, + { + "cell_type": "markdown", + "id": "74d1fb0b-e830-4fb0-8619-f9cfd3019111", + "metadata": {}, + "source": [ + "### 3.3.1 /search\n", + "\n", + "Use the `/search` endpoint to find all items in your collection with a timestamp after April 4, 2025" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "e73a9ef7-d8f8-407d-965e-c549f112899c", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "found 192 items\n" + ] + }, + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Feature\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 10 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/eo/v1.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + " \"https://stac-extensions.github.io/file/v2.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + " \"https://stac-extensions.github.io/grid/v1.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + " \"https://stac-extensions.github.io/mgrs/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + " \"https://stac-extensions.github.io/processing/v1.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 5\n", + " \"https://stac-extensions.github.io/projection/v2.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 6\n", + " \"https://stac-extensions.github.io/raster/v1.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 7\n", + " \"https://stac-extensions.github.io/sentinel-2/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 8\n", + " \"https://stac-extensions.github.io/storage/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 9\n", + " \"https://stac-extensions.github.io/view/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"S2B_T15TXK_20250417T170051_L2A\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " geometry\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " type\n", + " \"Polygon\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " coordinates[] 1 items\n", + " \n", + "
        \n", + " \n", + " \n", + "
      • \n", + " 0[] 5 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -91.04160367127255\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 45.137034349441834\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 1[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -91.37153573660719\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 44.15376770955927\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 2[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -90.37727088068323\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 44.135260005438454\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 3[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -90.33239204379824\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 45.122663184970506\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 4[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -91.04160367127255\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 45.137034349441834\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " bbox[] 4 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " -91.371536\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + " 44.13526\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + " -90.332392\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + " 45.137034\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " properties\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " created\n", + " \"2025-04-17T22:14:12.641Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " updated\n", + " \"2025-04-17T22:14:12.641Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " datetime\n", + " \"2025-04-17T17:01:22.226000Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " platform\n", + " \"sentinel-2b\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " grid:code\n", + " \"MGRS-15TXK\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " proj:code\n", + " \"EPSG:32615\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:tile_id\n", + " \"S2B_OPER_MSI_L2A_TL_2BPS_20250417T205117_A042380_T15TXK_N05.11\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " instruments[] 1 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"msi\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:azimuth\n", + " 106.2286391063633\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " constellation\n", + " \"sentinel-2\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " mgrs:utm_zone\n", + " 15\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " proj:centroid\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " lat\n", + " 44.60973\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " lon\n", + " -90.78602\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " eo:cloud_cover\n", + " 67.094147\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:datatake_id\n", + " \"GS2B_20250417T164839_042380_N05.11\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:product_uri\n", + " \"S2B_MSIL2A_20250417T164839_N0511_R026_T15TXK_20250417T205117.SAFE\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " storage:region\n", + " \"us-west-2\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:datastrip_id\n", + " \"S2B_OPER_MSI_L2A_DS_2BPS_20250417T205117_S20250417T170051_N05.11\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:product_type\n", + " \"S2MSI2A\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " mgrs:grid_square\n", + " \"XK\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:datatake_type\n", + " \"INS-NOBS\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " storage:platform\n", + " \"AWS\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:sun_azimuth\n", + " 153.666198048965\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " mgrs:latitude_band\n", + " \"T\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:generation_time\n", + " \"2025-04-17T20:51:17.000000Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:sun_elevation\n", + " 53.5455128231177\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " processing:software\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " sentinel-2-c1-l2a-to-stac\n", + " \"v2024.02.01\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:water_percentage\n", + " 0.04955\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:incidence_angle\n", + " 9.170521123835382\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " earthsearch:payload_id\n", + " \"roda-sentinel-2-c1-l2a/workflow-sentinel-2-c1-l2a-to-stac/d98c430b8314231290bc2fab4ab5c7a0\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:processing_baseline\n", + " \"05.11\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:snow_ice_percentage\n", + " 0\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " storage:requester_pays\n", + " False\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:vegetation_percentage\n", + " 1.691512\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:thin_cirrus_percentage\n", + " 17.912817\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:cloud_shadow_percentage\n", + " 1.165042\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:nodata_pixel_percentage\n", + " 38.269615\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:unclassified_percentage\n", + " 2.383836\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:not_vegetated_percentage\n", + " 27.563539\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:degraded_msi_data_percentage\n", + " 0.0267\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:high_proba_clouds_percentage\n", + " 34.076107\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:reflectance_conversion_factor\n", + " 0.994711640627317\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:medium_proba_clouds_percentage\n", + " 15.105227\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:saturated_defective_pixel_percentage\n", + " 0\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 7 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"collection\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"stac-fastapi\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a/items/S2B_T15TXK_20250417T170051_L2A\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"canonical\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/S2B_T15TXK_20250417T170051_L2A.json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 5\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"via\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"s3://sentinel-s2-l2a/tiles/15/T/XK/2025/4/17/0/metadata.xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Granule Metadata in Sinergize RODA Archive\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 6\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2B_T15TXK_20250417T170051_L2A/thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " aot\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/AOT.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Aerosol optical thickness (AOT)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 1521584\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220341a3293f1899f00131224dfde2d2b2c2d6e6852594863a6496b25aeff0a7ef9\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " nir\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B08.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"NIR 1 - 10m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B08\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"nir\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.842\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.145\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 131808398\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12208670874ac4e82a6e5a1ff23d5f95f5dbeb371e64d6c2f5ec86f9b2adb2b7600c\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " red\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B04.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red - 10m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B04\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"red\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.665\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.038\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 134108289\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220bc9671d22931eb0d2c0804872e86c923a1d89ca3e74219eebe0b2a07cedcb945\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " scl\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/SCL.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Scene classification map (SCL)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 1645249\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220444630e1ad3a76a6e9724c753fcadaaefc135ce0f5bde094d5374c5b786fb9c2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " wvp\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/WVP.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Water Vapour (WVP)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 10072854\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " unit\n", + " \"cm\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220dcdb9d38ad122aa27649e3080df3c6badc8603a023686484179a5234ff6811c8\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " blue\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B02.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Blue - 10m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B02\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"blue\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.49\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.098\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 134333114\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220117bccd7b673a08dea75610c24bcf86a3d7720160e5d13ad82e654bda505eaf3\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " snow\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/SNW_20m.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Snow Probabilities\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 56824\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"122034c567ebd1c5c3c7b2c2c67aec97278b287b454bf83ad6361e4d7241a62a968a\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"snow-ice\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " cloud\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/CLD_20m.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Cloud Probabilities\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 5207828\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220d5acc6d6ffe9780ed315e2c29204dd90b123f94e66052844d0c56db913ca31c9\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"cloud\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " green\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B03.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Green - 10m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B03\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"green\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.56\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.045\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 133530287\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220c65c0da45550852a9469a8237aca4b80fb717389d339688efb91e856ae18fae5\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " nir08\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B8A.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"NIR 2 - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B8A\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"nir08\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.865\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.033\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 37844394\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12209b0e114a9ced2fcbb8996195c475d6092c97287c00ecda58f481d44e74fd4e58\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " nir09\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B09.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"NIR 3 - 60m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 60\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B09\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"nir09\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.945\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.026\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 4475010\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12209b96b741483cc4dfd09390b2719dead248aebf833bb983fc59456f3b8c61b1bd\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " swir16\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B11.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"SWIR 1.6μm - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B11\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"swir16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 1.61\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.143\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 37368371\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12203cdd3545ee35f230b0e53a1ac40687daa09542c768604da3d5ed39ca33d54bc0\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " swir22\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B12.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"SWIR 2.2μm - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B12\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"swir22\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 2.19\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.242\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 36919364\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220a0f445d1203aad21a6d5a970918331b5ac41dff117200f94b32dad1e42a1a495\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " visual\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/TCI.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"True color image\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B04\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"red\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.665\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.038\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B03\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"green\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.56\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.045\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B02\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"blue\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.49\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.098\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 129302021\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220fe372b2cd7ae6693787ab84a30e4dc1045205f36181a5d141f0ae4595cc3a803\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"visual\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " coastal\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B01.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Coastal - 60m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 60\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B01\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"coastal\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.443\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.027\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 4372913\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12206eba1240cec8cf65bbf1c4b3e238d30ef154f50a65becc3f6ddb0a8be00880ac\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " preview\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/L2A_PVI.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"True color preview\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B04\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"red\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.665\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.038\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B03\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"green\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.56\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.045\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B02\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"blue\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.49\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.098\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 158802\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220d5b775e51e4acb6bc64fa641e13e3d1fab4b087ca1931a6cd512aea22d4d75c4\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"overview\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " rededge1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B05.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red Edge 1 - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B05\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"rededge\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.704\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.019\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 37833718\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"122022573dab24b68dba0a45283a982db1512f9810d2cac6319aa756ebc119c0b079\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " rededge2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B06.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red Edge 2 - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B06\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"rededge\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.74\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.018\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 37837353\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220a9de7d7b59d13bb4327551bd53024f5437bba453250244f7a02074e7626c2953\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " rededge3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B07.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red Edge 3 - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B07\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"rededge\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.783\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.028\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 37865807\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"122056daf1949f9dd838b5b8d8042b98fb543192ba0f9ab4c9b82dcc32b16ce12989\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 600000\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5000040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/L2A_PVI.jpg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail of preview image\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 27914\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220b7a5d2409293ba9437913e9a808a7edaf20e99ef3fbad6e07c8eec65d05b2515\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " granule_metadata\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/metadata.xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 369199\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12205fdeb80dfbe1a6843c2d8b69b0b3b0831a741179b79e10af7678420e2dc74dbe\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"metadata\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " product_metadata\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/product_metadata.xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 55001\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220e9e1e841fb6278e8dc0b49d429e99be15613a93ce1c912322485bf1b16600475\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"metadata\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " tileinfo_metadata\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/tileInfo.json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 1514\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12207874af8e014f1b08ef672a25ecc1255423922aba0e11596df89e81d09424158e\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"metadata\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " collection\n", + " \"hrodmn-sentinel-2-c1-l2a\"\n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from datetime import datetime, timezone\n", + "\n", + "search = client.search(\n", + " collections=[my_collection.id],\n", + " datetime=[datetime(2025, 4, 4), None],\n", + ")\n", + "\n", + "items = search.item_collection()\n", + "\n", + "print(f\"found {len(items)} items\")\n", + "items[0]" + ] + }, + { + "cell_type": "markdown", + "id": "3e504a62-0c1e-4f00-aa54-e286252c493b", + "metadata": {}, + "source": [ + "The same query can be made with an HTTP client:" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "57405533-6bbf-402c-9b26-99b97ab234ec", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " \"type\": \"FeatureCollection\",\n", + " \"links\": [\n", + " {\n", + " \"rel\": \"next\",\n", + " \"type\": \"application/geo+json\",\n", + " \"method\": \"GET\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/search?collections=hrodmn-sentinel-2-c1-l2a&datetime=2025-04-04T00:00:00+00:00/..&limit=1&token=next:hrodmn-sentinel-2-c1-l2a:S2B_T15TXK_20250417T170051_L2A\"\n", + " },\n", + " {\n", + " \"rel\": \"root\",\n", + " \"type\": \"application/json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/\"\n", + " },\n", + " {\n", + " \"rel\": \"self\",\n", + " \"type\": \"application/json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/search?collections=hrodmn-sentinel-2-c1-l2a&datetime=2025-04-04T00%3A00%3A00%2B00%3A00%2F..&limit=1\"\n", + " }\n", + " ],\n", + " \"features\": [\n", + " {\n", + " \"id\": \"S2B_T15TXK_20250417T170051_L2A\",\n", + " \"bbox\": [\n", + " -91.371536,\n", + " 44.13526,\n", + " -90.332392,\n", + " 45.137034\n", + " ],\n", + " \"type\": \"Feature\",\n", + " \"links\": [\n", + " {\n", + " \"rel\": \"collection\",\n", + " \"type\": \"application/json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a\"\n", + " },\n", + " {\n", + " \"rel\": \"parent\",\n", + " \"type\": \"application/json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a\"\n", + " },\n", + " {\n", + " \"rel\": \"root\",\n", + " \"type\": \"application/json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/\"\n", + " },\n", + " {\n", + " \"rel\": \"self\",\n", + " \"type\": \"application/geo+json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a/items/S2B_T15TXK_20250417T170051_L2A\"\n", + " },\n", + " {\n", + " \"rel\": \"canonical\",\n", + " \"href\": \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/S2B_T15TXK_20250417T170051_L2A.json\",\n", + " \"type\": \"application/json\"\n", + " },\n", + " {\n", + " \"rel\": \"via\",\n", + " \"href\": \"s3://sentinel-s2-l2a/tiles/15/T/XK/2025/4/17/0/metadata.xml\",\n", + " \"type\": \"application/xml\",\n", + " \"title\": \"Granule Metadata in Sinergize RODA Archive\"\n", + " },\n", + " {\n", + " \"rel\": \"thumbnail\",\n", + " \"href\": \"https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2B_T15TXK_20250417T170051_L2A/thumbnail\"\n", + " }\n", + " ],\n", + " \"assets\": {\n", + " \"aot\": {\n", + " \"gsd\": 20,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/AOT.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\"\n", + " ],\n", + " \"title\": \"Aerosol optical thickness (AOT)\",\n", + " \"file:size\": 1521584,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.001,\n", + " \"nodata\": 0,\n", + " \"offset\": 0,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"1220341a3293f1899f00131224dfde2d2b2c2d6e6852594863a6496b25aeff0a7ef9\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 600000,\n", + " 0,\n", + " -20,\n", + " 5000040\n", + " ]\n", + " },\n", + " \"nir\": {\n", + " \"gsd\": 10,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B08.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"NIR 1 - 10m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B08\",\n", + " \"common_name\": \"nir\",\n", + " \"center_wavelength\": 0.842,\n", + " \"full_width_half_max\": 0.145\n", + " }\n", + " ],\n", + " \"file:size\": 131808398,\n", + " \"proj:shape\": [\n", + " 10980,\n", + " 10980\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 10\n", + " }\n", + " ],\n", + " \"file:checksum\": \"12208670874ac4e82a6e5a1ff23d5f95f5dbeb371e64d6c2f5ec86f9b2adb2b7600c\",\n", + " \"proj:transform\": [\n", + " 10,\n", + " 0,\n", + " 600000,\n", + " 0,\n", + " -10,\n", + " 5000040\n", + " ]\n", + " },\n", + " \"red\": {\n", + " \"gsd\": 10,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B04.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"Red - 10m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B04\",\n", + " \"common_name\": \"red\",\n", + " \"center_wavelength\": 0.665,\n", + " \"full_width_half_max\": 0.038\n", + " }\n", + " ],\n", + " \"file:size\": 134108289,\n", + " \"proj:shape\": [\n", + " 10980,\n", + " 10980\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 10\n", + " }\n", + " ],\n", + " \"file:checksum\": \"1220bc9671d22931eb0d2c0804872e86c923a1d89ca3e74219eebe0b2a07cedcb945\",\n", + " \"proj:transform\": [\n", + " 10,\n", + " 0,\n", + " 600000,\n", + " 0,\n", + " -10,\n", + " 5000040\n", + " ]\n", + " },\n", + " \"scl\": {\n", + " \"gsd\": 20,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/SCL.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\"\n", + " ],\n", + " \"title\": \"Scene classification map (SCL)\",\n", + " \"file:size\": 1645249,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"nodata\": 0,\n", + " \"data_type\": \"uint8\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"1220444630e1ad3a76a6e9724c753fcadaaefc135ce0f5bde094d5374c5b786fb9c2\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 600000,\n", + " 0,\n", + " -20,\n", + " 5000040\n", + " ]\n", + " },\n", + " \"wvp\": {\n", + " \"gsd\": 20,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/WVP.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\"\n", + " ],\n", + " \"title\": \"Water Vapour (WVP)\",\n", + " \"file:size\": 10072854,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"unit\": \"cm\",\n", + " \"scale\": 0.001,\n", + " \"nodata\": 0,\n", + " \"offset\": 0,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"1220dcdb9d38ad122aa27649e3080df3c6badc8603a023686484179a5234ff6811c8\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 600000,\n", + " 0,\n", + " -20,\n", + " 5000040\n", + " ]\n", + " },\n", + " \"blue\": {\n", + " \"gsd\": 10,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B02.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"Blue - 10m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B02\",\n", + " \"common_name\": \"blue\",\n", + " \"center_wavelength\": 0.49,\n", + " \"full_width_half_max\": 0.098\n", + " }\n", + " ],\n", + " \"file:size\": 134333114,\n", + " \"proj:shape\": [\n", + " 10980,\n", + " 10980\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 10\n", + " }\n", + " ],\n", + " \"file:checksum\": \"1220117bccd7b673a08dea75610c24bcf86a3d7720160e5d13ad82e654bda505eaf3\",\n", + " \"proj:transform\": [\n", + " 10,\n", + " 0,\n", + " 600000,\n", + " 0,\n", + " -10,\n", + " 5000040\n", + " ]\n", + " },\n", + " \"snow\": {\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/SNW_20m.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"snow-ice\"\n", + " ],\n", + " \"title\": \"Snow Probabilities\",\n", + " \"file:size\": 56824,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"nodata\": 0,\n", + " \"data_type\": \"uint8\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"122034c567ebd1c5c3c7b2c2c67aec97278b287b454bf83ad6361e4d7241a62a968a\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 600000,\n", + " 0,\n", + " -20,\n", + " 5000040\n", + " ]\n", + " },\n", + " \"cloud\": {\n", + " \"gsd\": 20,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/CLD_20m.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"cloud\"\n", + " ],\n", + " \"title\": \"Cloud Probabilities\",\n", + " \"file:size\": 5207828,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"nodata\": 0,\n", + " \"data_type\": \"uint8\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"1220d5acc6d6ffe9780ed315e2c29204dd90b123f94e66052844d0c56db913ca31c9\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 600000,\n", + " 0,\n", + " -20,\n", + " 5000040\n", + " ]\n", + " },\n", + " \"green\": {\n", + " \"gsd\": 10,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B03.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"Green - 10m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B03\",\n", + " \"common_name\": \"green\",\n", + " \"center_wavelength\": 0.56,\n", + " \"full_width_half_max\": 0.045\n", + " }\n", + " ],\n", + " \"file:size\": 133530287,\n", + " \"proj:shape\": [\n", + " 10980,\n", + " 10980\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 10\n", + " }\n", + " ],\n", + " \"file:checksum\": \"1220c65c0da45550852a9469a8237aca4b80fb717389d339688efb91e856ae18fae5\",\n", + " \"proj:transform\": [\n", + " 10,\n", + " 0,\n", + " 600000,\n", + " 0,\n", + " -10,\n", + " 5000040\n", + " ]\n", + " },\n", + " \"nir08\": {\n", + " \"gsd\": 20,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B8A.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"NIR 2 - 20m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B8A\",\n", + " \"common_name\": \"nir08\",\n", + " \"center_wavelength\": 0.865,\n", + " \"full_width_half_max\": 0.033\n", + " }\n", + " ],\n", + " \"file:size\": 37844394,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"12209b0e114a9ced2fcbb8996195c475d6092c97287c00ecda58f481d44e74fd4e58\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 600000,\n", + " 0,\n", + " -20,\n", + " 5000040\n", + " ]\n", + " },\n", + " \"nir09\": {\n", + " \"gsd\": 60,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B09.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"NIR 3 - 60m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B09\",\n", + " \"common_name\": \"nir09\",\n", + " \"center_wavelength\": 0.945,\n", + " \"full_width_half_max\": 0.026\n", + " }\n", + " ],\n", + " \"file:size\": 4475010,\n", + " \"proj:shape\": [\n", + " 1830,\n", + " 1830\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 60\n", + " }\n", + " ],\n", + " \"file:checksum\": \"12209b96b741483cc4dfd09390b2719dead248aebf833bb983fc59456f3b8c61b1bd\",\n", + " \"proj:transform\": [\n", + " 60,\n", + " 0,\n", + " 600000,\n", + " 0,\n", + " -60,\n", + " 5000040\n", + " ]\n", + " },\n", + " \"swir16\": {\n", + " \"gsd\": 20,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B11.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"SWIR 1.6\\u03bcm - 20m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B11\",\n", + " \"common_name\": \"swir16\",\n", + " \"center_wavelength\": 1.61,\n", + " \"full_width_half_max\": 0.143\n", + " }\n", + " ],\n", + " \"file:size\": 37368371,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"12203cdd3545ee35f230b0e53a1ac40687daa09542c768604da3d5ed39ca33d54bc0\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 600000,\n", + " 0,\n", + " -20,\n", + " 5000040\n", + " ]\n", + " },\n", + " \"swir22\": {\n", + " \"gsd\": 20,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B12.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"SWIR 2.2\\u03bcm - 20m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B12\",\n", + " \"common_name\": \"swir22\",\n", + " \"center_wavelength\": 2.19,\n", + " \"full_width_half_max\": 0.242\n", + " }\n", + " ],\n", + " \"file:size\": 36919364,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"1220a0f445d1203aad21a6d5a970918331b5ac41dff117200f94b32dad1e42a1a495\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 600000,\n", + " 0,\n", + " -20,\n", + " 5000040\n", + " ]\n", + " },\n", + " \"visual\": {\n", + " \"gsd\": 10,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/TCI.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"visual\"\n", + " ],\n", + " \"title\": \"True color image\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B04\",\n", + " \"common_name\": \"red\",\n", + " \"center_wavelength\": 0.665,\n", + " \"full_width_half_max\": 0.038\n", + " },\n", + " {\n", + " \"name\": \"B03\",\n", + " \"common_name\": \"green\",\n", + " \"center_wavelength\": 0.56,\n", + " \"full_width_half_max\": 0.045\n", + " },\n", + " {\n", + " \"name\": \"B02\",\n", + " \"common_name\": \"blue\",\n", + " \"center_wavelength\": 0.49,\n", + " \"full_width_half_max\": 0.098\n", + " }\n", + " ],\n", + " \"file:size\": 129302021,\n", + " \"proj:shape\": [\n", + " 10980,\n", + " 10980\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"nodata\": 0,\n", + " \"data_type\": \"uint8\",\n", + " \"spatial_resolution\": 10\n", + " },\n", + " {\n", + " \"nodata\": 0,\n", + " \"data_type\": \"uint8\",\n", + " \"spatial_resolution\": 10\n", + " },\n", + " {\n", + " \"nodata\": 0,\n", + " \"data_type\": \"uint8\",\n", + " \"spatial_resolution\": 10\n", + " }\n", + " ],\n", + " \"file:checksum\": \"1220fe372b2cd7ae6693787ab84a30e4dc1045205f36181a5d141f0ae4595cc3a803\",\n", + " \"proj:transform\": [\n", + " 10,\n", + " 0,\n", + " 600000,\n", + " 0,\n", + " -10,\n", + " 5000040\n", + " ]\n", + " },\n", + " \"coastal\": {\n", + " \"gsd\": 60,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B01.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"Coastal - 60m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B01\",\n", + " \"common_name\": \"coastal\",\n", + " \"center_wavelength\": 0.443,\n", + " \"full_width_half_max\": 0.027\n", + " }\n", + " ],\n", + " \"file:size\": 4372913,\n", + " \"proj:shape\": [\n", + " 1830,\n", + " 1830\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 60\n", + " }\n", + " ],\n", + " \"file:checksum\": \"12206eba1240cec8cf65bbf1c4b3e238d30ef154f50a65becc3f6ddb0a8be00880ac\",\n", + " \"proj:transform\": [\n", + " 60,\n", + " 0,\n", + " 600000,\n", + " 0,\n", + " -60,\n", + " 5000040\n", + " ]\n", + " },\n", + " \"preview\": {\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/L2A_PVI.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"overview\"\n", + " ],\n", + " \"title\": \"True color preview\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B04\",\n", + " \"common_name\": \"red\",\n", + " \"center_wavelength\": 0.665,\n", + " \"full_width_half_max\": 0.038\n", + " },\n", + " {\n", + " \"name\": \"B03\",\n", + " \"common_name\": \"green\",\n", + " \"center_wavelength\": 0.56,\n", + " \"full_width_half_max\": 0.045\n", + " },\n", + " {\n", + " \"name\": \"B02\",\n", + " \"common_name\": \"blue\",\n", + " \"center_wavelength\": 0.49,\n", + " \"full_width_half_max\": 0.098\n", + " }\n", + " ],\n", + " \"file:size\": 158802,\n", + " \"file:checksum\": \"1220d5b775e51e4acb6bc64fa641e13e3d1fab4b087ca1931a6cd512aea22d4d75c4\"\n", + " },\n", + " \"rededge1\": {\n", + " \"gsd\": 20,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B05.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"Red Edge 1 - 20m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B05\",\n", + " \"common_name\": \"rededge\",\n", + " \"center_wavelength\": 0.704,\n", + " \"full_width_half_max\": 0.019\n", + " }\n", + " ],\n", + " \"file:size\": 37833718,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"122022573dab24b68dba0a45283a982db1512f9810d2cac6319aa756ebc119c0b079\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 600000,\n", + " 0,\n", + " -20,\n", + " 5000040\n", + " ]\n", + " },\n", + " \"rededge2\": {\n", + " \"gsd\": 20,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B06.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"Red Edge 2 - 20m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B06\",\n", + " \"common_name\": \"rededge\",\n", + " \"center_wavelength\": 0.74,\n", + " \"full_width_half_max\": 0.018\n", + " }\n", + " ],\n", + " \"file:size\": 37837353,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"1220a9de7d7b59d13bb4327551bd53024f5437bba453250244f7a02074e7626c2953\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 600000,\n", + " 0,\n", + " -20,\n", + " 5000040\n", + " ]\n", + " },\n", + " \"rededge3\": {\n", + " \"gsd\": 20,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/B07.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"Red Edge 3 - 20m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B07\",\n", + " \"common_name\": \"rededge\",\n", + " \"center_wavelength\": 0.783,\n", + " \"full_width_half_max\": 0.028\n", + " }\n", + " ],\n", + " \"file:size\": 37865807,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"122056daf1949f9dd838b5b8d8042b98fb543192ba0f9ab4c9b82dcc32b16ce12989\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 600000,\n", + " 0,\n", + " -20,\n", + " 5000040\n", + " ]\n", + " },\n", + " \"thumbnail\": {\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/L2A_PVI.jpg\",\n", + " \"type\": \"image/jpeg\",\n", + " \"roles\": [\n", + " \"thumbnail\"\n", + " ],\n", + " \"title\": \"Thumbnail of preview image\",\n", + " \"file:size\": 27914,\n", + " \"file:checksum\": \"1220b7a5d2409293ba9437913e9a808a7edaf20e99ef3fbad6e07c8eec65d05b2515\"\n", + " },\n", + " \"granule_metadata\": {\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/metadata.xml\",\n", + " \"type\": \"application/xml\",\n", + " \"roles\": [\n", + " \"metadata\"\n", + " ],\n", + " \"file:size\": 369199,\n", + " \"file:checksum\": \"12205fdeb80dfbe1a6843c2d8b69b0b3b0831a741179b79e10af7678420e2dc74dbe\"\n", + " },\n", + " \"product_metadata\": {\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/product_metadata.xml\",\n", + " \"type\": \"application/xml\",\n", + " \"roles\": [\n", + " \"metadata\"\n", + " ],\n", + " \"file:size\": 55001,\n", + " \"file:checksum\": \"1220e9e1e841fb6278e8dc0b49d429e99be15613a93ce1c912322485bf1b16600475\"\n", + " },\n", + " \"tileinfo_metadata\": {\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/XK/2025/4/S2B_T15TXK_20250417T170051_L2A/tileInfo.json\",\n", + " \"type\": \"application/json\",\n", + " \"roles\": [\n", + " \"metadata\"\n", + " ],\n", + " \"file:size\": 1514,\n", + " \"file:checksum\": \"12207874af8e014f1b08ef672a25ecc1255423922aba0e11596df89e81d09424158e\"\n", + " }\n", + " },\n", + " \"geometry\": {\n", + " \"type\": \"Polygon\",\n", + " \"coordinates\": [\n", + " [\n", + " [\n", + " -91.04160367127255,\n", + " 45.137034349441834\n", + " ],\n", + " [\n", + " -91.37153573660719,\n", + " 44.15376770955927\n", + " ],\n", + " [\n", + " -90.37727088068323,\n", + " 44.135260005438454\n", + " ],\n", + " [\n", + " -90.33239204379824,\n", + " 45.122663184970506\n", + " ],\n", + " [\n", + " -91.04160367127255,\n", + " 45.137034349441834\n", + " ]\n", + " ]\n", + " ]\n", + " },\n", + " \"collection\": \"hrodmn-sentinel-2-c1-l2a\",\n", + " \"properties\": {\n", + " \"created\": \"2025-04-17T22:14:12.641Z\",\n", + " \"updated\": \"2025-04-17T22:14:12.641Z\",\n", + " \"datetime\": \"2025-04-17T17:01:22.226000Z\",\n", + " \"platform\": \"sentinel-2b\",\n", + " \"grid:code\": \"MGRS-15TXK\",\n", + " \"proj:code\": \"EPSG:32615\",\n", + " \"s2:tile_id\": \"S2B_OPER_MSI_L2A_TL_2BPS_20250417T205117_A042380_T15TXK_N05.11\",\n", + " \"instruments\": [\n", + " \"msi\"\n", + " ],\n", + " \"view:azimuth\": 106.2286391063633,\n", + " \"constellation\": \"sentinel-2\",\n", + " \"mgrs:utm_zone\": 15,\n", + " \"proj:centroid\": {\n", + " \"lat\": 44.60973,\n", + " \"lon\": -90.78602\n", + " },\n", + " \"eo:cloud_cover\": 67.094147,\n", + " \"s2:datatake_id\": \"GS2B_20250417T164839_042380_N05.11\",\n", + " \"s2:product_uri\": \"S2B_MSIL2A_20250417T164839_N0511_R026_T15TXK_20250417T205117.SAFE\",\n", + " \"storage:region\": \"us-west-2\",\n", + " \"s2:datastrip_id\": \"S2B_OPER_MSI_L2A_DS_2BPS_20250417T205117_S20250417T170051_N05.11\",\n", + " \"s2:product_type\": \"S2MSI2A\",\n", + " \"mgrs:grid_square\": \"XK\",\n", + " \"s2:datatake_type\": \"INS-NOBS\",\n", + " \"storage:platform\": \"AWS\",\n", + " \"view:sun_azimuth\": 153.666198048965,\n", + " \"mgrs:latitude_band\": \"T\",\n", + " \"s2:generation_time\": \"2025-04-17T20:51:17.000000Z\",\n", + " \"view:sun_elevation\": 53.5455128231177,\n", + " \"processing:software\": {\n", + " \"sentinel-2-c1-l2a-to-stac\": \"v2024.02.01\"\n", + " },\n", + " \"s2:water_percentage\": 0.04955,\n", + " \"view:incidence_angle\": 9.170521123835382,\n", + " \"earthsearch:payload_id\": \"roda-sentinel-2-c1-l2a/workflow-sentinel-2-c1-l2a-to-stac/d98c430b8314231290bc2fab4ab5c7a0\",\n", + " \"s2:processing_baseline\": \"05.11\",\n", + " \"s2:snow_ice_percentage\": 0,\n", + " \"storage:requester_pays\": false,\n", + " \"s2:vegetation_percentage\": 1.691512,\n", + " \"s2:thin_cirrus_percentage\": 17.912817,\n", + " \"s2:cloud_shadow_percentage\": 1.165042,\n", + " \"s2:nodata_pixel_percentage\": 38.269615,\n", + " \"s2:unclassified_percentage\": 2.383836,\n", + " \"s2:not_vegetated_percentage\": 27.563539,\n", + " \"s2:degraded_msi_data_percentage\": 0.0267,\n", + " \"s2:high_proba_clouds_percentage\": 34.076107,\n", + " \"s2:reflectance_conversion_factor\": 0.994711640627317,\n", + " \"s2:medium_proba_clouds_percentage\": 15.105227,\n", + " \"s2:saturated_defective_pixel_percentage\": 0\n", + " },\n", + " \"stac_version\": \"1.1.0\",\n", + " \"stac_extensions\": [\n", + " \"https://stac-extensions.github.io/eo/v1.1.0/schema.json\",\n", + " \"https://stac-extensions.github.io/file/v2.1.0/schema.json\",\n", + " \"https://stac-extensions.github.io/grid/v1.1.0/schema.json\",\n", + " \"https://stac-extensions.github.io/mgrs/v1.0.0/schema.json\",\n", + " \"https://stac-extensions.github.io/processing/v1.1.0/schema.json\",\n", + " \"https://stac-extensions.github.io/projection/v2.0.0/schema.json\",\n", + " \"https://stac-extensions.github.io/raster/v1.1.0/schema.json\",\n", + " \"https://stac-extensions.github.io/sentinel-2/v1.0.0/schema.json\",\n", + " \"https://stac-extensions.github.io/storage/v1.0.0/schema.json\",\n", + " \"https://stac-extensions.github.io/view/v1.0.0/schema.json\"\n", + " ]\n", + " }\n", + " ],\n", + " \"numberReturned\": 1\n", + "}\n" + ] + } + ], + "source": [ + "datetime_string = datetime(2025, 4, 4, tzinfo=timezone.utc).isoformat()\n", + "\n", + "item_search_request = httpx.get(\n", + " f\"{stac_api_endpoint}/search\",\n", + " params={\n", + " \"collections\": my_collection.id,\n", + " \"datetime\": f\"{datetime_string}/..\", # open interval from 2025-04-04 forward\n", + " \"limit\": 1, # one result per page for brevity in this example\n", + " },\n", + ")\n", + "\n", + "print(json.dumps(item_search_request.json(), indent=2))" + ] + }, + { + "cell_type": "markdown", + "id": "3625785f-8aca-4465-93bc-3c1370c0e2fb", + "metadata": {}, + "source": [ + "stac-fastapi-pgstac constructs the `next` link using a token that it can pass to a `pgstac` query to retrieve the next page of results from this search. STAC API clients like `pystac-client` use these links to concatenate paginated results without any additional input from the user." + ] + }, + { + "cell_type": "markdown", + "id": "87cf6d06-94f7-4925-8652-79008ad0e0d3", + "metadata": {}, + "source": [ + "Now limit the search to items where `eo:cloud_cover` is less than 10" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "e117cea2-8bf2-49cf-9d36-aba3e709d819", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "found 26 items\n" + ] + }, + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Feature\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 10 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/eo/v1.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + " \"https://stac-extensions.github.io/file/v2.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + " \"https://stac-extensions.github.io/grid/v1.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + " \"https://stac-extensions.github.io/mgrs/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + " \"https://stac-extensions.github.io/processing/v1.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 5\n", + " \"https://stac-extensions.github.io/projection/v2.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 6\n", + " \"https://stac-extensions.github.io/raster/v1.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 7\n", + " \"https://stac-extensions.github.io/sentinel-2/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 8\n", + " \"https://stac-extensions.github.io/storage/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 9\n", + " \"https://stac-extensions.github.io/view/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"S2C_T15TYN_20250405T170744_L2A\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " geometry\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " type\n", + " \"Polygon\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " coordinates[] 1 items\n", + " \n", + "
        \n", + " \n", + " \n", + "
      • \n", + " 0[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -90.32844768972834\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 47.82259826105771\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 1[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -90.3777470468981\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 46.8365633798398\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 2[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -88.99111297937203\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 46.79688934539384\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 3[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -88.93025472854615\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 46.93558095804399\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 4[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -88.8647555514546\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 47.77914857827219\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 5[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -90.32844768972834\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 47.82259826105771\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " bbox[] 4 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " -90.377747\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + " 46.796889\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + " -88.864756\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + " 47.822598\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " properties\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " created\n", + " \"2025-04-06T01:50:15.139Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " updated\n", + " \"2025-04-06T01:50:15.139Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " datetime\n", + " \"2025-04-05T17:10:52.788000Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " platform\n", + " \"sentinel-2c\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " grid:code\n", + " \"MGRS-15TYN\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " proj:code\n", + " \"EPSG:32615\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:tile_id\n", + " \"S2C_OPER_MSI_L2A_TL_2CPS_20250406T002104_A003042_T15TYN_N05.11\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " instruments[] 1 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"msi\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:azimuth\n", + " 287.59516662558\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " constellation\n", + " \"sentinel-2\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " mgrs:utm_zone\n", + " 15\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " proj:centroid\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " lat\n", + " 47.31114\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " lon\n", + " -89.62977\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " eo:cloud_cover\n", + " 3.254845\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:datatake_id\n", + " \"GS2C_20250405T165921_003042_N05.11\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:product_uri\n", + " \"S2C_MSIL2A_20250405T165921_N0511_R069_T15TYN_20250406T002104.SAFE\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " storage:region\n", + " \"us-west-2\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:datastrip_id\n", + " \"S2C_OPER_MSI_L2A_DS_2CPS_20250406T002104_S20250405T170744_N05.11\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:product_type\n", + " \"S2MSI2A\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " mgrs:grid_square\n", + " \"YN\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:datatake_type\n", + " \"INS-NOBS\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " storage:platform\n", + " \"AWS\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:sun_azimuth\n", + " 161.31780384615\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " mgrs:latitude_band\n", + " \"T\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:generation_time\n", + " \"2025-04-06T00:21:04.000000Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:sun_elevation\n", + " 47.6630357828789\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " processing:software\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " sentinel-2-c1-l2a-to-stac\n", + " \"v2024.02.01\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:water_percentage\n", + " 93.606454\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:incidence_angle\n", + " 6.8545786960651\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " earthsearch:payload_id\n", + " \"roda-sentinel-2-c1-l2a/workflow-sentinel-2-c1-l2a-to-stac/128a6faa0a4928dc43c7dd5f73c1f078\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:processing_baseline\n", + " \"05.11\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:snow_ice_percentage\n", + " 1.315435\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " storage:requester_pays\n", + " False\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:vegetation_percentage\n", + " 0.061231\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:thin_cirrus_percentage\n", + " 1.202452\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:cloud_shadow_percentage\n", + " 1.663127\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:nodata_pixel_percentage\n", + " 0.243981\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:unclassified_percentage\n", + " 0.00586\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:not_vegetated_percentage\n", + " 0.085913\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:degraded_msi_data_percentage\n", + " 0.0218\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:high_proba_clouds_percentage\n", + " 0.910074\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:reflectance_conversion_factor\n", + " 1.00157117583904\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:medium_proba_clouds_percentage\n", + " 1.142319\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:saturated_defective_pixel_percentage\n", + " 0\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 7 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"collection\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"stac-fastapi\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a/items/S2C_T15TYN_20250405T170744_L2A\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/geo+json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"canonical\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/S2C_T15TYN_20250405T170744_L2A.json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 5\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"via\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"s3://sentinel-s2-l2a/tiles/15/T/YN/2025/4/5/0/metadata.xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Granule Metadata in Sinergize RODA Archive\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 6\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2C_T15TYN_20250405T170744_L2A/thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " aot\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/AOT.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Aerosol optical thickness (AOT)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 418756\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12209fb888971bf5f96d7b15e2ca6b42aa703d6e8b3c9f52ee3b66534d2156bf8aa0\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 699960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " nir\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/B08.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"NIR 1 - 10m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B08\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"nir\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.842\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.145\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 164993188\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220884e2c25868481d520243d565464857d2a3a1fe86f7bdabcb2d401f10d02f478\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 699960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " red\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/B04.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red - 10m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B04\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"red\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.665\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.038\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 166387974\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"122011fd621b56b14b84af922d7a6f63b455c17d0b88f1aed574a76a71f3c61c88f0\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 699960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " scl\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/SCL.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Scene classification map (SCL)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 449540\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220e6e0482b5cceca29a0fd2e8f96319d642a9920ea8b27178098c607c151fc2b09\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 699960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " wvp\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/WVP.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Water Vapour (WVP)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 1059676\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " unit\n", + " \"cm\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12206974c59c8ba73acc9636b04840bc84983b9845969795bf7d901d62df995107a2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 699960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " blue\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/B02.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Blue - 10m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B02\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"blue\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.49\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.098\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 172000130\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"122040f04ae65beb847cb34d07a708e6c1df8d8d522126ebca263c51cbe9090667ed\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 699960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " snow\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/SNW_20m.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Snow Probabilities\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 1024272\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220e0e6d8118b3c45c25f4f130967b1b86ef3ad0daf5fa1fddb16ccdcebb3157a4e\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 699960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"snow-ice\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " cloud\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/CLD_20m.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Cloud Probabilities\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 525898\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12200b0f2f01f2b7a2136bad8037b6b6cbdd2ea634116eb6adf56adf67ac9f471b59\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 699960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"cloud\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " green\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/B03.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Green - 10m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B03\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"green\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.56\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.045\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 169995387\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12202cf86f36356c82fddd3697f656fd139411e4d96bb009e5f6eb80619df3acf51a\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 699960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " nir08\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/B8A.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"NIR 2 - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B8A\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"nir08\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.865\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.033\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 37728468\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12202593f4190da2965432dc1bfbcefd2a0afd2db6038a3974dbcdc6a2eb498d02b8\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 699960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " nir09\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/B09.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"NIR 3 - 60m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 60\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B09\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"nir09\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.945\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.026\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 3390982\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12205874eda133a898516d1ec01f33dfc63bcf64a88838d8a7214e2e57c8ce41f987\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 699960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " swir16\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/B11.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"SWIR 1.6μm - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B11\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"swir16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 1.61\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.143\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 34324888\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220db441ec790face09bd04a9a37656384d4213896d059b8d3b532e65c1cae030d3\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 699960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " swir22\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/B12.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"SWIR 2.2μm - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B12\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"swir22\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 2.19\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.242\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 33903543\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12207c8274dbe42cdcc10787cdc0b39f176623f5d7760d910b77bf618e8c66c6c1a8\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 699960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " visual\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/TCI.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"True color image\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B04\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"red\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.665\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.038\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B03\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"green\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.56\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.045\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B02\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"blue\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.49\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.098\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 201474106\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220ef44147c3a8f03054a312939cd6e0f7c4c4992897995f15bc9d3ce5ec13707d5\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 699960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"visual\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " coastal\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/B01.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Coastal - 60m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 60\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B01\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"coastal\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.443\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.027\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 3391423\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12203e3eae248ec0e64cd7a99ac0c71943572b467a2521e1019cd0c60c4a2631b18b\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 699960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " preview\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/L2A_PVI.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"True color preview\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B04\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"red\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.665\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.038\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B03\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"green\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.56\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.045\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B02\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"blue\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.49\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.098\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 94673\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"122099f2d3e294db7ba6713cb764a6efadcf2403d671f4c40c4251c82f6669c2c861\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"overview\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " rededge1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/B05.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red Edge 1 - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B05\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"rededge\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.704\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.019\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 38077415\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12208c3c118d253f36d47dcb820074b5f79cb5f41302f6ea2cd8f0bf373d8ee8a988\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 699960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " rededge2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/B06.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red Edge 2 - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B06\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"rededge\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.74\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.018\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 37708940\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12202380c483ece897772287c38da4733bd5188458061846d9353185695ee6880ba5\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 699960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " rededge3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/B07.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red Edge 3 - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B07\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"rededge\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.783\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.028\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 37731280\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12206e3f7b596bd10d45512557f2d0d44586ff0e6f65aa31ccd71e624af4b321abab\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 699960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/L2A_PVI.jpg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail of preview image\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 9169\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220ba1b3c468d803596552dadfcbd26dc6fae74c1d9ac0417badd2eec732714038d\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " granule_metadata\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/metadata.xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 547898\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220f2fc27320f466ec05a6e0c69705428f7a3175a033e8885e52acc09444c00ad30\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"metadata\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " product_metadata\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/product_metadata.xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 58675\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220e3fcb5a9523c803d722f2031f9ed50ad0dd4f5908a72f48d5722fd1e777d175d\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"metadata\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " tileinfo_metadata\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/YN/2025/4/S2C_T15TYN_20250405T170744_L2A/tileInfo.json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 1545\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12205f0fc76ea9529306fe9c7baa6b541ce3161ccd674c45ddf554ad9c01ba749755\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"metadata\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " collection\n", + " \"hrodmn-sentinel-2-c1-l2a\"\n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "search = client.search(\n", + " collections=[my_collection.id],\n", + " datetime=[datetime(2025, 4, 4), None],\n", + " filter={\n", + " \"op\": \"lt\",\n", + " \"args\": [\n", + " {\"property\": \"eo:cloud_cover\"},\n", + " 10,\n", + " ],\n", + " },\n", + ")\n", + "\n", + "items = search.item_collection()\n", + "\n", + "print(f\"found {len(items)} items\")\n", + "items[-1]" + ] + }, + { + "cell_type": "markdown", + "id": "61d01f82-94f8-4071-b398-2508bc84c56a", + "metadata": {}, + "source": [ + "### 3.3.2 /collections/{collection_id}/items\n", + "\n", + "You can also run the same search but instead of passing `collections` as a query parameter you can include `collection_id` as a path parameter in the request URL itself. All of the other query parameters for the `/search` GET request will be available." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "2bfec9f1-5bd6-4ea9-90bf-66a2ddf90f36", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "found 26 items\n" + ] + } + ], + "source": [ + "datetime_string = datetime(2025, 4, 4, tzinfo=timezone.utc).isoformat()\n", + "\n", + "item_search_request = httpx.get(\n", + " f\"{stac_api_endpoint}/search\",\n", + " params={\n", + " \"collections\": my_collection.id,\n", + " \"datetime\": f\"{datetime_string}/..\", # open interval from 2025-04-04 forward\n", + " \"limit\": 100,\n", + " \"filter\": \"eo:cloud_cover < 10\", # less than 10% cloud cover\n", + " },\n", + ")\n", + "response = item_search_request.json()\n", + "print(f\"found {len(response['features'])} items\")" + ] + }, + { + "cell_type": "markdown", + "id": "a1de0ea6-51b5-4b12-88e0-67c2d49012bb", + "metadata": {}, + "source": [ + "### 3.3.3 /collections/{collection_id}/items/{item_id}\n", + "\n", + "To retrieve a specific item from the catalog, you can use the `/collections/{collection_id}/items/{item_id}` endpoint." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "fc47ce1f-68ac-42f2-a9f3-becddb5e2683", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " \"id\": \"S2B_T15TVN_20250416T172802_L2A\",\n", + " \"bbox\": [\n", + " -94.337121,\n", + " 46.859085,\n", + " -93.555103,\n", + " 47.852351\n", + " ],\n", + " \"type\": \"Feature\",\n", + " \"links\": [\n", + " {\n", + " \"rel\": \"collection\",\n", + " \"type\": \"application/json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a\"\n", + " },\n", + " {\n", + " \"rel\": \"parent\",\n", + " \"type\": \"application/json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a\"\n", + " },\n", + " {\n", + " \"rel\": \"root\",\n", + " \"type\": \"application/json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/\"\n", + " },\n", + " {\n", + " \"rel\": \"self\",\n", + " \"type\": \"application/geo+json\",\n", + " \"href\": \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a/items/S2B_T15TVN_20250416T172802_L2A\"\n", + " },\n", + " {\n", + " \"rel\": \"canonical\",\n", + " \"href\": \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/S2B_T15TVN_20250416T172802_L2A.json\",\n", + " \"type\": \"application/json\"\n", + " },\n", + " {\n", + " \"rel\": \"via\",\n", + " \"href\": \"s3://sentinel-s2-l2a/tiles/15/T/VN/2025/4/16/0/metadata.xml\",\n", + " \"type\": \"application/xml\",\n", + " \"title\": \"Granule Metadata in Sinergize RODA Archive\"\n", + " },\n", + " {\n", + " \"rel\": \"thumbnail\",\n", + " \"href\": \"https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2B_T15TVN_20250416T172802_L2A/thumbnail\"\n", + " }\n", + " ],\n", + " \"assets\": {\n", + " \"aot\": {\n", + " \"gsd\": 20,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/AOT.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\"\n", + " ],\n", + " \"title\": \"Aerosol optical thickness (AOT)\",\n", + " \"file:size\": 561220,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.001,\n", + " \"nodata\": 0,\n", + " \"offset\": 0,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"1220350b69d78fe8c81b865f4cc61a75b79e1c7d1ae21cc68237f8c4fcfd33d4b999\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 399960,\n", + " 0,\n", + " -20,\n", + " 5300040\n", + " ]\n", + " },\n", + " \"nir\": {\n", + " \"gsd\": 10,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B08.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"NIR 1 - 10m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B08\",\n", + " \"common_name\": \"nir\",\n", + " \"center_wavelength\": 0.842,\n", + " \"full_width_half_max\": 0.145\n", + " }\n", + " ],\n", + " \"file:size\": 83124302,\n", + " \"proj:shape\": [\n", + " 10980,\n", + " 10980\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 10\n", + " }\n", + " ],\n", + " \"file:checksum\": \"1220f0ab6e62921bdb981bf20ac5931963791f26673d2e54c769aa6189676e7edc7c\",\n", + " \"proj:transform\": [\n", + " 10,\n", + " 0,\n", + " 399960,\n", + " 0,\n", + " -10,\n", + " 5300040\n", + " ]\n", + " },\n", + " \"red\": {\n", + " \"gsd\": 10,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B04.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"Red - 10m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B04\",\n", + " \"common_name\": \"red\",\n", + " \"center_wavelength\": 0.665,\n", + " \"full_width_half_max\": 0.038\n", + " }\n", + " ],\n", + " \"file:size\": 85419040,\n", + " \"proj:shape\": [\n", + " 10980,\n", + " 10980\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 10\n", + " }\n", + " ],\n", + " \"file:checksum\": \"122005c8869062fb8da3b18af20e86cddcbc0d2bf28ac1ace386ef2e83d950de13e1\",\n", + " \"proj:transform\": [\n", + " 10,\n", + " 0,\n", + " 399960,\n", + " 0,\n", + " -10,\n", + " 5300040\n", + " ]\n", + " },\n", + " \"scl\": {\n", + " \"gsd\": 20,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/SCL.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\"\n", + " ],\n", + " \"title\": \"Scene classification map (SCL)\",\n", + " \"file:size\": 1386948,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"nodata\": 0,\n", + " \"data_type\": \"uint8\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"12202a1425042c19c4d51089099a8ea49e27af2c4ac8a64ae5ad62815bb619339920\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 399960,\n", + " 0,\n", + " -20,\n", + " 5300040\n", + " ]\n", + " },\n", + " \"wvp\": {\n", + " \"gsd\": 20,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/WVP.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\"\n", + " ],\n", + " \"title\": \"Water Vapour (WVP)\",\n", + " \"file:size\": 16370251,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"unit\": \"cm\",\n", + " \"scale\": 0.001,\n", + " \"nodata\": 0,\n", + " \"offset\": 0,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"122075c2c5515b614a0d081cd1c28cbfe87fe3bdd94ab7a8ad874c25fdb515b66bde\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 399960,\n", + " 0,\n", + " -20,\n", + " 5300040\n", + " ]\n", + " },\n", + " \"blue\": {\n", + " \"gsd\": 10,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B02.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"Blue - 10m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B02\",\n", + " \"common_name\": \"blue\",\n", + " \"center_wavelength\": 0.49,\n", + " \"full_width_half_max\": 0.098\n", + " }\n", + " ],\n", + " \"file:size\": 82007590,\n", + " \"proj:shape\": [\n", + " 10980,\n", + " 10980\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 10\n", + " }\n", + " ],\n", + " \"file:checksum\": \"12206f2359235115ca108e186357eb09c15c094232b2a7974784fc806cd6bc411683\",\n", + " \"proj:transform\": [\n", + " 10,\n", + " 0,\n", + " 399960,\n", + " 0,\n", + " -10,\n", + " 5300040\n", + " ]\n", + " },\n", + " \"snow\": {\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/SNW_20m.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"snow-ice\"\n", + " ],\n", + " \"title\": \"Snow Probabilities\",\n", + " \"file:size\": 1059264,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"nodata\": 0,\n", + " \"data_type\": \"uint8\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"1220dada37e576b14c5c5e71ca838156b6e6428564329e6d78912d182d5040555702\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 399960,\n", + " 0,\n", + " -20,\n", + " 5300040\n", + " ]\n", + " },\n", + " \"cloud\": {\n", + " \"gsd\": 20,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/CLD_20m.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"cloud\"\n", + " ],\n", + " \"title\": \"Cloud Probabilities\",\n", + " \"file:size\": 100854,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"nodata\": 0,\n", + " \"data_type\": \"uint8\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"12202cab02ab10c156071aecb0a8f7bbe3dd922810b3beb65474f4e1a50a93149e4b\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 399960,\n", + " 0,\n", + " -20,\n", + " 5300040\n", + " ]\n", + " },\n", + " \"green\": {\n", + " \"gsd\": 10,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B03.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"Green - 10m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B03\",\n", + " \"common_name\": \"green\",\n", + " \"center_wavelength\": 0.56,\n", + " \"full_width_half_max\": 0.045\n", + " }\n", + " ],\n", + " \"file:size\": 82939421,\n", + " \"proj:shape\": [\n", + " 10980,\n", + " 10980\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 10\n", + " }\n", + " ],\n", + " \"file:checksum\": \"122041e83f87c5578d05035483ee4f59041bbf67e74f4afa41902203f6b5eb6ee942\",\n", + " \"proj:transform\": [\n", + " 10,\n", + " 0,\n", + " 399960,\n", + " 0,\n", + " -10,\n", + " 5300040\n", + " ]\n", + " },\n", + " \"nir08\": {\n", + " \"gsd\": 20,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B8A.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"NIR 2 - 20m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B8A\",\n", + " \"common_name\": \"nir08\",\n", + " \"center_wavelength\": 0.865,\n", + " \"full_width_half_max\": 0.033\n", + " }\n", + " ],\n", + " \"file:size\": 22431289,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"1220006d2e9ca0b4f15dc3c418268d1889007ededb2565cec1ee8d3d8195a4a5a1e4\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 399960,\n", + " 0,\n", + " -20,\n", + " 5300040\n", + " ]\n", + " },\n", + " \"nir09\": {\n", + " \"gsd\": 60,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B09.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"NIR 3 - 60m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B09\",\n", + " \"common_name\": \"nir09\",\n", + " \"center_wavelength\": 0.945,\n", + " \"full_width_half_max\": 0.026\n", + " }\n", + " ],\n", + " \"file:size\": 2555948,\n", + " \"proj:shape\": [\n", + " 1830,\n", + " 1830\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 60\n", + " }\n", + " ],\n", + " \"file:checksum\": \"12207790e1d90b5e985075dca0fe864f0f848dc00aa4da483d1a608d3f19709b41a2\",\n", + " \"proj:transform\": [\n", + " 60,\n", + " 0,\n", + " 399960,\n", + " 0,\n", + " -60,\n", + " 5300040\n", + " ]\n", + " },\n", + " \"swir16\": {\n", + " \"gsd\": 20,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B11.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"SWIR 1.6\\u03bcm - 20m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B11\",\n", + " \"common_name\": \"swir16\",\n", + " \"center_wavelength\": 1.61,\n", + " \"full_width_half_max\": 0.143\n", + " }\n", + " ],\n", + " \"file:size\": 22346739,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"12200c94a9b237b871d96dfc115cc8993716df8b12056144e744d14de431aed79250\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 399960,\n", + " 0,\n", + " -20,\n", + " 5300040\n", + " ]\n", + " },\n", + " \"swir22\": {\n", + " \"gsd\": 20,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B12.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"SWIR 2.2\\u03bcm - 20m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B12\",\n", + " \"common_name\": \"swir22\",\n", + " \"center_wavelength\": 2.19,\n", + " \"full_width_half_max\": 0.242\n", + " }\n", + " ],\n", + " \"file:size\": 21852483,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"1220a7c87196a69e97b4fdd0d03ffa34aea37ee9ff340d39144e7d8fecb2e1a58761\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 399960,\n", + " 0,\n", + " -20,\n", + " 5300040\n", + " ]\n", + " },\n", + " \"visual\": {\n", + " \"gsd\": 10,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/TCI.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"visual\"\n", + " ],\n", + " \"title\": \"True color image\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B04\",\n", + " \"common_name\": \"red\",\n", + " \"center_wavelength\": 0.665,\n", + " \"full_width_half_max\": 0.038\n", + " },\n", + " {\n", + " \"name\": \"B03\",\n", + " \"common_name\": \"green\",\n", + " \"center_wavelength\": 0.56,\n", + " \"full_width_half_max\": 0.045\n", + " },\n", + " {\n", + " \"name\": \"B02\",\n", + " \"common_name\": \"blue\",\n", + " \"center_wavelength\": 0.49,\n", + " \"full_width_half_max\": 0.098\n", + " }\n", + " ],\n", + " \"file:size\": 114593799,\n", + " \"proj:shape\": [\n", + " 10980,\n", + " 10980\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"nodata\": 0,\n", + " \"data_type\": \"uint8\",\n", + " \"spatial_resolution\": 10\n", + " },\n", + " {\n", + " \"nodata\": 0,\n", + " \"data_type\": \"uint8\",\n", + " \"spatial_resolution\": 10\n", + " },\n", + " {\n", + " \"nodata\": 0,\n", + " \"data_type\": \"uint8\",\n", + " \"spatial_resolution\": 10\n", + " }\n", + " ],\n", + " \"file:checksum\": \"1220a13a354d704ab979fd98d10b2001e12c4b7d83ced3b85f4e7964cdfb63d6d7f7\",\n", + " \"proj:transform\": [\n", + " 10,\n", + " 0,\n", + " 399960,\n", + " 0,\n", + " -10,\n", + " 5300040\n", + " ]\n", + " },\n", + " \"coastal\": {\n", + " \"gsd\": 60,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B01.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"Coastal - 60m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B01\",\n", + " \"common_name\": \"coastal\",\n", + " \"center_wavelength\": 0.443,\n", + " \"full_width_half_max\": 0.027\n", + " }\n", + " ],\n", + " \"file:size\": 2310706,\n", + " \"proj:shape\": [\n", + " 1830,\n", + " 1830\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 60\n", + " }\n", + " ],\n", + " \"file:checksum\": \"1220ca7c1e9445cb3fefabd0eb022e5460bb77347701f1b6ac29ea569865e987037c\",\n", + " \"proj:transform\": [\n", + " 60,\n", + " 0,\n", + " 399960,\n", + " 0,\n", + " -60,\n", + " 5300040\n", + " ]\n", + " },\n", + " \"preview\": {\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/L2A_PVI.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"overview\"\n", + " ],\n", + " \"title\": \"True color preview\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B04\",\n", + " \"common_name\": \"red\",\n", + " \"center_wavelength\": 0.665,\n", + " \"full_width_half_max\": 0.038\n", + " },\n", + " {\n", + " \"name\": \"B03\",\n", + " \"common_name\": \"green\",\n", + " \"center_wavelength\": 0.56,\n", + " \"full_width_half_max\": 0.045\n", + " },\n", + " {\n", + " \"name\": \"B02\",\n", + " \"common_name\": \"blue\",\n", + " \"center_wavelength\": 0.49,\n", + " \"full_width_half_max\": 0.098\n", + " }\n", + " ],\n", + " \"file:size\": 122548,\n", + " \"file:checksum\": \"12206a7db9f4a573f3f31478e4e70253e6e5ce887c26da8c931e4dd51370b99b6428\"\n", + " },\n", + " \"rededge1\": {\n", + " \"gsd\": 20,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B05.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"Red Edge 1 - 20m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B05\",\n", + " \"common_name\": \"rededge\",\n", + " \"center_wavelength\": 0.704,\n", + " \"full_width_half_max\": 0.019\n", + " }\n", + " ],\n", + " \"file:size\": 22126518,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"12207b7e72ba7c6456a99a248946e646219fc3276056376e5f4f223140913c7dff21\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 399960,\n", + " 0,\n", + " -20,\n", + " 5300040\n", + " ]\n", + " },\n", + " \"rededge2\": {\n", + " \"gsd\": 20,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B06.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"Red Edge 2 - 20m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B06\",\n", + " \"common_name\": \"rededge\",\n", + " \"center_wavelength\": 0.74,\n", + " \"full_width_half_max\": 0.018\n", + " }\n", + " ],\n", + " \"file:size\": 22148861,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"1220baccf6c3c943e70236cad8db7afde91ac2cfe28c6254abbd493097a55dd57f58\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 399960,\n", + " 0,\n", + " -20,\n", + " 5300040\n", + " ]\n", + " },\n", + " \"rededge3\": {\n", + " \"gsd\": 20,\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B07.tif\",\n", + " \"type\": \"image/tiff; application=geotiff; profile=cloud-optimized\",\n", + " \"roles\": [\n", + " \"data\",\n", + " \"reflectance\"\n", + " ],\n", + " \"title\": \"Red Edge 3 - 20m\",\n", + " \"eo:bands\": [\n", + " {\n", + " \"name\": \"B07\",\n", + " \"common_name\": \"rededge\",\n", + " \"center_wavelength\": 0.783,\n", + " \"full_width_half_max\": 0.028\n", + " }\n", + " ],\n", + " \"file:size\": 22257248,\n", + " \"proj:shape\": [\n", + " 5490,\n", + " 5490\n", + " ],\n", + " \"raster:bands\": [\n", + " {\n", + " \"scale\": 0.0001,\n", + " \"nodata\": 0,\n", + " \"offset\": -0.1,\n", + " \"data_type\": \"uint16\",\n", + " \"spatial_resolution\": 20\n", + " }\n", + " ],\n", + " \"file:checksum\": \"1220bb3f56e2f66ecfd0feebfa0c8a1584b4426ef32b17248d2c1db87010755485fd\",\n", + " \"proj:transform\": [\n", + " 20,\n", + " 0,\n", + " 399960,\n", + " 0,\n", + " -20,\n", + " 5300040\n", + " ]\n", + " },\n", + " \"thumbnail\": {\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/L2A_PVI.jpg\",\n", + " \"type\": \"image/jpeg\",\n", + " \"roles\": [\n", + " \"thumbnail\"\n", + " ],\n", + " \"title\": \"Thumbnail of preview image\",\n", + " \"file:size\": 18692,\n", + " \"file:checksum\": \"1220a96b24f957cf7708332040de7cafb6d34ef3beba3c86598776a9c20f4b8a0b92\"\n", + " },\n", + " \"granule_metadata\": {\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/metadata.xml\",\n", + " \"type\": \"application/xml\",\n", + " \"roles\": [\n", + " \"metadata\"\n", + " ],\n", + " \"file:size\": 277878,\n", + " \"file:checksum\": \"122047fdb2e150caae54d1bc13a20adc14c13c4eb50814c53bfdc44791ad39e7ba82\"\n", + " },\n", + " \"product_metadata\": {\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/product_metadata.xml\",\n", + " \"type\": \"application/xml\",\n", + " \"roles\": [\n", + " \"metadata\"\n", + " ],\n", + " \"file:size\": 55215,\n", + " \"file:checksum\": \"12203d015e7332a692a7c3d2d4e4d4aea0256ff415b8764cd43e1e6c112804d81eb2\"\n", + " },\n", + " \"tileinfo_metadata\": {\n", + " \"href\": \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/tileInfo.json\",\n", + " \"type\": \"application/json\",\n", + " \"roles\": [\n", + " \"metadata\"\n", + " ],\n", + " \"file:size\": 1524,\n", + " \"file:checksum\": \"1220ff3ba8eeed52f5f6fdbd9766d9aff159dc6bd5c1b6af81fcb77e4684ab47c6fb\"\n", + " }\n", + " },\n", + " \"geometry\": {\n", + " \"type\": \"Polygon\",\n", + " \"coordinates\": [\n", + " [\n", + " [\n", + " -94.33712111608995,\n", + " 47.8459059875105\n", + " ],\n", + " [\n", + " -94.3124205286515,\n", + " 46.85908479173537\n", + " ],\n", + " [\n", + " -93.9940423111705,\n", + " 46.86283068716732\n", + " ],\n", + " [\n", + " -93.55510278085092,\n", + " 47.8523509153246\n", + " ],\n", + " [\n", + " -94.33712111608995,\n", + " 47.8459059875105\n", + " ]\n", + " ]\n", + " ]\n", + " },\n", + " \"collection\": \"hrodmn-sentinel-2-c1-l2a\",\n", + " \"properties\": {\n", + " \"created\": \"2025-04-16T22:34:13.317Z\",\n", + " \"updated\": \"2025-04-16T22:34:13.317Z\",\n", + " \"datetime\": \"2025-04-16T17:30:36.409000Z\",\n", + " \"platform\": \"sentinel-2b\",\n", + " \"grid:code\": \"MGRS-15TVN\",\n", + " \"proj:code\": \"EPSG:32615\",\n", + " \"s2:tile_id\": \"S2B_OPER_MSI_L2A_TL_2BPS_20250416T212327_A042366_T15TVN_N05.11\",\n", + " \"instruments\": [\n", + " \"msi\"\n", + " ],\n", + " \"view:azimuth\": 287.89608417124555,\n", + " \"constellation\": \"sentinel-2\",\n", + " \"mgrs:utm_zone\": 15,\n", + " \"proj:centroid\": {\n", + " \"lat\": 47.42449,\n", + " \"lon\": -94.03519\n", + " },\n", + " \"eo:cloud_cover\": 5.409537,\n", + " \"s2:datatake_id\": \"GS2B_20250416T171859_042366_N05.11\",\n", + " \"s2:product_uri\": \"S2B_MSIL2A_20250416T171859_N0511_R012_T15TVN_20250416T212327.SAFE\",\n", + " \"storage:region\": \"us-west-2\",\n", + " \"s2:datastrip_id\": \"S2B_OPER_MSI_L2A_DS_2BPS_20250416T212327_S20250416T172802_N05.11\",\n", + " \"s2:product_type\": \"S2MSI2A\",\n", + " \"mgrs:grid_square\": \"VN\",\n", + " \"s2:datatake_type\": \"INS-NOBS\",\n", + " \"storage:platform\": \"AWS\",\n", + " \"view:sun_azimuth\": 162.530870580894,\n", + " \"mgrs:latitude_band\": \"T\",\n", + " \"s2:generation_time\": \"2025-04-16T21:23:27.000000Z\",\n", + " \"view:sun_elevation\": 51.9141205602614,\n", + " \"processing:software\": {\n", + " \"sentinel-2-c1-l2a-to-stac\": \"v2024.02.01\"\n", + " },\n", + " \"s2:water_percentage\": 6.338304,\n", + " \"view:incidence_angle\": 10.089347345913346,\n", + " \"earthsearch:payload_id\": \"roda-sentinel-2-c1-l2a/workflow-sentinel-2-c1-l2a-to-stac/c755fda061dfa21cf1713bb22451497f\",\n", + " \"s2:processing_baseline\": \"05.11\",\n", + " \"s2:snow_ice_percentage\": 7.831911,\n", + " \"storage:requester_pays\": false,\n", + " \"s2:vegetation_percentage\": 17.789894,\n", + " \"s2:thin_cirrus_percentage\": 5.400702,\n", + " \"s2:cloud_shadow_percentage\": 0.002468,\n", + " \"s2:nodata_pixel_percentage\": 62.221783,\n", + " \"s2:unclassified_percentage\": 1.536413,\n", + " \"s2:not_vegetated_percentage\": 60.798466,\n", + " \"s2:degraded_msi_data_percentage\": 0.0198,\n", + " \"s2:high_proba_clouds_percentage\": 0.000483,\n", + " \"s2:reflectance_conversion_factor\": 0.995264435719523,\n", + " \"s2:medium_proba_clouds_percentage\": 0.008352,\n", + " \"s2:saturated_defective_pixel_percentage\": 0\n", + " },\n", + " \"stac_version\": \"1.1.0\",\n", + " \"stac_extensions\": [\n", + " \"https://stac-extensions.github.io/eo/v1.1.0/schema.json\",\n", + " \"https://stac-extensions.github.io/file/v2.1.0/schema.json\",\n", + " \"https://stac-extensions.github.io/grid/v1.1.0/schema.json\",\n", + " \"https://stac-extensions.github.io/mgrs/v1.0.0/schema.json\",\n", + " \"https://stac-extensions.github.io/processing/v1.1.0/schema.json\",\n", + " \"https://stac-extensions.github.io/projection/v2.0.0/schema.json\",\n", + " \"https://stac-extensions.github.io/raster/v1.1.0/schema.json\",\n", + " \"https://stac-extensions.github.io/sentinel-2/v1.0.0/schema.json\",\n", + " \"https://stac-extensions.github.io/storage/v1.0.0/schema.json\",\n", + " \"https://stac-extensions.github.io/view/v1.0.0/schema.json\"\n", + " ]\n", + "}\n" + ] + } + ], + "source": [ + "item_id = response[\"features\"][0][\"id\"]\n", + "item_request = httpx.get(\n", + " f\"{stac_api_endpoint}/collections/{my_collection.id}/items/{item_id}\"\n", + ")\n", + "print(json.dumps(item_request.json(), indent=2))" + ] + }, + { + "cell_type": "markdown", + "id": "13efb26d-e63e-45ed-ab55-5af00e77fbeb", + "metadata": {}, + "source": [ + "`pystac-client` can do the same thing" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "ba409044-3f40-4d53-9256-f21aaa4b9da0", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "
\n", + "
\n", + "
    \n", + " \n", + " \n", + " \n", + "
  • \n", + " type\n", + " \"Feature\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_version\n", + " \"1.1.0\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " stac_extensions[] 10 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " \"https://stac-extensions.github.io/eo/v1.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + " \"https://stac-extensions.github.io/file/v2.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + " \"https://stac-extensions.github.io/grid/v1.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + " \"https://stac-extensions.github.io/mgrs/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + " \"https://stac-extensions.github.io/processing/v1.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 5\n", + " \"https://stac-extensions.github.io/projection/v2.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 6\n", + " \"https://stac-extensions.github.io/raster/v1.1.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 7\n", + " \"https://stac-extensions.github.io/sentinel-2/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 8\n", + " \"https://stac-extensions.github.io/storage/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 9\n", + " \"https://stac-extensions.github.io/view/v1.0.0/schema.json\"\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " id\n", + " \"S2B_T15TVN_20250416T172802_L2A\"\n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " geometry\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " type\n", + " \"Polygon\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " coordinates[] 1 items\n", + " \n", + "
        \n", + " \n", + " \n", + "
      • \n", + " 0[] 5 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -94.33712111608995\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 47.8459059875105\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 1[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -94.3124205286515\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 46.85908479173537\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 2[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -93.9940423111705\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 46.86283068716732\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 3[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -93.55510278085092\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 47.8523509153246\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 4[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " -94.33712111608995\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 47.8459059875105\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
        • \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " bbox[] 4 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + " -94.337121\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + " 46.859085\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + " -93.555103\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + " 47.852351\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " properties\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " created\n", + " \"2025-04-16T22:34:13.317Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " updated\n", + " \"2025-04-16T22:34:13.317Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " datetime\n", + " \"2025-04-16T17:30:36.409000Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " platform\n", + " \"sentinel-2b\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " grid:code\n", + " \"MGRS-15TVN\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " proj:code\n", + " \"EPSG:32615\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:tile_id\n", + " \"S2B_OPER_MSI_L2A_TL_2BPS_20250416T212327_A042366_T15TVN_N05.11\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " instruments[] 1 items\n", + " \n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " 0\n", + " \"msi\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + " \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:azimuth\n", + " 287.89608417124555\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " constellation\n", + " \"sentinel-2\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " mgrs:utm_zone\n", + " 15\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " proj:centroid\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " lat\n", + " 47.42449\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " lon\n", + " -94.03519\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " eo:cloud_cover\n", + " 5.409537\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:datatake_id\n", + " \"GS2B_20250416T171859_042366_N05.11\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:product_uri\n", + " \"S2B_MSIL2A_20250416T171859_N0511_R012_T15TVN_20250416T212327.SAFE\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " storage:region\n", + " \"us-west-2\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:datastrip_id\n", + " \"S2B_OPER_MSI_L2A_DS_2BPS_20250416T212327_S20250416T172802_N05.11\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:product_type\n", + " \"S2MSI2A\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " mgrs:grid_square\n", + " \"VN\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:datatake_type\n", + " \"INS-NOBS\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " storage:platform\n", + " \"AWS\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:sun_azimuth\n", + " 162.530870580894\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " mgrs:latitude_band\n", + " \"T\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:generation_time\n", + " \"2025-04-16T21:23:27.000000Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:sun_elevation\n", + " 51.9141205602614\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " processing:software\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " sentinel-2-c1-l2a-to-stac\n", + " \"v2024.02.01\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:water_percentage\n", + " 6.338304\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:incidence_angle\n", + " 10.089347345913346\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " earthsearch:payload_id\n", + " \"roda-sentinel-2-c1-l2a/workflow-sentinel-2-c1-l2a-to-stac/c755fda061dfa21cf1713bb22451497f\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:processing_baseline\n", + " \"05.11\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:snow_ice_percentage\n", + " 7.831911\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " storage:requester_pays\n", + " False\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:vegetation_percentage\n", + " 17.789894\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:thin_cirrus_percentage\n", + " 5.400702\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:cloud_shadow_percentage\n", + " 0.002468\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:nodata_pixel_percentage\n", + " 62.221783\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:unclassified_percentage\n", + " 1.536413\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:not_vegetated_percentage\n", + " 60.798466\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:degraded_msi_data_percentage\n", + " 0.0198\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:high_proba_clouds_percentage\n", + " 0.000483\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:reflectance_conversion_factor\n", + " 0.995264435719523\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:medium_proba_clouds_percentage\n", + " 0.008352\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:saturated_defective_pixel_percentage\n", + " 0\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " links[] 7 items\n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 0\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"self\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a/items/S2B_T15TVN_20250416T172802_L2A\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"collection\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"parent\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"root\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 4\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"canonical\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/S2B_T15TVN_20250416T172802_L2A.json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 5\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"via\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"s3://sentinel-s2-l2a/tiles/15/T/VN/2025/4/16/0/metadata.xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Granule Metadata in Sinergize RODA Archive\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 6\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " rel\n", + " \"thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://earth-search.aws.element84.com/v1/collections/sentinel-2-c1-l2a/items/S2B_T15TVN_20250416T172802_L2A/thumbnail\"\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " assets\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " aot\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/AOT.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Aerosol optical thickness (AOT)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 561220\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220350b69d78fe8c81b865f4cc61a75b79e1c7d1ae21cc68237f8c4fcfd33d4b999\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 399960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " nir\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B08.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"NIR 1 - 10m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B08\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"nir\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.842\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.145\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 83124302\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220f0ab6e62921bdb981bf20ac5931963791f26673d2e54c769aa6189676e7edc7c\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 399960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " red\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B04.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red - 10m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B04\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"red\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.665\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.038\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 85419040\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"122005c8869062fb8da3b18af20e86cddcbc0d2bf28ac1ace386ef2e83d950de13e1\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 399960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " scl\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/SCL.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Scene classification map (SCL)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 1386948\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12202a1425042c19c4d51089099a8ea49e27af2c4ac8a64ae5ad62815bb619339920\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 399960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " wvp\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/WVP.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Water Vapour (WVP)\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 16370251\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " unit\n", + " \"cm\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"122075c2c5515b614a0d081cd1c28cbfe87fe3bdd94ab7a8ad874c25fdb515b66bde\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 399960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " blue\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B02.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Blue - 10m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B02\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"blue\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.49\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.098\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 82007590\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12206f2359235115ca108e186357eb09c15c094232b2a7974784fc806cd6bc411683\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 399960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " snow\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/SNW_20m.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Snow Probabilities\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 1059264\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220dada37e576b14c5c5e71ca838156b6e6428564329e6d78912d182d5040555702\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 399960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"snow-ice\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " cloud\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/CLD_20m.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Cloud Probabilities\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 100854\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12202cab02ab10c156071aecb0a8f7bbe3dd922810b3beb65474f4e1a50a93149e4b\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 399960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"cloud\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " green\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B03.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Green - 10m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B03\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"green\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.56\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.045\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 82939421\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"122041e83f87c5578d05035483ee4f59041bbf67e74f4afa41902203f6b5eb6ee942\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 399960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " nir08\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B8A.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"NIR 2 - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B8A\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"nir08\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.865\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.033\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 22431289\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220006d2e9ca0b4f15dc3c418268d1889007ededb2565cec1ee8d3d8195a4a5a1e4\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 399960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " nir09\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B09.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"NIR 3 - 60m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 60\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B09\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"nir09\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.945\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.026\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 2555948\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12207790e1d90b5e985075dca0fe864f0f848dc00aa4da483d1a608d3f19709b41a2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 399960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " swir16\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B11.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"SWIR 1.6μm - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B11\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"swir16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 1.61\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.143\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 22346739\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12200c94a9b237b871d96dfc115cc8993716df8b12056144e744d14de431aed79250\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 399960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " swir22\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B12.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"SWIR 2.2μm - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B12\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"swir22\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 2.19\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.242\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 21852483\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220a7c87196a69e97b4fdd0d03ffa34aea37ee9ff340d39144e7d8fecb2e1a58761\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 399960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " visual\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/TCI.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"True color image\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 10\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B04\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"red\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.665\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.038\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B03\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"green\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.56\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.045\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B02\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"blue\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.49\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.098\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 114593799\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 10980\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint8\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 10\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220a13a354d704ab979fd98d10b2001e12c4b7d83ced3b85f4e7964cdfb63d6d7f7\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 399960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -10\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"visual\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " coastal\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B01.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Coastal - 60m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 60\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B01\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"coastal\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.443\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.027\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 2310706\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 1830\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 60\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220ca7c1e9445cb3fefabd0eb022e5460bb77347701f1b6ac29ea569865e987037c\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 60\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 399960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -60\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " preview\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/L2A_PVI.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"True color preview\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 3 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B04\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"red\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.665\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.038\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B03\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"green\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.56\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.045\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B02\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"blue\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.49\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.098\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 122548\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12206a7db9f4a573f3f31478e4e70253e6e5ce887c26da8c931e4dd51370b99b6428\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"overview\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " rededge1\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B05.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red Edge 1 - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B05\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"rededge\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.704\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.019\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 22126518\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12207b7e72ba7c6456a99a248946e646219fc3276056376e5f4f223140913c7dff21\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 399960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " rededge2\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B06.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red Edge 2 - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B06\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"rededge\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.74\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.018\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 22148861\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220baccf6c3c943e70236cad8db7afde91ac2cfe28c6254abbd493097a55dd57f58\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 399960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " rededge3\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/B07.tif\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Red Edge 3 - 20m\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " gsd\n", + " 20\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " eo:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " name\n", + " \"B07\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " common_name\n", + " \"rededge\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " center_wavelength\n", + " 0.783\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " full_width_half_max\n", + " 0.028\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 22257248\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:shape[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 5490\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " raster:bands[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " scale\n", + " 0.0001\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " nodata\n", + " 0\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " offset\n", + " -0.1\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " data_type\n", + " \"uint16\"\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", + " spatial_resolution\n", + " 20\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220bb3f56e2f66ecfd0feebfa0c8a1584b4426ef32b17248d2c1db87010755485fd\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " proj:transform[] 6 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " 20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 2\n", + " 399960\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 3\n", + " 0\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 4\n", + " -20\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 5\n", + " 5300040\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 2 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"data\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 1\n", + " \"reflectance\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " thumbnail\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/L2A_PVI.jpg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"image/jpeg\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " title\n", + " \"Thumbnail of preview image\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 18692\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220a96b24f957cf7708332040de7cafb6d34ef3beba3c86598776a9c20f4b8a0b92\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"thumbnail\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " granule_metadata\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/metadata.xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 277878\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"122047fdb2e150caae54d1bc13a20adc14c13c4eb50814c53bfdc44791ad39e7ba82\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"metadata\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " product_metadata\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/product_metadata.xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/xml\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 55215\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"12203d015e7332a692a7c3d2d4e4d4aea0256ff415b8764cd43e1e6c112804d81eb2\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"metadata\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " tileinfo_metadata\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " href\n", + " \"https://e84-earth-search-sentinel-data.s3.us-west-2.amazonaws.com/sentinel-2-c1-l2a/15/T/VN/2025/4/S2B_T15TVN_20250416T172802_L2A/tileInfo.json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " type\n", + " \"application/json\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:size\n", + " 1524\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " file:checksum\n", + " \"1220ff3ba8eeed52f5f6fdbd9766d9aff159dc6bd5c1b6af81fcb77e4684ab47c6fb\"\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " roles[] 1 items\n", + " \n", + "
          \n", + " \n", + " \n", + " \n", + "
        • \n", + " 0\n", + " \"metadata\"\n", + "
        • \n", + " \n", + " \n", + " \n", + "
        \n", + " \n", + "
      • \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " collection\n", + " \"hrodmn-sentinel-2-c1-l2a\"\n", + "
  • \n", + " \n", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "collection_client = client.get_collection(my_collection.id)\n", + "\n", + "collection_client.get_item(item_id)" + ] + }, + { + "cell_type": "markdown", + "id": "7795389e-2007-4e79-b1ef-a788ac259694", + "metadata": {}, + "source": [ + "## Conclusion\n", + "\n", + "That's it! You have taken a full tour of the stac-fastapi-pgstac STAC API. Here is a look at the full API documentation for the deployed API:" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "5972eaaf-d6b3-4bcf-b2fd-f7d451100581", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "IFrame(f\"{stac_api_endpoint}/api.html\", 1200, 800)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.10" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/docs/04-titiler_pgstac.ipynb b/docs/04-titiler_pgstac.ipynb new file mode 100644 index 0000000..9874de6 --- /dev/null +++ b/docs/04-titiler_pgstac.ipynb @@ -0,0 +1,871 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "f40e31ef-ea58-408b-a252-d74974df2e86", + "metadata": {}, + "source": [ + "# 4. The Raster API: titiler-pgstac\n", + "\n", + "titiler-pgstac is the crown jewel of an eoAPI deployment. You can use titiler-pgstac to serve infinitely customizable visualizations of the data in your catalog with just a few lines of code.\n", + "\n", + "### Dynamic Tiling 101\n", + "XYZ map tiles are the backbone of web mapping technology. Traditionally, the tile images are generated from the raw data and stored in cloud storage so they can be easily fetched by a map client in a web browser (or desktop GIS application). These tiles are called \"static\" tiles because they are generated once and cannot be adjusted unless you regenerate the tiles from the raw source.\n", + "\n", + "The static nature of pre-generated tiles is a problem for dynamic datasets like satellite imagery collections where there may be new data streaming in at all times. It is not efficient to be continually rebuilding static tiles for an entire collection when the data are constantly changing!\n", + "\n", + "**Dynamic tiling** provides a solution to this problem. Instead of pre-rendering all of the tile images for a dynamic dataset, dynamic tiling renders the images on-the-fly as they are requested by client applications! Dynamically rendered tile images will take longer to return to the client but, **if the raw data are stored in cloud-optimized data formats**, processing latency will be minimized and you gain the ability to request any visualization configuration (colormap, min/max, band math, expressions, etc).\n", + "\n", + "[titiler](https://developmentseed.org/titiler/) is the state-of-the-art in dynamic tiling. It can take an XYZ tile request, use rasterio/GDAL to read the portion of a data required to render the tile image, then return it to the requester as a .png (or whatever format is requested).\n", + "\n", + "[titiler-pgstac](https://stac-utils.github.io/titiler-pgstac/latest/) extends the core titiler functionality by providing a query interface for a `pgstac` database, allowing users to request visualizations of entire collections or mosaics of items that are in their STAC.\n", + "\n", + "To illustrate the power of titiler-pgstac, consider the following examples:\n", + "1. You can create an interactive map with the most recent Sentinel-2 images from your STAC collection in just a few lines of code\n", + "2. You can create an interacive map with the most recent **cloud-free** images from any period of time in the archive with 10 lines of code\n", + "3. You can view natural color and false color composites of the imagery with one small change\n", + "\n", + "You can do all of this with titiler-pgstac with a single copy of the raw data in cloud storage!\n", + "\n", + "Start by entering the username you picked when defining your personal Sentinel-2 L2A collection:" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "97b26130-eef8-4fbc-a404-afe4e6942777", + "metadata": {}, + "outputs": [ + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "6d310b842c07459a8bc936f154c1dcba", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Text(value='hrodmn', description='username:', placeholder='Enter your username')" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import ipywidgets as widgets\n", + "from IPython.display import display\n", + "\n", + "username_input = widgets.Text(\n", + " value=\"hrodmn\",\n", + " placeholder=\"Enter your username\",\n", + " description=\"username:\",\n", + " disabled=False,\n", + ")\n", + "\n", + "display(username_input)" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "68c9bd3b-ee40-4786-9a96-0f254c3a44d3", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import os\n", + "\n", + "from IPython.display import IFrame, Image\n", + "\n", + "titiler_pgstac_endpoint = os.getenv(\"TITILER_PGSTAC_API_ENDPOINT\")\n", + "\n", + "IFrame(\n", + " f\"{titiler_pgstac_endpoint}/api.html\",\n", + " 1200,\n", + " 800,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "cbed93d9-ba99-4a67-8dcc-68c7d11ec183", + "metadata": {}, + "source": [ + "## 4.1 /collections/{collection_id}\n", + "Start out with the most basic titiler-pgstac request: RGB visualization of the most recent images in your Sentinel-2 STAC collection.\n", + "\n", + "To get a visualization of the red/green/blue band combination from your collection you need to tell titiler-pgstac which assets you want using the `assets` query parameter (multiple times in this case)." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "37731b54-7e89-4000-8e26-5ed9f813117b", + "metadata": {}, + "outputs": [], + "source": [ + "import json\n", + "from urllib.parse import urlencode\n", + "\n", + "import httpx\n", + "\n", + "collection_id = f\"{username_input.value}-sentinel-2-c1-l2a\"\n", + "\n", + "params = (\n", + " (\"assets\", \"red\"),\n", + " (\"assets\", \"green\"),\n", + " (\"assets\", \"blue\"),\n", + " (\"color_formula\", \"Gamma RGB 3.0 Saturation 1.2 Sigmoidal RGB 15 0.35\"),\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "8bb67743-bcea-4a92-90c1-08980e9786cc", + "metadata": {}, + "source": [ + "The standard format for distributing information for XYZ tile layers is the `tilejson`. You can request a `tilejson` document from titiler-pgstac and the response will include everything you would need to add the layer to a map." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "8cbf296b-d0cc-4fff-a04e-0ade979fe5ed", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " \"tilejson\": \"2.2.0\",\n", + " \"name\": \"Mosaic for 'hrodmn-sentinel-2-c1-l2a' Collection\",\n", + " \"version\": \"1.0.0\",\n", + " \"scheme\": \"xyz\",\n", + " \"tiles\": [\n", + " \"https://helfmwseh8.execute-api.us-west-2.amazonaws.com/collections/hrodmn-sentinel-2-c1-l2a/tiles/WebMercatorQuad/{z}/{x}/{y}?assets=red&assets=green&assets=blue&color_formula=Gamma+RGB+3.0+Saturation+1.2+Sigmoidal+RGB+15+0.35\"\n", + " ],\n", + " \"minzoom\": 0,\n", + " \"maxzoom\": 24,\n", + " \"bounds\": [\n", + " -94.0,\n", + " 45.0,\n", + " -90.0,\n", + " 49.0\n", + " ],\n", + " \"center\": [\n", + " -92.0,\n", + " 47.0,\n", + " 0\n", + " ]\n", + "}\n" + ] + } + ], + "source": [ + "tilejson_request = httpx.get(\n", + " f\"{titiler_pgstac_endpoint}/collections/{collection_id}/WebMercatorQuad/tilejson.json?{urlencode(params, doseq=True)}\",\n", + " timeout=None,\n", + ")\n", + "\n", + "print(json.dumps(tilejson_request.json(), indent=2))" + ] + }, + { + "cell_type": "markdown", + "id": "eb7cbd49-320d-493a-883c-efaed3fb8b00", + "metadata": {}, + "source": [ + "The `tiles` key in the tilejson response contains a list of XYZ tile URLs that can be added to most mapping/GIS applications:\n", + " - QGIS\n", + " - ArcGIS\n", + " - Leaflet\n", + " - Mapbox\n", + "\n", + "For now you can take a shortcut to view the map directly in this notebook using the `/map` endpoint which will generate an HTML file with a Leaflet map that can be rendered directly in the notebook." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "4888eb92-b16e-4e47-afe3-fc779cbba820", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "IFrame(\n", + " f\"{titiler_pgstac_endpoint}/collections/{collection_id}/WebMercatorQuad/map?{urlencode(params, doseq=True)}\",\n", + " 1200,\n", + " 800,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "269479e9-5e13-458d-9abd-37b759425e86", + "metadata": {}, + "source": [ + "### How does it work?\n", + "\n", + "- titiler-pgstac is running as a Lambda (serverless) function in AWS that started up when you made the request for the `/map` endpoint.\n", + "- The `/map` endpoint returns an HTML file that is pre-populated with some map code that includes the layer that you specified with the request parameters\n", + "- As you browse the map, the map is sending XYZ tile requests to titiler-pgstac function in AWS\n", + "- Each request contains the information titiler-pgstac needs to search for items in the pgstac database and how to construct an image from the items' assets\n", + " - `collection_id`: by specifying the collection ID in the request path you are instructing titiler-pgstac to search for items from a specific STAC collection. Unless otherwise specified, pgstac will retrieve the STAC items in descending order by datetime and it will stop returning results when a tile's geometry is completely covered.\n", + " - `assets`: titiler-pgstac constructs images from STAC assets in the items that match the search\n", + " - by setting `assets=red&assets=blue&assets=green` we are requesting a 3-band rendering from the red, green, and blue assets in each STAC item\n", + " - `color_formula`: since the raw data could have any scale, you may need to apply a color forumula or simpler `rescale` to ensure the output images are visually useful" + ] + }, + { + "cell_type": "markdown", + "id": "4b649d4b-590c-449e-aa2d-b8c50f1d1a70", + "metadata": {}, + "source": [ + "## 4.2 /searches\n", + "\n", + "Sometimes you will want to render visualizations from a more complex STAC query. titiler-pgstac and pgstac make it possible to pre-register a search query to make it easy to request tiles from a STAC search based on the filter parameters.\n", + "\n", + "The view in the example above may have some clouds visible so you can construct a query that will filter down the STAC item results to items that have low cloud cover.\n", + "\n", + "To do this you can first send a POST request to the `/searches/register` endpoint with your STAC query parameters like you would send to a STAC API when searching for items directly.\n", + "Once the search is registered, you can make XYZ tile requests like you did for the default `/collections` view." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "9ebbc173-45b4-4f38-a461-5d7dcfbaa733", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " \"id\": \"37c7c3e62a0a30be1f4f15f825bb1d82\",\n", + " \"links\": [\n", + " {\n", + " \"href\": \"https://helfmwseh8.execute-api.us-west-2.amazonaws.com/searches/37c7c3e62a0a30be1f4f15f825bb1d82/info\",\n", + " \"rel\": \"metadata\",\n", + " \"title\": \"Mosaic metadata\"\n", + " },\n", + " {\n", + " \"href\": \"https://helfmwseh8.execute-api.us-west-2.amazonaws.com/searches/37c7c3e62a0a30be1f4f15f825bb1d82/{tileMatrixSetId}/tilejson.json\",\n", + " \"rel\": \"tilejson\",\n", + " \"templated\": true,\n", + " \"title\": \"Link for TileJSON (Template URL)\"\n", + " },\n", + " {\n", + " \"href\": \"https://helfmwseh8.execute-api.us-west-2.amazonaws.com/searches/37c7c3e62a0a30be1f4f15f825bb1d82/{tileMatrixSetId}/map\",\n", + " \"rel\": \"map\",\n", + " \"templated\": true,\n", + " \"title\": \"Link for Map viewer (Template URL)\"\n", + " },\n", + " {\n", + " \"href\": \"https://helfmwseh8.execute-api.us-west-2.amazonaws.com/searches/37c7c3e62a0a30be1f4f15f825bb1d82/{tileMatrixSetId}/WMTSCapabilities.xml\",\n", + " \"rel\": \"wmts\",\n", + " \"templated\": true,\n", + " \"title\": \"Link for WMTS (Template URL)\"\n", + " }\n", + " ]\n", + "}\n" + ] + } + ], + "source": [ + "# get the bounding box from your STAC collection record to constrain the map view\n", + "stac_api_endpoint = \"https://pj44p72a3g.execute-api.us-west-2.amazonaws.com\"\n", + "\n", + "collection_info = httpx.get(f\"{stac_api_endpoint}/collections/{collection_id}\").json()\n", + "\n", + "bbox = collection_info[\"extent\"][\"spatial\"][\"bbox\"][0]\n", + "\n", + "register_search_request = httpx.post(\n", + " f\"{titiler_pgstac_endpoint}/searches/register\",\n", + " json={\n", + " \"collections\": [collection_id],\n", + " \"bbox\": bbox,\n", + " # filter down to items from March 2025\n", + " \"datetime\": \"2025-04-01T00:00:00Z/2025-05-01T00:00:00Z\",\n", + " # with less than 10% cloud cover\n", + " \"filter\": {\n", + " \"op\": \"lt\",\n", + " \"args\": [\n", + " {\"property\": \"eo:cloud_cover\"},\n", + " 10,\n", + " ],\n", + " },\n", + " },\n", + " timeout=None,\n", + ")\n", + "\n", + "search_response = register_search_request.json()\n", + "print(json.dumps(search_response, indent=2))" + ] + }, + { + "cell_type": "markdown", + "id": "c329c88a-ff1d-4b4c-9c89-a603c9b791eb", + "metadata": {}, + "source": [ + "The response comes back with an `id` which uniquely identifies this search and a handful of useful links associated with our newly registered search.\n", + "\n", + "Now you can browse the results of this search with the `/map` endpoint like you did earlier." + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "67c9c702-baef-4dc3-949c-c562f855a6a0", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "search_id = search_response[\"id\"]\n", + "\n", + "params = (\n", + " (\"assets\", \"red\"),\n", + " (\"assets\", \"green\"),\n", + " (\"assets\", \"blue\"),\n", + " (\"color_formula\", \"Gamma RGB 3.0 Saturation 1.2 Sigmoidal RGB 15 0.35\"),\n", + ")\n", + "\n", + "IFrame(\n", + " f\"{titiler_pgstac_endpoint}/searches/{search_id}/WebMercatorQuad/map?{urlencode(params, doseq=True)}\",\n", + " 1200,\n", + " 800,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "f2642ca8-35d7-4ec8-9dd6-6a9eb786b288", + "metadata": {}, + "source": [ + "Et voila! Now you have a view of the most recent images from your STAC collection that had less than 10% cloud cover. This works because we have so much useful information packed into the STAC items - thank goodness for STAC metadata!\n", + "\n", + "What other kinds of filters would be useful to apply?" + ] + }, + { + "cell_type": "markdown", + "id": "520b08f4-1d21-4459-9bdf-559264b93a62", + "metadata": {}, + "source": [ + "## 4.3 band math expressions\n", + "\n", + "Perhaps you want to view NDVI or some other band math expression. You can set `asset_as_band=True` then write a mathematical expression that uses the asset keys as variables which titiler-pgstac will evaluate for each tile.\n", + "\n", + "In the example below you can request tiles for a view of NDVI and specify the colormap from a [list](https://cogeotiff.github.io/rio-tiler/colormap/#intervals-colormaps) of possible values. The results will be calculated on-the-fly by titiler-pgstac for each XYZ tile request, and returned to your map client in this notebook." + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "e2a709d5-9ed9-4260-b653-822875ab19c0", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "params = (\n", + " (\"asset_as_band\", \"True\"),\n", + " (\"expression\", \"(nir - red) / (nir + red)\"),\n", + " (\"colormap_name\", \"viridis\"),\n", + " (\"rescale\", \"-0.5,1\"),\n", + ")\n", + "\n", + "IFrame(\n", + " f\"{titiler_pgstac_endpoint}/collections/{collection_id}/WebMercatorQuad/map?{urlencode(params, doseq=True)}\",\n", + " 1200,\n", + " 800,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "00f0af47-d8c9-4e22-9be0-c00f74b37d0c", + "metadata": {}, + "source": [ + "## 4.4 Customization\n", + "\n", + "eoAPI ships with the default titiler-pgstac application out-of-the-box, but there are several configuration options that you can set using environment variables in the API runtime environment. If there are features or other endpoints (like MosaicJSON capability) that you want to add, you will need to define a custom runtime that extends the default application.\n", + "\n", + "See [maap-eoapi](https://github.com/MAAP-Project/maap-eoapi/tree/main/cdk/runtimes/eoapi/raster/eoapi/raster) for an example of a custom runtime that extends the default settings.\n", + "\n", + "### 4.4.1 /external\n", + "\n", + "Sometimes you may want to render visualizations of data that are **not** cataloged in your STAC. The `/external` family of endpoints can be enabled by setting the environment variable `TITILER_PGSTAC_API_ENABLE_EXTERNAL_DATASET_ENDPOINTS=True`. This will enable you to create tile endpoints for any file available over HTTP.\n", + "\n", + "We have enabled this feature in the deployment that we set up for the workshop (see Line 154 in [infrastructure/app.py](../infrastructure/app.py#L154)).\n", + "\n", + "Here is a link to a cloud-optimized geotiff that you can use to test this feature." + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "47357724-23c2-4f21-8a3f-b49ddfeba4d3", + "metadata": {}, + "outputs": [], + "source": [ + "cog_href = \"https://nasa-maap-data-store.s3.us-west-2.amazonaws.com/file-staging/nasa-map/glad-global-forest-change-v1.11/Hansen_GFC-2023-v1.11_lossyear_40N_080W.tif\"" + ] + }, + { + "cell_type": "markdown", + "id": "2cee76af-e2b8-49ce-a71f-ab8bbce2399b", + "metadata": {}, + "source": [ + "You can get some basic information about a file using the `/external/info` endpoint. You have to use the `url` query parameter to direct titiler-pgstac to the file instead of relying on STAC collection and/or item characteristics because this file is not cataloged in the STAC." + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "ab6b853c-a272-45ce-9f68-7d18c899601c", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " \"bounds\": [\n", + " -80.0,\n", + " 30.0,\n", + " -70.0,\n", + " 40.0\n", + " ],\n", + " \"crs\": \"http://www.opengis.net/def/crs/EPSG/0/4326\",\n", + " \"band_metadata\": [\n", + " [\n", + " \"b1\",\n", + " {}\n", + " ]\n", + " ],\n", + " \"band_descriptions\": [\n", + " [\n", + " \"b1\",\n", + " \"Layer_1\"\n", + " ]\n", + " ],\n", + " \"dtype\": \"uint8\",\n", + " \"nodata_type\": \"None\",\n", + " \"colorinterp\": [\n", + " \"gray\"\n", + " ],\n", + " \"scales\": [\n", + " 1.0\n", + " ],\n", + " \"offsets\": [\n", + " 0.0\n", + " ],\n", + " \"driver\": \"GTiff\",\n", + " \"count\": 1,\n", + " \"width\": 40000,\n", + " \"height\": 40000,\n", + " \"overviews\": [\n", + " 2,\n", + " 4,\n", + " 8,\n", + " 16,\n", + " 32,\n", + " 64,\n", + " 128\n", + " ]\n", + "}\n" + ] + } + ], + "source": [ + "cog_info_request = httpx.get(\n", + " f\"{titiler_pgstac_endpoint}/external/info\",\n", + " params={\n", + " \"url\": cog_href,\n", + " },\n", + ")\n", + "\n", + "print(json.dumps(cog_info_request.json(), indent=2))" + ] + }, + { + "cell_type": "markdown", + "id": "7bc45c7d-fed6-4333-9c4b-fabc842ef526", + "metadata": {}, + "source": [ + "You can learn some basic raster attributes from the response including the CRS, dimensions, data type, etc.\n", + "\n", + "Now try the `/external/preview` endpoint to render a preview of the file." + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "1c308025-3e4d-469d-970e-90718ff35177", + "metadata": {}, + "outputs": [ + { + "data": { + "image/jpeg": "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JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ//2Q==", + "text/plain": [ + "" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "preview_request = httpx.get(\n", + " f\"{titiler_pgstac_endpoint}/external/preview\",\n", + " params={\n", + " \"url\": cog_href,\n", + " \"maxsize\": 2048,\n", + " },\n", + ")\n", + "\n", + "Image(preview_request.content)" + ] + }, + { + "cell_type": "markdown", + "id": "afde6302-6322-418c-aa1d-4955ffb68018", + "metadata": {}, + "source": [ + "That image is very difficult to read because titiler-pgstac does not know how to scale the values in the file to 0-255 when converting it to PNG. You can specify the min/max for the rendering with the `rescale` parameter which takes a pair of comma-separated values. This will make titiler-pgstac rescale the image values such that a value of 0 gets a 0 in the output image and a value of 24 gets 255 (for the purposes of rendering).\n", + "\n", + "You can pick a colormap by name, too. `viridis` is a nice choice." + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "e545f84a-8a68-449f-9b51-4caa66352d39", + "metadata": {}, + "outputs": [ + { + "data": { + "image/jpeg": "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VVUlVVSVVVJVVUlVVSVVVJVVUlVVSVVVJVVUlVVSVVVJVVUlVVSVVVJVVUlVVSVVVJVVUlVVSVVVJWWSeWSCKBn/AIotlFA0AT8n+pOh5PnQA+ALFVNGkGCdmZMmZZfVLLI3pmPcqCTSleHwwPwPg/I0CNECw1VqAgAMKqq22qqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqkqqqSqqpKqqk//2Q==", + "text/plain": [ + "" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "preview_request = httpx.get(\n", + " f\"{titiler_pgstac_endpoint}/external/preview\",\n", + " params={\n", + " \"url\": cog_href,\n", + " \"maxsize\": 2048,\n", + " \"colormap_name\": \"viridis\",\n", + " \"rescale\": \"0,24\",\n", + " },\n", + ")\n", + "\n", + "Image(preview_request.content)" + ] + }, + { + "cell_type": "markdown", + "id": "cfbd601c-4722-4698-9a16-de8e7ec3958f", + "metadata": {}, + "source": [ + "That's great but what if you have a particular colormap that you want to specify for this dataset?\n", + "\n", + "### 4.4.2 Manual colormaps\n", + "\n", + "The file you inspected in the previous step contains information about the year in which forest cover was lost for each pixel. There is a specific color map that you want to use because it is consistent with publications that discuss the dataset.\n", + "\n", + "titiler allows you to provide a colormap in JSON form but it requires some careful handling in the request. This colormap consists of `value: [r, g, b]` pairs for each unique value in the dataset. It can be passed to titiler-pgstac's `colormap` parameter by writing the dictionary to a JSON string with `json.dumps`." + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "ec04e2de-cb72-421c-954e-2a87ee87f477", + "metadata": {}, + "outputs": [ + { + "data": { + "image/jpeg": "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jGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwzYxjDNjGMM2MYwz/AP/Z", + "text/plain": [ + "" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "colormap = {\n", + " 0: [0, 0, 0],\n", + " 1: [255, 255, 0],\n", + " 2: [255, 243, 0],\n", + " 3: [255, 230, 0],\n", + " 4: [255, 217, 0],\n", + " 5: [255, 204, 0],\n", + " 6: [255, 192, 0],\n", + " 7: [255, 179, 0],\n", + " 8: [255, 166, 0],\n", + " 9: [255, 153, 0],\n", + " 10: [255, 140, 0],\n", + " 11: [255, 128, 0],\n", + " 12: [255, 116, 0],\n", + " 13: [255, 105, 0],\n", + " 14: [255, 93, 0],\n", + " 15: [255, 81, 0],\n", + " 16: [255, 70, 0],\n", + " 17: [255, 58, 0],\n", + " 18: [255, 46, 0],\n", + " 19: [255, 35, 0],\n", + " 20: [255, 23, 0],\n", + " 21: [255, 12, 0],\n", + " 22: [255, 0, 0],\n", + " 23: [0, 255, 255],\n", + "}\n", + "\n", + "preview_request = httpx.get(\n", + " f\"{titiler_pgstac_endpoint}/external/preview\",\n", + " params={\n", + " \"url\": cog_href,\n", + " \"maxsize\": 2048,\n", + " #\n", + " \"colormap\": json.dumps({i: rgb for i, rgb in colormap.items()}),\n", + " },\n", + ")\n", + "\n", + "Image(preview_request.content)" + ] + }, + { + "cell_type": "markdown", + "id": "7b52e0c1-624d-453e-8325-3925679736d6", + "metadata": {}, + "source": [ + "Now that you have your colormap sorted out try rendering the image in an interactive map like the previous examples by sending a request to `/external/WebMercatorQuad/map`." + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "id": "3b41341a-a1b4-4a72-8d29-ef730b0d8fa5", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "map_request = httpx.get(\n", + " f\"{titiler_pgstac_endpoint}/external/WebMercatorQuad/map\",\n", + " params={\n", + " \"url\": cog_href,\n", + " \"maxsize\": 2048,\n", + " \"colormap\": json.dumps({i: rgb for i, rgb in colormap.items()}),\n", + " },\n", + ")\n", + "\n", + "\n", + "IFrame(\n", + " map_request.url,\n", + " 1200,\n", + " 800,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "7061c465-7d64-49f5-9f18-1b33076fa698", + "metadata": {}, + "source": [ + "What a nice view of that cloud-optimized geotiff, right? It would be better if you could browse the entire global dataset in a map like this, though. You could do that if you loaded the dataset into your STAC!\n", + "\n", + "This particular dataset is loaded in [NASA MAAP](https://maap-project.org)'s STAC and is accessible on that organization's titiler-pgstac deployment so here is a sneak peak of the global view (be patient it can take a few seconds for a titiler-pgstac running on AWS Lambda to warm up!)." + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "eeafa77e-b975-478c-82cc-7acca83aabaa", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "map_request = httpx.get(\n", + " \"https://titiler-pgstac.maap-project.org/collections/glad-global-forest-change-1.11/WebMercatorQuad/map\",\n", + " params={\n", + " \"assets\": \"lossyear\",\n", + " \"colormap\": json.dumps({i: rgb for i, rgb in colormap.items()}),\n", + " },\n", + " timeout=None,\n", + ")\n", + "\n", + "\n", + "IFrame(\n", + " map_request.url,\n", + " 1200,\n", + " 800,\n", + ")" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.10" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/docs/05-tipg.ipynb b/docs/05-tipg.ipynb new file mode 100644 index 0000000..8170d15 --- /dev/null +++ b/docs/05-tipg.ipynb @@ -0,0 +1,1204 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "416f1814-d6af-4a4e-8217-33fddc226f95", + "metadata": {}, + "source": [ + "# 5. The Vector API: tipg\n", + "\n", + "\n", + "\n", + "No geospatial data stack is complete without a mechanism for serving vector features as GeoJSON or for consumption in web maps as vector tiles. **tipg** is the component that fills that niche in eoAPI.\n", + "\n", + "From the tipg README:\n", + "> `tipg`, pronounced *T[ee]pg*, is a **Python** package that helps create lightweight OGC **Features** and **Tiles** API with a PostGIS Database backend. The API has been designed for [OGC Features](https://ogcapi.ogc.org/features) and [OGC Tiles](https://ogcapi.ogc.org/tiles/) specifications.\n", + "\n", + "In addition to serving existing features from a pre-defined set of tables in a PostGIS-enabled PostgreSQL database, it can serve features from custom views defined in user-defined PostgreSQL functions." + ] + }, + { + "cell_type": "markdown", + "id": "c3506c50-f4bd-45c4-bce7-b9336f3a41e7", + "metadata": {}, + "source": [ + "## 5.1 Configuration\n", + "\n", + "In an eoAPI stack, tipg can be connected to any PostgreSQL database including the existing pgstac database. This is controlled by the `POSTGRES_*` environment variables in the application runtime.\n", + "\n", + "When deploying tipg, you can specify which schemas in your database will be exposed to the tipg API. This is controlled by the `TIPG_DB_SCHEMAS` environment variable.\n", + "\n", + "For the workshop we have created a schema in the pgstac database called `features` that you will be working with. To expose this schema to tipg we set `TIPG_DB_SCHEMAS=[\"features\"]` in the application runtime (see line 178 in [infrastructure/app.py](../infrastructure/app.py)). There is one table that has been pre-loaded (`features.terrestrial_ecoregions`) for the examples in this notebook.\n", + "\n", + "### Additional resources:\n", + "- tipg configuration docs: " + ] + }, + { + "cell_type": "markdown", + "id": "45ac9635-b646-44f7-89c7-d6e3c20c5264", + "metadata": {}, + "source": [ + "## 5.2 OGC API - Features\n", + "tipg contains an OGC Features API that is interoperable with many existing applications.\n", + "\n", + "\n", + "\n", + "Each table in the PostgreSQL schema represents a single collection. The list of collections available to tipg can be obtained with a GET request to the `/collections` endpoint" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "25e1b941-7abd-43c5-a8fc-5a298a3edb4c", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " \"links\": [\n", + " {\n", + " \"href\": \"https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/collections\",\n", + " \"rel\": \"self\",\n", + " \"type\": \"application/json\"\n", + " }\n", + " ],\n", + " \"numberMatched\": 1,\n", + " \"numberReturned\": 1,\n", + " \"collections\": [\n", + " {\n", + " \"id\": \"features.terrestrial_ecoregions\",\n", + " \"title\": \"features.terrestrial_ecoregions\",\n", + " \"links\": [\n", + " {\n", + " \"href\": \"https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/collections/features.terrestrial_ecoregions\",\n", + " \"rel\": \"collection\",\n", + " \"type\": \"application/json\"\n", + " },\n", + " {\n", + " \"href\": \"https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/collections/features.terrestrial_ecoregions/items\",\n", + " \"rel\": \"items\",\n", + " \"type\": \"application/geo+json\"\n", + " },\n", + " {\n", + " \"href\": \"https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/collections/features.terrestrial_ecoregions/queryables\",\n", + " \"rel\": \"queryables\",\n", + " \"type\": \"application/schema+json\"\n", + " },\n", + " {\n", + " \"href\": \"https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/collections/features.terrestrial_ecoregions/tiles\",\n", + " \"rel\": \"data\",\n", + " \"type\": \"application/json\",\n", + " \"title\": \"Collection TileSets\"\n", + " },\n", + " {\n", + " \"href\": \"https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/collections/features.terrestrial_ecoregions/tiles/{tileMatrixSetId}\",\n", + " \"rel\": \"data\",\n", + " \"type\": \"application/json\",\n", + " \"templated\": true,\n", + " \"title\": \"Collection TileSet (Template URL)\"\n", + " },\n", + " {\n", + " \"href\": \"https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/collections/features.terrestrial_ecoregions/tiles/{tileMatrixSetId}/viewer\",\n", + " \"rel\": \"data\",\n", + " \"type\": \"text/html\",\n", + " \"templated\": true,\n", + " \"title\": \"Collection Map viewer (Template URL)\"\n", + " }\n", + " ],\n", + " \"extent\": {\n", + " \"spatial\": {\n", + " \"bbox\": [\n", + " [\n", + " -180.0,\n", + " -89.89197540283203,\n", + " 180.0,\n", + " 83.62313079833984\n", + " ]\n", + " ],\n", + " \"crs\": \"http://www.opengis.net/def/crs/OGC/1.3/CRS84\"\n", + " }\n", + " },\n", + " \"itemType\": \"feature\",\n", + " \"crs\": [\n", + " \"http://www.opengis.net/def/crs/OGC/1.3/CRS84\"\n", + " ]\n", + " }\n", + " ]\n", + "}\n" + ] + } + ], + "source": [ + "import json\n", + "import os\n", + "\n", + "import httpx\n", + "\n", + "tipg_endpoint = os.getenv(\"TIPG_API_ENDPOINT\")\n", + "\n", + "collections_request = httpx.get(f\"{tipg_endpoint}/collections\")\n", + "\n", + "print(json.dumps(collections_request.json(), indent=2))" + ] + }, + { + "cell_type": "markdown", + "id": "c867ca53-2cf2-4584-a6bc-28930c1be953", + "metadata": {}, + "source": [ + "Each collection has a set of links associated with it including:\n", + "- `/collections/{collection_id}/queryables`: describes the fields that can be used for filtering features\n", + "- `/collections/{collection_id}/items`: where features can be accessed\n", + "- `/collections/{collection_id}/tiles`: list of tile matrix set IDs that are available for tile requests\n", + "- `/collections/{collection_id}/tiles/{tileMatrixSetId}`: returns a tilejson for a vector tile layer\n", + "- `/collections/{collection_id}/tiles/{tileMatrixSetId}/viewer`: interactive map of the collection\n", + "\n", + "The `/items`, `/tiles/{tileMatrixSetId}`, and `/tiles/{tileMatrixSetId}/viewer` endpoints will all accept field filters in the form of `{queryable}={value}` where `queryable` is one of the fields listed in the `/queryables` response for that collection." + ] + }, + { + "cell_type": "markdown", + "id": "1961c2fd-9e02-47ef-a63e-1832b9ce0546", + "metadata": {}, + "source": [ + "### 5.2.2 /collections/{collection_id/queryables\n", + "\n", + "The `/queryables` endpoint returns a list of fields that can be used to filter features in requests for a collection:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "bcf33106-51c5-49b2-9324-743362ec3af2", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " \"title\": \"features.terrestrial_ecoregions\",\n", + " \"properties\": {\n", + " \"geom\": {\n", + " \"$ref\": \"https://geojson.org/schema/MultiPolygon.json\"\n", + " },\n", + " \"area\": {\n", + " \"name\": \"area\",\n", + " \"type\": \"number\"\n", + " },\n", + " \"area_km2\": {\n", + " \"name\": \"area_km2\",\n", + " \"type\": \"number\"\n", + " },\n", + " \"biome\": {\n", + " \"name\": \"biome\",\n", + " \"type\": \"number\"\n", + " },\n", + " \"eco_code\": {\n", + " \"name\": \"eco_code\",\n", + " \"type\": \"string\"\n", + " },\n", + " \"eco_id\": {\n", + " \"name\": \"eco_id\",\n", + " \"type\": \"number\"\n", + " },\n", + " \"eco_name\": {\n", + " \"name\": \"eco_name\",\n", + " \"type\": \"string\"\n", + " },\n", + " \"eco_num\": {\n", + " \"name\": \"eco_num\",\n", + " \"type\": \"number\"\n", + " },\n", + " \"eco_sym\": {\n", + " \"name\": \"eco_sym\",\n", + " \"type\": \"number\"\n", + " },\n", + " \"g200_biome\": {\n", + " \"name\": \"g200_biome\",\n", + " \"type\": \"number\"\n", + " },\n", + " \"g200_num\": {\n", + " \"name\": \"g200_num\",\n", + " \"type\": \"number\"\n", + " },\n", + " \"g200_regio\": {\n", + " \"name\": \"g200_regio\",\n", + " \"type\": \"string\"\n", + " },\n", + " \"g200_stat\": {\n", + " \"name\": \"g200_stat\",\n", + " \"type\": \"number\"\n", + " },\n", + " \"gbl_stat\": {\n", + " \"name\": \"gbl_stat\",\n", + " \"type\": \"number\"\n", + " },\n", + " \"id\": {\n", + " \"name\": \"id\",\n", + " \"type\": \"number\"\n", + " },\n", + " \"objectid\": {\n", + " \"name\": \"objectid\",\n", + " \"type\": \"number\"\n", + " },\n", + " \"per_area\": {\n", + " \"name\": \"per_area\",\n", + " \"type\": \"number\"\n", + " },\n", + " \"per_area_1\": {\n", + " \"name\": \"per_area_1\",\n", + " \"type\": \"number\"\n", + " },\n", + " \"per_area_2\": {\n", + " \"name\": \"per_area_2\",\n", + " \"type\": \"number\"\n", + " },\n", + " \"perimeter\": {\n", + " \"name\": \"perimeter\",\n", + " \"type\": \"number\"\n", + " },\n", + " \"realm\": {\n", + " \"name\": \"realm\",\n", + " \"type\": \"string\"\n", + " },\n", + " \"shape_area\": {\n", + " \"name\": \"shape_area\",\n", + " \"type\": \"number\"\n", + " },\n", + " \"shape_leng\": {\n", + " \"name\": \"shape_leng\",\n", + " \"type\": \"number\"\n", + " }\n", + " },\n", + " \"type\": \"object\",\n", + " \"$schema\": \"https://json-schema.org/draft/2019-09/schema\",\n", + " \"$id\": \"https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/collections/features.terrestrial_ecoregions/queryables\"\n", + "}\n" + ] + } + ], + "source": [ + "collection_id = \"features.terrestrial_ecoregions\"\n", + "\n", + "queryables_request = httpx.get(\n", + " f\"{tipg_endpoint}/collections/{collection_id}/queryables\"\n", + ")\n", + "\n", + "print(json.dumps(queryables_request.json(), indent=2))" + ] + }, + { + "cell_type": "markdown", + "id": "ae165899-69b5-403f-b15f-116e42bd1cd1", + "metadata": {}, + "source": [ + "### 5.2.2 /collections/{collection_id}/items\n", + "\n", + "The `/items` endpoint for a collection can be used to retrieve paginated lists of features in a number of formats:\n", + " - GeoJSON\n", + " - CSV\n", + " - JSON\n", + " - GeoJSON Sequence\n", + " - NDJSON (new-line-delimited JSON)\n", + " - HTML (for viewing in a browser)\n", + "\n", + "[source](https://github.com/developmentseed/tipg/blob/1a2e5eb6816d51f97ae1d5bbc1d1e952d996987b/tipg/factory.py#L757-L762)\n", + "\n", + "Try retrieving a page of results from the `features.terrestrial_ecoregions` collection. This will return a GeoJSON FeatureCollection with two features (`limit=2`):" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "0be96e36-956a-4486-aea1-d09314b2b49b", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " \"type\": \"FeatureCollection\",\n", + " \"id\": \"features.terrestrial_ecoregions\",\n", + " \"title\": \"features.terrestrial_ecoregions\",\n", + " \"description\": \"features.terrestrial_ecoregions\",\n", + " \"numberMatched\": 14458,\n", + " \"numberReturned\": 2,\n", + " \"links\": [\n", + " {\n", + " \"title\": \"Collection\",\n", + " \"href\": \"https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/collections/features.terrestrial_ecoregions\",\n", + " \"rel\": \"collection\",\n", + " \"type\": \"application/json\"\n", + " },\n", + " {\n", + " \"title\": \"Items\",\n", + " \"href\": \"https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/collections/features.terrestrial_ecoregions/items?f=geojson&limit=2\",\n", + " \"rel\": \"self\",\n", + " \"type\": \"application/geo+json\"\n", + " },\n", + " {\n", + " \"href\": \"https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/collections/features.terrestrial_ecoregions/items?f=geojson&limit=2&offset=2\",\n", + " \"rel\": \"next\",\n", + " \"type\": \"application/geo+json\",\n", + " \"title\": \"Next page\"\n", + " }\n", + " ],\n", + " \"features\": [\n", + " {\n", + " \"type\": \"Feature\",\n", + " \"geometry\": {\n", + " \"type\": \"MultiPolygon\",\n", + " \"coordinates\": [\n", + " [\n", + " [\n", + " [\n", + " -112.269721533,\n", + " 29.326477674\n", + " ],\n", + " [\n", + " -112.288085612,\n", + " 29.326271814\n", + " ],\n", + " [\n", + " -112.30207065,\n", + " 29.321869806\n", + " ],\n", + " [\n", + " -112.313644549,\n", + " 29.320189905\n", + " ],\n", + " [\n", + " -112.320777549,\n", + " 29.316841167\n", + " ],\n", + " [\n", + " -112.324989623,\n", + " 29.315979172\n", + " ],\n", + " [\n", + " -112.329490537,\n", + " 29.317375095\n", + " ],\n", + " [\n", + " -112.33276367,\n", + " 29.320391909\n", + " ],\n", + " [\n", + " -112.336730658,\n", + " 29.320041043\n", + " ],\n", + " [\n", + " -112.343643548,\n", + " 29.314392143\n", + " ],\n", + " [\n", + " -112.347297555,\n", + " 29.315589079\n", + " ],\n", + " [\n", + " -112.349532674,\n", + " 29.318044138\n", + " ],\n", + " [\n", + " -112.350349574,\n", + " 29.320272048\n", + " ],\n", + " [\n", + " -112.350341527,\n", + " 29.322913856\n", + " ],\n", + " [\n", + " -112.348998579,\n", + " 29.328520511\n", + " ],\n", + " [\n", + " -112.346343527,\n", + " 29.333462314\n", + " ],\n", + " [\n", + " -112.343353535,\n", + " 29.34005401\n", + " ],\n", + " [\n", + " -112.337051685,\n", + " 29.34927578\n", + " ],\n", + " [\n", + " -112.334724533,\n", + " 29.353559603\n", + " ],\n", + " [\n", + " -112.332076522,\n", + " 29.357179579\n", + " ],\n", + " [\n", + " -112.32678268,\n", + " 29.362443415\n", + " ],\n", + " [\n", + " -112.323142587,\n", + " 29.365402226\n", + " ],\n", + " [\n", + " -112.318191564,\n", + " 29.367363927\n", + " ],\n", + " [\n", + " -112.310600577,\n", + " 29.367335931\n", + " ],\n", + " [\n", + " -112.305328528,\n", + " 29.366327086\n", + " ],\n", + " [\n", + " -112.30072066,\n", + " 29.364000269\n", + " ],\n", + " [\n", + " -112.288543599,\n", + " 29.356033438\n", + " ],\n", + " [\n", + " -112.281631546,\n", + " 29.352044658\n", + " ],\n", + " [\n", + " -112.276695611,\n", + " 29.347406951\n", + " ],\n", + " [\n", + " -112.274070567,\n", + " 29.344095931\n", + " ],\n", + " [\n", + " -112.270789555,\n", + " 29.338803095\n", + " ],\n", + " [\n", + " -112.268165684,\n", + " 29.335492243\n", + " ],\n", + " [\n", + " -112.267471662,\n", + " 29.331038435\n", + " ],\n", + " [\n", + " -112.269721533,\n", + " 29.326477674\n", + " ]\n", + " ]\n", + " ]\n", + " ]\n", + " },\n", + " \"id\": 1,\n", + " \"properties\": {\n", + " \"area\": 29.8029417004,\n", + " \"area_km2\": 8174,\n", + " \"biome\": 14.0,\n", + " \"eco_code\": \"NT1404\",\n", + " \"eco_id\": 61404.0,\n", + " \"eco_name\": \"Northern Mesoamerican Pacific mangroves\",\n", + " \"eco_num\": 4.0,\n", + " \"eco_sym\": 119.0,\n", + " \"g200_biome\": 0.0,\n", + " \"g200_num\": 0.0,\n", + " \"g200_regio\": null,\n", + " \"g200_stat\": 0.0,\n", + " \"gbl_stat\": 1.0,\n", + " \"id\": 1,\n", + " \"objectid\": 1,\n", + " \"per_area\": 0.0,\n", + " \"per_area_1\": 0.0,\n", + " \"per_area_2\": 0.0,\n", + " \"perimeter\": 0.219,\n", + " \"realm\": \"NT\",\n", + " \"shape_area\": 0.00276856457,\n", + " \"shape_leng\": 0.21947541388\n", + " },\n", + " \"links\": [\n", + " {\n", + " \"title\": \"Collection\",\n", + " \"href\": \"https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/collections/features.terrestrial_ecoregions\",\n", + " \"rel\": \"collection\",\n", + " \"type\": \"application/json\"\n", + " },\n", + " {\n", + " \"title\": \"Item\",\n", + " \"href\": \"https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/collections/features.terrestrial_ecoregions/items/1\",\n", + " \"rel\": \"item\",\n", + " \"type\": \"application/geo+json\"\n", + " }\n", + " ]\n", + " },\n", + " {\n", + " \"type\": \"Feature\",\n", + " \"geometry\": {\n", + " \"type\": \"MultiPolygon\",\n", + " \"coordinates\": [\n", + " [\n", + " [\n", + " [\n", + " -112.199066615,\n", + " 29.175277696\n", + " ],\n", + " [\n", + " -112.207397556,\n", + " 29.177438383\n", + " ],\n", + " [\n", + " -112.213943655,\n", + " 29.177302596\n", + " ],\n", + " [\n", + " -112.218963577,\n", + " 29.175076698\n", + " ],\n", + " [\n", + " -112.222885637,\n", + " 29.175593694\n", + " ],\n", + " [\n", + " -112.224418687,\n", + " 29.177682464\n", + " ],\n", + " [\n", + " -112.21676668,\n", + " 29.195259818\n", + " ],\n", + " [\n", + " -112.203399556,\n", + " 29.238253114\n", + " ],\n", + " [\n", + " -112.20394153,\n", + " 29.255748325\n", + " ],\n", + " [\n", + " -112.198890595,\n", + " 29.24412581\n", + " ],\n", + " [\n", + " -112.195609583,\n", + " 29.238833141\n", + " ],\n", + " [\n", + " -112.198615669,\n", + " 29.229600475\n", + " ],\n", + " [\n", + " -112.198974582,\n", + " 29.22200865\n", + " ],\n", + " [\n", + " -112.197013552,\n", + " 29.215727922\n", + " ],\n", + " [\n", + " -112.19638055,\n", + " 29.208463327\n", + " ],\n", + " [\n", + " -112.194427567,\n", + " 29.200533544\n", + " ],\n", + " [\n", + " -112.194122633,\n", + " 29.194259689\n", + " ],\n", + " [\n", + " -112.19581561,\n", + " 29.181721368\n", + " ],\n", + " [\n", + " -112.199066615,\n", + " 29.175277696\n", + " ]\n", + " ]\n", + " ]\n", + " ]\n", + " },\n", + " \"id\": 2,\n", + " \"properties\": {\n", + " \"area\": 11.977823573,\n", + " \"area_km2\": 8174,\n", + " \"biome\": 14.0,\n", + " \"eco_code\": \"NT1404\",\n", + " \"eco_id\": 61404.0,\n", + " \"eco_name\": \"Northern Mesoamerican Pacific mangroves\",\n", + " \"eco_num\": 4.0,\n", + " \"eco_sym\": 119.0,\n", + " \"g200_biome\": 0.0,\n", + " \"g200_num\": 0.0,\n", + " \"g200_regio\": null,\n", + " \"g200_stat\": 0.0,\n", + " \"gbl_stat\": 1.0,\n", + " \"id\": 2,\n", + " \"objectid\": 2,\n", + " \"per_area\": 0.0,\n", + " \"per_area_1\": 0.0,\n", + " \"per_area_2\": 0.0,\n", + " \"perimeter\": 0.193,\n", + " \"realm\": \"NT\",\n", + " \"shape_area\": 0.00111124492,\n", + " \"shape_leng\": 0.19328912274\n", + " },\n", + " \"links\": [\n", + " {\n", + " \"title\": \"Collection\",\n", + " \"href\": \"https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/collections/features.terrestrial_ecoregions\",\n", + " \"rel\": \"collection\",\n", + " \"type\": \"application/json\"\n", + " },\n", + " {\n", + " \"title\": \"Item\",\n", + " \"href\": \"https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/collections/features.terrestrial_ecoregions/items/2\",\n", + " \"rel\": \"item\",\n", + " \"type\": \"application/geo+json\"\n", + " }\n", + " ]\n", + " }\n", + " ]\n", + "}\n" + ] + } + ], + "source": [ + "geojson_request = httpx.get(\n", + " f\"{tipg_endpoint}/collections/{collection_id}/items\",\n", + " params={\"f\": \"geojson\", \"limit\": 2},\n", + ")\n", + "geojson_response = geojson_request.json()\n", + "print(json.dumps(geojson_response, indent=2))" + ] + }, + { + "cell_type": "markdown", + "id": "fb774d33-1fe4-47be-93f4-1a794a2e2f7a", + "metadata": {}, + "source": [ + "You can request a sequence of GeoJSON features separated by new lines with `f=geojsonseq`" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "fe8eb885-daf7-4d70-bc3d-579cc544c399", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\"type\":\"Feature\",\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[-112.269721533,29.326477674],[-112.288085612,29.326271814],[-112.30207065,29.321869806],[-112.313644549,29.320189905],[-112.320777549,29.316841167],[-112.324989623,29.315979172],[-112.329490537,29.317375095],[-112.33276367,29.320391909],[-112.336730658,29.320041043],[-112.343643548,29.314392143],[-112.347297555,29.315589079],[-112.349532674,29.318044138],[-112.350349574,29.320272048],[-112.350341527,29.322913856],[-112.348998579,29.328520511],[-112.346343527,29.333462314],[-112.343353535,29.34005401],[-112.337051685,29.34927578],[-112.334724533,29.353559603],[-112.332076522,29.357179579],[-112.32678268,29.362443415],[-112.323142587,29.365402226],[-112.318191564,29.367363927],[-112.310600577,29.367335931],[-112.305328528,29.366327086],[-112.30072066,29.364000269],[-112.288543599,29.356033438],[-112.281631546,29.352044658],[-112.276695611,29.347406951],[-112.274070567,29.344095931],[-112.270789555,29.338803095],[-112.268165684,29.335492243],[-112.267471662,29.331038435],[-112.269721533,29.326477674]]]]},\"id\":1,\"properties\":{\"area\":29.8029417004,\"area_km2\":8174,\"biome\":14.0,\"eco_code\":\"NT1404\",\"eco_id\":61404.0,\"eco_name\":\"Northern Mesoamerican Pacific mangroves\",\"eco_num\":4.0,\"eco_sym\":119.0,\"g200_biome\":0.0,\"g200_num\":0.0,\"g200_regio\":null,\"g200_stat\":0.0,\"gbl_stat\":1.0,\"id\":1,\"objectid\":1,\"per_area\":0.0,\"per_area_1\":0.0,\"per_area_2\":0.0,\"perimeter\":0.219,\"realm\":\"NT\",\"shape_area\":0.00276856457,\"shape_leng\":0.21947541388},\"links\":[{\"title\":\"Collection\",\"href\":\"https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/collections/features.terrestrial_ecoregions\",\"rel\":\"collection\",\"type\":\"application/json\"},{\"title\":\"Item\",\"href\":\"https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/collections/features.terrestrial_ecoregions/items/1\",\"rel\":\"item\",\"type\":\"application/geo+json\"}]}\n", + "{\"type\":\"Feature\",\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[-112.199066615,29.175277696],[-112.207397556,29.177438383],[-112.213943655,29.177302596],[-112.218963577,29.175076698],[-112.222885637,29.175593694],[-112.224418687,29.177682464],[-112.21676668,29.195259818],[-112.203399556,29.238253114],[-112.20394153,29.255748325],[-112.198890595,29.24412581],[-112.195609583,29.238833141],[-112.198615669,29.229600475],[-112.198974582,29.22200865],[-112.197013552,29.215727922],[-112.19638055,29.208463327],[-112.194427567,29.200533544],[-112.194122633,29.194259689],[-112.19581561,29.181721368],[-112.199066615,29.175277696]]]]},\"id\":2,\"properties\":{\"area\":11.977823573,\"area_km2\":8174,\"biome\":14.0,\"eco_code\":\"NT1404\",\"eco_id\":61404.0,\"eco_name\":\"Northern Mesoamerican Pacific mangroves\",\"eco_num\":4.0,\"eco_sym\":119.0,\"g200_biome\":0.0,\"g200_num\":0.0,\"g200_regio\":null,\"g200_stat\":0.0,\"gbl_stat\":1.0,\"id\":2,\"objectid\":2,\"per_area\":0.0,\"per_area_1\":0.0,\"per_area_2\":0.0,\"perimeter\":0.193,\"realm\":\"NT\",\"shape_area\":0.00111124492,\"shape_leng\":0.19328912274},\"links\":[{\"title\":\"Collection\",\"href\":\"https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/collections/features.terrestrial_ecoregions\",\"rel\":\"collection\",\"type\":\"application/json\"},{\"title\":\"Item\",\"href\":\"https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/collections/features.terrestrial_ecoregions/items/2\",\"rel\":\"item\",\"type\":\"application/geo+json\"}]}\n", + "\n" + ] + } + ], + "source": [ + "geojsonseq_request = httpx.get(\n", + " f\"{tipg_endpoint}/collections/{collection_id}/items\",\n", + " params={\"f\": \"geojsonseq\", \"limit\": 2},\n", + ")\n", + "\n", + "print(geojsonseq_request.text)" + ] + }, + { + "cell_type": "markdown", + "id": "a17c0497-511a-4b7e-9b92-84b0e23dd24b", + "metadata": {}, + "source": [ + "You can apply a filter using the fields returned in the `/queryables` endpoint for a collection:" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "9b1271eb-d653-4452-a4f1-c0f178305c9d", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "77 features match this filtered request out of 14458 features in the entire collection\n" + ] + } + ], + "source": [ + "filtered_request = httpx.get(\n", + " f\"{tipg_endpoint}/collections/{collection_id}/items\",\n", + " params={\n", + " \"eco_name\": \"Northern Mesoamerican Pacific mangroves\",\n", + " \"f\": \"geojson\",\n", + " \"limit\": 2,\n", + " },\n", + ")\n", + "\n", + "filtered_response = filtered_request.json()\n", + "print(\n", + " f\"{filtered_response['numberMatched']} features match this filtered request\",\n", + " f\"out of {geojson_response['numberMatched']} features in the entire collection\",\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "25f60170-0b5d-4835-a81c-4459feee212a", + "metadata": {}, + "source": [ + "In addition to field-based filters, you can use other standard filter mechanisms:\n", + "- `ids`: limit to a comma-separated list of feature ids\n", + "- `bbox`: filter by bounding box\n", + "- `datetime`: filter by datetime (use with `datetime-column` parameter)\n", + "- `filter`: apply a CQL2 filter (use with `filter-lang` parameter set to cql2-text or cql2-json) for more complex filter operations" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "2aafc321-ae06-469e-91ea-63c53ebb0733", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "5 features match this filtered request out of 14458 features in the entire collection\n" + ] + } + ], + "source": [ + "# filter by bounding box\n", + "bbox_filtered_request = httpx.get(\n", + " f\"{tipg_endpoint}/collections/{collection_id}/items\",\n", + " params={\"bbox\": \"-77,39,-76,40\", \"f\": \"geojson\", \"limit\": 2},\n", + ")\n", + "\n", + "bbox_filtered_response = bbox_filtered_request.json()\n", + "print(\n", + " f\"{bbox_filtered_response['numberMatched']} features match this filtered request\",\n", + " f\"out of {geojson_response['numberMatched']} features in the entire collection\",\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "bdb2a8c2-94f4-4064-9cc9-1275fe22c053", + "metadata": {}, + "source": [ + "tipg also comes with a convenient HTML response type which makes it possible to interact with the endpoints in your browser. The returned geojson features from a `/items` request will be displayed in a map!" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "7be40619-e4e4-4211-ad5b-303a82834a70", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from IPython.display import IFrame\n", + "\n", + "bbox_filtered_request = httpx.get(\n", + " f\"{tipg_endpoint}/collections/{collection_id}/items\",\n", + " params={\n", + " \"bbox\": \"-77,39,-76,40\",\n", + " \"f\": \"html\",\n", + " },\n", + ")\n", + "\n", + "IFrame(\n", + " bbox_filtered_request.url,\n", + " width=1200,\n", + " height=800,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "8a13692f-e964-4f14-b206-d4ff8da5035d", + "metadata": {}, + "source": [ + "Here is a view of the full API docs for the `/collections/{collection_id}/items` endpoint:" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "9eb89183-7cf6-482d-aabf-8066a141928f", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "IFrame(\n", + " f\"{tipg_endpoint}/api.html#OGC Features API/items_collections__collectionId__items_get\",\n", + " width=1200,\n", + " height=800,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "fa9c7359-4502-4c4a-95ab-96e1e4c77e46", + "metadata": {}, + "source": [ + "## 5.3 OGC API - Tiles\n", + "\n", + "tipg also serves an OGC Tiles API for vector tiles.\n", + "\n", + "\n", + "\n", + "The Tiles API works exactly like the Features API but instead of taking requests for entire features it accepts requests for XYZ vector tiles that are very useful for streaming vector data into map client applications. This is useful because it will becomes impracticalimpossible to stream all of a collection's features into a map application as a geojson - tipg moves the simplification and filtering operations up to the PostGIS database and returns the minimum required data to the map client." + ] + }, + { + "cell_type": "markdown", + "id": "5c1595fd-48db-4bc3-bfb5-774025e001bf", + "metadata": {}, + "source": [ + "### 5.3.1 /collections/{collection_id/tiles/{tileMatrixSetId}/tilejson.json\n", + "\n", + "The `tilejson` endpoint is the most useful for adding vector tile layers to a map application. The response contains information about the available fields (which can be used for styling the vector tiles), the full collection extent, and the XYZ tile url that can be loaded as a layer in a map." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "962d67f3-95cd-410f-92a4-df6c343a26eb", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " \"tilejson\": \"3.0.0\",\n", + " \"name\": \"features.terrestrial_ecoregions\",\n", + " \"version\": \"1.0.0\",\n", + " \"scheme\": \"xyz\",\n", + " \"tiles\": [\n", + " \"https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/collections/features.terrestrial_ecoregions/tiles/WebMercatorQuad/{z}/{x}/{y}\"\n", + " ],\n", + " \"vector_layers\": [\n", + " {\n", + " \"id\": \"default\",\n", + " \"fields\": {\n", + " \"area\": \"number\",\n", + " \"area_km2\": \"number\",\n", + " \"biome\": \"number\",\n", + " \"eco_code\": \"string\",\n", + " \"eco_id\": \"number\",\n", + " \"eco_name\": \"string\",\n", + " \"eco_num\": \"number\",\n", + " \"eco_sym\": \"number\",\n", + " \"g200_biome\": \"number\",\n", + " \"g200_num\": \"number\",\n", + " \"g200_regio\": \"string\",\n", + " \"g200_stat\": \"number\",\n", + " \"gbl_stat\": \"number\",\n", + " \"id\": \"number\",\n", + " \"objectid\": \"number\",\n", + " \"per_area\": \"number\",\n", + " \"per_area_1\": \"number\",\n", + " \"per_area_2\": \"number\",\n", + " \"perimeter\": \"number\",\n", + " \"realm\": \"string\",\n", + " \"shape_area\": \"number\",\n", + " \"shape_leng\": \"number\"\n", + " },\n", + " \"minzoom\": 0,\n", + " \"maxzoom\": 22\n", + " }\n", + " ],\n", + " \"minzoom\": 0,\n", + " \"maxzoom\": 22,\n", + " \"bounds\": [\n", + " -180.0,\n", + " -89.89197540283203,\n", + " 180.0,\n", + " 83.62313079833984\n", + " ],\n", + " \"center\": [\n", + " 0.0,\n", + " -3.1344223022460938,\n", + " 0\n", + " ]\n", + "}\n" + ] + } + ], + "source": [ + "tilejson_request = httpx.get(\n", + " f\"{tipg_endpoint}/collections/{collection_id}/tiles/WebMercatorQuad/tilejson.json\",\n", + ")\n", + "tilejson_response = tilejson_request.json()\n", + "print(json.dumps(tilejson_response, indent=2))" + ] + }, + { + "cell_type": "markdown", + "id": "f77155de-5c6f-470d-b2cc-293023d24f28", + "metadata": {}, + "source": [ + "All of the same rules for queryables and query parameters from the `/items` endpoint apply to the `/tiles` endpoints, too. The query parameters will be tacked onto the end of the XYZ tile URL:" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "628777c3-b633-45ec-b0f5-9d07f59cbe28", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " \"tilejson\": \"3.0.0\",\n", + " \"name\": \"features.terrestrial_ecoregions\",\n", + " \"version\": \"1.0.0\",\n", + " \"scheme\": \"xyz\",\n", + " \"tiles\": [\n", + " \"https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/collections/features.terrestrial_ecoregions/tiles/WebMercatorQuad/{z}/{x}/{y}?eco_name=Northern+Mesoamerican+Pacific+mangroves\"\n", + " ],\n", + " \"vector_layers\": [\n", + " {\n", + " \"id\": \"default\",\n", + " \"fields\": {\n", + " \"area\": \"number\",\n", + " \"area_km2\": \"number\",\n", + " \"biome\": \"number\",\n", + " \"eco_code\": \"string\",\n", + " \"eco_id\": \"number\",\n", + " \"eco_name\": \"string\",\n", + " \"eco_num\": \"number\",\n", + " \"eco_sym\": \"number\",\n", + " \"g200_biome\": \"number\",\n", + " \"g200_num\": \"number\",\n", + " \"g200_regio\": \"string\",\n", + " \"g200_stat\": \"number\",\n", + " \"gbl_stat\": \"number\",\n", + " \"id\": \"number\",\n", + " \"objectid\": \"number\",\n", + " \"per_area\": \"number\",\n", + " \"per_area_1\": \"number\",\n", + " \"per_area_2\": \"number\",\n", + " \"perimeter\": \"number\",\n", + " \"realm\": \"string\",\n", + " \"shape_area\": \"number\",\n", + " \"shape_leng\": \"number\"\n", + " },\n", + " \"minzoom\": 0,\n", + " \"maxzoom\": 22\n", + " }\n", + " ],\n", + " \"minzoom\": 0,\n", + " \"maxzoom\": 22,\n", + " \"bounds\": [\n", + " -180.0,\n", + " -89.89197540283203,\n", + " 180.0,\n", + " 83.62313079833984\n", + " ],\n", + " \"center\": [\n", + " 0.0,\n", + " -3.1344223022460938,\n", + " 0\n", + " ]\n", + "}\n" + ] + } + ], + "source": [ + "filtered_tilejson_request = httpx.get(\n", + " f\"{tipg_endpoint}/collections/{collection_id}/tiles/WebMercatorQuad/tilejson.json\",\n", + " params={\n", + " \"eco_name\": \"Northern Mesoamerican Pacific mangroves\",\n", + " },\n", + ")\n", + "filtered_tilejson_response = filtered_tilejson_request.json()\n", + "print(json.dumps(filtered_tilejson_response, indent=2))" + ] + }, + { + "cell_type": "markdown", + "id": "8aa43dd5-0e0b-4154-85b8-c582eea80678", + "metadata": {}, + "source": [ + "### 5.3.1 /collections/{collection_id/tiles/{tileMatrixSetId}/viewer\n", + "\n", + "For a quick demonstration of how vector tiles enable visualization of massive feature collections, check out this map of the `terrestrial_ecoregions` table that lives in our database. It has 14,000+ features which we would never dream of downloading to view in a web map. Instead, we let our map client make requests for simplified features for each XYZ tile as we explore the map." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "857f7870-4311-404b-8c88-640e89891e83", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "viewer_request = httpx.get(\n", + " f\"{tipg_endpoint}/collections/{collection_id}/tiles/WebMercatorQuad/viewer\",\n", + ")\n", + "\n", + "IFrame(\n", + " viewer_request.url,\n", + " width=1200,\n", + " height=800,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "7f80150b-c92c-40dc-b83a-e90b13a25012", + "metadata": {}, + "source": [ + "You can apply a field-based filter to limit the features to a subset of the full collection:" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "d12d12ef-8b12-4c7a-b681-4aea02c44df5", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "filtered_viewer_request = httpx.get(\n", + " f\"{tipg_endpoint}/collections/{collection_id}/tiles/WebMercatorQuad/viewer\",\n", + " params={\n", + " \"eco_name\": \"Northern Mesoamerican Pacific mangroves\",\n", + " },\n", + ")\n", + "\n", + "IFrame(\n", + " filtered_viewer_request.url,\n", + " width=1200,\n", + " height=800,\n", + ")" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.10" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/docs/media/components.png b/docs/media/components.png new file mode 100644 index 0000000..cf522f8 Binary files /dev/null and b/docs/media/components.png differ diff --git a/docs/media/earth.jpg b/docs/media/earth.jpg new file mode 100644 index 0000000..6e9f8e6 Binary files /dev/null and b/docs/media/earth.jpg differ diff --git a/docs/media/eoAPI.png b/docs/media/eoAPI.png new file mode 100644 index 0000000..90b7fc0 Binary files /dev/null and b/docs/media/eoAPI.png differ diff --git a/docs/media/pgstac_logo.png b/docs/media/pgstac_logo.png new file mode 100644 index 0000000..9fda7ec Binary files /dev/null and b/docs/media/pgstac_logo.png differ diff --git a/docs/media/stac-entities-with-assets.png b/docs/media/stac-entities-with-assets.png new file mode 100644 index 0000000..c798c62 Binary files /dev/null and b/docs/media/stac-entities-with-assets.png differ diff --git a/docs/media/stacfastapi_logo.png b/docs/media/stacfastapi_logo.png new file mode 100644 index 0000000..dcd8297 Binary files /dev/null and b/docs/media/stacfastapi_logo.png differ diff --git a/docs/media/tipg_logo.png b/docs/media/tipg_logo.png new file mode 100644 index 0000000..70dca42 Binary files /dev/null and b/docs/media/tipg_logo.png differ diff --git a/docs/media/titilerpgstac_logo.png b/docs/media/titilerpgstac_logo.png new file mode 100644 index 0000000..da49788 Binary files /dev/null and b/docs/media/titilerpgstac_logo.png differ diff --git a/environment.yml b/environment.yml index cb73588..abe0e0c 100644 --- a/environment.yml +++ b/environment.yml @@ -7,19 +7,19 @@ dependencies: - python=3.12 - rust - pip - - folium - - geoalchemy2 - - geopandas - - httpx + - boto3 + - httpx - ipywidgets - pystac - pystac-client - rasterio - rio-stac - - s3fs - shapely - pip: - pypgstac[psycopg]==0.9.6 - stactools-sentinel2 variables: AWS_NO_SIGN_REQUEST: TRUE + STAC_API_ENDPOINT: https://pj44p72a3g.execute-api.us-west-2.amazonaws.com + TITILER_PGSTAC_API_ENDPOINT: https://helfmwseh8.execute-api.us-west-2.amazonaws.com + TIPG_API_ENDPOINT: https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com diff --git a/index.ipynb b/index.ipynb deleted file mode 100644 index 293f50e..0000000 --- a/index.ipynb +++ /dev/null @@ -1,94 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "id": "e7903f66-7925-4fd4-8f90-b0125a4b2183", - "metadata": {}, - "source": [ - "# eoAPI: FedGeoDay25 Workshop\n", - "\n", - "## Outline\n", - "\n", - "1. Introduction\n", - " - Objectives for workshop\n", - " - Definitions\n", - " - Cloud 101\n", - " - different cloud providers\n", - " - key is having compute resources (e.g. functions that read raster data) \"close\" to the files\n", - " - infrastructure as code \n", - " - STAC 101\n", - " - What is STAC and why is it useful?\n", - " - make your data accessible through robust and familiar tools \n", - " - STAC API basics\n", - " - static catalog vs API distinction\n", - " - ecosystem of STAC-based tools\n", - "\n", - "2. eoAPI architecture\n", - " - eoAPI components\n", - " - pgstac's role at the center of the eoAPI universe\n", - " - deployment details (local vs cloud, serverless vs not)\n", - " - FastAPI documentation\n", - "\n", - "3. The Database: `pgstac`\n", - " - loading STAC metadata into pgstac (interactive, everyone has database creds and uploads an item)\n", - " - deleting STAC metadata from pgstac\n", - "\n", - "4. The STAC API: `stac-fastapi-pgstac`\n", - " - overview of basic structure\n", - " - catalog vs collection vs item\n", - " - extensions\n", - " - `/collections`\n", - " - `/search`\n", - " - querying the API with an HTTP client\n", - " - querying the API with `pystac-client`\n", - " - link to `rstac`\n", - "\n", - "5. The raster API: `titiler-pgstac`\n", - " - dynamic tiling 101\n", - " - overview of basic structure\n", - " - `/collections`\n", - " - `/searches`\n", - " - `/cog`\n", - " - STAC search query parameter interface for tiles!\n", - " - querying the API with an HTTP client\n", - " - using `tilejson` in web maps (or QGIS)\n", - "\n", - "6. The vector API: `tipg`\n", - " - PostGIS 101\n", - " - uploading data\n", - " - OGC Feature Service\n", - " - overview of basic structure\n", - " - querying the API with an HTTP client\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "e2f229e0-331b-4a2e-ba4a-4f6d6342ad09", - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3 (ipykernel)", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.13.0" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} diff --git a/infrastructure/app.py b/infrastructure/app.py index de4be16..7d4aee7 100644 --- a/infrastructure/app.py +++ b/infrastructure/app.py @@ -151,6 +151,7 @@ def __init__( api_env={ "NAME": app_config.build_service_name("raster"), "description": f"{app_config.stage} Raster API", + "TITILER_PGSTAC_API_ENABLE_EXTERNAL_DATASET_ENDPOINTS": "True", }, db=pgstac_db.connection_target, db_secret=pgstac_db.pgstac_secret, diff --git a/start b/start new file mode 100644 index 0000000..320d8f2 --- /dev/null +++ b/start @@ -0,0 +1,6 @@ +#!/bin/bash +export AWS_NO_SIGN_REQUEST=TRUE +export STAC_API_ENDPOINT=https://pj44p72a3g.execute-api.us-west-2.amazonaws.com +export TITILER_PGSTAC_API_ENDPOINT=https://helfmwseh8.execute-api.us-west-2.amazonaws.com +export TIPG_API_ENDPOINT=https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com +exec "$@"