From 04ee5960c3b8d5c189ddc5dc50c353ff2d273f35 Mon Sep 17 00:00:00 2001 From: hrodmn Date: Thu, 17 Apr 2025 20:27:43 -0500 Subject: [PATCH 1/4] add notebook about generating STAC metadata --- docs/stac_metadata.ipynb | 20043 +++++++++++++++++++++++++++++++++++++ 1 file changed, 20043 insertions(+) create mode 100644 docs/stac_metadata.ipynb diff --git a/docs/stac_metadata.ipynb b/docs/stac_metadata.ipynb new file mode 100644 index 0000000..4328cf7 --- /dev/null +++ b/docs/stac_metadata.ipynb @@ -0,0 +1,20043 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "e7903f66-7925-4fd4-8f90-b0125a4b2183", + "metadata": {}, + "source": [ + "# eoAPI: FedGeoDay25 Workshop\n", + "\n", + "\n", + "## Infrastructure:\n", + "\n", + "* Repo: https://github.com/developmentseed/eoapi-fedgeoday25-workshop \n", + "* New eoAPI stack deployed to AWS \n", + " * Will tear down after the workshop \n", + " * Endpoints: \n", + " * titiler-pgstac: [https://helfmwseh8.execute-api.us-west-2.amazonaws.com/](https://helfmwseh8.execute-api.us-west-2.amazonaws.com/) \n", + " * stac-fastapi-pgstac: [https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/](https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/) \n", + " * tipg: [https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/](https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/) \n", + " * Will give users the pgstac database creds during the workshop so they can interact with the pgstac 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/index.ipynb](https://binder.opensci.2i2c.cloud/v2/gh/developmentseed/eoapi-fedgeoday25-workshop/HEAD?urlpath=doc/tree/index.ipynb) \n", + "* Template for collecting feedback and questions that we get from users [Emma Paz](mailto:emma@developmentseed.org) \n", + " * Find out what kind of support organizations would want/need for future work? \n", + " * How large is the organization, how many engineers?\n", + "\n", + "## Outline:\n", + "\n" + ] + }, + { + "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": 12, + "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": 12, + "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 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." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "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", + " 3.9932737088384376\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", + " 1[] 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.95691940369268\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.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", + " 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", + " 80.92029861094787\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.9932737088384376\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", + " \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", + " 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": 12, + "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": 13, + "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", + " 3.9932737088384376\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", + " 1[] 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.95691940369268\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.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", + " 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", + " 80.92029861094787\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.9932737088384376\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", + " \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", + " datetime\n", + " \"2025-04-17T00:00:00Z\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " proj:code\n", + " \"EPSG:32630\"\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", + " \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": 13, + "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": "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 us. 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!" + ] + }, + { + "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 will produce STAC metadata alongside the data and the most common method for publishing that 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." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "969ce7ed-536f-43a0-a5a2-620c21bae7e8", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "S2C_OPER_MSI_L2A_TL_2CPS_20250417T165928_A003212_T30XWR\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", + " \"S2C_OPER_MSI_L2A_TL_2CPS_20250417T165928_A003212_T30XWR\"\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[] 4 items\n", + " \n", + "
          \n", + " \n", + " \n", + "
        • \n", + " 0[] 2 items\n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 0\n", + " 3.037559126491317\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 81.74584111778219\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.708192763701362\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 81.58282019880988\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.914889549499236\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 81.81463992961784\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.037559126491317\n", + "
          • \n", + " \n", + " \n", + " \n", + "
          \n", + " \n", + "
            \n", + " \n", + " \n", + " \n", + "
          • \n", + " 1\n", + " 81.74584111778219\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.037559\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 1\n", + " 81.58282\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 2\n", + " 3.91489\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " 3\n", + " 81.81464\n", + "
    • \n", + " \n", + " \n", + " \n", + "
    \n", + " \n", + "
  • \n", + " \n", + " \n", + " \n", + " \n", + "
  • \n", + " properties\n", + "
      \n", + " \n", + " \n", + " \n", + "
    • \n", + " created\n", + " \"2025-04-17T18:23:49.563668Z\"\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-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", + " 100.0\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " proj:code\n", + " \"EPSG:32630\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " proj:centroid\n", + "
        \n", + " \n", + " \n", + " \n", + "
      • \n", + " lat\n", + " 81.71443\n", + "
      • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
      • \n", + " lon\n", + " 3.55355\n", + "
      • \n", + " \n", + " \n", + " \n", + "
      \n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " mgrs:utm_zone\n", + " 30\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " mgrs:latitude_band\n", + " \"X\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " mgrs:grid_square\n", + " \"WR\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " grid:code\n", + " \"MGRS-30XWR\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:azimuth\n", + " 156.53545647959592\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:incidence_angle\n", + " 11.246592978885069\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:sun_azimuth\n", + " 216.538771429391\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " view:sun_elevation\n", + " 17.626680010233002\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:tile_id\n", + " \"S2C_OPER_MSI_L2A_TL_2CPS_20250417T165928_A003212_T30XWR_N05.11\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:degraded_msi_data_percentage\n", + " 0.0\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:nodata_pixel_percentage\n", + " 98.494601\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:cloud_shadow_percentage\n", + " 0.0\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:vegetation_percentage\n", + " 0.0\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:not_vegetated_percentage\n", + " 0.0\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.0\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:medium_proba_clouds_percentage\n", + " 4.214869\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:high_proba_clouds_percentage\n", + " 95.785129\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " s2:thin_cirrus_percentage\n", + " 0.0\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", + " \"05.11\"\n", + "
    • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
    • \n", + " datetime\n", + " \"2025-04-17T14:19:08.860000Z\"\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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -20.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -20.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -20.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -20.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -20.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -20.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -20.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -20.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -20.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -20.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -20.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -20.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -20.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -20.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -60.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -60.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -60.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -60.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -60.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -60.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -60.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -60.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -60.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -60.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -60.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -60.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -60.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -60.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -60.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -60.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -20.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " 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: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", + " 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", + " -20.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", + " 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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/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", + " \n", + " \n", + "
\n", + "
\n", + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import os\n", + "\n", + "os.environ[\"FSSPEC_S3_ANON\"] = \"True\"\n", + "\n", + "\n", + "from stactools.sentinel2.stac import create_item as create_sentinel2_item\n", + "\n", + "\n", + "create_sentinel2_item(\n", + " granule_href=f\"s3://{bucket_name}/{prefix}\",\n", + ")" + ] + }, + { + "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 your data." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "eda9941b-3fab-4591-88e2-674489f68116", + "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.12.10" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} From b286de5e3d0b4534b2cb5ec202cdb1dc3e079f42 Mon Sep 17 00:00:00 2001 From: hrodmn Date: Fri, 18 Apr 2025 09:26:17 -0500 Subject: [PATCH 2/4] remove infrastructure section from stac metadata notebook --- ..._metadata.ipynb => 01-stac_metadata.ipynb} | 31 +------------------ 1 file changed, 1 insertion(+), 30 deletions(-) rename docs/{stac_metadata.ipynb => 01-stac_metadata.ipynb} (99%) diff --git a/docs/stac_metadata.ipynb b/docs/01-stac_metadata.ipynb similarity index 99% rename from docs/stac_metadata.ipynb rename to docs/01-stac_metadata.ipynb index 4328cf7..69834ff 100644 --- a/docs/stac_metadata.ipynb +++ b/docs/01-stac_metadata.ipynb @@ -1,40 +1,11 @@ { "cells": [ - { - "cell_type": "markdown", - "id": "e7903f66-7925-4fd4-8f90-b0125a4b2183", - "metadata": {}, - "source": [ - "# eoAPI: FedGeoDay25 Workshop\n", - "\n", - "\n", - "## Infrastructure:\n", - "\n", - "* Repo: https://github.com/developmentseed/eoapi-fedgeoday25-workshop \n", - "* New eoAPI stack deployed to AWS \n", - " * Will tear down after the workshop \n", - " * Endpoints: \n", - " * titiler-pgstac: [https://helfmwseh8.execute-api.us-west-2.amazonaws.com/](https://helfmwseh8.execute-api.us-west-2.amazonaws.com/) \n", - " * stac-fastapi-pgstac: [https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/](https://pj44p72a3g.execute-api.us-west-2.amazonaws.com/) \n", - " * tipg: [https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/](https://ea1xibo0hd.execute-api.us-west-2.amazonaws.com/) \n", - " * Will give users the pgstac database creds during the workshop so they can interact with the pgstac 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/index.ipynb](https://binder.opensci.2i2c.cloud/v2/gh/developmentseed/eoapi-fedgeoday25-workshop/HEAD?urlpath=doc/tree/index.ipynb) \n", - "* Template for collecting feedback and questions that we get from users [Emma Paz](mailto:emma@developmentseed.org) \n", - " * Find out what kind of support organizations would want/need for future work? \n", - " * How large is the organization, how many engineers?\n", - "\n", - "## Outline:\n", - "\n" - ] - }, { "cell_type": "markdown", "id": "6a734a55-1935-4c9b-a51f-758a285528c1", "metadata": {}, "source": [ - "## 1. STAC metadata generation\n", + "# 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", From 01c0d3c59c4cfa0fd10a82400b53ccfb52680aab Mon Sep 17 00:00:00 2001 From: hrodmn Date: Fri, 18 Apr 2025 09:47:36 -0500 Subject: [PATCH 3/4] finish STAC metadata generation notebook --- docs/01-stac_metadata.ipynb | 1291 +++++++++++++++++++++-------------- 1 file changed, 797 insertions(+), 494 deletions(-) diff --git a/docs/01-stac_metadata.ipynb b/docs/01-stac_metadata.ipynb index 69834ff..9b245cd 100644 --- a/docs/01-stac_metadata.ipynb +++ b/docs/01-stac_metadata.ipynb @@ -397,7 +397,7 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 6, "id": "222f6df8-07d9-45a0-924c-bf45c4de9be2", "metadata": {}, "outputs": [ @@ -647,7 +647,7 @@ "" ] }, - "execution_count": 12, + "execution_count": 6, "metadata": {}, "output_type": "execute_result" } @@ -681,7 +681,7 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 7, "id": "d5cae1c9-c499-4f41-a368-0c5c8b2ea4f4", "metadata": {}, "outputs": [ @@ -795,7 +795,7 @@ " \n", "
  • \n", " 0\n", - " 3.9932737088384376\n", + " -11.284390704259561\n", "
  • \n", " \n", " \n", @@ -808,7 +808,7 @@ " \n", "
  • \n", " 1\n", - " 80.92029861094787\n", + " -41.61487677746372\n", "
  • \n", " \n", " \n", @@ -832,7 +832,7 @@ " \n", "
  • \n", " 0\n", - " 3.9932737088384376\n", + " -11.284390704259561\n", "
  • \n", " \n", " \n", @@ -845,7 +845,7 @@ " \n", "
  • \n", " 1\n", - " 81.95691940369268\n", + " -40.59281342182659\n", "
  • \n", " \n", " \n", @@ -869,7 +869,7 @@ " \n", "
  • \n", " 0\n", - " -3.0012803542668025\n", + " -12.635791766296055\n", "
  • \n", " \n", " \n", @@ -882,7 +882,7 @@ " \n", "
  • \n", " 1\n", - " 81.95691940369268\n", + " -40.59281342182659\n", "
  • \n", " \n", " \n", @@ -906,7 +906,7 @@ " \n", "
  • \n", " 0\n", - " -3.0012803542668025\n", + " -12.635791766296055\n", "
  • \n", " \n", " \n", @@ -919,7 +919,7 @@ " \n", "
  • \n", " 1\n", - " 80.92029861094787\n", + " -41.61487677746372\n", "
  • \n", " \n", " \n", @@ -943,7 +943,7 @@ " \n", "
  • \n", " 0\n", - " 3.9932737088384376\n", + " -11.284390704259561\n", "
  • \n", " \n", " \n", @@ -956,7 +956,7 @@ " \n", "
  • \n", " 1\n", - " 80.92029861094787\n", + " -41.61487677746372\n", "
  • \n", " \n", " \n", @@ -991,7 +991,7 @@ " \n", "
  • \n", " 0\n", - " -3.0012803542668025\n", + " -12.635791766296055\n", "
  • \n", " \n", " \n", @@ -1004,7 +1004,7 @@ " \n", "
  • \n", " 1\n", - " 80.92029861094787\n", + " -41.61487677746372\n", "
  • \n", " \n", " \n", @@ -1017,7 +1017,7 @@ " \n", "
  • \n", " 2\n", - " 3.9932737088384376\n", + " -11.284390704259561\n", "
  • \n", " \n", " \n", @@ -1030,7 +1030,7 @@ " \n", "
  • \n", " 3\n", - " 81.95691940369268\n", + " -40.59281342182659\n", "
  • \n", " \n", " \n", @@ -1083,7 +1083,7 @@ " \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", + " \"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", @@ -1112,7 +1112,7 @@ " \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", + " \"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", @@ -1141,7 +1141,7 @@ " \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", + " \"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", @@ -1170,7 +1170,7 @@ " \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", + " \"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", @@ -1199,7 +1199,7 @@ " \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", + " \"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", @@ -1228,7 +1228,7 @@ " \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", + " \"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", @@ -1257,7 +1257,7 @@ " \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", + " \"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", @@ -1286,7 +1286,7 @@ " \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", + " \"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", @@ -1315,7 +1315,7 @@ " \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", + " \"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", @@ -1344,7 +1344,7 @@ " \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", + " \"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", @@ -1373,7 +1373,7 @@ " \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", + " \"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", @@ -1402,7 +1402,7 @@ " \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", + " \"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", @@ -1431,36 +1431,7 @@ " \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", + " \"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", @@ -1489,7 +1460,7 @@ " \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", + " \"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", @@ -1518,36 +1489,7 @@ " \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", + " \"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", @@ -1576,7 +1518,7 @@ " \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", + " \"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", @@ -1605,7 +1547,7 @@ " \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", + " \"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", @@ -1637,7 +1579,7 @@ "" ] }, - "execution_count": 12, + "execution_count": 7, "metadata": {}, "output_type": "execute_result" } @@ -1674,7 +1616,7 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 8, "id": "6158e057-f770-4599-82c3-89ef5cc00a7d", "metadata": {}, "outputs": [ @@ -1801,7 +1743,7 @@ " \n", "
    • \n", " 0\n", - " 3.9932737088384376\n", + " -11.284390704259561\n", "
    • \n", " \n", " \n", @@ -1814,7 +1756,7 @@ " \n", "
    • \n", " 1\n", - " 80.92029861094787\n", + " -41.61487677746372\n", "
    • \n", " \n", " \n", @@ -1838,7 +1780,7 @@ " \n", "
    • \n", " 0\n", - " 3.9932737088384376\n", + " -11.284390704259561\n", "
    • \n", " \n", " \n", @@ -1851,7 +1793,7 @@ " \n", "
    • \n", " 1\n", - " 81.95691940369268\n", + " -40.59281342182659\n", "
    • \n", " \n", " \n", @@ -1875,7 +1817,7 @@ " \n", "
    • \n", " 0\n", - " -3.0012803542668025\n", + " -12.635791766296055\n", "
    • \n", " \n", " \n", @@ -1888,7 +1830,7 @@ " \n", "
    • \n", " 1\n", - " 81.95691940369268\n", + " -40.59281342182659\n", "
    • \n", " \n", " \n", @@ -1912,7 +1854,7 @@ " \n", "
    • \n", " 0\n", - " -3.0012803542668025\n", + " -12.635791766296055\n", "
    • \n", " \n", " \n", @@ -1925,7 +1867,7 @@ " \n", "
    • \n", " 1\n", - " 80.92029861094787\n", + " -41.61487677746372\n", "
    • \n", " \n", " \n", @@ -1949,7 +1891,7 @@ " \n", "
    • \n", " 0\n", - " 3.9932737088384376\n", + " -11.284390704259561\n", "
    • \n", " \n", " \n", @@ -1962,7 +1904,7 @@ " \n", "
    • \n", " 1\n", - " 80.92029861094787\n", + " -41.61487677746372\n", "
    • \n", " \n", " \n", @@ -1997,7 +1939,7 @@ " \n", "
    • \n", " 0\n", - " -3.0012803542668025\n", + " -12.635791766296055\n", "
    • \n", " \n", " \n", @@ -2010,7 +1952,7 @@ " \n", "
    • \n", " 1\n", - " 80.92029861094787\n", + " -41.61487677746372\n", "
    • \n", " \n", " \n", @@ -2023,7 +1965,7 @@ " \n", "
    • \n", " 2\n", - " 3.9932737088384376\n", + " -11.284390704259561\n", "
    • \n", " \n", " \n", @@ -2036,7 +1978,7 @@ " \n", "
    • \n", " 3\n", - " 81.95691940369268\n", + " -40.59281342182659\n", "
    • \n", " \n", " \n", @@ -2065,7 +2007,7 @@ " \n", "
    • \n", " proj:code\n", - " \"EPSG:32630\"\n", + " \"EPSG:32728\"\n", "
    • \n", " \n", " \n", @@ -2080,7 +2022,7 @@ " \n", "
    • \n", " 0\n", - " 499980.0\n", + " 699960.0\n", "
    • \n", " \n", " \n", @@ -2093,7 +2035,7 @@ " \n", "
    • \n", " 1\n", - " 8990220.0\n", + " 5390200.0\n", "
    • \n", " \n", " \n", @@ -2106,7 +2048,7 @@ " \n", "
    • \n", " 2\n", - " 609780.0\n", + " 809760.0\n", "
    • \n", " \n", " \n", @@ -2119,7 +2061,7 @@ " \n", "
    • \n", " 3\n", - " 9100020.0\n", + " 5500000.0\n", "
    • \n", " \n", " \n", @@ -2190,7 +2132,7 @@ " \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", + " \"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", @@ -2219,7 +2161,7 @@ " \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", + " \"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", @@ -2248,7 +2190,7 @@ " \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", + " \"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", @@ -2277,7 +2219,7 @@ " \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", + " \"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", @@ -2306,7 +2248,7 @@ " \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", + " \"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", @@ -2335,7 +2277,7 @@ " \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", + " \"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", @@ -2364,7 +2306,7 @@ " \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", + " \"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", @@ -2393,7 +2335,7 @@ " \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", + " \"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", @@ -2422,7 +2364,7 @@ " \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", + " \"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", @@ -2451,7 +2393,7 @@ " \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", + " \"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", @@ -2480,7 +2422,7 @@ " \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", + " \"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", @@ -2509,7 +2451,7 @@ " \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", + " \"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", @@ -2538,7 +2480,7 @@ " \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", + " \"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", @@ -2560,14 +2502,14 @@ " \n", " \n", "
    • \n", - " CLD_20m\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/CLD_20m.tif\"\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", @@ -2589,14 +2531,14 @@ " \n", " \n", "
      • \n", - " L2A_PVI\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/L2A_PVI.tif\"\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", @@ -2618,14 +2560,14 @@ " \n", " \n", "
        • \n", - " SCL\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/SCL.tif\"\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", @@ -2647,14 +2589,14 @@ " \n", " \n", "
          • \n", - " SNW_20m\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/SNW_20m.tif\"\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", @@ -2673,31 +2615,215 @@ " \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", - " TCI\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", - " 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", + " 0\n", + " -180\n", "
                  • \n", " \n", " \n", " \n", + "
                  \n", + " \n", + "
                    \n", + " \n", " \n", " \n", "
                  • \n", - " type\n", - " \"image/tiff; application=geotiff; profile=cloud-optimized\"\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", @@ -2705,28 +2831,54 @@ " \n", " \n", "
            • \n", - " WVP\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", - " 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", + " 0\n", + " \"2015-06-27T10:25:31Z\"\n", "
                  • \n", " \n", " \n", " \n", + "
                  \n", + " \n", + "
                    \n", + " \n", " \n", " \n", "
                  • \n", - " type\n", - " \"image/tiff; application=geotiff; profile=cloud-optimized\"\n", + " 1\n", + " None\n", "
                  • \n", " \n", " \n", " \n", "
                  \n", + " \n", + "
                • \n", + " \n", + " \n", + "
                \n", + " \n", + "
              • \n", + " \n", + " \n", + "
              \n", "
            • \n", " \n", " \n", @@ -2736,29 +2888,40 @@ " \n", " \n", " \n", + " \n", + " \n", + "
            • \n", + " license\n", + " \"other\"\n", + "
            • \n", + " \n", + " \n", + " \n", "
            \n", "
          \n", "
          " ], "text/plain": [ - "" + "" ] }, - "execution_count": 13, + "execution_count": 11, "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", + "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", - "\n", - "item" + "collection" ] }, { @@ -4226,7 +4389,9 @@ "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!" + "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." ] }, { @@ -4236,14 +4401,14 @@ "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 will produce STAC metadata alongside the data and the most common method for publishing that workflow is via [`stactools` packages](https://github.com/stactools-packages).\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 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." + "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": 2, + "execution_count": 13, "id": "969ce7ed-536f-43a0-a5a2-620c21bae7e8", "metadata": {}, "outputs": [ @@ -4251,7 +4416,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "S2C_OPER_MSI_L2A_TL_2CPS_20250417T165928_A003212_T30XWR\n" + "S2A_OPER_MSI_L2A_TL_VGS1_20220401T110010_A035382_T34LBP\n" ] }, { @@ -4421,7 +4586,7 @@ " \n", "
        • \n", " id\n", - " \"S2C_OPER_MSI_L2A_TL_2CPS_20250417T165928_A003212_T30XWR\"\n", + " \"S2A_T34LBP_20220401T090142_L2A\"\n", "
        • \n", " \n", " \n", @@ -4449,7 +4614,7 @@ " \n", " \n", "
        • \n", - " 0[] 4 items\n", + " 0[] 5 items\n", " \n", "
            \n", " \n", @@ -4463,7 +4628,7 @@ " \n", "
          • \n", " 0\n", - " 3.037559126491317\n", + " 18.842570191774456\n", "
          • \n", " \n", " \n", @@ -4476,7 +4641,7 @@ " \n", "
          • \n", " 1\n", - " 81.74584111778219\n", + " -9.943916470908118\n", "
          • \n", " \n", " \n", @@ -4500,7 +4665,7 @@ " \n", "
          • \n", " 0\n", - " 3.708192763701362\n", + " 18.837533655044183\n", "
          • \n", " \n", " \n", @@ -4513,7 +4678,7 @@ " \n", "
          • \n", " 1\n", - " 81.58282019880988\n", + " -9.975080024847411\n", "
          • \n", " \n", " \n", @@ -4537,7 +4702,7 @@ " \n", "
          • \n", " 0\n", - " 3.914889549499236\n", + " 19.264327857851356\n", "
          • \n", " \n", " \n", @@ -4550,7 +4715,7 @@ " \n", "
          • \n", " 1\n", - " 81.81463992961784\n", + " -10.048676709777588\n", "
          • \n", " \n", " \n", @@ -4574,7 +4739,44 @@ " \n", "
          • \n", " 0\n", - " 3.037559126491317\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", @@ -4587,7 +4789,7 @@ " \n", "
          • \n", " 1\n", - " 81.74584111778219\n", + " -9.943916470908118\n", "
          • \n", " \n", " \n", @@ -4622,7 +4824,7 @@ " \n", "
          • \n", " 0\n", - " 3.037559\n", + " 18.837534\n", "
          • \n", " \n", " \n", @@ -4635,7 +4837,7 @@ " \n", "
          • \n", " 1\n", - " 81.58282\n", + " -10.048677\n", "
          • \n", " \n", " \n", @@ -4648,7 +4850,7 @@ " \n", "
          • \n", " 2\n", - " 3.91489\n", + " 19.264871\n", "
          • \n", " \n", " \n", @@ -4661,7 +4863,7 @@ " \n", "
          • \n", " 3\n", - " 81.81464\n", + " -9.943916\n", "
          • \n", " \n", " \n", @@ -4681,7 +4883,7 @@ " \n", "
          • \n", " created\n", - " \"2025-04-17T18:23:49.563668Z\"\n", + " \"2025-04-18T14:44:52.000201Z\"\n", "
          • \n", " \n", " \n", @@ -4776,7 +4978,7 @@ " \n", "
          • \n", " platform\n", - " \"sentinel-2c\"\n", + " \"sentinel-2a\"\n", "
          • \n", " \n", " \n", @@ -4814,7 +5016,7 @@ " \n", "
          • \n", " eo:cloud_cover\n", - " 100.0\n", + " 92.696983\n", "
          • \n", " \n", " \n", @@ -4823,7 +5025,7 @@ " \n", "
          • \n", " proj:code\n", - " \"EPSG:32630\"\n", + " \"EPSG:32734\"\n", "
          • \n", " \n", " \n", @@ -4838,7 +5040,7 @@ " \n", "
          • \n", " lat\n", - " 81.71443\n", + " -9.98196\n", "
          • \n", " \n", " \n", @@ -4847,7 +5049,7 @@ " \n", "
          • \n", " lon\n", - " 3.55355\n", + " 19.08968\n", "
          • \n", " \n", " \n", @@ -4861,7 +5063,7 @@ " \n", "
          • \n", " mgrs:utm_zone\n", - " 30\n", + " 34\n", "
          • \n", " \n", " \n", @@ -4870,7 +5072,7 @@ " \n", "
          • \n", " mgrs:latitude_band\n", - " \"X\"\n", + " \"L\"\n", "
          • \n", " \n", " \n", @@ -4879,7 +5081,7 @@ " \n", "
          • \n", " mgrs:grid_square\n", - " \"WR\"\n", + " \"BP\"\n", "
          • \n", " \n", " \n", @@ -4888,7 +5090,7 @@ " \n", "
          • \n", " grid:code\n", - " \"MGRS-30XWR\"\n", + " \"MGRS-34LBP\"\n", "
          • \n", " \n", " \n", @@ -4897,7 +5099,7 @@ " \n", "
          • \n", " view:azimuth\n", - " 156.53545647959592\n", + " 99.04269285441343\n", "
          • \n", " \n", " \n", @@ -4906,7 +5108,7 @@ " \n", "
          • \n", " view:incidence_angle\n", - " 11.246592978885069\n", + " 9.662129915241508\n", "
          • \n", " \n", " \n", @@ -4915,7 +5117,7 @@ " \n", "
          • \n", " view:sun_azimuth\n", - " 216.538771429391\n", + " 61.4514369440134\n", "
          • \n", " \n", " \n", @@ -4924,7 +5126,7 @@ " \n", "
          • \n", " view:sun_elevation\n", - " 17.626680010233002\n", + " 59.757571576334996\n", "
          • \n", " \n", " \n", @@ -4933,7 +5135,7 @@ " \n", "
          • \n", " s2:tile_id\n", - " \"S2C_OPER_MSI_L2A_TL_2CPS_20250417T165928_A003212_T30XWR_N05.11\"\n", + " \"S2A_OPER_MSI_L2A_TL_VGS1_20220401T110010_A035382_T34LBP_N04.00\"\n", "
          • \n", " \n", " \n", @@ -4942,7 +5144,7 @@ " \n", "
          • \n", " s2:degraded_msi_data_percentage\n", - " 0.0\n", + " 0.0172\n", "
          • \n", " \n", " \n", @@ -4951,7 +5153,7 @@ " \n", "
          • \n", " s2:nodata_pixel_percentage\n", - " 98.494601\n", + " 97.087371\n", "
          • \n", " \n", " \n", @@ -4968,7 +5170,7 @@ " \n", " \n", "
          • \n", - " s2:cloud_shadow_percentage\n", + " s2:dark_features_percentage\n", " 0.0\n", "
          • \n", " \n", @@ -4977,8 +5179,17 @@ " \n", " \n", "
          • \n", + " s2:cloud_shadow_percentage\n", + " 7.112898\n", + "
          • \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
          • \n", " s2:vegetation_percentage\n", - " 0.0\n", + " 0.094889\n", "
          • \n", " \n", " \n", @@ -4987,7 +5198,7 @@ " \n", "
          • \n", " s2:not_vegetated_percentage\n", - " 0.0\n", + " 0.001937\n", "
          • \n", " \n", " \n", @@ -5005,7 +5216,7 @@ " \n", "
          • \n", " s2:unclassified_percentage\n", - " 0.0\n", + " 0.093294\n", "
          • \n", " \n", " \n", @@ -5014,7 +5225,7 @@ " \n", "
          • \n", " s2:medium_proba_clouds_percentage\n", - " 4.214869\n", + " 16.551426\n", "
          • \n", " \n", " \n", @@ -5023,7 +5234,7 @@ " \n", "
          • \n", " s2:high_proba_clouds_percentage\n", - " 95.785129\n", + " 76.137125\n", "
          • \n", " \n", " \n", @@ -5032,7 +5243,7 @@ " \n", "
          • \n", " s2:thin_cirrus_percentage\n", - " 0.0\n", + " 0.008429\n", "
          • \n", " \n", " \n", @@ -5059,7 +5270,61 @@ " \n", "
          • \n", " s2:processing_baseline\n", - " \"05.11\"\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", @@ -5068,7 +5333,7 @@ " \n", "
          • \n", " datetime\n", - " \"2025-04-17T14:19:08.860000Z\"\n", + " \"2022-04-01T09:03:19.283000Z\"\n", "
          • \n", " \n", " \n", @@ -5134,7 +5399,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R10m/B04.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R10m/B04.jp2\"\n", "
          • \n", " \n", " \n", @@ -5267,7 +5532,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -5280,7 +5545,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -5293,7 +5558,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -5306,7 +5571,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -5352,7 +5617,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -5391,7 +5656,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -5516,7 +5781,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R10m/B03.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R10m/B03.jp2\"\n", "
          • \n", " \n", " \n", @@ -5649,7 +5914,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -5662,7 +5927,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -5675,7 +5940,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -5688,7 +5953,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -5734,7 +5999,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -5773,7 +6038,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -5898,7 +6163,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R10m/B02.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R10m/B02.jp2\"\n", "
          • \n", " \n", " \n", @@ -6031,7 +6296,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -6044,7 +6309,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -6057,7 +6322,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -6070,7 +6335,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -6116,7 +6381,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -6155,7 +6420,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -6280,7 +6545,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R10m/WVP.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R10m/WVP.jp2\"\n", "
          • \n", " \n", " \n", @@ -6355,7 +6620,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -6368,7 +6633,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -6381,7 +6646,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -6394,7 +6659,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -6440,7 +6705,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -6479,7 +6744,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -6600,7 +6865,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R10m/AOT.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R10m/AOT.jp2\"\n", "
          • \n", " \n", " \n", @@ -6675,7 +6940,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -6688,7 +6953,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -6701,7 +6966,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -6714,7 +6979,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -6760,7 +7025,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -6799,7 +7064,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -6911,7 +7176,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R10m/TCI.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R10m/TCI.jp2\"\n", "
          • \n", " \n", " \n", @@ -7279,7 +7544,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -7292,7 +7557,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -7305,7 +7570,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -7318,7 +7583,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -7364,7 +7629,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -7403,7 +7668,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -7448,7 +7713,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R10m/B08.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R10m/B08.jp2\"\n", "
          • \n", " \n", " \n", @@ -7581,7 +7846,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -7594,7 +7859,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -7607,7 +7872,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -7620,7 +7885,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -7666,7 +7931,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -7705,7 +7970,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -7830,7 +8095,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R20m/B12.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/B12.jp2\"\n", "
          • \n", " \n", " \n", @@ -7963,7 +8228,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -7976,7 +8241,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -7989,7 +8254,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -8002,7 +8267,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -8048,7 +8313,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -8087,7 +8352,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -8212,7 +8477,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R20m/B06.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/B06.jp2\"\n", "
          • \n", " \n", " \n", @@ -8345,7 +8610,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -8358,7 +8623,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -8371,7 +8636,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -8384,7 +8649,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -8430,7 +8695,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -8469,7 +8734,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -8594,7 +8859,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R20m/B07.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/B07.jp2\"\n", "
          • \n", " \n", " \n", @@ -8727,7 +8992,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -8740,7 +9005,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -8753,7 +9018,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -8766,7 +9031,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -8812,7 +9077,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -8851,7 +9116,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -8976,7 +9241,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R20m/B05.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/B05.jp2\"\n", "
          • \n", " \n", " \n", @@ -9109,7 +9374,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -9122,7 +9387,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -9135,7 +9400,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -9148,7 +9413,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -9194,7 +9459,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -9233,7 +9498,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -9358,7 +9623,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R20m/B11.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/B11.jp2\"\n", "
          • \n", " \n", " \n", @@ -9491,7 +9756,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -9504,7 +9769,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -9517,7 +9782,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -9530,7 +9795,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -9576,7 +9841,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -9615,7 +9880,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -9740,7 +10005,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R20m/B04.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/B04.jp2\"\n", "
          • \n", " \n", " \n", @@ -9864,7 +10129,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -9877,7 +10142,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -9890,7 +10155,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -9903,7 +10168,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -9949,7 +10214,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -9988,7 +10253,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -10113,7 +10378,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R20m/B03.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/B03.jp2\"\n", "
          • \n", " \n", " \n", @@ -10237,7 +10502,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -10250,7 +10515,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -10263,7 +10528,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -10276,7 +10541,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -10322,7 +10587,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -10361,7 +10626,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -10486,7 +10751,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R20m/B02.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/B02.jp2\"\n", "
          • \n", " \n", " \n", @@ -10610,7 +10875,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -10623,7 +10888,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -10636,7 +10901,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -10649,7 +10914,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -10695,7 +10960,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -10734,7 +10999,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -10859,7 +11124,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R20m/WVP.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/WVP.jp2\"\n", "
          • \n", " \n", " \n", @@ -10934,7 +11199,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -10947,7 +11212,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -10960,7 +11225,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -10973,7 +11238,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -11019,7 +11284,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -11058,7 +11323,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -11179,7 +11444,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R20m/B8A.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/B8A.jp2\"\n", "
          • \n", " \n", " \n", @@ -11312,7 +11577,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -11325,7 +11590,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -11338,7 +11603,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -11351,7 +11616,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -11397,7 +11662,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -11436,7 +11701,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -11561,7 +11826,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R20m/SCL.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/SCL.jp2\"\n", "
          • \n", " \n", " \n", @@ -11636,7 +11901,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -11649,7 +11914,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -11662,7 +11927,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -11675,7 +11940,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -11721,7 +11986,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -11760,7 +12025,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -11854,7 +12119,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R20m/AOT.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/AOT.jp2\"\n", "
          • \n", " \n", " \n", @@ -11929,7 +12194,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -11942,7 +12207,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -11955,7 +12220,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -11968,7 +12233,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -12014,7 +12279,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -12053,7 +12318,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -12165,7 +12430,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R20m/TCI.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/TCI.jp2\"\n", "
          • \n", " \n", " \n", @@ -12533,7 +12798,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -12546,7 +12811,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -12559,7 +12824,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -12572,7 +12837,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -12618,7 +12883,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -12657,7 +12922,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -12702,7 +12967,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R20m/B08.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R20m/B08.jp2\"\n", "
          • \n", " \n", " \n", @@ -12826,7 +13091,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -12839,7 +13104,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -12852,7 +13117,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -12865,7 +13130,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -12911,7 +13176,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -12950,7 +13215,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -13075,7 +13340,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R60m/B12.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B12.jp2\"\n", "
          • \n", " \n", " \n", @@ -13199,7 +13464,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -13212,7 +13477,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -13225,7 +13490,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -13238,7 +13503,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -13284,7 +13549,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -13323,7 +13588,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -13448,7 +13713,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R60m/B06.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B06.jp2\"\n", "
          • \n", " \n", " \n", @@ -13572,7 +13837,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -13585,7 +13850,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -13598,7 +13863,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -13611,7 +13876,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -13657,7 +13922,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -13696,7 +13961,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -13821,7 +14086,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R60m/B07.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B07.jp2\"\n", "
          • \n", " \n", " \n", @@ -13945,7 +14210,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -13958,7 +14223,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -13971,7 +14236,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -13984,7 +14249,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -14030,7 +14295,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -14069,7 +14334,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -14194,7 +14459,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R60m/B05.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B05.jp2\"\n", "
          • \n", " \n", " \n", @@ -14318,7 +14583,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -14331,7 +14596,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -14344,7 +14609,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -14357,7 +14622,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -14403,7 +14668,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -14442,7 +14707,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -14567,7 +14832,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R60m/B11.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B11.jp2\"\n", "
          • \n", " \n", " \n", @@ -14691,7 +14956,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -14704,7 +14969,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -14717,7 +14982,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -14730,7 +14995,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -14776,7 +15041,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -14815,7 +15080,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -14940,7 +15205,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R60m/B04.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B04.jp2\"\n", "
          • \n", " \n", " \n", @@ -15064,7 +15329,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -15077,7 +15342,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -15090,7 +15355,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -15103,7 +15368,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -15149,7 +15414,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -15188,7 +15453,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -15313,7 +15578,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R60m/B01.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B01.jp2\"\n", "
          • \n", " \n", " \n", @@ -15446,7 +15711,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -15459,7 +15724,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -15472,7 +15737,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -15485,7 +15750,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -15531,7 +15796,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -15570,7 +15835,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -15695,7 +15960,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R60m/B03.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B03.jp2\"\n", "
          • \n", " \n", " \n", @@ -15819,7 +16084,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -15832,7 +16097,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -15845,7 +16110,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -15858,7 +16123,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -15904,7 +16169,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -15943,7 +16208,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -16068,7 +16333,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R60m/B02.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B02.jp2\"\n", "
          • \n", " \n", " \n", @@ -16192,7 +16457,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -16205,7 +16470,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -16218,7 +16483,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -16231,7 +16496,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -16277,7 +16542,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -16316,7 +16581,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -16441,7 +16706,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R60m/WVP.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/WVP.jp2\"\n", "
          • \n", " \n", " \n", @@ -16516,7 +16781,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -16529,7 +16794,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -16542,7 +16807,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -16555,7 +16820,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -16601,7 +16866,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -16640,7 +16905,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -16761,7 +17026,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R60m/B8A.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B8A.jp2\"\n", "
          • \n", " \n", " \n", @@ -16885,7 +17150,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -16898,7 +17163,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -16911,7 +17176,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -16924,7 +17189,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -16970,7 +17235,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -17009,7 +17274,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -17134,7 +17399,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R60m/SCL.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/SCL.jp2\"\n", "
          • \n", " \n", " \n", @@ -17209,7 +17474,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -17222,7 +17487,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -17235,7 +17500,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -17248,7 +17513,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -17294,7 +17559,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -17333,7 +17598,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -17427,7 +17692,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R60m/AOT.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/AOT.jp2\"\n", "
          • \n", " \n", " \n", @@ -17502,7 +17767,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -17515,7 +17780,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -17528,7 +17793,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -17541,7 +17806,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -17587,7 +17852,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -17626,7 +17891,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -17738,7 +18003,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R60m/B09.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B09.jp2\"\n", "
          • \n", " \n", " \n", @@ -17871,7 +18136,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -17884,7 +18149,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -17897,7 +18162,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -17910,7 +18175,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -17956,7 +18221,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -17995,7 +18260,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -18120,7 +18385,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R60m/TCI.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/TCI.jp2\"\n", "
          • \n", " \n", " \n", @@ -18488,7 +18753,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -18501,7 +18766,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -18514,7 +18779,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -18527,7 +18792,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -18573,7 +18838,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -18612,7 +18877,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -18657,7 +18922,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/R60m/B08.jp2\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/R60m/B08.jp2\"\n", "
          • \n", " \n", " \n", @@ -18781,7 +19046,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -18794,7 +19059,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -18807,7 +19072,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -18820,7 +19085,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -18866,7 +19131,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -18905,7 +19170,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -19030,7 +19295,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/qi/CLD_20m.jp2\"\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", @@ -19105,7 +19370,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -19118,7 +19383,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -19131,7 +19396,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -19144,7 +19409,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -19190,7 +19455,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -19229,7 +19494,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -19336,7 +19601,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/qi/SNW_20m.jp2\"\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", @@ -19402,7 +19667,7 @@ " \n", "
          • \n", " 0\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -19415,7 +19680,7 @@ " \n", "
          • \n", " 1\n", - " 8990220.0\n", + " 8790220.0\n", "
          • \n", " \n", " \n", @@ -19428,7 +19693,7 @@ " \n", "
          • \n", " 2\n", - " 609780.0\n", + " 309780.0\n", "
          • \n", " \n", " \n", @@ -19441,7 +19706,7 @@ " \n", "
          • \n", " 3\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -19487,7 +19752,7 @@ " \n", "
          • \n", " 2\n", - " 499980.0\n", + " 199980.0\n", "
          • \n", " \n", " \n", @@ -19526,7 +19791,7 @@ " \n", "
          • \n", " 5\n", - " 9100020.0\n", + " 8900020.0\n", "
          • \n", " \n", " \n", @@ -19633,7 +19898,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/qi/L2A_PVI.jp2\"\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", @@ -19851,7 +20116,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/metadata.xml\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/metadata.xml\"\n", "
          • \n", " \n", " \n", @@ -19900,7 +20165,7 @@ " \n", "
          • \n", " href\n", - " \"s3://e84-earth-search-sentinel-data/sentinel-2-c1-l2a/30/X/WR/2025/4/S2C_T30XWR_20250417T141800_L2A/tileInfo.json\"\n", + " \"https://roda.sentinel-hub.com/sentinel-s2-l2a/tiles/34/L/BP/2022/4/1/0/tileInfo.json\"\n", "
          • \n", " \n", " \n", @@ -19939,6 +20204,55 @@ " \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", @@ -19949,26 +20263,23 @@ "" ], "text/plain": [ - "" + "" ] }, - "execution_count": 2, + "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "import os\n", - "\n", - "os.environ[\"FSSPEC_S3_ANON\"] = \"True\"\n", - "\n", - "\n", "from stactools.sentinel2.stac import create_item as create_sentinel2_item\n", "\n", "\n", - "create_sentinel2_item(\n", - " granule_href=f\"s3://{bucket_name}/{prefix}\",\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" ] }, { @@ -19978,16 +20289,8 @@ "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 your data." + "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." ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "eda9941b-3fab-4591-88e2-674489f68116", - "metadata": {}, - "outputs": [], - "source": [] } ], "metadata": { From e8f595170b6314cbc6a97548de033796b1ca913d Mon Sep 17 00:00:00 2001 From: hrodmn Date: Tue, 22 Apr 2025 14:16:50 -0500 Subject: [PATCH 4/4] rewrite a bit --- docs/01-stac_metadata.ipynb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/01-stac_metadata.ipynb b/docs/01-stac_metadata.ipynb index 9b245cd..3ba42b2 100644 --- a/docs/01-stac_metadata.ipynb +++ b/docs/01-stac_metadata.ipynb @@ -2931,7 +2931,7 @@ "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 us. 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", + "`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: " ]