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

【GEE】2、探索数据集

1简介

在本单元中,我们将讨论以下概念:

Google 地球引擎中可用的潜在数据来源。
通过生态示例显示的数据集采样用例。
如何使用 Google 地球引擎访问重要的元数据。

2背景

要将遥感集成到您的研究和分析中,学习如何解析 Google 地球引擎上可用的大量栅格数据集非常重要。了解这些数据的分类方式有助于开始此过程。如果您完全不知道从哪里开始,这里有一个非常有用的资源来细读Google 地球引擎数据目录中可用的一般栅格类别。对 Google 地球引擎中可用的所有栅格执行各种级别的数据清理和图像预处理,但对于本模块,我们将专注于更广泛的探索,为一些示例生态应用程序寻找合适的数据集。更多关于预处理差异和分析的信息可以在模块 5中找到。

2.1数据类别:气候和天气

这些是传达有关温度、降水、蒸散以及其他大气和气象现象的信息的栅格。这些数据集通常用于帮助了解基于适当栖息地的衍生范围的物种或群落的生态位。重要的是要了解其中一些是通过插值方法创建的,该方法估计监测站点之间地理空间中的值,而不是仅提供直接测量值的许多其他栅格。

示例集合:CHIRPS
该数据集包含各种气候层,包括温度和降水,由俄勒冈州立大学的 PRISM 小组开发和监测。当我们试图在景观层面了解一个物种或一组物种的潜在生态位时,对气候因素的空间理解是无价的。
在这里插入图片描述

使用 CHIRPS 数据集的 2018 年 5 月中非月降雨总量。

2.2数据类别:影像

在该组中,栅格捕获与被动收集的太阳能有关的景观特征,通常提供有关地面上真实世界元素(包括植物和土壤)的增强信息。需要注意的是,图像栅格通常被分成许多子图像(波段),这些子图像(波段)对应于特定的光波长范围。许多图像数据集用于创建可通过预建集合访问的光谱索引(第8单元中对此进行了更多介绍)。

收集示例:MODIS
MODIS(中分辨率成像光谱仪)程序从两个星载传感器 Aqua 和 Terra 以及两者的组合收集数据。除了表面反射率数据(包括积雪、地表温度、叶面积指数和总初级生产力)之外,Google 地球引擎上还提供了许多衍生的 MODIS 产品。尽管其空间分辨率比其他一些影像数据集更粗糙,但许多 MODIS 产品具有较高的时间分辨率,从而导致时间序列密集。同一地理区域上的图像之间的窗口低至八天。

在这里插入图片描述
MODIS 衍生的日本北部北海道岛叶面积指数预测。

2.3数据类别:地球物理

该组中的栅格涵盖范围广泛的地图类型。海拔和地形索引图对于定义物种栖息地的环境限制很有用,而土地覆盖图是方便的、预先打包的图层,可用作分类数据或与您自己生成的图像分类进行比较(更多内容见第7单元)。

示例集合:NED
国家高程数据集 (NED) 是一个高质量的数字高程模型 (DEM),它横跨美国大陆以及阿拉斯加和夏威夷的部分地区。该数据集由来自美国各地的不同高程数据编译而成,并经过编辑以确保一致的空间分辨率、高程单位和坐标系。NED 等高程图像可用于创建地形指数、为洪水模型提供信息或对地貌特征进行分类。在这里插入图片描述
华盛顿和爱达荷州边界上的美国国家高程数据集。

3图像采集探索

现在我们已经了解了我们可以使用的数据集的深度和广度,我们可以花点时间详细探索一个集合。我们将探索 Google Earth Engine 中更独特的可用数据集之一:MODIS Daily Snow Cover 集合。这些数据使我们能够查看一年中任何一天给定像素的积雪百分比。这些数据还可以创建每周、每月和每年的平均值,并已在以前的研究中用于分析和监测积雪深度、积雪范围和融雪。

3.1查找和加载集合

要开始探索 MODIS 积雪数据集,您可以通过以下两种方式之一加载集合。首先,使用搜索栏,开始输入“MYD10A1.006 Aqua Snow Cover Daily Global 500m”。
在这里插入图片描述
在搜索栏中输入数据集名称的结果。

如果我们点击数据集的名称,我们会看到一个弹出窗口,其中包含一个“导入”按钮(以红色突出显示)。单击此按钮将自动将数据集加载到脚本工作区中。在这里插入图片描述单击“导入”按钮(以红色突出显示)将加载 MODIS 积雪集合。

虽然使用导入按钮很方便,但加载数据集的命令实际上并未写入我们的脚本中。导入集合的另一种方法是复制它们的“ImageCollection ID”(在下面突出显示)并将速记名称粘贴到您的脚本中,如下所示:在这里插入图片描述

// Load the image collection.
var dataset = ee.ImageCollection('MODIS/006/MYD10A1');

3.2快速地理搜索

现在我们已经找到并加载了我们的图像集合,运行下面的脚本来快速加载一些示例数据:

// Load the image collection.
var dataset = ee.ImageCollection('MODIS/006/MYD10A1');// Limit the collection date range to 2018.
var dataset = dataset
.filterDate('2018-01-01', '2018-12-31');// Select the snow cover layer and compute the mean.
var snowCover = dataset
.select('NDSI_Snow_Cover')
.mean();// Define the visualization parameters and add the collection to the map.
var snowCoverVis = {min: 0.0, max: 100.0, palette: ['black', '0dffff', '0524ff', 'ffffff']};
Map.addLayer(snowCover, snowCoverVis, 'Snow Cover');

随意放大到各个全球位置,以比较世界不同地区的数据。一个简单的方法就是使用搜索栏。输入“阿留申群岛”或“冰岛”或“尼泊尔”,您将看到潜在地理位置的列表。单击任何名称以自动重定向到该位置。请记住,您的脚本可能包含缩放到特定地理位置的代码。所以要小心重新点击那个运行按钮!在这里插入图片描述
在搜索栏中,输入“尼泊尔”并放大以查看与此类似的图像。

3.3探索集合属性

找到并加载我们的集合后,了解对使用遥感数据感兴趣的生态学家可用的图像集合元数据非常重要。元数据对于我们如何确定给定特定研究系统或感兴趣区域的图像或图像集合的适当性很重要。以下主题讨论了在 Google 地球引擎中图像集合的元数据中发现的一些基本信息。

3.3.1空间分辨率

研究生态过程的最重要方面之一是对规模的理解。在遥感的背景下,这被称为分辨率。具体来说,在栅格数据集中,这是像素大小的基本欧几里德测量值,通常报告为栅格中像素一侧的长度。了解空间分辨率与生态应用的物理规模之间的关系很重要,可以快速帮助您缩小对适当数据集的搜索范围。

要查找我们数据集的空间分辨率,请再次键入数据集名称并单击搜索栏中的结果(即“MYD10A1.006 Aqua Snow Cover Daily Global 500m”)。有时,如果栅格中的所有波段都具有相同的分辨率,则此信息(以及比例单位)将显示在标题下。如果数据集中有多个分辨率,通常会有一个表格指示每个波段的空间分辨率。
在这里插入图片描述
MODIS 数据集的空间分辨率,以米为单位。这是一个相对较低的分辨率,更适合区域或全球分析。

3.3.2时间分辨率

在遥感领域,有许多数据集代表了在数天、数月或数年内分析和解释值的机会。时间分辨率是我们描述传感器重访周期的方式。如果一颗卫星有一个既定的轨道模式,我们可以确定预计它经过同一地理位置的日期甚至时间。例如,Landsat 计划在两周内重新访问同一位置,数据采集之间的特定时间分辨率为 16 天。Google Earth Engine 中可用的一些数据集可用于每日测量(即 MODIS),而其他数据集可能是每月(即 WorldClim)。

确定您研究区域中可用/可用图像的日期范围是否与您的观察结果一致,或者计算有多少图像落在您的 AOI + 日期范围内,这可能是收集数据以进行潜在分析的重要第一步。从上面添加我们的脚本和下面的代码,我们将打印出这些信息。要查找您自己的坐标,请单击“检查器”选项卡,然后单击地图。然后检查员将获取该点的坐标(下面以红色突出显示)。
在这里插入图片描述
在“检查器”选项卡处于活动状态的情况下,单击地图可为我们提供纬度和经度坐标配对。

您的结果将根据您使用的坐标而有所不同(尝试几个不同的坐标!)但以下代码应将记录总数(“计数”)和记录的日期范围打印到“控制台”选项卡。您的结果可能会因您的坐标而异,但格式应类似于下图。

var dataset = dataset
.filterBounds(ee.Geometry.Point(27.5487, 41.2568)); // Use your own coordinates here!// Print the number of images in the collection
print('Count: ', dataset.size());// Print the whole date range of the filtered collection.
var range = dataset.reduceColumns(ee.Reducer.minMax(), ["system:time_start"])
print('Date range: ', ee.Date(range.get('min')), ee.Date(range.get('max')));

在这里插入图片描述
Google Earth Engine 的“控制台”选项卡中的输出,指示我们集合中的图像数量以及它们所涵盖的日期范围。

4结论

总之,我们刚刚开始探索使用 Google 地球引擎触手可及的海量数据。我们还介绍了一些重要的元数据,它们可以增强您的搜索并帮助确定您的图像集是否已准备好进行分析。有可能适合您的研究领域的数据集就在那​​里。但是,如果您找不到合适的,请不要担心!只需跳至第 4 单元,了解如何将您自己的数据引入 Google 地球引擎生态系统。

4.1完整的图像采集探索脚本

// Load the image collection.
var dataset = ee.ImageCollection('MODIS/006/MYD10A1');// Limit the collection date range to 2018.
var dataset = dataset
.filterDate('2018-01-01', '2018-12-31');// Select the snow cover layer and compute the mean.
var snowCover = dataset
.select('NDSI_Snow_Cover')
.mean();// Define the visualization parameters and add the collection to the map.
var snowCoverVis = {min: 0.0, max: 100.0, palette: ['black', '0dffff', '0524ff', 'ffffff']};
Map.addLayer(snowCover, snowCoverVis, 'Snow Cover');var dataset = dataset
.filterBounds(ee.Geometry.Point(27.5487, 41.2568)); // Use your own coordinates here!// Print the number of images in the collection
print('Count: ', dataset.size());// Print the whole date range of the filtered collection.
var range = dataset.reduceColumns(ee.Reducer.minMax(), ["system:time_start"])
print('Date range: ', ee.Date(range.get('min')), ee.Date(range.get('max')));

相关文章:

【GEE】2、探索数据集

1简介 在本单元中,我们将讨论以下概念: Google 地球引擎中可用的潜在数据来源。 通过生态示例显示的数据集采样用例。 如何使用 Google 地球引擎访问重要的元数据。 2背景 要将遥感集成到您的研究和分析中,学习如何解析 Google 地球引擎上…...

开发一款直播弹幕游戏需要多少钱?

开发一款直播弹幕游戏需要多少钱?有好多朋友在咨询过弹幕游戏的开发价格后,都会比较吃惊,一款体量这么小的游戏为什么动辄就要几万块甚至十几万? 我来给你们说分析一下原因,这种游戏如果脱离开直播间,可以…...

STM32F103C8T6第一天:认识STM32 标准库与HAL库 GPIO口 推挽输出与开漏输出

1. 课程概述(297.1) 课程要求:C语言熟练,提前学完 C51 2. 开发软件Keil5的安装(298.2) 开发环境的安装 编程语言:C语言需要安装的软件有两个:Keil5 和 STM32CubeMX Keil5 的安装…...

selenium元素定位 —— 提高篇 CSS定位元素

CSS (Cascading Style Sheets) 是一种用于渲染 HTML 或者 XML 文档的语言,CSS 利用其选择器可以将样式属性绑定到文档中的指定元素。理论上说无论一个元素定位有多复杂都能够定位到元素。 因为不同的浏览器 XPath 引擎不同甚至没有自己的 Xpath 引擎,这…...

隔离和非隔离电源的区别

一、电源隔离与非隔离 电源的隔离与非隔离,主要是针对开关电源而言,业内比较通用的看法是: 1、隔离电源:电源的输入回路和输出回路之间没有直接的电气连接,输入和输出之间是绝缘的高阻态,没有电流回路。 …...

C语言自定义数据类型

一、构造数据类型 构造数据类型:用户自己建立的数据类型(自定义数据类型) C语言中的自定义数据类型有:数组类型、结构体类型、共用体类型和枚举类型。 1.1. 结构体 C语言允许用户根据需要自己建立的由不同类型数据组成的组合型…...

SoftwareTest5 - 你就只知道功能测试吗 ?

你就只知道功能测试吗 ? 一 . 按照测试对象划分1.1 文档测试1.2 可靠性测试1.3 容错性测试1.4 安装卸载测试1.5 内存泄漏测试1.6 弱网测试 二 . 按是否查看代码划分2.1 黑盒测试2.2 白盒测试2.3 灰盒测试 三 . 按照开发阶段划分3.1 单元测试3.2 集成测试3.3 冒烟测试3.4 系统测…...

Uniapp 中,能够同时兼容H5、web、app、微信小程序的引入高德地图的语法格式

在 Uniapp 中&#xff0c;可以通过使用 uni-app 统一的 API 来同时兼容 H5、web、App 和微信小程序&#xff0c;而引入高德地图则有以下两种语法格式供选择&#xff1a; 使用 Vue.js 的语法格式&#xff1a; <template><view><map :longitude"longitude&…...

基于nodejs+vue网上鲜花销售系统

目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 nodejs简介 4 2.2 express框架介绍 6 2.4 MySQL数据库 4 第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性&#xff1a;…...

stm32 ETH

1 How do I create a project for STM32H7 with Ethernet and LwIP stack working? STM32 LWIP 接收大数据包导致Hardfault问题解决记录 Trying to get Ethernet, LWIP and FreeRTOS working on the STM32H745. Testing on the NUCLEO-H745ZI-Q using FW_1.7 and the STM32Cub…...

【深度学习基础】Pytorch框架CV开发(2)实战篇

&#x1f4e2;&#xff1a;如果你也对机器人、人工智能感兴趣&#xff0c;看来我们志同道合✨ &#x1f4e2;&#xff1a;不妨浏览一下我的博客主页【https://blog.csdn.net/weixin_51244852】 &#x1f4e2;&#xff1a;文章若有幸对你有帮助&#xff0c;可点赞 &#x1f44d;…...

C语言--输出1-100以内同时能被3和5整除的数

首先我们要有1-100的数字. for(int i1;i<100;i) 如何表示同时能被3和5同时整除呢&#xff1f; 如果这个数i&#xff0c;i%30&&i%50,那么这个数就可以同时被3和5整除 if(i%30&&i%50) 最后输出即可 完整代码&#xff1a; #include<stdio.h> void Sh…...

Linux--jdk、tomcat、环境配置,mysql安装、后端项目搭建

前言 上期我们讲到了安装linux虚拟机&#xff0c;这期我们来讲一下如何使用xshell和xftp在linux系统上搭建我们的单体项目 一、软件的传输 1.1 xftp Xftp是一款功能强大的文件传输软件&#xff0c;用于在本地主机和远程服务器之间进行快速、安全的文件传输。它是由南京帆软科…...

NOIP2023模拟10联测31 迷路

题目大意 你在野外迷路了, 你手里只有一张你当前所在的区域的地图。地图将整个区域表示为 n m n\times m nm的网格&#xff0c;你就在其中的某一个格子里。每个格子里要么有树&#xff0c;要么就什么都没有。地图显示了每个格子中是有树还是空的。当然&#xff0c;地图只记载…...

React Query + Redux toolkit 封装异步请求

当你需要进行 Redux 和 React Query 的组合时&#xff0c;除了常规的 Redux 方法&#xff08;例如手动派发 action 和更新 state&#xff09;&#xff0c;还可以使用 createSlice 和 React Query 进行组合&#xff0c;这可以让你更方便地封装异步请求和更容易地更新状态。 使用…...

CSS基础知识点速览

1 基础认识 1.1 css的介绍 CSS:层叠样式表(Cascading style sheets) CSS作用&#xff1a; 给页面中的html标签设置样式 css写在style标签里&#xff0c;style标签一般在head标签里&#xff0c;位于head标签下。 <style>p{color: red;background-color: green;font-size…...

Windows 时间服务配置和配置工具

文章目录 Windows 时间服务保留Portw32tm 命令配置 Windows 时间服务配置客户端使用两个时间服务器配置客户端自动从域源同步时间检查客户端时间配置使用本地组策略编辑器配置Windows 时间注册表参考推荐阅读 Windows 时间服务 (W32Time) 为 Active Directory 域服务 (AD DS) 管…...

cmake find_package、引用GDAL 初步学习

上次的源码的CMakeLists.txt文件里有 find_package(GDAL REQUIRED) 这句; 从字面意思看此源码需要GDAL库; 查了一下,find_package 指令的基本功能是查找第三方库,并返回其细节; 我当前GDAL安装在D:\GDAL; 先把它的CMakeLists.txt重命名为别的,不使用; 新建一个C…...

紫光同创FPGA编写的8画面分割器演示

适用于板卡型号&#xff1a; 紫光同创PGL50H开发平台&#xff08;盘古50K开发板&#xff09; 图(1) 盘古50K开发板 TOP 层逻辑框 图(2) TOP层逻辑框 video_copy_ux 将输入的一路RGB888信号复制成8份&#xff0c;每份画面内容相同&#xff0c;各路颜色有些差异&#xff1a; 第…...

openLayers--绘制多边形、获取视图的中心点、获取当前地图等级、设置地图等级

openLayers绘制多边形、获取视图中心点 前言效果图1、导入LineString2、创建添加多边形3、定义多变形样式4、获取当前视图的中心点5、获取当前视图等级6、设置地图等级 前言 上一篇文章在vue项目中绘制了openlayers绘制了地图和标记点&#xff0c;本篇文章讲解openlayers绘制多…...

JavaSec-RCE

简介 RCE(Remote Code Execution)&#xff0c;可以分为:命令注入(Command Injection)、代码注入(Code Injection) 代码注入 1.漏洞场景&#xff1a;Groovy代码注入 Groovy是一种基于JVM的动态语言&#xff0c;语法简洁&#xff0c;支持闭包、动态类型和Java互操作性&#xff0c…...

云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?

大家好&#xff0c;欢迎来到《云原生核心技术》系列的第七篇&#xff01; 在上一篇&#xff0c;我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在&#xff0c;我们就像一个拥有了一块崭新数字土地的农场主&#xff0c;是时…...

MongoDB学习和应用(高效的非关系型数据库)

一丶 MongoDB简介 对于社交类软件的功能&#xff0c;我们需要对它的功能特点进行分析&#xff1a; 数据量会随着用户数增大而增大读多写少价值较低非好友看不到其动态信息地理位置的查询… 针对以上特点进行分析各大存储工具&#xff1a; mysql&#xff1a;关系型数据库&am…...

AtCoder 第409​场初级竞赛 A~E题解

A Conflict 【题目链接】 原题链接&#xff1a;A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串&#xff0c;只有在同时为 o 时输出 Yes 并结束程序&#xff0c;否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...

1688商品列表API与其他数据源的对接思路

将1688商品列表API与其他数据源对接时&#xff0c;需结合业务场景设计数据流转链路&#xff0c;重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点&#xff1a; 一、核心对接场景与目标 商品数据同步 场景&#xff1a;将1688商品信息…...

JVM虚拟机:内存结构、垃圾回收、性能优化

1、JVM虚拟机的简介 Java 虚拟机(Java Virtual Machine 简称:JVM)是运行所有 Java 程序的抽象计算机,是 Java 语言的运行环境,实现了 Java 程序的跨平台特性。JVM 屏蔽了与具体操作系统平台相关的信息,使得 Java 程序只需生成在 JVM 上运行的目标代码(字节码),就可以…...

人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式

今天是关于AI如何在教学中增强学生的学习体验&#xff0c;我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育&#xff0c;这并非炒作&#xff0c;而是已经发生的巨大变革。教育机构和教育者不能忽视它&#xff0c;试图简单地禁止学生使…...

2025年渗透测试面试题总结-腾讯[实习]科恩实验室-安全工程师(题目+回答)

安全领域各种资源&#xff0c;学习文档&#xff0c;以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具&#xff0c;欢迎关注。 目录 腾讯[实习]科恩实验室-安全工程师 一、网络与协议 1. TCP三次握手 2. SYN扫描原理 3. HTTPS证书机制 二…...

C#学习第29天:表达式树(Expression Trees)

目录 什么是表达式树&#xff1f; 核心概念 1.表达式树的构建 2. 表达式树与Lambda表达式 3.解析和访问表达式树 4.动态条件查询 表达式树的优势 1.动态构建查询 2.LINQ 提供程序支持&#xff1a; 3.性能优化 4.元数据处理 5.代码转换和重写 适用场景 代码复杂性…...

关于easyexcel动态下拉选问题处理

前些日子突然碰到一个问题&#xff0c;说是客户的导入文件模版想支持部分导入内容的下拉选&#xff0c;于是我就找了easyexcel官网寻找解决方案&#xff0c;并没有找到合适的方案&#xff0c;没办法只能自己动手并分享出来&#xff0c;针对Java生成Excel下拉菜单时因选项过多导…...