目录
简介
数据集说明
空间信息
代码1
代码2
代码链接
APP链接
结果
引用
许可
网址推荐
知识星球
机器学习
简介
全球土地覆被估算(GLanCE)
全球土地覆被估算(GLanCE)数据集利用 30 米空间分辨率的大地遥感卫星图像,提供了 2001 年至 2019 年期间每年土地覆被和土地覆被变化的高质量长期记录。 该数据集涵盖除南极洲以外的全球所有陆地区域,包括 10 个科学数据集(SDS),用于跟踪土地覆被、土地覆被变化和绿化动态。 连续变化探测和分类(CCDC)算法用于根据所有可用的、清晰的大地遥感卫星观测数据识别土地覆被和变化。
GLanCE SDS分为三类:土地覆被和变化: 四个 SDS 提供与以下方面有关的信息
(1)土地覆被等级,(2)与土地覆被等级相关的估计质量,(3)发生变化的地方以前的土地覆被,(4)变化的大致年日(DOY)。
绿化动态: 四个 SDS 使用增强植被指数 (EVI2) 描述年度绿度特征,包括 (1) 中值、(2) 振幅、(3) 变化率(如果存在)和 (4) 发生变化的像素的 EVI2 中值变化幅度。
叶片类型和物候学: 第一版数据包括七个图层及其相应的波段名称。 请注意,这些波段名称与 LP DAAC 网站用户指南中列出的波段名称略有不同。 本表显示了第一版数据中的图层名称及其对应的波段名称。
数据集说明
目前的数据集包括美洲、欧洲和大洋洲的数据,非洲和亚洲的数据将于 2025 年初发布。 非洲和亚洲的数据将于 2025 年初发布。 土地覆被质量保证层将在下一个地图版本(如 v1.1)中提供。 谷歌地球引擎数据集使用不同的平铺系统,旨在简化平台并提高效率,并使用 1984 年世界大地坐标系(EPSG:4326)存储,与用于生成数据集的基础 CCDC 数据集相匹配。 相比之下,LP-DAAC 中存储的数据集是从 GEE 中导出的,使用的是基于大陆网格(150 x 150 平方公里)和投影(大陆兰伯特方位角等面积投影)的定制平铺系统。
空间信息
Layer Name | Band Name |
---|---|
Land Cover Class | LC |
Previous Class | prevClass |
Change Date | changeDate |
EVI2 Median | EVI2median |
EVI2 Amplitude | EVI2amplitude |
EVI2 Rate | EVI2rate |
Change EVI2 Median | changeMag |
代码1
/**
* Example GEE Script for Exploring Global Land Cover mapping and Estimation (GLANCE)
* Catalog -- Example 1: Loading datasets for a time range
*
* Preliminary citation:
*
* Friedl, M.A., Woodcock, C.E., Olofsson, P., Zhu, Z., Loveland, T.,
* Stanimirova, R., Arévalo, P., Bullock, E., Hu, K.-T., Zhang, Y., Turlej, K.,
* Tarrio, K., McAvoy, K., Gorelick, N., Wang, J.A., Barber, C.P., Souza, C., 2022.
* Medium Spatial Resolution Mapping of Global Land Cover and Land Cover Change
* Across Multiple Decades From Landsat. Frontiers in Remote Sensing 3.
* https://doi.org/10.3389/frsen.2022.894571
*
* User guide: https://lpdaac.usgs.gov/documents/1567/GLanCE_User_Guide_v1.pdf
*
* Authors:
* Yingtong Zhang | zhangyt@bu.edu
* Paulo Arévalo | parevalo@bu.edu
*/
var GLANCE = ee.ImageCollection("projects/GLANCE/DATASETS/V001")
var palettes = require('users/gena/packages:palettes')
// -------------- SET GLOBAL VIZ PROPERTIES
Map.setOptions('HYBRID')
// Land cover Palette
var LCPalette = ['#386cb0', 'white', 'red', '#68666B', '#336600', '#28A765', '#ffff99']
var classes = ['Water', 'Snow/Ice', 'Developed', 'Bare', 'Forest', 'Shrub', 'Herbaceous']
var LCpal = {min: 1, max: 7, palette: LCPalette}
// EVI Palette
var eviPal = {palette: palettes.matplotlib.viridis[7], min:-100, max: 4000}
var eviRatePal = {palette: palettes.matplotlib.viridis[7], min:-700, max: 700}
// Change Palette
var doyPal = {palette: palettes.matplotlib.viridis[7], min:1, max: 365}
// Load the data for a certain year; can also be filtered by other properties
var filtered = GLANCE.filterDate('2015-01-01', '2016-01-01').mosaic()
// -------------- LAND COVER --------------
Map.addLayer(filtered.select('LC'), LCpal,'LC')
// -------------- EVI2--------------
Map.addLayer(filtered.select('EVI2median'), eviPal, "EVI2median",0)
Map.addLayer(filtered.select('EVI2amplitude'), eviPal, "EVI2amplitude",0)
Map.addLayer(filtered.select('EVI2rate'), eviRatePal, "EVI2rate",0)
// -------------- CHANGE --------------
Map.addLayer(filtered.select('changeDate'), doyPal, "Change day",0)
Map.addLayer(filtered.select('changeMag'), eviPal, "Change magnitude",0)
Map.addLayer(filtered.select('prevClass'), LCpal, "Previous class",0)
Map.setCenter(-52.9496, -6.1690, 11)
代码2
/**
* Example GEE Script for Exploring Global Land Cover mapping and Estimation (GLANCE)
* Catalog -- Example 2: Year of change and EVI2 change
*
* Preliminary citation:
*
* Friedl, M.A., Woodcock, C.E., Olofsson, P., Zhu, Z., Loveland, T.,
* Stanimirova, R., Arévalo, P., Bullock, E., Hu, K.-T., Zhang, Y., Turlej, K.,
* Tarrio, K., McAvoy, K., Gorelick, N., Wang, J.A., Barber, C.P., Souza, C., 2022.
* Medium Spatial Resolution Mapping of Global Land Cover and Land Cover Change
* Across Multiple Decades From Landsat. Frontiers in Remote Sensing 3.
* https://doi.org/10.3389/frsen.2022.894571
*
* User guide: https://lpdaac.usgs.gov/documents/1567/GLanCE_User_Guide_v1.pdf
*
* Authors:
* Yingtong Zhang | zhangyt@bu.edu
* Paulo Arévalo | parevalo@bu.edu
*/
var GLANCE = ee.ImageCollection("projects/GLANCE/DATASETS/V001")
var palettes = require('users/gena/packages:palettes')
// -------------- SET GLOBAL VIZ PROPERTIES
Map.setOptions('HYBRID')
// EVI Palette
var eviChangePal = {palette: palettes.matplotlib.viridis[7], min:-1000, max: 1000}
var eviPal = {palette: palettes.matplotlib.viridis[7], min:2000, max: 3000}
// Change Palette
var changePalette = ['#ffffcc','#ffeda0','#fed976','#feb24c','#fd8d3c','#fc4e2a',
'#e31a1c','#bd0026','#800026']
var changePal = {palette: changePalette, min:2005, max: 2020}
// -------------- FILTER AND SELECT DATASETS
var filteredCol = GLANCE.filterDate('2005-01-01', '2020-01-01')
var changeDate = filteredCol.select('changeDate')
var EVI2change = filteredCol.select('changeMag')
var EVI2median = filteredCol.select('EVI2median')
// -------------- CREATE ANNUAL MOSAICS
// Extract list of available years from image id.
// Keep in mind change layers are only available from 2002
var imageIds = changeDate.aggregate_array('id')
var years = ee.List(imageIds.map(function(value){
return ee.String(value).split("-").get(0)
})).distinct()
// Create constant image with years, useful for indexing
var dateDictImg = ee.Dictionary.fromLists(
years, years.map(function(x){return ee.Number.parse(x)})).toImage()
// Function to retrieve annual mosaics per dataset
var getYearlyStack = function(imgCol, yearsStr){
return ee.ImageCollection.fromImages(
yearsStr.map(function(y) {
// Get the list of image IDs for the current year
return imgCol.filter(ee.Filter.stringContains('system:index', y)).mosaic()
})
).toBands()
}
// Generate annual mosaics of change date, and retrieve year of first change
var changeYear = dateDictImg
.updateMask(getYearlyStack(changeDate, years))
.reduce(ee.Reducer.firstNonNull())
// Generate annual mosaics of EVI2 change, and retrieve value for year of first change
var EVI2firstChange = getYearlyStack(EVI2change, years)
.updateMask(changeYear)
.reduce(ee.Reducer.firstNonNull())
// -------------- VISUALIZE --------------
// Year of first change and magnitude of EVI2 change for that year
Map.addLayer(changeYear, changePal, "Change year")
Map.addLayer(EVI2firstChange, eviChangePal, "First EVI2 change", 0)
// Average EVI2 median 3 years before and after the first change
var EVI2medianStack = getYearlyStack(EVI2median, years)
var yearWindow = 3
var beforeChange = dateDictImg
.lt(changeYear)
.and(dateDictImg.gte(changeYear.subtract(yearWindow)))
var afterChange = dateDictImg
.gt(changeYear)
.and(dateDictImg.lte(changeYear.add(yearWindow)))
Map.addLayer(EVI2medianStack.updateMask(beforeChange).reduce(ee.Reducer.mean()),
eviPal, "EVI2 before change", 0)
Map.addLayer(EVI2medianStack.updateMask(afterChange).reduce(ee.Reducer.mean()),
eviPal, "EVI2 after change", 0)
// Function to automate the creation of a legend
function createLegend(viz){
var lon = ee.Image.pixelLonLat().select('longitude')
var gradient = lon.multiply((viz.max-viz.min)/100.0).add(viz.min)
var legendImage = gradient.visualize(viz)
var params = {bbox:'0,0,100,10', dimensions:'200x10'}
var thumbnail = ui.Thumbnail({
image: legendImage,
params: params,
})
var panel = ui.Panel([
ui.Label(viz['min']), thumbnail, ui.Label(viz['max']),
], ui.Panel.Layout.Flow('horizontal'))
return panel
}
// Print legends to the console
print("Change Year", createLegend(changePal))
print("EVI2 Change Magnitude x10,000", createLegend(eviChangePal))
print("EVI2 median", createLegend(eviPal))
Map.setCenter(-61.9446, -21.6216, 11)
代码链接
https://code.earthengine.google.com/?scriptPath=users/sat-io/awesome-gee-catalog-examples:global-landuse-landcover/GLANCE-VISUALIZATION
https://code.earthengine.google.com/?scriptPath=users/sat-io/awesome-gee-catalog-examples:global-landuse-landcover/GLANCE-INDICES
APP链接
https://glance.earthengine.app/view/datasetviewer
结果
引用
Friedl, M.A., Woodcock, C.E., Olofsson, P., Zhu, Z., Loveland, T., Stanimirova, R., Arévalo, P., Bullock, E., Hu, K.-T., Zhang, Y., Turlej, K.,
Tarrio, K., McAvoy, K., Gorelick, N., Wang, J.A., Barber, C.P., Souza, C., 2022. Medium Spatial Resolution Mapping of Global Land Cover and Land
Cover Change Across Multiple Decades From Landsat. Frontiers in Remote Sensing 3. https://doi.org/10.3389/frsen.2022.894571
Arévalo, P., R. Stanimirova, E. Bullock, Y. Zhang, K. Tarrio, K. Turlej, K. Hu, K. McAvoy, V. Pasquarella, C. Woodcock, P. Olofsson, Z. Zhu, N.
Gorelick, T. Loveland, C. Barber, M. Friedl. Global Land Cover Mapping and Estimation Yearly 30 m V001. 2022, distributed by NASA EOSDIS Land
Processes Distributed Active Archive Center, https://doi.org/10.5067/MEaSUREs/GLanCE/GLanCE30.001. Accessed YYYY-MM-DD.
许可
本作品采用知识共享 署名 4.0 国际许可协议进行许可。 您可以自由复制并以任何媒介或格式重新发布这些材料,也可以出于任何目的(甚至是商业目的)改造和利用这些材料。 您必须适当注明出处,提供许可证链接,并说明是否进行了更改。 创建和编辑:Friedl 等人 2022 年 关键词:土地覆被,土地覆被变化,绿度,EVI2,CCDC,全球,Landsat,NASA MEaSUREs 在 GEE 中的最后更新时间:2024-09-25
网址推荐
知识星球
知识星球 | 深度连接铁杆粉丝,运营高品质社群,知识变现的工具 (zsxq.com)
机器学习
https://www.cbedai.net/xg