问题描述
希望你们在这个疯狂的时刻一切都好。
我正在尝试使用 2019 年的 Sentinel 2 图像绘制 NDVI 图表。 Sentinel 2 的周期为 5 天,我希望我的图表显示它。当我为整个状态特征 (roi) 应用代码时,它运行顺利。
我的问题是我想为包含几个小多边形(片段)的特征获取这些值,但我面临“超出用户内存限制”的问题。
我曾尝试使用 reduce.region 但我没有成功。由于我添加了reduce.regions,我什至无法运行代码。
我真的很感激任何建议。
提前致谢。
脚本如下:https://code.earthengine.google.com/4ab9863682d7706a6fa94800a52b9e4a
var S2 = ee.ImageCollection ('copERNICUS/S2_SR')
.filterDate('2019-01-01','2019-01-31');
var maskcloud1 = function(image) {
var QA60 = image.select(['QA60']);
return image.updateMask(QA60.lt(1));
};
var addNDVI = function(image) {
return image.addBands(image.normalizedDifference(['B8','B4']));
};
var S2 = S2.map(addNDVI);
var NDVI = S2.select(['nd']);
var NDVImean = NDVI.mean();
var ndvi_pal = ['#d73027','#f46d43','#fdae61','#fee08b','#d9ef8b','#a6d96a'];
var fragmentos = ee.FeatureCollection('users/rodrigomoreira/NDVI_BY_FRAG_SIZE/Between_5a_10wgs84');
var fragmentos1 = ee.Feature(fragmentos.filter(ee.Filter.eq('value','1')).first());
// Add reducer output to the Features in the collection.
var fragmentos1MeansFeatures = addNDVI.reduceRegions({
collection: fragmentos1,reducer: ee.Reducer.mean(),scale: 30,});
var plotNDVI = ui.Chart.image.seriesByRegion(S2,fragments,ee.Reducer.mean(),'nd',500,'system:time_start','system:index')
.setChartType('LineChart').setoptions({
title: 'NDVI short-term time series',hAxis: {title: 'Date'},vAxis: {title: 'NDVI'}
});
plotNDVI.style().set({
position: 'bottom-right',width: '500px',height: '300px'
});
Map.add (plotNDVI);
Map.addLayer (fragments);
Map.addLayer(NDVImed.clip(fragments),{min:-0.1,max:0.9,palette: ndvi_pal},'NDVI');
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)