From 7dee3d71e054582fe4e9ccfd93f523f3f72628cd Mon Sep 17 00:00:00 2001 From: gis-xh Date: Fri, 19 Dec 2025 15:15:54 +0800 Subject: [PATCH] =?UTF-8?q?feat(GEE=5FScripts):=20=E6=B7=BB=E5=8A=A0Sentin?= =?UTF-8?q?el-1=E5=BD=B1=E5=83=8F=E4=B8=8B=E8=BD=BD=E8=84=9A=E6=9C=AC.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- GEE_Scripts/Sentinel-1_download.js | 74 ++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 GEE_Scripts/Sentinel-1_download.js diff --git a/GEE_Scripts/Sentinel-1_download.js b/GEE_Scripts/Sentinel-1_download.js new file mode 100644 index 0000000..dc35ad7 --- /dev/null +++ b/GEE_Scripts/Sentinel-1_download.js @@ -0,0 +1,74 @@ +/** + * 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, + }, +});