-
Notifications
You must be signed in to change notification settings - Fork 67
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Showing
5 changed files
with
296 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
local id = 'MODIS/061/MOD10A2'; | ||
local subdir = 'MODIS'; | ||
|
||
local ee_const = import 'earthengine_const.libsonnet'; | ||
local ee = import 'earthengine.libsonnet'; | ||
local spdx = import 'spdx.libsonnet'; | ||
local license = spdx.proprietary; | ||
local template = import 'templates/MODIS_061_MOD10A2.libsonnet'; | ||
|
||
local basename = std.strReplace(id, '/', '_'); | ||
local base_filename = basename + '.json'; | ||
local self_ee_catalog_url = ee_const.ee_catalog_url + basename; | ||
|
||
{ | ||
stac_version: ee_const.stac_version, | ||
type: ee_const.stac_type.collection, | ||
stac_extensions: [ | ||
ee_const.ext_eo, | ||
ee_const.ext_sci, | ||
ee_const.ext_ver, | ||
], | ||
id: id, | ||
title: 'MOD10A2.061 Terra Snow Cover 8-Day L3 Global 500m', | ||
version: '6.1', | ||
'gee:type': ee_const.gee_type.image_collection, | ||
description: ||| | ||
MOD10A2 is a snow cover data set from the MODIS on the Terra satellite. | ||
The data set consists of 1200 km by 1200 km tiles of 500 m resolution data | ||
gridded in a sinusoidal map projection. The data set reports the maximum | ||
snow cover extent during an eight-day period. | ||
[General documentation](https://doi.org/10.5067/MODIS/MOD10A2.061) | ||
|||, | ||
license: license.id, | ||
links: ee.standardLinks(subdir, id) + [ | ||
{ | ||
rel: ee_const.rel.cite_as, | ||
href: 'https://doi.org/10.5067/MODIS/MOD10A1.061', | ||
}, | ||
], | ||
keywords: [ | ||
'albedo', | ||
'daily', | ||
'geophysical', | ||
'global', | ||
'modis', | ||
'nasa', | ||
'nsidc', | ||
'snow', | ||
'terra', | ||
], | ||
providers: [ | ||
ee.producer_provider('NASA NSIDC DAAC at CIRES', | ||
'https://doi.org/10.5067/MODIS/MOD10A2.061'), | ||
ee.host_provider(self_ee_catalog_url), | ||
], | ||
'gee:provider_ids': [ | ||
'C1646610415-NSIDC_ECS', | ||
], | ||
extent: ee.extent_global('2000-02-18T00:00:00Z', null), | ||
summaries: template.summaries { | ||
platform: [ | ||
'Terra', | ||
], | ||
}, | ||
'sci:doi': '10.5067/MODIS/MOD10A2.061', | ||
'sci:citation': ||| | ||
Hall, D. K., V. V. Salomonson, and G. A. Riggs. 2016. MODIS/Terra | ||
Snow Cover Daily L3 Global 500m Grid. Version 6. Boulder, Colorado | ||
USA: NASA National Snow and Ice Data Center Distributed Active | ||
Archive Center. | ||
|||, | ||
'gee:interval': { | ||
type: 'cadence', | ||
unit: 'day', | ||
interval: 1, | ||
}, | ||
'gee:terms_of_use': ||| | ||
You may download and use photographs, imagery, or text | ||
from the NSIDC web site, unless limitations for its use are specifically | ||
stated. For more information on usage and citing NSIDC datasets, | ||
please visit the | ||
[NSIDC 'Use and Copyright' page](https://nsidc.org/about/data-use-and-copyright). | ||
|||, | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,150 @@ | ||
{ | ||
summaries: { | ||
gsd: [ | ||
500.0, | ||
], | ||
instruments: [ | ||
'MODIS', | ||
], | ||
'eo:bands': [ | ||
{ | ||
name: 'Maximum_Snow_Extent', | ||
description: ||| | ||
Maximum snow extent observed over an eight-day period. | ||
|||, | ||
'gee:classes': [ | ||
{ | ||
value: 0, | ||
description: 'Missing data', | ||
}, | ||
{ | ||
value: 1, | ||
description: 'No decision', | ||
}, | ||
{ | ||
value: 11, | ||
description: 'Night', | ||
}, | ||
{ | ||
value: 25, | ||
description: 'No snow', | ||
}, | ||
{ | ||
value: 37, | ||
description: 'Lake', | ||
}, | ||
{ | ||
value: 39, | ||
description: 'Ocean', | ||
}, | ||
{ | ||
value: 50, | ||
description: 'Cloud', | ||
}, | ||
{ | ||
value: 100, | ||
description: 'Lake ice', | ||
}, | ||
{ | ||
value: 200, | ||
description: 'Snow', | ||
}, | ||
{ | ||
value: 254, | ||
description: 'Detector saturated', | ||
}, | ||
{ | ||
value: 255, | ||
description: 'Fill', | ||
}, | ||
], | ||
}, | ||
{ | ||
name: 'Eight_Day_Snow_Cover', | ||
description: ||| | ||
Snow chronology bit flags for each day in the eight-day | ||
observation period. | ||
|||, | ||
'gee:bitmask': { | ||
bitmask_parts: [ | ||
{ | ||
description: 'day 1', | ||
bit_count: 1, | ||
first_bit: 0, | ||
}, | ||
{ | ||
description: 'day 2', | ||
first_bit: 1, | ||
bit_count: 1, | ||
}, | ||
{ | ||
description: 'day 3', | ||
first_bit: 2, | ||
bit_count: 1, | ||
}, | ||
{ | ||
description: 'day 4', | ||
first_bit: 3, | ||
bit_count: 1, | ||
}, | ||
{ | ||
description: 'day 5', | ||
first_bit: 4, | ||
bit_count: 1, | ||
}, | ||
{ | ||
description: 'day 6', | ||
first_bit: 5, | ||
bit_count: 1, | ||
}, | ||
{ | ||
description: 'day 7', | ||
first_bit: 6, | ||
bit_count: 1, | ||
}, | ||
{ | ||
description: 'day 8', | ||
first_bit: 7, | ||
bit_count: 1, | ||
}, | ||
], | ||
total_bit_count: 8, | ||
}, | ||
}, | ||
], | ||
'gee:visualizations': [ | ||
{ | ||
display_name: 'Maximum Snow Extent', | ||
lookat: { | ||
lat: 65.99, | ||
lon: -3.69, | ||
zoom: 4, | ||
}, | ||
image_visualization: { | ||
band_vis: { | ||
min: [ | ||
50.0, | ||
], | ||
max: [ | ||
150.0, | ||
], | ||
palette: [ | ||
'000000', | ||
'0dffff', | ||
'0524ff', | ||
'ffffff', | ||
], | ||
bands: [ | ||
'Maximum_Snow_Extent', | ||
], | ||
}, | ||
}, | ||
}, | ||
], | ||
Maximum_Snow_Extent: { | ||
minimum: 0.0, | ||
maximum: 255.0, | ||
'gee:estimated_range': false, | ||
}, | ||
}, | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
var dataset = ee.ImageCollection('MODIS/061/MOD10A2') | ||
.select('Maximum_Snow_Extent'); | ||
|
||
var visualization = { | ||
min: 50.0, | ||
max: 150.0, | ||
palette: [ | ||
'000000', | ||
'0dffff', | ||
'0524ff', | ||
'ffffff' | ||
] | ||
}; | ||
|
||
|
||
Map.setCenter(-3.69, 65.99, 4); | ||
|
||
Map.addLayer(dataset.mean(), visualization, 'Maximum_Snow_Extent'); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
var dataset = ee.ImageCollection('MODIS/061/MOD10A2') | ||
.filter(ee.Filter.date('2023-01-01', '2023-12-01')); | ||
|
||
var snowExtent = dataset.select('Maximum_Snow_Extent').mosaic(); | ||
|
||
var snowExtentVis = { | ||
min: 40.0, | ||
max: 150.0, | ||
palette: [ | ||
'000000', | ||
'0dffff', | ||
'0524ff', | ||
'ffffff' | ||
], | ||
}; | ||
|
||
var lon = 40.52; | ||
var lat = 50.98; | ||
|
||
var gray = 150; | ||
var background = ee.Image.rgb(gray, gray, gray).visualize({min: 0, max: 255}); | ||
|
||
var delta = 10; | ||
var pixels = 256; | ||
|
||
var image = snowExtent.visualize(snowExtentVis); | ||
var imageWithBackground = ee.ImageCollection([background, image]).mosaic(); | ||
|
||
Map.setCenter(lon, lat, 3); | ||
Map.addLayer(imageWithBackground, {}, 'Maximum Snow Extent'); | ||
|
||
var areaOfInterest = ee.Geometry.Rectangle( | ||
[lon - delta, lat - delta, lon + delta, lat + delta], null, false); | ||
|
||
var imageParams = { | ||
dimensions: [pixels, pixels], | ||
region: areaOfInterest, | ||
crs: 'EPSG:3857', | ||
format: 'png', | ||
}; | ||
|
||
print(ui.Thumbnail({image: imageWithBackground, params: imageParams})); |