What is Masking?
In processing EO data, masking is a very common operation to mark certain pixel locations as null values. For more discussion, see the RasterFrames masking page.
Sentinel-2
Let’s demonstrate the masking procedure for 3 bands of Sentinel-2 data. The measurement bands we will use share quality information from a separate raster band called the scene classification (SCL), which delineates areas of missing data and probable clouds. For more information on this, see the Sentinel-2 algorithm overview. The figure below tells us how to interpret the scene classification. For this example, we will exclude NO_DATA, defective pixels, probable clouds, and cirrus clouds: values 0, 1, 8, 9, and 10.
Credit: Sentinel-2 algorithm overview
Using EOD, let's query some Sentinel-2 imagery. We will query the red, green, and blue measurement bands along with the SCL band. First, let's use Earth OnDemand to see what image collections are available to us.
from earthai.init import * from pyspark.sql.functions import lit, col from shapely.geometry import Point
Importing EarthAI libraries. EarthAI version 1.6.0; RasterFrames version 0.9.0; PySpark version 2.4.7 Creating SparkSession...
SparkSession is available as `spark`.
earth_ondemand.collections()
allowed | description | familyId | familyTitle | id | item_assets | license | presentable | sortableFields | stac_extensions | stac_version | title | link | spatial_extent | temporal_extent | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | True | Landsat 8 Collection 1 Tier 1 Precision Terrain from Landsat 8 Operational Land Imager (OLI) and Thermal Infrared Sensor (TIRS) data | landsat8 | Landsat 8 | landsat8_l1tp | {'B5': {'bundleable': True, 'eo:bands': [{'common_name': 'nir', 'name': 'B5'}], 'eo:common_name': 'nir', 'eo:gsd': 30.0, 'gsd': 30.0, 'roles': ['data'], 'title': 'Band 5 - Near Infrared (NIR) - 851-879nm (30m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'thumb_large': {'bundleable': True, 'roles': ['overview', 'preview'], 'title': 'Thumbnail - Large', 'type': 'image/jpeg'}, 'B6': {'bundleable': True, 'eo:bands': [{'common_name': 'swir16', 'name': 'B6'}], 'eo:common_name': 'swir16', 'eo:gsd': 30.0, 'gsd': 30.0, 'roles': ['data'], 'title': 'Band 6 - Shortwave Infrared (SWIR) 1 - 1566-1651nm (30m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'B3': {'bundleable': True, 'eo:bands': [{'common_name': 'green', 'name': 'B3'}], 'eo:common_name': 'green', 'eo:gsd': 30.0, 'gsd': 30.0, 'roles': ['data'], 'title': 'Band 3 - Green - 533-590nm (30m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'B2': {'bundleable': True, 'eo:bands': [{'common_name': 'blue', 'name': 'B2'}], 'eo:common_name': 'blue', 'eo:gsd': 30.0, 'gsd': 30.0, 'roles': ['data'], 'title': 'Band 2 - Blue - 452-512nm (30m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'BQA': {'bundleable': True, 'eo:gsd': 30.0, 'gsd': 30.0, 'roles': ['qa'], 'title': 'Band QA', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'B4': {'bundleable': True, 'eo:bands': [{'common_name': 'red', 'name': 'B4'}], 'eo:common_name': 'red', 'eo:gsd': 30.0, 'gsd': 30.0, 'roles': ['data'], 'title': 'Band 4 - Red - 636-673nm (30m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'B1': {'bundleable': True, 'eo:bands': [{'common_name': 'coastal', 'name': 'B1'}], 'eo:common_name': 'coastal', 'eo:gsd': 30.0, 'gsd': 30.0, 'roles': ['data'], 'title': 'Band 1 - Ultra Blue (coastal/aerosol) - 435-451nm (30m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'B11': {'bundleable': True, 'eo:bands': [{'common_name': 'lwir12', 'name': 'B11'}], 'eo:common_name': 'lwir12', 'eo:gsd': 30.0, 'gsd': 30.0, 'roles': ['data'], 'title': 'Band 11 - Thermal Infrared (TIRS) 2 - 11500-12510nm (30m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'MTL': {'bundleable': True, 'roles': ['metadata'], 'title': 'Product Metadata', 'type': 'text/plain'}, 'thumb_small': {'bundleable': True, 'roles': ['thumbnail'], 'title': 'Thumbnail - Small', 'type': 'image/jpeg'}, 'B9': {'bundleable': True, 'eo:bands': [{'common_name': 'cirrus', 'name': 'B9'}], 'eo:common_name': 'cirrus', 'eo:gsd': 30.0, 'gsd': 30.0, 'roles': ['data'], 'title': 'Band 9 - Cirrus - 1363-1384nm (30m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'B7': {'bundleable': True, 'eo:bands': [{'common_name': 'swir22', 'name': 'B7'}], 'eo:common_name': 'swir22', 'eo:gsd': 30.0, 'gsd': 30.0, 'roles': ['data'], 'title': 'Band 7 - Shortwave Infrared (SWIR) 2 - 2107-2294nm (30m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'B10': {'bundleable': True, 'eo:bands': [{'common_name': 'lwir11', 'name': 'B10'}], 'eo:common_name': 'lwir11', 'eo:gsd': 30.0, 'gsd': 30.0, 'roles': ['data'], 'title': 'Band 10 - Thermal Infrared (TIRS) 1 - 10600-11190nm (30m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'B8': {'bundleable': True, 'eo:bands': [{'common_name': 'pan', 'name': 'B8'}], 'eo:common_name': 'pan', 'eo:gsd': 15.0, 'gsd': 15.0, 'roles': ['data'], 'title': 'Band 8 - Panchromatic - 503-676nm (15m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'ANG': {'bundleable': True, 'roles': ['metadata'], 'title': 'Angle Coefficient Metadata', 'type': 'text/plain'}} | PDDL-1.0 | True | [properties.eo:cloud_cover, id, properties.created, properties.datetime, collection] | [item-assets] | 1.0.0-beta.2 | Landsat 8 C1 T1 | https://eod-catalog-svc-prod.astraea.earth/collections/landsat8_l1tp | POLYGON ((180 -90, 180 90, -180 90, -180 -90, 1... | (2013-03-18 15:59:02.333000+00:00, None) |
1 | True | MCD43A4: MODIS/Terra and Aqua Nadir BRDF-Adjusted Reflectance Daily L3 Global 500 m SIN Grid V006 | modis | MODIS | mcd43a4 | {'B06qa': {'bundleable': True, 'eo:gsd': 500.0, 'gsd': 500.0, 'roles': ['qa'], 'title': 'Band 6 - QA', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'B01': {'bundleable': True, 'eo:bands': [{'common_name': 'red', 'name': 'B01'}], 'eo:common_name': 'red', 'eo:gsd': 500.0, 'gsd': 500.0, 'roles': ['data'], 'title': 'Band 1 - Red - 620-670nm (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'B05': {'bundleable': True, 'eo:bands': [{'name': 'B05'}], 'eo:gsd': 500.0, 'gsd': 500.0, 'roles': ['data'], 'title': 'Band 5 - SWIR - 1230-1250nm (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'B02': {'bundleable': True, 'eo:bands': [{'common_name': 'nir', 'name': 'B02'}], 'eo:common_name': 'nir', 'eo:gsd': 500.0, 'gsd': 500.0, 'roles': ['data'], 'title': 'Band 2 - NIR - 841-876nm (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'B01qa': {'bundleable': True, 'eo:gsd': 500.0, 'gsd': 500.0, 'roles': ['qa'], 'title': 'Band 1 - QA', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'B06': {'bundleable': True, 'eo:bands': [{'common_name': 'swir16', 'name': 'B06'}], 'eo:common_name': 'swir16', 'eo:gsd': 500.0, 'gsd': 500.0, 'roles': ['data'], 'title': 'Band 6 - SWIR - 1628-1652nm (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'B02qa': {'bundleable': True, 'eo:gsd': 500.0, 'gsd': 500.0, 'roles': ['qa'], 'title': 'Band 2 - QA', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'B03qa': {'bundleable': True, 'eo:gsd': 500.0, 'gsd': 500.0, 'roles': ['qa'], 'title': 'Band 3 - QA', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'B03': {'bundleable': True, 'eo:bands': [{'common_name': 'blue', 'name': 'B03'}], 'eo:common_name': 'blue', 'eo:gsd': 500.0, 'gsd': 500.0, 'roles': ['data'], 'title': 'Band 3 - Blue - 459-479nm (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'B04qa': {'bundleable': True, 'eo:gsd': 500.0, 'gsd': 500.0, 'roles': ['qa'], 'title': 'Band 4 - QA', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'eod_thumbnail': {'bundleable': False, 'roles': ['thumbnail'], 'title': 'Thumbnail', 'type': 'image/jpeg'}, 'B07qa': {'bundleable': True, 'eo:gsd': 500.0, 'gsd': 500.0, 'roles': ['qa'], 'title': 'Band 7 - QA', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'B05qa': {'bundleable': True, 'eo:gsd': 500.0, 'gsd': 500.0, 'roles': ['qa'], 'title': 'Band 5 - QA', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'B04': {'bundleable': True, 'eo:bands': [{'common_name': 'green', 'name': 'B04'}], 'eo:common_name': 'green', 'eo:gsd': 500.0, 'gsd': 500.0, 'roles': ['data'], 'title': 'Band 4 - Green - 545-565nm (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'B07': {'bundleable': True, 'eo:bands': [{'common_name': 'swir22', 'name': 'B07'}], 'eo:common_name': 'swir22', 'eo:gsd': 500.0, 'gsd': 500.0, 'roles': ['data'], 'title': 'Band 7 - SWIR - 2105-2155nm (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}} | CC-PDDC | True | [properties.eo:cloud_cover, id, properties.created, properties.datetime, collection] | [item-assets] | 1.0.0-beta.2 | MCD43A4 NBAR | https://eod-catalog-svc-prod.astraea.earth/collections/mcd43a4 | POLYGON ((180 -90, 180 90, -180 90, -180 -90, 1... | (2000-02-16 00:00:00+00:00, None) |
2 | True | MOD11A1: MODIS/Terra Land Surface Temperature/Emissivity Daily L3 Global 1 km SIN Grid V006 | modis | MODIS | mod11a1 | {'QCD': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['qa'], 'title': 'Daytime LST Quality Indicators (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'DVT': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['metadata'], 'title': 'Local time of day observation (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'E31': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['data'], 'title': 'Band 31 emissivity (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'NVT': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['metadata'], 'title': 'Local time of night observation (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'E32': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['data'], 'title': 'Band 32 emissivity (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'CNC': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['qa'], 'title': 'Night clear-sky coverage (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'LSTN': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['data'], 'title': 'Nighttime Land Surface Temperature (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'CDC': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['qa'], 'title': 'Day clear-sky coverage (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'NVA': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['metadata'], 'title': 'View zenith angle of night observation (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'DVA': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['metadata'], 'title': 'View zenith angle of day observation (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'LSTD': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['data'], 'title': 'Daytime Land Surface Temperature (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'eod_thumbnail': {'bundleable': False, 'roles': ['thumbnail'], 'title': 'Thumbnail', 'type': 'image/jpeg'}, 'QCN': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['qa'], 'title': 'Nighttime LST Quality indicators (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}} | CC-PDDC | True | [properties.eo:cloud_cover, id, properties.created, properties.datetime, collection] | [item-assets] | 1.0.0-beta.2 | MOD11A1 LST | https://eod-catalog-svc-prod.astraea.earth/collections/mod11a1 | POLYGON ((180 -90, 180 90, -180 90, -180 -90, 1... | (2000-02-24 00:00:00+00:00, None) |
3 | True | MYD11A1: MODIS/Aqua Land Surface Temperature/Emissivity Daily L3 Global 1 km SIN Grid V006 | modis | MODIS | myd11a1 | {'QCD': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['qa'], 'title': 'Daytime LST Quality Indicators (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'DVT': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['metadata'], 'title': 'Local time of day observation (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'E31': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['data'], 'title': 'Band 31 emissivity (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'NVT': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['metadata'], 'title': 'Local time of night observation (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'E32': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['data'], 'title': 'Band 32 emissivity (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'CNC': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['qa'], 'title': 'Night clear-sky coverage (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'LSTN': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['data'], 'title': 'Nighttime Land Surface Temperature (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'CDC': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['qa'], 'title': 'Day clear-sky coverage (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'NVA': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['metadata'], 'title': 'View zenith angle of night observation (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'DVA': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['metadata'], 'title': 'View zenith angle of day observation (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'LSTD': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['data'], 'title': 'Daytime Land Surface Temperature (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'eod_thumbnail': {'bundleable': False, 'roles': ['thumbnail'], 'title': 'Thumbnail', 'type': 'image/jpeg'}, 'QCN': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['qa'], 'title': 'Nighttime LST Quality indicators (1000m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}} | CC-PDDC | True | [properties.eo:cloud_cover, id, properties.created, properties.datetime, collection] | [item-assets] | 1.0.0-beta.2 | MYD11A1 LST | https://eod-catalog-svc-prod.astraea.earth/collections/myd11a1 | POLYGON ((180 -90, 180 90, -180 90, -180 -90, 1... | (2002-07-04 00:00:00+00:00, None) |
4 | True | MOD13A1: MODIS/Terra Vegetation Indices 16-Day L3 Global 500 m SIN Grid V006 | modis | MODIS | mod13a1 | {'PR': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['qa'], 'title': 'Quality reliability of VI pixel (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'SZA': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['metadata'], 'title': '16 days sun zenith angle (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'MIRR': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['data'], 'title': '16 days MIR reflectance (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'BR': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['data'], 'title': '16 days blue reflectance (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'RAA': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['metadata'], 'title': '16 days relative azimuth angle (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'NDVI': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['data'], 'title': '16 day NDVI average (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'VIQ': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['qa'], 'title': 'VI Quality indicators (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'RR': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['data'], 'title': '16 days red reflectance (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'EVI': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['data'], 'title': '16 day EVI average (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'VZA': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['metadata'], 'title': '16 days view zenith angle (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'CDOY': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['metadata'], 'title': 'Day of year VI pixel (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'NIRR': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['data'], 'title': '16 days NIR reflectance (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'eod_thumbnail': {'bundleable': False, 'roles': ['thumbnail'], 'title': 'Thumbnail', 'type': 'image/jpeg'}} | CC-PDDC | True | [properties.eo:cloud_cover, id, properties.created, properties.datetime, collection] | [item-assets] | 1.0.0-beta.2 | MOD13A1 VI | https://eod-catalog-svc-prod.astraea.earth/collections/mod13a1 | POLYGON ((180 -90, 180 90, -180 90, -180 -90, 1... | (2000-02-18 00:00:00+00:00, None) |
5 | True | MYD13A1: MODIS/Aqua Vegetation Indices 16-Day L3 Global 500 m SIN Grid V006 | modis | MODIS | myd13a1 | {'PR': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['qa'], 'title': 'Quality reliability of VI pixel (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'SZA': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['metadata'], 'title': '16 days sun zenith angle (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'MIRR': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['data'], 'title': '16 days MIR reflectance (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'BR': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['data'], 'title': '16 days blue reflectance (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'RAA': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['metadata'], 'title': '16 days relative azimuth angle (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'NDVI': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['data'], 'title': '16 day NDVI average (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'VIQ': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['qa'], 'title': 'VI Quality indicators (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'RR': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['data'], 'title': '16 days red reflectance (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'EVI': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['data'], 'title': '16 day EVI average (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'VZA': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['metadata'], 'title': '16 days view zenith angle (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'CDOY': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['metadata'], 'title': 'Day of year VI pixel (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'NIRR': {'bundleable': True, 'eo:gsd': 1000.0, 'gsd': 1000.0, 'roles': ['data'], 'title': '16 days NIR reflectance (500m)', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'eod_thumbnail': {'bundleable': False, 'roles': ['thumbnail'], 'title': 'Thumbnail', 'type': 'image/jpeg'}} | CC-PDDC | True | [properties.eo:cloud_cover, id, properties.created, properties.datetime, collection] | [item-assets] | 1.0.0-beta.2 | MYD13A1 VI | https://eod-catalog-svc-prod.astraea.earth/collections/myd13a1 | POLYGON ((180 -90, 180 90, -180 90, -180 -90, 1... | (2002-07-04 00:00:00+00:00, None) |
6 | True | Sentinel-2 Level-2A atmospherically corrected data | sentinel | Sentinel | sentinel2_l2a | {'B03_60m': {'bundleable': True, 'eo:bands': [{'common_name': 'green', 'name': 'B03'}], 'eo:common_name': 'green', 'eo:gsd': 60.0, 'gsd': 60.0, 'roles': ['data'], 'title': 'Band 3 - Green - 559.8/559.0nm (60m)', 'type': 'image/jp2'}, 'CLD_20m': {'bundleable': True, 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['qa'], 'title': 'Cloud (20m)', 'type': 'image/jp2'}, 'B05_20m': {'bundleable': True, 'eo:bands': [{'common_name': 'rededge', 'name': 'B05'}], 'eo:common_name': 'rededge', 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['data'], 'title': 'Band 5 - Vegetation Red Edge - 704.1/703.8nm (20m)', 'type': 'image/jp2'}, 'SNW_60m': {'bundleable': True, 'eo:gsd': 60.0, 'gsd': 60.0, 'roles': ['qa'], 'title': 'Snow (60m)', 'type': 'image/jp2'}, 'B07_60m': {'bundleable': True, 'eo:bands': [{'common_name': 'rededge', 'name': 'B07'}], 'eo:common_name': 'rededge', 'eo:gsd': 60.0, 'gsd': 60.0, 'roles': ['data'], 'title': 'Band 7 – Vegetation Red Edge - 782.8/779.7nm (60m)', 'type': 'image/jp2'}, 'B08_10m': {'bundleable': True, 'eo:bands': [{'common_name': 'nir', 'name': 'B08'}], 'eo:common_name': 'nir', 'eo:gsd': 10.0, 'gsd': 10.0, 'roles': ['data'], 'title': 'Band 8 – NIR - 832.8/832.9nm (10m)', 'type': 'image/jp2'}, 'B05_60m': {'bundleable': True, 'eo:bands': [{'common_name': 'rededge', 'name': 'B05'}], 'eo:common_name': 'rededge', 'eo:gsd': 60.0, 'gsd': 60.0, 'roles': ['data'], 'title': 'Band 5 - Vegetation Red Edge - 704.1/703.8nm (60m)', 'type': 'image/jp2'}, 'B12_60m': {'bundleable': True, 'eo:bands': [{'common_name': 'swir22', 'name': 'B12'}], 'eo:common_name': 'swir22', 'eo:gsd': 60.0, 'gsd': 60.0, 'roles': ['data'], 'title': 'Band 12 – SWIR - 2202.4/2185.7nm (60m)', 'type': 'image/jp2'}, 'B01_60m': {'bundleable': True, 'eo:bands': [{'common_name': 'coastal', 'name': 'B01'}], 'eo:common_name': 'coastal', 'eo:gsd': 60.0, 'gsd': 60.0, 'roles': ['data'], 'title': 'Band 1 - Coastal aerosol - 442.7/442.2nm (60m)', 'type': 'image/jp2'}, 'eod_thumbnail': {'bundleable': False, 'roles': ['thumbnail'], 'title': 'Thumbnail', 'type': 'image/jpeg'}, 'TCI_20m': {'bundleable': True, 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['data'], 'title': 'True Color Image (20m)', 'type': 'image/jp2'}, 'B08_20m': {'bundleable': True, 'eo:bands': [{'common_name': 'nir', 'name': 'B08'}], 'eo:common_name': 'nir', 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['data'], 'title': 'Band 8 – NIR - 832.8/832.9nm (20m)', 'type': 'image/jp2'}, 'cloud_mask': {'bundleable': True, 'roles': ['qa'], 'title': 'Cloud mask', 'type': 'application/gml+xml'}, 'tileInfo': {'bundleable': True, 'roles': ['metadata'], 'title': 'Tile info', 'type': 'application/json'}, 'B06_60m': {'bundleable': True, 'eo:bands': [{'common_name': 'rededge', 'name': 'B06'}], 'eo:common_name': 'rededge', 'eo:gsd': 60.0, 'gsd': 60.0, 'roles': ['data'], 'title': 'Band 6 – Vegetation Red Edge - 740.5/739.1nm (60m)', 'type': 'image/jp2'}, 'B08_60m': {'bundleable': True, 'eo:bands': [{'common_name': 'nir', 'name': 'B08'}], 'eo:common_name': 'nir', 'eo:gsd': 60.0, 'gsd': 60.0, 'roles': ['data'], 'title': 'Band 8 – NIR - 832.8/832.9nm (60m)', 'type': 'image/jp2'}, 'B02_20m': {'bundleable': True, 'eo:bands': [{'common_name': 'blue', 'name': 'B02'}], 'eo:common_name': 'blue', 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['data'], 'title': 'Band 2 - Blue - 492.4/492.1nm (20m)', 'type': 'image/jp2'}, 'B11_20m': {'bundleable': True, 'eo:bands': [{'common_name': 'swir16', 'name': 'B11'}], 'eo:common_name': 'swir16', 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['data'], 'title': 'Band 11 – SWIR - 1613.7/1610.4nm (20m)', 'type': 'image/jp2'}, 'WVP_60m': {'bundleable': True, 'eo:gsd': 60.0, 'gsd': 60.0, 'roles': ['data'], 'title': 'Water Vapor (60m)', 'type': 'image/jp2'}, 'AOT_60m': {'bundleable': True, 'eo:gsd': 60.0, 'gsd': 60.0, 'roles': ['data'], 'title': 'Aerosol Optical Thickness (60m)', 'type': 'image/jp2'}, 'WVP_10m': {'bundleable': True, 'eo:gsd': 10.0, 'gsd': 10.0, 'roles': ['data'], 'title': 'Water Vapor (10m)', 'type': 'image/jp2'}, 'B06_20m': {'bundleable': True, 'eo:bands': [{'common_name': 'rededge', 'name': 'B06'}], 'eo:common_name': 'rededge', 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['data'], 'title': 'Band 6 – Vegetation Red Edge - 740.5/739.1nm (20m)', 'type': 'image/jp2'}, 'WVP_20m': {'bundleable': True, 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['data'], 'title': 'Water Vapor (20m)', 'type': 'image/jp2'}, 'B8A_20m': {'bundleable': True, 'eo:bands': [{'common_name': 'nir08', 'name': 'B8A'}], 'eo:common_name': 'nir08', 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['data'], 'title': 'Band 8A – Narrow NIR - 864.7/864nm (20m)', 'type': 'image/jp2'}, 'B07_20m': {'bundleable': True, 'eo:bands': [{'common_name': 'rededge', 'name': 'B07'}], 'eo:common_name': 'rededge', 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['data'], 'title': 'Band 7 – Vegetation Red Edge - 782.8/779.7nm (20m)', 'type': 'image/jp2'}, 'B12_20m': {'bundleable': True, 'eo:bands': [{'common_name': 'swir22', 'name': 'B12'}], 'eo:common_name': 'swir22', 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['data'], 'title': 'Band 12 – SWIR - 2202.4/2185.7nm (20m)', 'type': 'image/jp2'}, 'SCL_20m': {'bundleable': True, 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['data'], 'title': 'Scene Classification (20m)', 'type': 'image/jp2'}, 'B11_60m': {'bundleable': True, 'eo:bands': [{'common_name': 'swir16', 'name': 'B11'}], 'eo:common_name': 'swir16', 'eo:gsd': 60.0, 'gsd': 60.0, 'roles': ['data'], 'title': 'Band 11 – SWIR - 1613.7/1610.4nm (60m)', 'type': 'image/jp2'}, 'SNW_20m': {'bundleable': True, 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['qa'], 'title': 'Snow (20m)', 'type': 'image/jp2'}, 'B09_60m': {'bundleable': True, 'eo:bands': [{'common_name': 'nir09', 'name': 'B09'}], 'eo:common_name': 'nir09', 'eo:gsd': 60.0, 'gsd': 60.0, 'roles': ['data'], 'title': 'Band 9 – Water vapour - 945.1/943.2nm (60m)', 'type': 'image/jp2'}, 'productInfo': {'bundleable': True, 'roles': ['metadata'], 'title': 'Product info', 'type': 'application/json'}, 'B04_60m': {'bundleable': True, 'eo:bands': [{'common_name': 'red', 'name': 'B04'}], 'eo:common_name': 'red', 'eo:gsd': 60.0, 'gsd': 60.0, 'roles': ['data'], 'title': 'Band 4 - Red - 664.6/664.9nm (60m)', 'type': 'image/jp2'}, 'B04_20m': {'bundleable': True, 'eo:bands': [{'common_name': 'red', 'name': 'B04'}], 'eo:common_name': 'red', 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['data'], 'title': 'Band 4 - Red - 664.6/664.9nm (20m)', 'type': 'image/jp2'}, 'TCI_10m': {'bundleable': True, 'eo:gsd': 10.0, 'gsd': 10.0, 'roles': ['data'], 'title': 'True Color Image (10m)', 'type': 'image/jp2'}, 'B8A_60m': {'bundleable': True, 'eo:bands': [{'common_name': 'nir08', 'name': 'B8A'}], 'eo:common_name': 'nir08', 'eo:gsd': 60.0, 'gsd': 60.0, 'roles': ['data'], 'title': 'Band 8A – Narrow NIR - 864.7/864nm (60m)', 'type': 'image/jp2'}, 'B02_60m': {'bundleable': True, 'eo:bands': [{'common_name': 'blue', 'name': 'B02'}], 'eo:common_name': 'blue', 'eo:gsd': 60.0, 'gsd': 60.0, 'roles': ['data'], 'title': 'Band 2 - Blue - 492.4/492.1nm (60m)', 'type': 'image/jp2'}, 'metadata': {'bundleable': True, 'roles': ['metadata'], 'title': 'Tile metadata', 'type': 'application/xml'}, 'SCL_60m': {'bundleable': True, 'eo:gsd': 60.0, 'gsd': 60.0, 'roles': ['data'], 'title': 'Scene Classification (60m)', 'type': 'image/jp2'}, 'B04_10m': {'bundleable': True, 'eo:bands': [{'common_name': 'red', 'name': 'B04'}], 'eo:common_name': 'red', 'eo:gsd': 10.0, 'gsd': 10.0, 'roles': ['data'], 'title': 'Band 4 - Red - 664.6/664.9nm (10m)', 'type': 'image/jp2'}, 'B03_10m': {'bundleable': True, 'eo:bands': [{'common_name': 'green', 'name': 'B03'}], 'eo:common_name': 'green', 'eo:gsd': 10.0, 'gsd': 10.0, 'roles': ['data'], 'title': 'Band 3 - Green - 559.8/559.0nm (10m)', 'type': 'image/jp2'}, 'TCI_60m': {'bundleable': True, 'eo:gsd': 60.0, 'gsd': 60.0, 'roles': ['data'], 'title': 'True Color Image (60m)', 'type': 'image/jp2'}, 'AOT_20m': {'bundleable': True, 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['data'], 'title': 'Aerosol Optical Thickness (20m)', 'type': 'image/jp2'}, 'B03_20m': {'bundleable': True, 'eo:bands': [{'common_name': 'green', 'name': 'B03'}], 'eo:common_name': 'green', 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['data'], 'title': 'Band 3 - Green - 559.8/559.0nm (20m)', 'type': 'image/jp2'}, 'B02_10m': {'bundleable': True, 'eo:bands': [{'common_name': 'blue', 'name': 'B02'}], 'eo:common_name': 'blue', 'eo:gsd': 10.0, 'gsd': 10.0, 'roles': ['data'], 'title': 'Band 2 - Blue - 492.4/492.1nm (10m)', 'type': 'image/jp2'}, 'CLD_60m': {'bundleable': True, 'eo:gsd': 60.0, 'gsd': 60.0, 'roles': ['qa'], 'title': 'Cloud (60m)', 'type': 'image/jp2'}, 'AOT_10m': {'bundleable': True, 'eo:gsd': 10.0, 'gsd': 10.0, 'roles': ['data'], 'title': 'Aerosol Optical Thickness (10m)', 'type': 'image/jp2'}, 'preview_image': {'bundleable': True, 'roles': ['overview', 'preview'], 'title': 'Preview Image', 'type': 'image/jp2'}} | CC-BY-SA-3.0 | True | [properties.eo:cloud_cover, id, properties.created, properties.datetime, collection] | [item-assets] | 1.0.0-beta.2 | Sentinel-2 L2A | https://eod-catalog-svc-prod.astraea.earth/collections/sentinel2_l2a | POLYGON ((180 -90, 180 90, -180 90, -180 -90, 1... | (2018-04-01 07:02:22.463000+00:00, None) |
7 | True | Sentinel-2 Level-1C top of atmosphere | sentinel | Sentinel | sentinel2_l1c | {'B04_preview': {'bundleable': True, 'roles': ['overview', 'preview'], 'title': 'Preview - Band 4 - Red - 664.6/664.9nm', 'type': 'image/jp2'}, 'B01': {'bundleable': True, 'eo:bands': [{'common_name': 'coastal', 'name': 'B01'}], 'eo:common_name': 'coastal', 'eo:gsd': 60.0, 'gsd': 60.0, 'roles': ['data'], 'title': 'Band 1 - Coastal aerosol - 442.7/442.2nm (60m)', 'type': 'image/jp2'}, 'B09': {'bundleable': True, 'eo:bands': [{'common_name': 'nir09', 'name': 'B09'}], 'eo:common_name': 'nir09', 'eo:gsd': 60.0, 'gsd': 60.0, 'roles': ['data'], 'title': 'Band 9 – Water vapour - 945.1/943.2nm (60m)', 'type': 'image/jp2'}, 'B07_preview': {'bundleable': True, 'roles': ['overview', 'preview'], 'title': 'Preview - Band 7 – Vegetation Red Edge - 782.8/779.7nm', 'type': 'image/jp2'}, 'B03_preview': {'bundleable': True, 'roles': ['overview', 'preview'], 'title': 'Preview - Band 3 - Green - 559.8/559.0nm', 'type': 'image/jp2'}, 'B02': {'bundleable': True, 'eo:bands': [{'common_name': 'blue', 'name': 'B02'}], 'eo:common_name': 'blue', 'eo:gsd': 10.0, 'gsd': 10.0, 'roles': ['data'], 'title': 'Band 2 - Blue - 492.4/492.1nm (10m)', 'type': 'image/jp2'}, 'B01_preview': {'bundleable': True, 'roles': ['overview', 'preview'], 'title': 'Preview - Band 1 - Coastal aerosol - 442.7/442.2nm', 'type': 'image/jp2'}, 'B06': {'bundleable': True, 'eo:bands': [{'common_name': 'rededge', 'name': 'B06'}], 'eo:common_name': 'rededge', 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['data'], 'title': 'Band 6 – Vegetation Red Edge - 740.5/739.1nm (20m)', 'type': 'image/jp2'}, 'B8A': {'bundleable': True, 'eo:bands': [{'common_name': 'nir08', 'name': 'B8A'}], 'eo:common_name': 'nir08', 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['data'], 'title': 'Band 8A – Narrow NIR - 864.7/864nm (20m)', 'type': 'image/jp2'}, 'B03': {'bundleable': True, 'eo:bands': [{'common_name': 'green', 'name': 'B03'}], 'eo:common_name': 'green', 'eo:gsd': 10.0, 'gsd': 10.0, 'roles': ['data'], 'title': 'Band 3 - Green - 559.8/559.0nm (10m)', 'type': 'image/jp2'}, 'B10_preview': {'bundleable': True, 'roles': ['overview', 'preview'], 'title': 'Preview - Band 10 – SWIR – Cirrus - 1373.5/1376.9nm', 'type': 'image/jp2'}, 'B8A_preview': {'bundleable': True, 'roles': ['overview', 'preview'], 'title': 'Preview - Band 8A – Narrow NIR - 864.7/864nm', 'type': 'image/jp2'}, 'preview_image': {'bundleable': True, 'roles': ['overview', 'preview'], 'title': 'Preview Image', 'type': 'image/jpeg'}, 'eod_thumbnail': {'bundleable': False, 'roles': ['thumbnail'], 'title': 'Thumbnail', 'type': 'image/jpeg'}, 'B11': {'bundleable': True, 'eo:bands': [{'common_name': 'swir16', 'name': 'B11'}], 'eo:common_name': 'swir16', 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['data'], 'title': 'Band 11 – SWIR - 1613.7/1610.4nm (20m)', 'type': 'image/jp2'}, 'cloud_mask': {'bundleable': True, 'roles': ['qa'], 'title': 'Cloud mask', 'type': 'application/gml+xml'}, 'tileInfo': {'bundleable': True, 'roles': ['metadata'], 'title': 'Tile info', 'type': 'application/json'}, 'B09_preview': {'bundleable': True, 'roles': ['overview', 'preview'], 'title': 'Preview - Band 9 – Water vapour - 945.1/943.2nm ', 'type': 'image/jp2'}, 'B11_preview': {'bundleable': True, 'roles': ['overview', 'preview'], 'title': 'Preview - Band 11 – SWIR - 1613.7/1610.4nm', 'type': 'image/jp2'}, 'B12': {'bundleable': True, 'eo:bands': [{'common_name': 'swir22', 'name': 'B12'}], 'eo:common_name': 'swir22', 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['data'], 'title': 'Band 12 – SWIR - 2202.4/2185.7nm (20m)', 'type': 'image/jp2'}, 'B05': {'bundleable': True, 'eo:bands': [{'common_name': 'rededge', 'name': 'B05'}], 'eo:common_name': 'rededge', 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['data'], 'title': 'Band 5 - Vegetation Red Edge - 704.1/703.8nm (20m)', 'type': 'image/jp2'}, 'TCI': {'bundleable': True, 'eo:gsd': 10.0, 'gsd': 10.0, 'roles': ['data'], 'title': 'True Color Image (10m)', 'type': 'image/jp2'}, 'B08_preview': {'bundleable': True, 'roles': ['overview', 'preview'], 'title': 'Preview - Band 8 – NIR - 832.8/832.9nm', 'type': 'image/jp2'}, 'preview_image_jp2': {'bundleable': True, 'roles': ['overview', 'preview'], 'title': 'Preview Image (JPEG2000)', 'type': 'image/jp2'}, 'productInfo': {'bundleable': True, 'roles': ['metadata'], 'title': 'Product info', 'type': 'application/json'}, 'B06_preview': {'bundleable': True, 'roles': ['overview', 'preview'], 'title': 'Preview - Band 6 – Vegetation Red Edge - 740.5/739.1nm', 'type': 'image/jp2'}, 'B05_preview': {'bundleable': True, 'roles': ['overview', 'preview'], 'title': 'Preview - Band 5 - Vegetation Red Edge - 704.1/703.8nm', 'type': 'image/jp2'}, 'B10': {'bundleable': True, 'eo:bands': [{'common_name': 'cirrus', 'name': 'B10'}], 'eo:common_name': 'cirrus', 'eo:gsd': 60.0, 'gsd': 60.0, 'roles': ['data'], 'title': 'Band 10 – SWIR – Cirrus - 1373.5/1376.9nm (60m)', 'type': 'image/jp2'}, 'B02_preview': {'bundleable': True, 'roles': ['overview', 'preview'], 'title': 'Preview - Band 2 - Blue - 492.4/492.1nm', 'type': 'image/jp2'}, 'B12_preview': {'bundleable': True, 'roles': ['overview', 'preview'], 'title': 'Preview - Band 12 – SWIR - 2202.4/2185.7nm', 'type': 'image/jp2'}, 'B08': {'bundleable': True, 'eo:bands': [{'common_name': 'nir', 'name': 'B08'}], 'eo:common_name': 'nir', 'eo:gsd': 10.0, 'gsd': 10.0, 'roles': ['data'], 'title': 'Band 8 – NIR - 832.8/832.9nm (10m)', 'type': 'image/jp2'}, 'metadata': {'bundleable': True, 'roles': ['metadata'], 'title': 'Tile metadata', 'type': 'application/xml'}, 'B04': {'bundleable': True, 'eo:bands': [{'common_name': 'red', 'name': 'B04'}], 'eo:common_name': 'red', 'eo:gsd': 10.0, 'gsd': 10.0, 'roles': ['data'], 'title': 'Band 4 - Red - 664.6/664.9nm (10m)', 'type': 'image/jp2'}, 'B07': {'bundleable': True, 'eo:bands': [{'common_name': 'rededge', 'name': 'B07'}], 'eo:common_name': 'rededge', 'eo:gsd': 20.0, 'gsd': 20.0, 'roles': ['data'], 'title': 'Band 7 – Vegetation Red Edge - 782.8/779.7nm (20m)', 'type': 'image/jp2'}} | CC-BY-SA-3.0 | True | [properties.eo:cloud_cover, id, properties.created, properties.datetime, collection] | [item-assets] | 1.0.0-beta.2 | Sentinel-2 L1C | https://eod-catalog-svc-prod.astraea.earth/collections/sentinel2_l1c | POLYGON ((180 -90, 180 90, -180 90, -180 -90, 1... | (2015-06-27 10:25:31.456000+00:00, None) |
8 | True | National Agriculture Imagery Program aerial imagery | naip | NAIP | naip | {'analytic_rgbir': {'bundleable': True, 'eo:bands': [{'common_name': 'red', 'name': 'B1'}, {'common_name': 'green', 'name': 'B2'}, {'common_name': 'blue', 'name': 'B3'}, {'common_name': 'nir', 'name': 'B4'}], 'eo:common_name': 'red', 'eo:gsd': 1.0, 'gsd': 1.0, 'roles': ['data'], 'title': 'Analytic RGBIR (1m)', 'type': 'application/x.mrf'}, 'source_rgbir': {'bundleable': True, 'eo:bands': [{'common_name': 'red', 'name': 'B1'}, {'common_name': 'green', 'name': 'B2'}, {'common_name': 'blue', 'name': 'B3'}, {'common_name': 'nir', 'name': 'B4'}], 'eo:common_name': 'red', 'eo:gsd': 1.0, 'gsd': 1.0, 'roles': ['data'], 'title': 'Source RGBIR (1m)', 'type': 'image/tiff'}, 'visual_rgb': {'bundleable': True, 'eo:bands': [{'common_name': 'red', 'name': 'B1'}, {'common_name': 'green', 'name': 'B2'}, {'common_name': 'blue', 'name': 'B3'}], 'eo:common_name': 'red', 'eo:gsd': 1.0, 'gsd': 1.0, 'roles': ['overview', 'preview'], 'title': 'Visualization RGB (1m)', 'type': 'image/tiff'}, 'eod_thumbnail': {'bundleable': False, 'roles': ['thumbnail'], 'title': 'Thumbnail', 'type': 'image/jpeg'}} | CC-PDDC | True | [id, properties.created, properties.datetime, collection] | [item-assets] | 1.0.0-beta.2 | NAIP | https://eod-catalog-svc-prod.astraea.earth/collections/naip | POLYGON ((-66.9513812 24.7433195, -66.9513812 4... | (2012-04-23 12:00:00+00:00, None) |
9 | True | Maxar Open Data | maxar | Maxar | maxar_open_data | {'rgb': {'bundleable': True, 'eo:bands': [{'common_name': 'red', 'name': 'B1'}, {'common_name': 'green', 'name': 'B2'}, {'common_name': 'blue', 'name': 'B3'}], 'eo:common_name': 'red', 'roles': ['data'], 'title': 'RGB GeoTIFF', 'type': 'image/tiff; application=geotiff'}, 'eod_thumbnail': {'bundleable': False, 'roles': ['thumbnail'], 'title': 'Thumbnail', 'type': 'image/jpeg'}} | CC-BY-NC-4.0 | True | [id, properties.created, properties.datetime, collection] | [item-assets] | 1.0.0-beta.2 | Maxar Open Data | https://eod-catalog-svc-prod.astraea.earth/collections/maxar_open_data | POLYGON ((180 -90, 180 90, -180 90, -180 -90, 1... | (2008-01-15 00:00:00+00:00, None) |
10 | True | SpaceNet 7 Imagery and Labels | spacenet7 | SpaceNet | spacenet7 | {'image_masked': {'bundleable': True, 'eo:bands': [{'common_name': 'red', 'name': 'B1'}, {'common_name': 'green', 'name': 'B2'}, {'common_name': 'blue', 'name': 'B3'}], 'eo:common_name': 'red', 'roles': ['data'], 'title': 'Image Masked', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'buildings_labels_match': {'bundleable': True, 'title': 'Buildings Labels Match', 'type': 'application/geo+json'}, 'labels': {'bundleable': True, 'title': 'Labels', 'type': 'application/geo+json'}, 'udm_mask': {'bundleable': True, 'title': 'UDM Mask', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}, 'udm_labels': {'bundleable': True, 'title': 'UDM Labels', 'type': 'application/geo+json'}, 'image': {'bundleable': True, 'eo:bands': [{'common_name': 'red', 'name': 'B1'}, {'common_name': 'green', 'name': 'B2'}, {'common_name': 'blue', 'name': 'B3'}], 'eo:common_name': 'red', 'roles': ['data'], 'title': 'Image', 'type': 'image/tiff; application=geotiff; profile=cloud-optimized'}} | CC-BY-SA-4.0 | True | [id, properties.created, properties.datetime, collection] | [item-assets] | 1.0.0-beta.2 | SpaceNet 7 | https://eod-catalog-svc-prod.astraea.earth/collections/spacenet7 | POLYGON ((180 -90, 180 90, -180 90, -180 -90, 1... | (2018-01-01 00:00:00+00:00, None) |
This example will use the publicly accessible Sentinel-2 L2A collection. From the above DataFrame, this collection has an id of "sentinel2_l2a". Let's see which band names correspond to red, green, and blue.
band_info_df = earth_ondemand.item_assets('sentinel2_l2a') band_info_df[ (band_info_df.eo_bands_common_names.isin(['red', 'green', 'blue'])) | (band_info_df.asset_name.str.contains('SCL')) ].sort_values(['eo_gsd', 'eo_bands_common_names'])
asset_name | bundleable | eo_gsd | gsd | roles | title | type | collection_id | eo_bands_count | eo_bands_common_names | |
---|---|---|---|---|---|---|---|---|---|---|
43 | B02_10m | True | 10.0 | 10.0 | [data] | Band 2 - Blue - 492.4/492.1nm (10m) | image/jp2 | sentinel2_l2a | 1.0 | blue |
39 | B03_10m | True | 10.0 | 10.0 | [data] | Band 3 - Green - 559.8/559.0nm (10m) | image/jp2 | sentinel2_l2a | 1.0 | green |
38 | B04_10m | True | 10.0 | 10.0 | [data] | Band 4 - Red - 664.6/664.9nm (10m) | image/jp2 | sentinel2_l2a | 1.0 | red |
16 | B02_20m | True | 20.0 | 20.0 | [data] | Band 2 - Blue - 492.4/492.1nm (20m) | image/jp2 | sentinel2_l2a | 1.0 | blue |
42 | B03_20m | True | 20.0 | 20.0 | [data] | Band 3 - Green - 559.8/559.0nm (20m) | image/jp2 | sentinel2_l2a | 1.0 | green |
32 | B04_20m | True | 20.0 | 20.0 | [data] | Band 4 - Red - 664.6/664.9nm (20m) | image/jp2 | sentinel2_l2a | 1.0 | red |
26 | SCL_20m | True | 20.0 | 20.0 | [data] | Scene Classification (20m) | image/jp2 | sentinel2_l2a | NaN | NaN |
35 | B02_60m | True | 60.0 | 60.0 | [data] | Band 2 - Blue - 492.4/492.1nm (60m) | image/jp2 | sentinel2_l2a | 1.0 | blue |
0 | B03_60m | True | 60.0 | 60.0 | [data] | Band 3 - Green - 559.8/559.0nm (60m) | image/jp2 | sentinel2_l2a | 1.0 | green |
31 | B04_60m | True | 60.0 | 60.0 | [data] | Band 4 - Red - 664.6/664.9nm (60m) | image/jp2 | sentinel2_l2a | 1.0 | red |
37 | SCL_60m | True | 60.0 | 60.0 | [data] | Scene Classification (60m) | image/jp2 | sentinel2_l2a | NaN | NaN |
Now that we know the appropriate collection id and band names, let's make a small query around Dar es Salaam Tanzania using the 20m data. The common resolution across the SCL and measurement bands will simplify our work. We could also downsample the SCL band if needed.
catalog = spark.read.earth_ondemand_catalog(geo=Point(39.20, -6.80), start_datetime='2019-09-01', end_datetime='2019-10-01', collections='sentinel2_l2a', max_cloud_cover=10 ) band_names = ['B04_20m', 'B03_20m', 'B02_20m', 'SCL_20m'] df = spark.read.raster(catalog, catalog_col_names=band_names) #keep only tile columns and rename df = df.select( col('B04_20m').alias('red'), col('B03_20m').alias('blue'), col('B02_20m').alias('green'), col('SCL_20m').alias('scl') )
HBox(children=(FloatProgress(value=0.0, max=3.0), HTML(value='')))
A NoData value is required to perform the masking. By default, Sentinel-2 measurement bands have a cell type of uint16raw
. The "raw" qualifier indicates that there is no NoData value defined. By setting the cell types to uint16
, we are setting the NoData value to 0. This is discussed in more detail here.
converted = df.select('scl', rf_convert_cell_type('red', 'uint16').alias('red'), rf_convert_cell_type('green', 'uint16').alias('green'), rf_convert_cell_type('blue', 'uint16').alias('blue'))
Now let's use the SCL band to mask out unwanted pixels from the data bands.
bad_scl_values = [0, 1, 8, 9, 10] masked = converted.withColumn('red_masked', rf_mask_by_values('red', 'scl', bad_scl_values)) \ .withColumn('green_masked', rf_mask_by_values('green', 'scl', bad_scl_values)) \ .withColumn('blue_masked', rf_mask_by_values('blue', 'scl', bad_scl_values))
Finally, let's inspect some tiles with lots of cloudy pixels.
masked.select('scl', 'red', 'red_masked') \ .filter(rf_tile_sum(rf_local_equal('scl', lit(9))) > 1000)
scl | red | red_masked |
---|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Comments
0 comments
Please sign in to leave a comment.