系列文章目录
第一章:时间序列数据合成
文章目录
- 系列文章目录
- 前言
- 时间序列数据合成
- 总结
前言
利用每个月可获取植被指数数据取均值,合成月度平均植被指数,然后将12个月中的数据合成一个12波段的时间数据合成数据。
时间序列数据合成
代码基础内容:
1、去云函数与植被指数函数
2、构建基础数据波段
3、构建for循环来合成时间序列数据
代码如下:
//define your study area here!
var studyarea = ee.FeatureCollection("projects/test2export/assets/31");
Map.centerObject(studyarea,4); //数字为缩放尺度
Map.addLayer(studyarea); //展示数据 // caclute NDVI
function NDVI(image) {var ndvi = image.normalizedDifference(['B8', 'B4']).rename('NDVI');return image.addBands(ndvi);}
/*** Function to mask clouds using the Sentinel-2 QA band* @param {ee.Image} image Sentinel-2 image* @return {ee.Image} cloud masked Sentinel-2 image*/
function maskS2clouds(image) {var qa = image.select('QA60');// Bits 10 and 11 are clouds and cirrus, respectively.var cloudBitMask = 1 << 10;var cirrusBitMask = 1 << 11;// Both flags should be set to zero, indicating clear conditions.var mask = qa.bitwiseAnd(cloudBitMask).eq(0).and(qa.bitwiseAnd(cirrusBitMask).eq(0));return image.updateMask(mask).divide(10000);
}
// 1 month mean NDVI
var month = '1';
var dataset = ee.ImageCollection('COPERNICUS/S2_SR').filterDate('2023-0'+month+'-01', '2023-'+month+'-28') //影像时间// Pre-filter to get less cloudy granules..filter(ee.Filter.lt('CLOUDY_PIXEL_PERCENTAGE',5)) //云量.map(maskS2clouds) //去云.map(function(image) {var ndvi = image.normalizedDifference(['B8', 'B4']).rename('NDVI1');return image.addBands(ndvi);}) //添加指数) //重命名.select(['NDVI1']); //影像集
// print(dataset.first().getInfo())
var base_data = dataset.median().clip(studyarea); //中值影像,裁剪出研究区影像
print(base_data);for (var i=2;i<=12;i++)
{var month_ndvi = ee.ImageCollection('COPERNICUS/S2_SR').filterDate('2023-0'+month+'-01', '2023-'+month+'-28') //影像时间// Pre-filter to get less cloudy granules..filter(ee.Filter.lt('CLOUDY_PIXEL_PERCENTAGE',5)) //云量.map(maskS2clouds) //去云.map(NDVI) //添加指数) //重命名.select(['NDVI']); //影像集;print(month_ndvi.first())var month_ndvi = month_ndvi.median().clip(studyarea).select('NDVI').rename('NDVI'+i); //中值影像,裁剪出研究区影像base_data = base_data.addBands(month_ndvi) }print(base_data)
// var NDVI;
// 导出哨兵2号影像数据
Export.image.toDrive({image:base_data,description:"sentinel2_Time_series",region:studyarea,scale:10,maxPixels:1e13
})
总结
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。