GEE 依照范围裁剪 下载Sentinel-2数据


0. GEE介绍

Google Earth Engine(GEE) 是由Google开发的一种云端平台,旨在提供强大的地理空间数据处理和分析工具。GEE集成了大量的遥感影像数据和地理空间数据集,以及高性能的计算资源,使用户能够在云端高效地进行大规模地理空间数据处理、分析和可视化,为环境监测、资源管理、自然灾害监测等领域提供了强大的支持。


使用Google Earth Engine(GEE)进行遥感影像分析是一种强大而灵活的方法,它允许用户在云端高效处理大规模的地理空间数据。在Google Earth Engine 中,可以使用 ee.ImageCollection.clip() 等方法来依照范围裁剪 Sentinel-2 数据。


步骤 1:访问Google Earth Engine

  • 打开浏览器,转到 Google Earth Engine 网站。
    • https://code.earthengine.google.com/

  • 如果你尚未登录,使用Google账号登录。


步骤 2:启动Google Earth Engine Code Editor

  • 进入GEE的代码编辑器,按照要求创建项目。

  • 完成Earth引擎代码编辑器


步骤 3:编写和运行代码

在代码编辑器中,可以编写JavaScript代码来处理遥感影像数据。GEE提供了大量的API和函数来操作和分析遥感数据。

  • 通过点击 Assets -> NEW -> Shape files 创建boundary.shp文件,作为文件裁剪范围。
    • 通过点击 SELECT 筛选文件类型,上传边界数据。(上传文件类型见截图)
    • 注意:上传可能有延迟,试着多刷新,稍等一段时间


步骤 4:查看边界数据

  • 在代码编辑器中核验 Cuba 国家行政区划边界数据集boundary.shp
// 从用户的数据集中加载行政区划边界数据集
var district = ee.FeatureCollection("users/xxxx/boundary");// 获取行政区划边界数据集的大小(即要素数量)并打印输出
var dsize = district.size();
print(dsize);// 提取行政区划边界数据集的几何信息
var district_geometry = district.geometry();// 将地图视图中心设置为行政区划边界的几何中心,并缩放到指定级别
Map.centerObject(district_geometry, 7);// 在地图上添加行政区划边界图层
Map.addLayer(district);


步骤 5:下载Sentinel-2影像并导出数据

  • 在代码编辑器中的代码执行过程中,可以在右侧的 Console 面板中查看代码运行的输出结果,包括图像、表格等。
  • 完成了分析,你可以将结果保存在你的 GEE 账户中,以便日后访问和使用。
  • 还可以通过导出功能将结果数据导出至 Google Drive :GeoTIFF、CSV等常见格式,以便在其他GIS软件中使用。
// 定义函数:用于遮蔽Sentinel-2影像中的云
function maskS2clouds(image) {// 选择Sentinel-2影像中的QA60波段,该波段用于云掩蔽var qa = image.select('QA60');// 云和卷云的标志位分别在第10位和第11位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).divide(10000);
}// 加载boundary.shp文件
var boundary = ee.FeatureCollection('users/xxxx/boundary');// 映射函数至一年的数据。
// 加载Sentinel-2 TOA反射数据。
var dataset = ee.ImageCollection('COPERNICUS/S2').filterBounds(boundary)  // 根据区域几何范围筛选数据.filterDate('2020-01-01', '2021-01-01')  // 筛选日期范围// 预先过滤以获取云量较少的数据.filter(ee.Filter.lt('CLOUDY_PIXEL_PERCENTAGE', 20)).map(maskS2clouds);  // 应用云掩蔽函数// 定义RGB可视化参数
var rgbVis = {min: 0.0,max: 0.3,bands: ['B4', 'B3', 'B2'],
};// 将处理后的影像数据按照boundary.shp文件裁剪,并添加到地图中
var clippedImage = dataset.median().clip(boundary);
Map.addLayer(clippedImage, rgbVis, 'Clipped Image');// 导出裁剪后的影像数据到Google Drive
Export.image.toDrive({image: clippedImage.select(['B4', 'B3', 'B2']),  // 选择RGB波段description: 'Sentinel2_Cropped',  // 导出影像的描述folder: 'GEE_Images',  // 导出到Google Drive中的文件夹名称region: boundary.geometry(),  // 导出影像的区域scale: 10,  // 分辨率maxPixels: 1e13  // 最大像素数量
});


补充材料

  • GEE的学习曲线可能相对陡峭,请参考官方操作文档和示例代码:
    • https://developers.google.com/earth-engine/guides/getstarted
    • https://earthengine.google.com/platform/
  • GEE提供了强大的云端计算资源,但某些操作可能需要一定的时间才能完成,尤其是对大规模数据的处理。
    • 可以考虑基于小行政区划shp文件,进行分区下载。

如果这对您有所帮助,希望点赞支持一下作者! 😊

点击查看原文
https://mp.weixin.qq.com/s?__biz=Mzk0MTU1MjU5Mw==&mid=2247484716&idx=1&sn=1968d0c1bfacb28e11c73e655f7f137b&chksm=c2d1e392f5a66a849a615c94c3a9f63c9ed9d32e06bef1b3d74df2923f9ff10926bb985df2b9#rd

file

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/724695.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI的归纳和演绎法

AI的归纳和演绎法分别是什么&#xff1f; AI的归纳和演绎法是两种常见的推理方法。 归纳法&#xff08;inductive reasoning&#xff09;是一种从特殊到一般的过程&#xff0c;在有限的实例观察中得出一般规律或原则。用简单的说法&#xff0c;就是从一些具体的事物或情况中总…

GDB调试入门笔记

文章目录 What&#xff1f;WhyHow安装GDB安装命令查看是否安装成功调试简单的程序预备一个程序调试 使用breakinfolistnextprintstep一些小技巧在gdb前shell日志功能watch point| catch point 调试core调试一个运行的程序 What&#xff1f; GDB是什么&#xff1f; 全称GNU sym…

1、MQ_介绍、优缺点、类型等

MQ介绍 1. MQ概述 MQ&#xff08;Message Queue&#xff09;&#xff1a;消息队列&#xff0c;是基础数据结构中FIFO&#xff08;first in first out&#xff09;的一种数据结构。一般用来解决流量削峰、应用解耦、异步处理等问题&#xff0c;实现高性能&#xff0c;高可用&a…

24计算机考研调剂 | 中国民用航空飞行学院

中国民用航空飞行学院计算机学院2024年研究生招生啦~ 考研调剂招生信息 学校:中国民航飞行学院 专业:工学->电子信息 年级:2024 招生人数:- 招生状态:正在招生中 联系方式:********* (为保护个人隐私,联系方式仅限APP查看) 补充内容 中国民用航空飞行学院计算机学院…

Kafka|处理 Kafka 消息丢失的有效措施

文章目录 消息丢失场景生产者端Kafka Broker消费者端 如何防止消息丢失生产者端Kafka Broker 端消费者端 扩展如何实现消费端的重试功能&#xff1f;有如何处理消息重复&#xff1f; 消息丢失是 Kafka 系统中一个严重的问题&#xff0c;可能会发生在生产者、Broker 或消费者任何…

鸿蒙实战开发:数据交互【RPC连接】

概述 本示例展示了同一设备中前后台的数据交互&#xff0c;用户前台选择相应的商品与数目&#xff0c;后台计算出结果&#xff0c;回传给前台展示。 样例展示 基础信息 RPC连接 介绍 本示例使用[ohos.rpc]相关接口&#xff0c;实现了一个前台选择商品和数目&#xff0c;后台…

RabbitMQ消息的重复消费问题

消息重复消费是分布式消息传递系统常见的一个问题。在RabbitMQ中&#xff0c;可以通过以下几种策略解决或者缓解消息重复消费的问题&#xff1a; 确保消息处理的幂等性&#xff1a;设计消费者的消息处理逻辑&#xff0c;确保即使消息被多次消费也不会对系统造成不良影响。 消息…

Java解决统计包含给定前缀的字符串

Java解决统计包含给定前缀的字符串 01 题目 给你一个字符串 jewels 代表石头中宝石的类型&#xff0c;另有一个字符串 stones 代表你拥有的石头。 stones 中每个字符代表了一种你拥有的石头的类型&#xff0c;你想知道你拥有的石头中有多少是宝石。 字母区分大小写&#xff0c…

【大数据】-- 创建 Paimon 外部表

如今&#xff0c;在数据湖三剑客&#xff08;delta lake、hudi、iceberg&#xff09;之上&#xff0c;又新出一派&#xff1a; apache paimon。我们恰好在工作中遇到&#xff0c;以下介绍在 dataworks 上&#xff0c;使用 maxcompute odps sql 创建 apache paimon 外部表的一些…

Claude3深夜震撼发布!模型特点分析,附使用教程

Claude3深夜震撼发布&#xff01;模型特点分析&#xff0c;附使用教程 引言 最新发布的Claude3引起了广泛关注&#xff0c;这次发布一举推出了三个不同类型的模型&#xff0c;分别是Claude 3 Haiku、Claude 3 Sonnet和Claude 3 Opus。每个模型都具有独特的特点和能力&#xff…

使用 Redis 进行高效数据缓存的 C# 实践

使用 Redis 进行高效数据缓存的 C# 实践 前言一、搭建 Redis 环境二、在 C# 中使用 Redis1. 安装 StackExchange.Redis2. 连接到 Redis 服务器3. 常用数据类型的操作4. 数据缓存实践5. 高级特性和性能优化6. 错误处理和异常处理 三、总结 前言 Redis 是一种开源的内存数据库&a…

深色系可视化界面看腻了,来点浅色系?安排,20页来了。

只要不放在大屏上展示&#xff0c;贝格前端工场还是非常推崇浅色系的可视化界面&#xff0c;把它作为配色的首选 。浅色系可视化界面具有以下几个优势&#xff1a; 清晰明了 浅色系界面通常使用明亮的颜色&#xff0c;如白色、浅灰色等&#xff0c;使界面元素更加清晰可见。这…

Linux内核基础 - list_splice_tail_init函数详解

解析 Linux Kernel 4.19 的 list_splice_tail_init 函数 摘要 本文档旨在解析 Linux 内核 4.19 版本中 list_splice_tail_init 函数的作用&#xff0c;这是一个处理内核链表的重要函数。通过此函数&#xff0c;可以将一个链表插入到另一个链表的尾部&#xff0c;并将源链表初…

Python 开发图形界面程序

用 Python 语言开发图形界面的程序&#xff0c;有2种选择&#xff1a; Tkinter 基于Tk的Python库&#xff0c;这是Python官方采用的标准库&#xff0c;优点是作为Python标准库、稳定、发布程序较小&#xff0c;缺点是控件相对较少。 PySide2/PySide6 基于Qt 的Python库&#x…

机器学习-面经(part7、无监督学习)

机器学习面经系列的其他部分如下所示&#xff1a; 机器学习-面经&#xff08;part1&#xff09; 机器学习-面经(part2)-交叉验证、超参数优化、评价指标等内容 机器学习-面经(part3)-正则化、特征工程面试问题与解答合集机器学习-面经(part4)-决策树共5000字的面试问题与解答…

【ArcGIS超级工具】基于ArcPy的矢量数据批量自动化入库工具

最近&#xff0c;有很多做规划的朋友私信我&#xff0c;想让我帮忙开发一款ArcGIS自动化脚本工具&#xff0c;实现点、线、面的自动化入库操作&#xff0c;帮他们在平时的内业数据处理工作中减少机械式重复性的工作&#xff0c;提高工作效率。为此&#xff0c;我详细了解了下目…

项目设计方案规范参考

在软件架构设计中&#xff0c;以下是一个常见的软件架构设计模版&#xff0c;供参考&#xff1a; 1. 业务需求分析 确定系统的业务需求和功能需求。 分析用户需求&#xff0c;确定系统的核心功能和非功能需求。 2. 架构设计原则 SOLID 原则&#xff08;单一职责、开放封闭、里…

这本书太好了!150页就能让你上手大模型应用开发

如果问个问题&#xff1a;有哪些产品曾经创造了伟大的奇迹&#xff1f;ChatGPT 应该会当之无愧入选。仅仅发布 5 天&#xff0c;ChatGPT 就吸引了 100 万用户——当然&#xff0c;数据不是关键&#xff0c;关键是其背后的技术开启了新的 AI 狂潮&#xff0c;成为技术变革的点火…

数据结构与算法学习【算法思想之二分法基础】

文章目录 数据结构与算法学习【算法思想之二分查找基础】本文学习目标或巩固的知识点 最基础的二分查找&#x1f7e2;通过题目可知题解结果验证 数据结构与算法学习【算法思想之二分查找基础】 本文学习目标或巩固的知识点 学习二分法类题目 巩固基础的二分法 提前说明&#…

Jmeter之Ramp-up Period(in seconds)

1、Ramp-up Period概念 &#xff08;in seconds&#xff09;–并发用户启动周期&#xff0c;告知JMeter 要在多长时间内启动全部Vuser用户。 2、为什么需要有“ramp-up period”&#xff0c;立即启动所有的并发用户数不是更好&#xff1f; 对于绝大多数的网址或应用&#xf…