代码概述
该代码基于Google Earth Engine (GEE) 平台,实现了从MODIS NDVI数据集中筛选、裁剪和展示指定区域和时间范围内的影像,并使用外部工具进行批量导出。
数据集
MODIS (MOD13A1):提供全球范围内的16天合成的植被指数数据(NDVI和EVI),空间分辨率为500米。该数据集适用于大范围植被监测和分析。
代码流程
- 定义研究区:通过筛选属性为“jiangsu”的区域定义感兴趣区域(江苏省),并将其显示在地图中央。
- 筛选影像函数:定义一个函数
get_ndvi
,用于在指定时间范围内筛选并获取NDVI影像。 - 获取影像:使用定义的函数,获取2020年1月1日至2022年1月1日期间的NDVI影像。
- 可视化:选择第一幅影像进行裁剪,并使用预定义的颜色调色板进行可视化显示。
- 引入批量导出函数:使用外部工具
geetools:batch
进行批量导出。 - 导出影像:将筛选到的NDVI影像以500米的分辨率、EPSG:4326坐标系导出到Google Drive。
运行结果
代码运行后,将在GEE地图上展示江苏省区域在2020年1月1日至2022年1月1日期间的第一幅MODIS NDVI影像,并应用预定义的调色板进行显示。代码使用 geetools:batch
工具将所有筛选到的NDVI影像批量导出到Google Drive,便于后续分析和处理,方便地获取、分析并导出指定区域和时间范围内的MODIS NDVI遥感数据。
完整代码:
var MOD13A1 = ee.ImageCollection("MODIS/061/MOD13A1")
var roi = table.filter(ee.Filter.eq('provinces', 'jiangsu'));
Map.addLayer(roi)
Map.centerObject(roi,6)
// 筛选影像函数
function get_ndvi(start_time,end_time){
var ndvi = MOD13A1.filterDate(start_time,end_time).filterBounds(roi).select('NDVI')
return ndvi
}
//获取影像
var start_time = '2020-1-1'
var end_time = '2022-1-1'
var ndvi = get_ndvi(start_time,end_time)
print(ndvi)
//map demo看一下
var demo = ndvi.first().clip(roi)
Map.addLayer(demo,{min: -1.0, max: 1.0, palette: ['#ee2820', '#f9823f', '#fcc377', '#fffcc1', '#c0d996', '#71b975', '#00975c']})
//引入批量导出函数
var batch = require('users/fitoprincipe/geetools:batch')
//导出影像
batch.Download.ImageCollection.toDrive( ndvi,'ndvi' , {
scale: 500,//分辨率
region: roi,//研究区
crs: 'EPSG:4326',//坐标系
})
运行示例:
工作台输出: