使用PIE下载Sentinel-2 时序NDVI数据

该博客详细介绍了如何使用Google Earth Engine(GEE)对Sentinel-2卫星数据进行云遮挡处理,以获取济南市2020年的NDVI(归一化植被指数)时序数据。首先定义了济南市的区域边界,然后应用自定义函数去除云和cirrus遮挡。接着,计算NDVI并导出无云影像的NDVI中位数。博客还展示了处理后的NDVI图层及其可视化参数,并提供了代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

/**
 * @File    :   Sentinel2Image
 * @Time    :   2021/12/15
 * @Author  :   陨星落云
 * @Version :   1.0
 * @Contact :   400-890-0662
 * @License :   (C)Copyright 航天宏图信息技术股份有限公司
 * @Desc    :   Sentinel-2 时序NDVI数据下载
 */
 
//define ROI
var roi = pie.FeatureCollection("NGCC/CHINA_CITY_BOUNDARY")
    .filter(pie.Filter.eq("name","济南市"))
    .first()
    .geometry();

//哨兵2去云处理
function s2_rmcloud(image) { 
  var qa = image.select('QA60'); 
  var cloudBitMask = 1 << 10; 
  var cirrusBitMask = 1 << 11; 
  var mask = qa.bitwiseAnd(cloudBitMask).eq(0) 
               .and(qa.bitwiseAnd(cirrusBitMask).eq(0)); 
  return image.updateMask(mask); 
} 

//在原影像中加入一个新的波段,命名为NDVI
function cal_NDVI(image) {
 return image.addBands(image.normalizedDifference(["B8", "B4"]).rename("NDVI"));
};

// 设置下载的年份
var Year = '2020';
var DateTime = [Year+'-01-01', Year+'-03-31',Year+'-02-01', Year+'-02-28',Year+'-03-01', Year+'-03-31',
    Year+'-04-01', Year+'-04-30',Year+'-05-01', Year+'-05-31',Year+'-06-01', Year+'-06-30',
    Year+'-07-01', Year+'-07-31',Year+'-08-01', Year+'-08-31',Year+'-09-01', Year+'-09-30',
    Year+'-10-01', Year+'-10-31',Year+'-11-01', Year+'-11-30',Year+'-12-01', Year+'-12-31'];
//print(DateTime);


//批量导出
function exportImage(imgCol,region,fileName) {
      Export.imageToCloud({
        image: imgCol,
        description: "NDVI",
        assetId: "ndvi"+fileName,
        folder:Year+'NDVI',
        scale: 10,
        region:region,
        crs: "EPSG:4326",
        maxPixels: 1e13
 
      });
 
    }

//过滤筛选哨兵2影像
for(var i=0;i<DateTime.length;i+=2){
    var s2_nocloud = pie.ImageCollection("S2/L2A")
                        .filterBounds(roi)
                        .filterDate(DateTime[i], DateTime[i+1])
                        .filter(pie.Filter.lt('cloudyPixelPercentage', 12))
                        .map(s2_rmcloud);
    print(s2_nocloud)            
    var ndvi = s2_nocloud.map(cal_NDVI).select("NDVI").median();

    print(ndvi)
    var ndvi_clipped = ndvi.clip(roi);

exportImage(ndvi_clipped,roi,DateTime[i]);
}

var visParam = {
    min: -0.2,
    max: 0.8,
    palette: 'CA7A41, CE7E45, DF923D, F1B555, FCD163, 99B718, '+
        '74A901, 66A000, 529400,3E8601, 207401, 056201, 004C00,'+
        '023B01, 012E01, 011D01, 011301'
};

Map.centerObject(roi,7);
Map.addLayer(roi,{color:'FFFF00'},"roi");
Map.addLayer(ndvi, visParam, "ndvi",false);
Map.addLayer(ndvi_clipped, visParam, "ndvi_clipped");


结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陨星落云

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值