/** * Sentinel-1 哨兵一号数据下载 —— 以下载 2023-2024 年云南省边境影像为例 * * @author CVEO Team * @date 2025-12-18 * * 1. 加载 Sentinel-1 数据 * 2. 导出COG云优化并填补缺失值的GeoTIFF影像分块 */ // 加载研究区域和影像 // var region_name = "德宏傣族景颇族自治州"; // 瑞丽县所在 var region_name = "保山市"; // 德宏州东侧 var region_name_en = "baoshan"; var region = allCites.filter(ee.Filter.eq("市", region_name)); var yunnan = allCites.filter(ee.Filter.eq("省", "云南省")); var year = 2023; var start_date = year + "-04-09"; var end_date = year + "-04-11"; var region_geo = region.geometry(); var bounds = region_geo.bounds(); var common_filter = ee.Filter.and( ee.Filter.bounds(bounds), ee.Filter.date(start_date, end_date) ); // 加载Sentinel-1 GRD数据 var S1dataset = ee .ImageCollection("COPERNICUS/S1_GRD") .filter(common_filter) .filter(ee.Filter.listContains('transmitterReceiverPolarisation', 'VV')) .filter(ee.Filter.eq('instrumentMode', 'IW')) .select('VV'); print(start_date + " - " + end_date + " S1dataset", S1dataset); var s1_img = ee.Image(S1dataset.median()); var s1_vis = { min: -25, max: 5 }; var styling1 = { color: "blue", fillColor: "00000000", }; var styling2 = { color: "red", fillColor: "00000000", }; Map.centerObject(region, 7); Map.addLayer(s1_img, s1_vis, start_date + " Sentinel-1 GRD"); Map.addLayer(yunnan.style(styling2), {}, "云南省"); Map.addLayer(region.style(styling1), {}, region_name); // 导出 Sentinel-1 影像 // 明确设置数据类型为Float32, 否则默认类型为Float64, 会占用更多内存 // 并对缺失值进行填充, 否则默认为nan不便于后续本地处理 var processed_img = S1dataset.first().toFloat().unmask(-9999.0); Export.image.toDrive({ image: processed_img, description: "S1A_IW_GRDH_1SDV_" + start_date, folder: "Sentinel-1", // region: region, scale: 10, maxPixels: 1e13, // GEE 最多支持 1e8 像素, 当超过时会自动分块 fileFormat: "GeoTIFF", // 导出COG云优化的GeoTIFF影像, 并明确设置缺失值为-9999.0 formatOptions: { cloudOptimized: true, noData: -9999.0, }, });