当前位置:网站首页>Monthly MODIS NDVI images generated by GEE
Monthly MODIS NDVI images generated by GEE
2022-08-07 12:07:00 【Amyniez】
使用GEEGenerate monthlyMODIS(MOD13Q1)的NDVI影像数据
数据介绍:


NDVI实现:
//MODIS13Q1产品下的NDVI和EVI产品,16天/幅,分辨率为250米
function ModisNDVI(roi, startTime, endTime) {
startTime = ee.Date(startTime).millis();
endTime = ee.Date(endTime).millis();
var Modis_250 = ee.ImageCollection('MODIS/061/MOD13Q1')
.filterDate(startTime, endTime)
.select("NDVI")
// .select('EVI')
.filterBounds(roi)
.map(function (image) {
return image.clip(roi)
})
return Modis_250
}
//MOD15A2H产品下的LAI产品,8天/幅,分辨率为500米
function ModisLAI(roi, startTime, endTime) {
startTime = ee.Date(startTime).millis();
endTime = ee.Date(endTime).millis();
var dataset = ee.ImageCollection('MODIS/061/MOD15A2H')
.filter(ee.Filter.date(startTime, endTime))
.filterBounds(roi)
.select('Lai_500m')
.map(function (image) {
return image.clip(roi)
});
return dataset
}
//MOD17A3HGF产品下的NPP产品,1年/幅,分辨率为500米
function ModisNpp(roi, startTime, endTime) {
startTime = ee.Date(startTime).millis();
endTime = ee.Date(endTime).millis();
var dataset = ee.ImageCollection("MODIS/006/MOD17A3HGF")
.filter(ee.Filter.date(startTime, endTime))
.filterBounds(roi)
.select('Npp')
.map(function (image) {
return image.clip(roi)
});
return dataset
}
//MOD16A2产品下的ET产品,8天/幅,分辨率为500米
function ModisET(roi, startTime, endTime) {
startTime = ee.Date(startTime).millis();
endTime = ee.Date(endTime).millis();
var dataset = ee.ImageCollection("MODIS/006/MOD16A2")
.filter(ee.Filter.date(startTime, endTime))
.filterBounds(roi)
.select('ET')
.map(function (image) {
return image.clip(roi)
});
return dataset
}
//----------------------Data batch output function-----------------------//
function exportImageCollection(imgCol, scale, roi, taskName, fileName) {
var indexList = imgCol.reduceColumns(ee.Reducer.toList(), ["system:index"]).get("list");
indexList.evaluate(function (indexs) {
for (var i = 0; i < indexs.length; i++) {
var image = imgCol.filter(ee.Filter.eq("system:index", indexs[i])).first();
image = image.toInt16(); //
Export.image.toDrive({
image: image,
description: taskName + "_" + indexs[i],
fileNamePrefix: fileName + "_" + indexs[i],
region: roi,
scale: scale,
crs: "EPSG:4326",
maxPixels: 1e13
});
}
});
}
// 批量显示图像(单波段)
function BatchMap(IC, visParam, listLimt, preName) {
function getICByIndex(IC, index) {
return ee.Image(IC.toList(1, index).get(0));
}
for (var i = 0; i < IC.toList(listLimt).length().getInfo(); i++) {
var image = getICByIndex(IC, ee.Number(i));
//Use the timestamp as the layer name
var imageDate = getICByIndex(IC, i).get("system:index").getInfo();
Map.addLayer(image,
visParam,
preName + "_" + imageDate, false);
}
}
//主函数
function main() {
//into your study area
var ROI = roi;
//显示ROI轮廓
Map.centerObject(ROI, 5.3);
var empty = ee.Image().clip(ROI.geometry().bounds()).byte();
var shp = empty.paint({
featureCollection: ROI, width: 4 });
Map.addLayer(shp, {
palette: '#000000' }, 'Frost_region');
//查询 NDVI(EVI)数据
var Modis_NDVI = ModisNDVI(ROI, "2007-09-01", "2008-03-01");
//显示 NDVI(EVI)数据
var visParam_NDVI = {
min: 0, max: 8000 };
BatchMap(Modis_NDVI, visParam_NDVI, 50, "Modis_NDVI");
print(Modis_NDVI, "Modis_VI_collection");
//查询 LAI数据
var Modis_LAI = ModisLAI(ROI, "2007-09-01", "2008-03-01");
//显示 LAI数据
var visParam_LAI = {
min: 0, max: 70 };
BatchMap(Modis_LAI, visParam_LAI, 50, "Modis_LAI");
print(Modis_LAI, "Modis_VI_collection");
//查询 NPP数据
// var Modis_NPP = ModisNpp(ROI, "2009-09-01", "2008-03-01");
// //显示 NPP数据
// var visParam_NPP = { min: 0, max: 10000 };
// BatchMap(Modis_NPP, visParam_NPP, 100, "Modis_NPP");
// print(Modis_NPP, "Modis_NPP_collection");
//查询 ET数据
// var Modis_ET = ModisET(ROI, "2020-01-01", "2020-03-01");
//显示 ET数据
// BatchMap(Modis_ET, visParam_ET, 100, "Modis_ET");
// print(Modis_ET, "Modis_NPP_collection");
//数据导出
exportImageCollection(Modis_NDVI, 250, ROI, "MODIS_NDVI", "MODIS_NDVI");
exportImageCollection(Modis_LAI, 500, ROI, "MODIS_LAI", "MODIS_LAI");
// exportImageCollection(Modis_NPP, 500, ROI, "MODIS_NPP", "MODIS_NPP");
// exportImageCollection(Modis_ET, 500, ROI, "MODIS_ET", "MODIS_ET");
}
main();
结果展示:
图一:
图二:

图三:

边栏推荐
猜你喜欢

封装、继承和多态

【OpenCV】直方图计算 & 均衡化直方图

中国石油大学(北京)-《 渗流力学》第一阶段在线作业
![[Microservice Architecture] Distributed Current Limiting Strategy](/img/20/7a80619d7f99a5d696b17aea99ef1b.jpg)
[Microservice Architecture] Distributed Current Limiting Strategy

As the complexity of the model increases, how is overfitting caused?How to solve?

地图加柱状图、饼图组合可视化

如何在一个数组中找到三个和为定值的不重复元素? 双指针解决 leetcode 15.三数之和

Machine learning XGBoost 】 they were stronger than deep learning?

基于Gin的Go语言项目网盘实战解读

什么是 Office Open XML 文件格式
随机推荐
STM32 LWIP Server、Client如何判断网络异常
动态规划:背包问题
WPF 实现更换主题色
【2022最新】全方位带你高效刷力扣 | 反转链表
如何在一个数组中找到三个和为定值的不重复元素? 双指针解决 leetcode 15.三数之和
Talk about automatic power switching circuit (summary of common automatic switching circuits)
Linux——在Linux系统上安装和启动Redis
【微服务架构】分布式限流策略
CVPR2022Oral专题系列(二):多帧图像合成与增强
中国石油大学(北京)-《 修井工程》第三阶段在线作业
中国石油大学(北京)-《 渗流力学》第三阶段在线作业
PAT 刷题笔记
Unet training and deployment tests
pyautogui practice - 10 lines of code to realize the "solidified desktop" in "Broken Elite"
【js】计算child node 到 parent node的距离并且滚动到位置
什么是 Office Open XML 文件格式
Apipost的极客精神
中国石油大学(北京)-《 修井工程》第二阶段在线作业
【图像融合】基于matlab双树复小波变换像素级图像融合【含Matlab源码 2024期】
'utf-8' codec can't decode byte 0xb9 in position 0: invalid start byte