当前位置: 首页 > news >正文

如何用GEE下载选择的小区域范围Landsat影像

https://code.earthengine.google.com/如何用GEE下载小区域影像?

很多人都是加载矢量文件然后进行影像提取的,但是对于小区域的影像从其他地方勾选矢量边界,然后再导入到GEE中未免太麻烦。相信有部分人和我一样知道这里有工具但是不会使用,遇到这种问题怎么解决?我们这里以Landsat7为例,选择的时间为'1999-06-01'至'2000-03-01,云量<=10%

(一)关于知道区域位置,只需要确定研究区域坐标就行,根据区域坐标建立缓冲区。下面是详细代码:

var point = ee.Geometry.Point([94.95, 30.22]);
var region = point.buffer(10000); // 缓冲30公里区域var dataset = ee.ImageCollection('LANDSAT/LE07/C02/T1_L2').filterDate('1999-06-01', '2000-03-01').filterBounds(region).filter(ee.Filter.lte('CLOUD_COVER', 10)); // 云量 <= 10%// 应用缩放因子 + 裁剪区域
function applyScaleFactors(image) {var opticalBands = image.select('SR_B.').multiply(0.0000275).add(-0.2);var thermalBand = image.select('ST_B6').multiply(0.00341802).add(149.0);return image.addBands(opticalBands, null, true).addBands(thermalBand, null, true).clip(region);
}var scaled = dataset.map(applyScaleFactors);// 选择要导出的第一张影像
var imageToExport = scaled.first();// 可视化设置
var visualization = {bands: ['SR_B3', 'SR_B2', 'SR_B1'],min: 0.0,max: 0.3,
};Map.setCenter(94.95, 30.22, 8);
Map.addLayer(imageToExport, visualization, 'True Color (321)');//导出
Export.image.toDrive({image: imageToExport.select(['SR_B3', 'SR_B2', 'SR_B1']),description: 'Landsat7_TCC_UpRes',folder: 'EarthEngineImages',fileNamePrefix: 'landsat7_truecolor_15m',region: region,scale: 15, // 尝试更高分辨率(注意:是插值,不是实际分辨率提升)crs: 'EPSG:4326',maxPixels: 1e13
});

(二)关于知道区域位置,可以绘制矩形或任意形状,下面是详细代码:

// ✅ 自定义区域(矩形)
var geometry = ee.Geometry.Polygon([[[95.17218231690704, 30.254447386317832],[95.17218231690704, 30.193930328000473],[95.26487946046173, 30.193930328000473],[95.26487946046173, 30.254447386317832]]], null, false);// ✅ 筛选影像集合:时间、区域、云量 <= 10%
var dataset = ee.ImageCollection('LANDSAT/LE07/C02/T1_L2').filterDate('1999-06-01', '2000-03-01').filterBounds(geometry).filter(ee.Filter.lte('CLOUD_COVER', 10));// ✅ 缩放函数 + 区域裁剪
function applyScaleFactors(image) {var opticalBands = image.select('SR_B.').multiply(0.0000275).add(-0.2);var thermalBand = image.select('ST_B6').multiply(0.00341802).add(149.0);return image.addBands(opticalBands, null, true).addBands(thermalBand, null, true).clip(geometry);
}// ✅ 应用处理
var scaled = dataset.map(applyScaleFactors);// ✅ 可视化设置
var visualization = {bands: ['SR_B3', 'SR_B2', 'SR_B1'],min: 0.0,max: 0.3,
};// ✅ 地图显示
Map.centerObject(geometry, 10);
Map.addLayer(scaled.first(), visualization, 'True Color (321)');// ✅ 导出为 GeoTIFF
Export.image.toDrive({image: scaled.first().select(['SR_B3', 'SR_B2', 'SR_B1']), // 你也可以选择更多波段description: 'Landsat7_Export_Geometry',folder: 'EarthEngineImages',fileNamePrefix: 'landsat7_rectangle_clip',region: geometry,scale: 30,  // 也可以试 scale: 15 来插值提高分辨率crs: 'EPSG:4326',maxPixels: 1e13
});

相关文章:

  • 【React】什么是 Hook
  • GitHub 趋势日报 (2025年04月16日)
  • 【APM】How to enable Trace to Logs on Grafana?
  • 超详细VMware虚拟机扩容磁盘容量-无坑版
  • 【JavaWeb后端开发01】Maven入门
  • 随手笔记-python-opencv 读取图像的顺序 与pytorch处理图像的顺序
  • win10下github libiec61850库编译调试sntp_example
  • Python PDF 转 Markdown 工具库对比与推荐
  • GM DC Monitor告警大屏的设计思路
  • CGAL边折叠edge_collapse的问题
  • Oracle测试题目及笔记(单选)
  • Mysql的锁有哪些
  • 在Linux下安装Gitlab
  • C#进阶学习(五)单向链表和双向链表,循环链表(中)双向链表
  • 在极狐GitLab 身份验证中如何使用 JWT?
  • Flutter ListView 详解
  • 前沿要塞:Vue组件安全工程的防御体系重构与技术突围
  • “星睿O6” AI PC开发套件评测 - Windows on Arm 安装指南和性能测评
  • 游戏引擎学习第230天
  • ZStack文档DevOps平台建设实践
  • 上海交大曾小勤:科技传播不应停留于知识搬运,要做科学思维的播种机
  • 61岁云浮市律师协会副会长谭炳光因突发疾病逝世
  • 多少Moreless:向世界展示现代中式家具的生活美学
  • 篮球培训机构东方启明星被指停摆,家长称已登记未退费用超百万
  • 舱位已排到月底,跨境电商忙补货!美线订单大增面临爆舱,6月运价或翻倍
  • 中国青年报:为见义勇为者安排补考,体现了教育的本质目标