From dc6bfd90a04627b1980904c44c62a38102529e0d Mon Sep 17 00:00:00 2001 From: Tim Rutherford Date: Fri, 14 Sep 2018 15:00:32 -0600 Subject: [PATCH 1/6] Switching eo:bands to be an array trying to get all of the examples as well. --- extensions/examples/L1T-catalog.json | 113 +++++++++++++ extensions/examples/L1T-collection.json | 90 ----------- extensions/examples/README.md | 4 +- extensions/examples/landsat8-merged.json | 196 ++++++++++++----------- extensions/examples/landsat8-sample.json | 29 ++-- extensions/stac-collection-spec.md | 37 +++-- extensions/stac-eo-spec.md | 10 +- item-spec/examples/landsat8-sample.json | 22 +-- item-spec/examples/sentinel2-sample.json | 48 +++--- 9 files changed, 292 insertions(+), 257 deletions(-) create mode 100644 extensions/examples/L1T-catalog.json delete mode 100644 extensions/examples/L1T-collection.json diff --git a/extensions/examples/L1T-catalog.json b/extensions/examples/L1T-catalog.json new file mode 100644 index 000000000..366ab39ec --- /dev/null +++ b/extensions/examples/L1T-catalog.json @@ -0,0 +1,113 @@ +{ + "name": "Landsat catalog", + "description": "This is a very basic sample catalog.", + "links": [ + { + "href": "http://landsat-pds.s3.amazonaws.com/L8/landsat8-sample.json", + "rel": "item" + }, + { + "href": "http://landsat-pds.s3.amazonaws.com/L8/L1T-catalog.json", + "rel": "self" + } + ], + "properties": { + "c:id": "L1T", + "c:description": "Landat 8 imagery that is radiometrically calibrated and orthorectified using gound points and Digital Elevation Model (DEM) data to correct relief displacement.", + "provider": "USGS", + "license": "PDDL-1.0", + "eo:gsd": 30, + "eo:platform": "landsat-8", + "eo:instrument": "OLI_TIRS", + "eo:bands": [ + { + "name": "1", + "common_name": "coastal", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.44, + "full_width_half_max": 0.02 + }, + { + "name": "2", + "common_name": "blue", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.48, + "full_width_half_max": 0.06 + }, + { + "name": "3", + "common_name": "green", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.56, + "full_width_half_max": 0.06 + }, + { + "name": "4", + "common_name": "red", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.65, + "full_width_half_max": 0.04 + }, + { + "name": "5", + "common_name": "nir", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.86, + "full_width_half_max": 0.03 + }, + { + "name": "6", + "common_name": "swir16", + "gsd": 30.0, + "accuracy": null, + "wavelength": 1.6, + "full_width_half_max": 0.08 + }, + { + "name": "7", + "common_name": "swir22", + "gsd": 30.0, + "accuracy": null, + "wavelength": 2.2, + "full_width_half_max": 0.2 + }, + { + "name": "8", + "common_name": "pan", + "gsd": 15.0, + "accuracy": null, + "wavelength": 0.59, + "full_width_half_max": 0.18 + }, + { + "name": "9", + "common_name": "cirrus", + "gsd": 30.0, + "accuracy": null, + "wavelength": 1.37, + "full_width_half_max": 0.02 + }, + { + "name": "10", + "common_name": "lwir11", + "gsd": 100.0, + "accuracy": null, + "wavelength": 10.9, + "full_width_half_max": 0.8 + }, + { + "name": "11", + "common_name": "lwir12", + "gsd": 100.0, + "accuracy": null, + "wavelength": 12.0, + "full_width_half_max": 1.0 + } + ] + } +} \ No newline at end of file diff --git a/extensions/examples/L1T-collection.json b/extensions/examples/L1T-collection.json deleted file mode 100644 index b254d86c5..000000000 --- a/extensions/examples/L1T-collection.json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "properties": { - "c:id": "L1T", - "c:description": "Landat 8 imagery that is radiometrically calibrated and orthorectified using gound points and Digital Elevation Model (DEM) data to correct relief displacement.", - "provider": "USGS", - "license": "PDDL-1.0", - "eo:gsd" : 30, - "eo:platform": "landsat-8", - "eo:instrument": "OLI_TIRS" - }, - "eo:bands": { - "1": { - "common_name": "coastal", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.44, - "full_width_half_max": 0.02 - }, - "2": { - "common_name": "blue", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.48, - "full_width_half_max": 0.06 - }, - "3": { - "common_name": "green", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.56, - "full_width_half_max": 0.06 - }, - "4": { - "common_name": "red", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.65, - "full_width_half_max": 0.04 - }, - "5": { - "common_name": "nir", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.86, - "full_width_half_max": 0.03 - }, - "6": { - "common_name": "swir16", - "gsd": 30.0, - "accuracy": null, - "wavelength": 1.6, - "full_width_half_max": 0.08 - }, - "7": { - "common_name": "swir22", - "gsd": 30.0, - "accuracy": null, - "wavelength": 2.2, - "full_width_half_max": 0.2 - }, - "8": { - "common_name": "pan", - "gsd": 15.0, - "accuracy": null, - "wavelength": 0.59, - "full_width_half_max": 0.18 - }, - "9": { - "common_name": "cirrus", - "gsd": 30.0, - "accuracy": null, - "wavelength": 1.37, - "full_width_half_max": 0.02 - }, - "10": { - "common_name": "lwir11", - "gsd": 100.0, - "accuracy": null, - "wavelength": 10.9, - "full_width_half_max": 0.8 - }, - "11": { - "common_name": "lwir12", - "gsd": 100.0, - "accuracy": null, - "wavelength": 12.0, - "full_width_half_max": 1.0 - } - } -} \ No newline at end of file diff --git a/extensions/examples/README.md b/extensions/examples/README.md index d9590908d..2cc79e37f 100644 --- a/extensions/examples/README.md +++ b/extensions/examples/README.md @@ -1,8 +1,8 @@ -## Landsat Example with EO and Collection extension +## Landsat Example with EO and common metadata extension The files in this directory contain a full example of Landsat data. It follows the Earth Observation extension, and uses the 'Collection' extension to be less duplicative of information * [landsat8-sample](landsat8-sample.json) is a core `Item` including the link to its collection information. -* [L1T-collection](L1T-collection.json) shows the collection information for Landsat 8 L1T collection +* [L1T-catalog](L1T-catalog.json) shows the catalog definition with common metadata that applies to all items. * [landsat8-merged](landsat8-merged.json) is a fully expanded record, showing the result of merging of the collection data and the core `Item`. \ No newline at end of file diff --git a/extensions/examples/landsat8-merged.json b/extensions/examples/landsat8-merged.json index 2a0ee6e88..c84c08f91 100644 --- a/extensions/examples/landsat8-merged.json +++ b/extensions/examples/landsat8-merged.json @@ -58,7 +58,97 @@ "landsat:geometric_rmse_model_x": 5.96, "landsat:geometric_rmse_model_y": 4.654, "landsat:geometric_rmse_verify": 5.364, - "landsat:image_quality_oli": 9 + "landsat:image_quality_oli": 9, + "eo:bands": [ + { + "name": "1", + "common_name": "coastal", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.44, + "full_width_half_max": 0.02 + }, + { + "name": "2", + "common_name": "blue", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.48, + "full_width_half_max": 0.06 + }, + { + "name": "3", + "common_name": "green", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.56, + "full_width_half_max": 0.06 + }, + { + "name": "4", + "common_name": "red", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.65, + "full_width_half_max": 0.04 + }, + { + "name": "5", + "common_name": "nir", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.86, + "full_width_half_max": 0.03 + }, + { + "name": "6", + "common_name": "swir16", + "gsd": 30.0, + "accuracy": null, + "wavelength": 1.6, + "full_width_half_max": 0.08 + }, + { + "name": "7", + "common_name": "swir22", + "gsd": 30.0, + "accuracy": null, + "wavelength": 2.2, + "full_width_half_max": 0.2 + }, + { + "name": "8", + "common_name": "pan", + "gsd": 15.0, + "accuracy": null, + "wavelength": 0.59, + "full_width_half_max": 0.18 + }, + { + "name": "9", + "common_name": "cirrus", + "gsd": 30.0, + "accuracy": null, + "wavelength": 1.37, + "full_width_half_max": 0.02 + }, + { + "name": "10", + "common_name": "lwir11", + "gsd": 100.0, + "accuracy": null, + "wavelength": 10.9, + "full_width_half_max": 0.8 + }, + { + "name": "11", + "common_name": "lwir12", + "gsd": 100.0, + "accuracy": null, + "wavelength": 12.0, + "full_width_half_max": 1.0 + } + ] }, "links": [ @@ -82,151 +172,69 @@ "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B1.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["1"] + "eo:bands": [0] }, "B2": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B2.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["2"] + "eo:bands": [1] }, "B3": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B3.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["3"] + "eo:bands": [2] }, "B4": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B4.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["4"] + "eo:bands": [3] }, "B5": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B5.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["5"] + "eo:bands": [4] }, "B6": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B6.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["6"] + "eo:bands": [5] }, "B7": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B7.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["7"] + "eo:bands": [6] }, "B8": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B8.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["8"] + "eo:bands": [7] }, "B9": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B9.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["9"] + "eo:bands": [8] }, "B10": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B10.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["10"] + "eo:bands": [9] }, "B11": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B11.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["11"] - }, - - "eo:bands": { - "1": { - "common_name": "coastal", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.44, - "full_width_half_max": 0.02 - }, - "2": { - "common_name": "blue", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.48, - "full_width_half_max": 0.06 - }, - "3": { - "common_name": "green", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.56, - "full_width_half_max": 0.06 - }, - "4": { - "common_name": "red", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.65, - "full_width_half_max": 0.04 - }, - "5": { - "common_name": "nir", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.86, - "full_width_half_max": 0.03 - }, - "6": { - "common_name": "swir16", - "gsd": 30.0, - "accuracy": null, - "wavelength": 1.6, - "full_width_half_max": 0.08 - }, - "7": { - "common_name": "swir22", - "gsd": 30.0, - "accuracy": null, - "wavelength": 2.2, - "full_width_half_max": 0.2 - }, - "8": { - "common_name": "pan", - "gsd": 15.0, - "accuracy": null, - "wavelength": 0.59, - "full_width_half_max": 0.18 - }, - "9": { - "common_name": "cirrus", - "gsd": 30.0, - "accuracy": null, - "wavelength": 1.37, - "full_width_half_max": 0.02 - }, - "10": { - "common_name": "lwir11", - "gsd": 100.0, - "accuracy": null, - "wavelength": 10.9, - "full_width_half_max": 0.8 - }, - "11": { - "common_name": "lwir12", - "gsd": 100.0, - "accuracy": null, - "wavelength": 12.0, - "full_width_half_max": 1.0 - } + "eo:bands": [10] } - - } } diff --git a/extensions/examples/landsat8-sample.json b/extensions/examples/landsat8-sample.json index 69b130736..1afd9a13e 100644 --- a/extensions/examples/landsat8-sample.json +++ b/extensions/examples/landsat8-sample.json @@ -62,10 +62,9 @@ "links": [ { "rel":"self", "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00.json"}, { "rel":"alternate", "href": "https://landsatonaws.com/L8/153/025/LC81530252014153LGN00", "type": "html"}, - { "rel":"catalog", "href": "http://landsat-pds.s3.amazonaws.com/L8/catalog.json"}, - { "rel":"collection", "href": "http://landsat-pds.s3.amazonaws.com/L8/L1T-collection.json"} + { "rel":"catalog", "href": "http://landsat-pds.s3.amazonaws.com/L8/L1T-catalog.json"} ], - + "assets" :{ "thumbnail": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_thumb_large.jpg", @@ -81,71 +80,69 @@ "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B1.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["1"] + "eo:bands": [0] }, "B2": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B2.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["2"] + "eo:bands": [1] }, "B3": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B3.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["3"] + "eo:bands": [2] }, "B4": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B4.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["4"] + "eo:bands": [3] }, "B5": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B5.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["5"] + "eo:bands": [4] }, "B6": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B6.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["6"] + "eo:bands": [5] }, "B7": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B7.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["7"] + "eo:bands": [6] }, "B8": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B8.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["8"] + "eo:bands": [7] }, "B9": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B9.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["9"] + "eo:bands": [8] }, "B10": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B10.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["10"] + "eo:bands": [9] }, "B11": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B11.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["11"] + "eo:bands": [10] } - - } } diff --git a/extensions/stac-collection-spec.md b/extensions/stac-collection-spec.md index 59ba6cc68..098b94b67 100644 --- a/extensions/stac-collection-spec.md +++ b/extensions/stac-collection-spec.md @@ -140,83 +140,94 @@ This is an example `Collection` for Landsat-8 imagery and uses the [EO extension "eo:gsd" : 30, }, - "eo:bands": { - "1": { + "eo:bands": [ + { + "name": "1", "common_name": "coastal", "gsd": 30.0, "accuracy": null, "wavelength": 0.44, "full_width_half_max": 0.02 }, - "2": { + { + "name": "2", "common_name": "blue", "gsd": 30.0, "accuracy": null, "wavelength": 0.48, "full_width_half_max": 0.06 }, - "3": { + { + "name": "3", "common_name": "green", "gsd": 30.0, "accuracy": null, "wavelength": 0.56, "full_width_half_max": 0.06 }, - "4": { + { + "name": "4", "common_name": "red", "gsd": 30.0, "accuracy": null, "wavelength": 0.65, "full_width_half_max": 0.04 }, - "5": { + { + "name": "5", "common_name": "nir", "gsd": 30.0, "accuracy": null, "wavelength": 0.86, "full_width_half_max": 0.03 }, - "6": { + { + "name": "6", "common_name": "swir16", "gsd": 30.0, "accuracy": null, "wavelength": 1.6, "full_width_half_max": 0.08 }, - "7": { + { + "name": "7", "common_name": "swir22", "gsd": 30.0, "accuracy": null, "wavelength": 2.2, "full_width_half_max": 0.2 }, - "8": { + { + "name": "8", "common_name": "pan", "gsd": 15.0, "accuracy": null, "wavelength": 0.59, "full_width_half_max": 0.18 }, - "9": { + { + "name": "9", "common_name": "cirrus", "gsd": 30.0, "accuracy": null, "wavelength": 1.37, "full_width_half_max": 0.02 }, - "10": { + { + "name": "10", "common_name": "lwir11", "gsd": 100.0, "accuracy": null, "wavelength": 10.9, "full_width_half_max": 0.8 }, - "11": { + { + "name": "11", "common_name": "lwir12", "gsd": 100.0, "accuracy": null, "wavelength": 12.0, "full_width_half_max": 1.0 } - } + ] ``` \ No newline at end of file diff --git a/extensions/stac-eo-spec.md b/extensions/stac-eo-spec.md index 0def56b14..da0c8483b 100644 --- a/extensions/stac-eo-spec.md +++ b/extensions/stac-eo-spec.md @@ -21,7 +21,7 @@ It is not necessary, but recommended to use the [Collections extension](stac-col | eo:platform | string | **REQUIRED.** Unique name of the specific platform the instrument is attached to. For satellites this would be the name of the satellite (e.g., landsat-8, sentinel-2A), whereas for drones this would be a unique name for the drone. | | eo:constellation | string | **REQUIRED.** Name of the group or constellation that the platform belongs to. Example: The Sentinel-2 group has S2A and S2B, this field allows users to search for Sentinel-2 data without needing to specify which specific platform the data came from. | | eo:instrument | string | **REQUIRED.** Name of instrument or sensor used (e.g., MODIS, ASTER, OLI, Canon F-1). | -| eo:bands | Map | **REQUIRED.** This is a dictionary of band information where each key in the dictionary is an identifier for the band (e.g., "B01", "B02", "B1", "B5", "QA"). | +| eo:bands | List | **REQUIRED.** This is a list of the available bands where each item is a Band Object. | | eo:epsg | integer | EPSG code of the datasource, null if no EPSG code. | | eo:cloud_cover | integer | Estimate of cloud cover as a percentage (0-100) of the entire scene. If not available the field should not be provided. | | eo:off_nadir | number | Viewing angle. The angle from the sensor between nadir (straight down) and the scene center. Measured in degrees (0-90). | @@ -51,12 +51,14 @@ there is no valid EPSG code. | element | type info | description | | ------------------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| name | string | The name of the band (e.g., "B01", "B02", "B1", "B5", "QA"). | | common_name | string | The name commonly used to refer to the band to make it easier to search for bands across instruments. See below for a list of accepted common names. | | gsd | number | Ground Sample distance, the nominal distance between pixel centers available, in meters. See eo:gsd for more information. Defaults to eo:gsd if not provided. | | accuracy | number | The expected error between the measured location and the true location of a pixel, in meters on the ground. | | center_wavelength | number | The center wavelength of the band, in microns. | | full_width_half_max | number | Full width at half maximum (FWHM). The width of the band, as measured at half the maximum transmission, in microns. | + **full_width_half_max** (FWHM) is a common way to describe the size of a spectral band. It is the width, in microns, of the bandpass measured at a half of the maximum transmission. Thus, if the maximum transmission of the bandpass was 80%, the FWHM is measured as the width of the bandpass at @@ -86,9 +88,3 @@ numbers of several popular instruments. The [extensions page](../extensions/) gives an overview about related extensions. -### Using collections - -A lot of EO data will have common metadata across many `Items`. It is not necessary, but recommended -to use the [Collections extension](stac-collection-spec.md). While the exact metadata that would -appear in a `Collection` record will vary depending on the dataset, the most common collection-level -metadata fields are indicated with an \* in the tables below. diff --git a/item-spec/examples/landsat8-sample.json b/item-spec/examples/landsat8-sample.json index 1f381273c..427e352df 100644 --- a/item-spec/examples/landsat8-sample.json +++ b/item-spec/examples/landsat8-sample.json @@ -80,67 +80,67 @@ "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B1.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["1"] + "eo:bands": [0] }, "B2": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B2.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["2"] + "eo:bands": [1] }, "B3": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B3.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["3"] + "eo:bands": [2] }, "B4": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B4.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["4"] + "eo:bands": [3] }, "B5": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B5.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["5"] + "eo:bands": [4] }, "B6": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B6.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["6"] + "eo:bands": [5] }, "B7": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B7.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["7"] + "eo:bands": [6] }, "B8": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B8.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["8"] + "eo:bands": [7] }, "B9": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B9.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["9"] + "eo:bands": [8] }, "B10": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B10.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["10"] + "eo:bands": [9] }, "B11": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B11.TIF", "type": "GeoTIFF", "required": true, - "eo:bands": ["11"] + "eo:bands": [10] } } } diff --git a/item-spec/examples/sentinel2-sample.json b/item-spec/examples/sentinel2-sample.json index 1cf876608..c6dd98fb3 100644 --- a/item-spec/examples/sentinel2-sample.json +++ b/item-spec/examples/sentinel2-sample.json @@ -67,25 +67,25 @@ "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R10m/B02.jp2", "name": "Band 2 - Blue 0.490 (10m)", "format": "jp2", - "eo:bands": ["2"] + "eo:bands": [1] }, "B03_10m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R10m/B03.jp2", "name": "Band 3 - Green 0.560 (10m)", "format": "jp2", - "eo:bands": ["3"] + "eo:bands": [2] }, "B04_10m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R10m/B04.jp2", "name": "Band 4 - Red 0.665 (10m)", "format": "jp2", - "eo:bands": ["4"] + "eo:bands": [3] }, "B08_10m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R10m/B08.jp2", "name": "Band 8 – NIR 0.842 (10m)", "format": "jp2", - "eo:bands": ["8"] + "eo:bands": [7] }, "AOT_10m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R10m/AOT.jp2", @@ -106,55 +106,55 @@ "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R20m/B02.jp2", "name": "Band 2 - Blue 0.490 (20m)", "format": "jp2", - "eo:bands": ["2"] + "eo:bands": [1] }, "B03_20m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R20m/B03.jp2", "name": "Band 3 - Green 0.560 (20m)", "format": "jp2", - "eo:bands": ["3"] + "eo:bands": [2] }, "B04_20m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R20m/B04.jp2", "name": "Band 4 - Red 0.665 (20m)", "format": "jp2", - "eo:bands": ["4"] + "eo:bands": [3] }, "B05_20m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R20m/B05.jp2", "name" : "Band 5 - Vegetation Red Edge 0.705 (20m)", "format": "jp2", - "eo:bands": ["5"] + "eo:bands": [4] }, "B06_20m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R20m/B06.jp2", "name": "Band 6 – Vegetation Red Edge 0.740 (20m)", "format": "jp2", - "eo:bands": ["6"] + "eo:bands": [5] }, "B07_20m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R20m/B07.jp2", "name": "Band 7 – Vegetation Red Edge 0.783 (20m)", "format": "jp2", - "eo:bands": ["7"] + "eo:bands": [6] }, "B8A_20m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R20m/B8A.jp2", "name": "Band 8A – Narrow NIR 0.865 (20m)", "format": "jp2", - "eo:bands": ["8A"] + "eo:bands": [8] }, "B11_20m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R20m/B11.jp2", "name": "Band 11 – SWIR 1.610 (20m)", "format": "jp2", - "eo:bands": ["11"] + "eo:bands": [11] }, "B12_20m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R20m/B12.jp2", "name": "Band 12 – SWIR 2.190 (20m)", "format": "jp2", - "eo:bands": ["12"] + "eo:bands": [12] }, "AOT_20m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R20m/AOT.jp2", @@ -190,67 +190,67 @@ "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R60m/B01.jp2", "name": "Band 1 - Coastal aerosol (60m)", "format": "jp2", - "eo:bands": ["1"] + "eo:bands": [0] }, "B02_60m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R60m/B02.jp2", "name": "Band 2 - Blue 0.490 (60m)", "format": "jp2", - "eo:bands": ["2"] + "eo:bands": [1] }, "B03_60m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R60m/B03.jp2", "name": "Band 3 - Green 0.560 (60m)", "format": "jp2", - "eo:bands": ["3"] + "eo:bands": [2] }, "B04_60m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R60m/B04.jp2", "name": "Band 4 - Red 0.665 (60m)", "format": "jp2", - "eo:bands": ["4"] + "eo:bands": [3] }, "B05_60m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R60m/B05.jp2", "name" : "Band 5 - Vegetation Red Edge 0.705 (60m)", "format": "jp2", - "eo:bands": ["5"] + "eo:bands": [4] }, "B06_60m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R60m/B06.jp2", "name": "Band 6 – Vegetation Red Edge 0.740 (60m)", "format": "jp2", - "eo:bands": ["6"] + "eo:bands": [5] }, "B07_60m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R60m/B07.jp2", "name": "Band 7 – Vegetation Red Edge 0.783 (60m)", "format": "jp2", - "eo:bands": ["7"] + "eo:bands": [6] }, "B8A_60m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R60m/B8A.jp2", "name": "Band 8A – Narrow NIR 0.865 (60m)", "format": "jp2", - "eo:bands": ["8A"] + "eo:bands": [8] }, "B09_60m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R60m/B09.jp2", "name": "Band 9 – Water vapour 0.945 (60m)", "format": "jp2", - "eo:bands": ["9"] + "eo:bands": [9] }, "B11_60m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R60m/B11.jp2", "name": "Band 11 – SWIR 1.610 (60m)", "format": "jp2", - "eo:bands": ["11"] + "eo:bands": [11] }, "B12_60m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R60m/B12.jp2", "name": "Band 12 – SWIR 2.190 (60m)", "format": "jp2", - "eo:bands": ["12"] + "eo:bands": [12] }, "AOT_60m": { "href": "s3://sentinel-s2-l2a/tiles/35/V/MK/2018/6/5/0/R60m/AOT.jp2", From 8399b49231e5dbd924c8f98a3f0a723917562038 Mon Sep 17 00:00:00 2001 From: Tim Rutherford Date: Fri, 14 Sep 2018 15:48:27 -0600 Subject: [PATCH 2/6] Associating assets with bands section --- extensions/stac-eo-spec.md | 97 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 97 insertions(+) diff --git a/extensions/stac-eo-spec.md b/extensions/stac-eo-spec.md index da0c8483b..6bbee2cf5 100644 --- a/extensions/stac-eo-spec.md +++ b/extensions/stac-eo-spec.md @@ -84,6 +84,103 @@ numbers of several popular instruments. | lwir11 | 10.5 - 11.5 | | | 10 | | 31 | | lwir12 | 11.5 - 12.5 | | | 11 | | 32 | + +#### Associating assets with bands + +Asset definitions that contain band data should reference the band index. Each asset should provide a "eo:bands" property that is an array of 0 based indexes to the correct Band Objects. + +See [landsat8-merged.json](examples/landsat8-merged.json) for a full example. +``` +{ + "id": "LC81530252014153LGN00", + "type": "Feature", + ... + "properties": { + ... + "eo:bands": [ + { + "name": "1", + "common_name": "coastal", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.44, + "full_width_half_max": 0.02 + }, + { + "name": "2", + "common_name": "blue", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.48, + "full_width_half_max": 0.06 + }, + ... + ] + }, + + "assets" :{ + "B1": { + "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B1.TIF", + "type": "GeoTIFF", + "required": true, + "eo:bands": [0] + }, + "B2": { + + "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B2.TIF", + "type": "GeoTIFF", + "required": true, + "eo:bands": [1] + }, + ... + } + } +``` +Planet example: + +``` +{ + "id": "20171110_121030_1013", + "type": "Feature", + "properties": { + ... + "eo:bands":[ + { + "full_width_half_max": 0.08, + "center_wavelength": 0.63, + "common_name": "red" + }, + { + "full_width_half_max": 0.09, + "center_wavelength": 0.545, + "common_name": "green" + }, + { + "full_width_half_max": 0.06, + "center_wavelength": 0.485, + "common_name": "blue" + }, + { + "full_width_half_max": 0.08, + "center_wavelength": 0.82, + "common_name": "nir" + } + ] + }, + ... + "assets": { + "analytic": { + "href": "https://api.planet.com/data/v1/assets/eyJpIjogIjIwMTcxMTEwXzEyMTAxMF8xMDEzIiwgImMiOiAiUFNTY2VuZTRCYW5kIiwgInQiOiAiYW5hbHl0aWMiLCAiY3QiOiAiaXRlbS10eXBlIn0", + "name": "PSScene4Band GeoTIFF (COG)", + "eo:bands":[0,1,2,3] + ... + } + ... + + } +} +``` + ## Extensions The [extensions page](../extensions/) gives an overview about related extensions. From ed30058c7b4206657cf1c63a02e9e9ec194d6366 Mon Sep 17 00:00:00 2001 From: Tim Rutherford Date: Tue, 18 Sep 2018 12:54:24 -0600 Subject: [PATCH 3/6] Reverting some of the catalog changes and making suggested fixes. --- extensions/examples/L1T-catalog.json | 113 ----------------------- extensions/examples/L1T-collection.json | 101 ++++++++++++++++++++ extensions/examples/README.md | 4 +- extensions/examples/landsat8-sample.json | 3 +- extensions/stac-eo-spec.md | 10 +- 5 files changed, 112 insertions(+), 119 deletions(-) delete mode 100644 extensions/examples/L1T-catalog.json create mode 100644 extensions/examples/L1T-collection.json diff --git a/extensions/examples/L1T-catalog.json b/extensions/examples/L1T-catalog.json deleted file mode 100644 index 366ab39ec..000000000 --- a/extensions/examples/L1T-catalog.json +++ /dev/null @@ -1,113 +0,0 @@ -{ - "name": "Landsat catalog", - "description": "This is a very basic sample catalog.", - "links": [ - { - "href": "http://landsat-pds.s3.amazonaws.com/L8/landsat8-sample.json", - "rel": "item" - }, - { - "href": "http://landsat-pds.s3.amazonaws.com/L8/L1T-catalog.json", - "rel": "self" - } - ], - "properties": { - "c:id": "L1T", - "c:description": "Landat 8 imagery that is radiometrically calibrated and orthorectified using gound points and Digital Elevation Model (DEM) data to correct relief displacement.", - "provider": "USGS", - "license": "PDDL-1.0", - "eo:gsd": 30, - "eo:platform": "landsat-8", - "eo:instrument": "OLI_TIRS", - "eo:bands": [ - { - "name": "1", - "common_name": "coastal", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.44, - "full_width_half_max": 0.02 - }, - { - "name": "2", - "common_name": "blue", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.48, - "full_width_half_max": 0.06 - }, - { - "name": "3", - "common_name": "green", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.56, - "full_width_half_max": 0.06 - }, - { - "name": "4", - "common_name": "red", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.65, - "full_width_half_max": 0.04 - }, - { - "name": "5", - "common_name": "nir", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.86, - "full_width_half_max": 0.03 - }, - { - "name": "6", - "common_name": "swir16", - "gsd": 30.0, - "accuracy": null, - "wavelength": 1.6, - "full_width_half_max": 0.08 - }, - { - "name": "7", - "common_name": "swir22", - "gsd": 30.0, - "accuracy": null, - "wavelength": 2.2, - "full_width_half_max": 0.2 - }, - { - "name": "8", - "common_name": "pan", - "gsd": 15.0, - "accuracy": null, - "wavelength": 0.59, - "full_width_half_max": 0.18 - }, - { - "name": "9", - "common_name": "cirrus", - "gsd": 30.0, - "accuracy": null, - "wavelength": 1.37, - "full_width_half_max": 0.02 - }, - { - "name": "10", - "common_name": "lwir11", - "gsd": 100.0, - "accuracy": null, - "wavelength": 10.9, - "full_width_half_max": 0.8 - }, - { - "name": "11", - "common_name": "lwir12", - "gsd": 100.0, - "accuracy": null, - "wavelength": 12.0, - "full_width_half_max": 1.0 - } - ] - } -} \ No newline at end of file diff --git a/extensions/examples/L1T-collection.json b/extensions/examples/L1T-collection.json new file mode 100644 index 000000000..0e4275332 --- /dev/null +++ b/extensions/examples/L1T-collection.json @@ -0,0 +1,101 @@ +{ + "properties": { + "c:id": "L1T", + "c:description": "Landat 8 imagery that is radiometrically calibrated and orthorectified using gound points and Digital Elevation Model (DEM) data to correct relief displacement.", + "provider": "USGS", + "license": "PDDL-1.0", + "eo:gsd" : 30, + "eo:platform": "landsat-8", + "eo:instrument": "OLI_TIRS" + }, + "eo:bands": [ + { + "name": "1", + "common_name": "coastal", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.44, + "full_width_half_max": 0.02 + }, + { + "name": "2", + "common_name": "blue", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.48, + "full_width_half_max": 0.06 + }, + { + "name": "3", + "common_name": "green", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.56, + "full_width_half_max": 0.06 + }, + { + "name": "4", + "common_name": "red", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.65, + "full_width_half_max": 0.04 + }, + { + "name": "5", + "common_name": "nir", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.86, + "full_width_half_max": 0.03 + }, + { + "name": "6", + "common_name": "swir16", + "gsd": 30.0, + "accuracy": null, + "wavelength": 1.6, + "full_width_half_max": 0.08 + }, + { + "name": "7", + "common_name": "swir22", + "gsd": 30.0, + "accuracy": null, + "wavelength": 2.2, + "full_width_half_max": 0.2 + }, + { + "name": "8", + "common_name": "pan", + "gsd": 15.0, + "accuracy": null, + "wavelength": 0.59, + "full_width_half_max": 0.18 + }, + { + "name": "9", + "common_name": "cirrus", + "gsd": 30.0, + "accuracy": null, + "wavelength": 1.37, + "full_width_half_max": 0.02 + }, + { + "name": "10", + "common_name": "lwir11", + "gsd": 100.0, + "accuracy": null, + "wavelength": 10.9, + "full_width_half_max": 0.8 + }, + { + "name": "11", + "common_name": "lwir12", + "gsd": 100.0, + "accuracy": null, + "wavelength": 12.0, + "full_width_half_max": 1.0 + } + ] +} \ No newline at end of file diff --git a/extensions/examples/README.md b/extensions/examples/README.md index 2cc79e37f..d9590908d 100644 --- a/extensions/examples/README.md +++ b/extensions/examples/README.md @@ -1,8 +1,8 @@ -## Landsat Example with EO and common metadata extension +## Landsat Example with EO and Collection extension The files in this directory contain a full example of Landsat data. It follows the Earth Observation extension, and uses the 'Collection' extension to be less duplicative of information * [landsat8-sample](landsat8-sample.json) is a core `Item` including the link to its collection information. -* [L1T-catalog](L1T-catalog.json) shows the catalog definition with common metadata that applies to all items. +* [L1T-collection](L1T-collection.json) shows the collection information for Landsat 8 L1T collection * [landsat8-merged](landsat8-merged.json) is a fully expanded record, showing the result of merging of the collection data and the core `Item`. \ No newline at end of file diff --git a/extensions/examples/landsat8-sample.json b/extensions/examples/landsat8-sample.json index 1afd9a13e..1d25e4a28 100644 --- a/extensions/examples/landsat8-sample.json +++ b/extensions/examples/landsat8-sample.json @@ -62,7 +62,8 @@ "links": [ { "rel":"self", "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00.json"}, { "rel":"alternate", "href": "https://landsatonaws.com/L8/153/025/LC81530252014153LGN00", "type": "html"}, - { "rel":"catalog", "href": "http://landsat-pds.s3.amazonaws.com/L8/L1T-catalog.json"} + { "rel":"catalog", "href": "http://landsat-pds.s3.amazonaws.com/L8/catalog.json"}, + { "rel":"collection", "href": "http://landsat-pds.s3.amazonaws.com/L8/L1T-collection.json"} ], "assets" :{ diff --git a/extensions/stac-eo-spec.md b/extensions/stac-eo-spec.md index 6bbee2cf5..05cb133a7 100644 --- a/extensions/stac-eo-spec.md +++ b/extensions/stac-eo-spec.md @@ -21,7 +21,7 @@ It is not necessary, but recommended to use the [Collections extension](stac-col | eo:platform | string | **REQUIRED.** Unique name of the specific platform the instrument is attached to. For satellites this would be the name of the satellite (e.g., landsat-8, sentinel-2A), whereas for drones this would be a unique name for the drone. | | eo:constellation | string | **REQUIRED.** Name of the group or constellation that the platform belongs to. Example: The Sentinel-2 group has S2A and S2B, this field allows users to search for Sentinel-2 data without needing to specify which specific platform the data came from. | | eo:instrument | string | **REQUIRED.** Name of instrument or sensor used (e.g., MODIS, ASTER, OLI, Canon F-1). | -| eo:bands | List | **REQUIRED.** This is a list of the available bands where each item is a Band Object. | +| eo:bands | [Band Object] | **REQUIRED.** This is a list of the available bands where each item is a Band Object. | | eo:epsg | integer | EPSG code of the datasource, null if no EPSG code. | | eo:cloud_cover | integer | Estimate of cloud cover as a percentage (0-100) of the entire scene. If not available the field should not be provided. | | eo:off_nadir | number | Viewing angle. The angle from the sensor between nadir (straight down) and the scene center. Measured in degrees (0-90). | @@ -84,11 +84,15 @@ numbers of several popular instruments. | lwir11 | 10.5 - 11.5 | | | 10 | | 31 | | lwir12 | 11.5 - 12.5 | | | 11 | | 32 | - -#### Associating assets with bands +## Associating assets with bands Asset definitions that contain band data should reference the band index. Each asset should provide a "eo:bands" property that is an array of 0 based indexes to the correct Band Objects. +### Item `Asset Object` fields +| Field Name | Type | Description | +| ---------- | -------- | -------------------------------------------- | +| eo:bands | [number] | Lists the band names available in the asset. | + See [landsat8-merged.json](examples/landsat8-merged.json) for a full example. ``` { From c4f0d7c582b9c1dbfebfbe6c98e52d918745244f Mon Sep 17 00:00:00 2001 From: Tim Rutherford Date: Tue, 18 Sep 2018 12:56:28 -0600 Subject: [PATCH 4/6] moving eo:bands to the top level again to match the collection definition. --- extensions/examples/landsat8-merged.json | 183 ++++++++++++----------- 1 file changed, 92 insertions(+), 91 deletions(-) diff --git a/extensions/examples/landsat8-merged.json b/extensions/examples/landsat8-merged.json index c84c08f91..81a4b23dd 100644 --- a/extensions/examples/landsat8-merged.json +++ b/extensions/examples/landsat8-merged.json @@ -58,97 +58,7 @@ "landsat:geometric_rmse_model_x": 5.96, "landsat:geometric_rmse_model_y": 4.654, "landsat:geometric_rmse_verify": 5.364, - "landsat:image_quality_oli": 9, - "eo:bands": [ - { - "name": "1", - "common_name": "coastal", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.44, - "full_width_half_max": 0.02 - }, - { - "name": "2", - "common_name": "blue", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.48, - "full_width_half_max": 0.06 - }, - { - "name": "3", - "common_name": "green", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.56, - "full_width_half_max": 0.06 - }, - { - "name": "4", - "common_name": "red", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.65, - "full_width_half_max": 0.04 - }, - { - "name": "5", - "common_name": "nir", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.86, - "full_width_half_max": 0.03 - }, - { - "name": "6", - "common_name": "swir16", - "gsd": 30.0, - "accuracy": null, - "wavelength": 1.6, - "full_width_half_max": 0.08 - }, - { - "name": "7", - "common_name": "swir22", - "gsd": 30.0, - "accuracy": null, - "wavelength": 2.2, - "full_width_half_max": 0.2 - }, - { - "name": "8", - "common_name": "pan", - "gsd": 15.0, - "accuracy": null, - "wavelength": 0.59, - "full_width_half_max": 0.18 - }, - { - "name": "9", - "common_name": "cirrus", - "gsd": 30.0, - "accuracy": null, - "wavelength": 1.37, - "full_width_half_max": 0.02 - }, - { - "name": "10", - "common_name": "lwir11", - "gsd": 100.0, - "accuracy": null, - "wavelength": 10.9, - "full_width_half_max": 0.8 - }, - { - "name": "11", - "common_name": "lwir12", - "gsd": 100.0, - "accuracy": null, - "wavelength": 12.0, - "full_width_half_max": 1.0 - } - ] + "landsat:image_quality_oli": 9 }, "links": [ @@ -157,6 +67,97 @@ { "rel":"catalog", "href": "http://landsat-pds.s3.amazonaws.com/L8/catalog.json"} ], + "eo:bands": [ + { + "name": "1", + "common_name": "coastal", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.44, + "full_width_half_max": 0.02 + }, + { + "name": "2", + "common_name": "blue", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.48, + "full_width_half_max": 0.06 + }, + { + "name": "3", + "common_name": "green", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.56, + "full_width_half_max": 0.06 + }, + { + "name": "4", + "common_name": "red", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.65, + "full_width_half_max": 0.04 + }, + { + "name": "5", + "common_name": "nir", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.86, + "full_width_half_max": 0.03 + }, + { + "name": "6", + "common_name": "swir16", + "gsd": 30.0, + "accuracy": null, + "wavelength": 1.6, + "full_width_half_max": 0.08 + }, + { + "name": "7", + "common_name": "swir22", + "gsd": 30.0, + "accuracy": null, + "wavelength": 2.2, + "full_width_half_max": 0.2 + }, + { + "name": "8", + "common_name": "pan", + "gsd": 15.0, + "accuracy": null, + "wavelength": 0.59, + "full_width_half_max": 0.18 + }, + { + "name": "9", + "common_name": "cirrus", + "gsd": 30.0, + "accuracy": null, + "wavelength": 1.37, + "full_width_half_max": 0.02 + }, + { + "name": "10", + "common_name": "lwir11", + "gsd": 100.0, + "accuracy": null, + "wavelength": 10.9, + "full_width_half_max": 0.8 + }, + { + "name": "11", + "common_name": "lwir12", + "gsd": 100.0, + "accuracy": null, + "wavelength": 12.0, + "full_width_half_max": 1.0 + } + ], + "assets" :{ "thumbnail": { "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_thumb_large.jpg", From c07632ce2f924c7ad4f36e90c42e8bd6b2cf7673 Mon Sep 17 00:00:00 2001 From: Tim Rutherford Date: Tue, 18 Sep 2018 13:00:44 -0600 Subject: [PATCH 5/6] reverting one last section and fixing formatting to show the changes better. --- extensions/examples/landsat8-merged.json | 162 +++++++++++------------ extensions/stac-eo-spec.md | 5 + 2 files changed, 86 insertions(+), 81 deletions(-) diff --git a/extensions/examples/landsat8-merged.json b/extensions/examples/landsat8-merged.json index 81a4b23dd..7b7812bc3 100644 --- a/extensions/examples/landsat8-merged.json +++ b/extensions/examples/landsat8-merged.json @@ -67,6 +67,86 @@ { "rel":"catalog", "href": "http://landsat-pds.s3.amazonaws.com/L8/catalog.json"} ], + "assets" :{ + "thumbnail": { + "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_thumb_large.jpg", + "required": true, + "type": "jpeg" + }, + "metadata": { + "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_MTL.txt", + "required": true, + "type": "mtl" + }, + "B1": { + "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B1.TIF", + "type": "GeoTIFF", + "required": true, + "eo:bands": [0] + }, + "B2": { + + "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B2.TIF", + "type": "GeoTIFF", + "required": true, + "eo:bands": [1] + }, + "B3": { + "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B3.TIF", + "type": "GeoTIFF", + "required": true, + "eo:bands": [2] + }, + "B4": { + "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B4.TIF", + "type": "GeoTIFF", + "required": true, + "eo:bands": [3] + }, + "B5": { + "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B5.TIF", + "type": "GeoTIFF", + "required": true, + "eo:bands": [4] + }, + "B6": { + "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B6.TIF", + "type": "GeoTIFF", + "required": true, + "eo:bands": [5] + }, + "B7": { + "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B7.TIF", + "type": "GeoTIFF", + "required": true, + "eo:bands": [6] + }, + "B8": { + "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B8.TIF", + "type": "GeoTIFF", + "required": true, + "eo:bands": [7] + }, + "B9": { + "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B9.TIF", + "type": "GeoTIFF", + "required": true, + "eo:bands": [8] + }, + "B10": { + "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B10.TIF", + "type": "GeoTIFF", + "required": true, + "eo:bands": [9] + }, + "B11": { + "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B11.TIF", + "type": "GeoTIFF", + "required": true, + "eo:bands": [10] + } + }, + "eo:bands": [ { "name": "1", @@ -156,86 +236,6 @@ "wavelength": 12.0, "full_width_half_max": 1.0 } - ], - - "assets" :{ - "thumbnail": { - "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_thumb_large.jpg", - "required": true, - "type": "jpeg" - }, - "metadata": { - "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_MTL.txt", - "required": true, - "type": "mtl" - }, - "B1": { - "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B1.TIF", - "type": "GeoTIFF", - "required": true, - "eo:bands": [0] - }, - "B2": { - - "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B2.TIF", - "type": "GeoTIFF", - "required": true, - "eo:bands": [1] - }, - "B3": { - "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B3.TIF", - "type": "GeoTIFF", - "required": true, - "eo:bands": [2] - }, - "B4": { - "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B4.TIF", - "type": "GeoTIFF", - "required": true, - "eo:bands": [3] - }, - "B5": { - "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B5.TIF", - "type": "GeoTIFF", - "required": true, - "eo:bands": [4] - }, - "B6": { - "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B6.TIF", - "type": "GeoTIFF", - "required": true, - "eo:bands": [5] - }, - "B7": { - "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B7.TIF", - "type": "GeoTIFF", - "required": true, - "eo:bands": [6] - }, - "B8": { - "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B8.TIF", - "type": "GeoTIFF", - "required": true, - "eo:bands": [7] - }, - "B9": { - "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B9.TIF", - "type": "GeoTIFF", - "required": true, - "eo:bands": [8] - }, - "B10": { - "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B10.TIF", - "type": "GeoTIFF", - "required": true, - "eo:bands": [9] - }, - "B11": { - "href": "http://landsat-pds.s3.amazonaws.com/L8/153/025/LC81530252014153LGN00/LC81530252014153LGN00_B11.TIF", - "type": "GeoTIFF", - "required": true, - "eo:bands": [10] - } - } + ] } diff --git a/extensions/stac-eo-spec.md b/extensions/stac-eo-spec.md index 05cb133a7..ce81aafb0 100644 --- a/extensions/stac-eo-spec.md +++ b/extensions/stac-eo-spec.md @@ -189,3 +189,8 @@ Planet example: The [extensions page](../extensions/) gives an overview about related extensions. +### Using collections + A lot of EO data will have common metadata across many `Items`. It is not necessary, but recommended +to use the [Collections extension](stac-collection-spec.md). While the exact metadata that would +appear in a `Collection` record will vary depending on the dataset, the most common collection-level +metadata fields are indicated with an \* in the tables below. \ No newline at end of file From c160bc25f990da9767c26cd6298f310e1bb53dfa Mon Sep 17 00:00:00 2001 From: Tim Rutherford Date: Thu, 20 Sep 2018 13:09:17 -0600 Subject: [PATCH 6/6] fixing examples to use top level eo:bands --- extensions/stac-eo-spec.md | 86 +++++++++++++++++++------------------- 1 file changed, 43 insertions(+), 43 deletions(-) diff --git a/extensions/stac-eo-spec.md b/extensions/stac-eo-spec.md index ce81aafb0..ff7244bab 100644 --- a/extensions/stac-eo-spec.md +++ b/extensions/stac-eo-spec.md @@ -101,25 +101,6 @@ See [landsat8-merged.json](examples/landsat8-merged.json) for a full example. ... "properties": { ... - "eo:bands": [ - { - "name": "1", - "common_name": "coastal", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.44, - "full_width_half_max": 0.02 - }, - { - "name": "2", - "common_name": "blue", - "gsd": 30.0, - "accuracy": null, - "wavelength": 0.48, - "full_width_half_max": 0.06 - }, - ... - ] }, "assets" :{ @@ -137,7 +118,26 @@ See [landsat8-merged.json](examples/landsat8-merged.json) for a full example. "eo:bands": [1] }, ... - } + }, + "eo:bands": [ + { + "name": "1", + "common_name": "coastal", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.44, + "full_width_half_max": 0.02 + }, + { + "name": "2", + "common_name": "blue", + "gsd": 30.0, + "accuracy": null, + "wavelength": 0.48, + "full_width_half_max": 0.06 + }, + ... + ] } ``` Planet example: @@ -148,28 +148,6 @@ Planet example: "type": "Feature", "properties": { ... - "eo:bands":[ - { - "full_width_half_max": 0.08, - "center_wavelength": 0.63, - "common_name": "red" - }, - { - "full_width_half_max": 0.09, - "center_wavelength": 0.545, - "common_name": "green" - }, - { - "full_width_half_max": 0.06, - "center_wavelength": 0.485, - "common_name": "blue" - }, - { - "full_width_half_max": 0.08, - "center_wavelength": 0.82, - "common_name": "nir" - } - ] }, ... "assets": { @@ -181,7 +159,29 @@ Planet example: } ... - } + }, + "eo:bands": [ + { + "full_width_half_max": 0.08, + "center_wavelength": 0.63, + "common_name": "red" + }, + { + "full_width_half_max": 0.09, + "center_wavelength": 0.545, + "common_name": "green" + }, + { + "full_width_half_max": 0.06, + "center_wavelength": 0.485, + "common_name": "blue" + }, + { + "full_width_half_max": 0.08, + "center_wavelength": 0.82, + "common_name": "nir" + } + ] } ```