今天连续发了4篇关于Landsat8数据的下载代码,本来都不想再发GEE这个专栏的文章了,但是又想了想都快过年了,赶紧把手里的代码余货都分享出去吧,省的心里有压力。本篇文章主要分享了GEE可视化和下载Sentinel2 L2A数据。
代码主要包含了时间、云量筛选数据集,对数据进行中值合成、镶嵌、裁剪等操作,最后加入筛选波段的代码,仅导出我们需要的波段,以免数据过大。
PS:即使镶嵌后,下载时也会分4-5幅,这是因为GEE的限制问题,哨兵数据太大了一个市将近3个G,Landsat数据就没事。
一、代码部分
//作者:RS迷途小书童
//博客:https://blog.csdn.net/m0_56729804?type=blog
Map.centerObject(table,10);
//这里可调整加载时影像的显示大小
var style_set = {color:"red",fillColor:"00000000"};
Map.addLayer(table.style(style_set),{}, 'ROI')
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);
}
var dataset = ee.ImageCollection('COPERNICUS/S2_SR')//S2==L1C
.filterBounds(table)
.filterDate('2020-04-01', '2020-10-31')
// Pre-filter to get less cloudy granules.
.filter(ee.Filter.lt('CLOUDY_PIXEL_PERCENTAGE',10))
.map(maskS2clouds)
.median()
.clip(table);
//.select(['B4', 'B3', 'B2']);
print(dataset);
var mergedImage = dataset.select('B1','B2','B3','B4','B5','B6','B7','B8','B8A','B9','B11','B12');
print(mergedImage);
var rgbVis = {
min: 0.0,
max: 0.3,
bands: ['B4', 'B3', 'B2'],
};
Map.addLayer(mergedImage, rgbVis, 'RGB');
// //镶嵌裁剪函数,减少之后的工作量
// var mosaic = exportdataset.mosaic().clip(table);
Export.image.toDrive({
image:mergedImage,
description:'2023',//Tasks名称
folder: 'Sentinel2-L2A',//云盘文件夹
scale:10,
maxPixels: 1e13,
region:table,
fileFormat: 'GeoTIFF',
crs: "EPSG:4326",//投影坐标系
formatOptions: {
cloudOptimized: true
}
});
二、结果展示
标签:L2A,style,代码,Sentinel2,GEE,var,数据 From: https://www.cnblogs.com/RSran/p/18000945我平时用GEE比较少,大量时间都是使用Python去处理数据,但是用的少也还是会一点的。令人失望的是网上有很多教程都是VIP文章或者时间周期太长,导致代码不能使用,对于没接触过代码的新手来说很不友好。我希望能在力所能及的范围内尽可能多地去分享一些GEE的基本操作,如果大家感兴趣也可以一起留言交流。