GEE代码实例教程详解:MODIS土地覆盖分类与面积计算

简介

在本篇博客中,我们将使用Google Earth Engine (GEE) 对MODIS土地覆盖数据进行分析。通过MODIS/061/MCD12Q1数据集,我们可以识别不同的土地覆盖类型,并计算每种类型的总面积。

背景知识

MODIS MCD12Q1数据集

MODIS/061/MCD12Q1是NASA提供的全球土地覆盖数据集,它按照国际地球观测组织(GEO)全球森林观测计划(GFOI)的要求,提供了全球一致的土地覆盖分类。

土地覆盖分类

土地覆盖分类是将地表按照植被类型、土地利用等特征进行分类的过程,对于理解地表特征和人类活动影响至关重要。

完整代码

// 定义研究区域的坐标点
var cor = [[43.89239103939352, 35.313917425058115],[49.165828539393516, 35.313917425058115],[49.165828539393516, 39.29702833107737],[43.89239103939352, 39.29702833107737],[43.89239103939352, 35.313917425058115]
];// 创建多边形区域
var roi = ee.Geometry.Polygon(cor);// 将地图中心设置为研究区域
Map.centerObject(roi);// 加载MODIS土地覆盖数据集
var modis = ee.ImageCollection("MODIS/061/MCD12Q1").select('LC_Type1').mode();// 定义IGBP土地覆盖可视化参数
var igbpLandCoverVis = {min: 1.0,max: 17.0,palette: ['05450a', '086a10', '54a708', '78d203', '009900', 'c6b044', 'dcd159','dade48', 'fbff13', 'b6ff05', '27ff87', 'c24f44', 'a5a5a5', 'ff6d4c','69fff8', 'f9ffa4', '1c0dff'],
};// 将MODIS土地覆盖数据裁剪至研究区域并添加至地图
Map.addLayer(modis.clip(roi), igbpLandCoverVis, 'modis_lc', false);// 打印MODIS土地覆盖直方图
print(ui.Chart.image.histogram(modis, roi, 500)
);// 计算每个像素的土地面积(单位:平方米)并添加至MODIS图像
var modis_area = ee.Image.pixelArea().divide(1e6).addBands(modis);// 按土地覆盖类型打印面积统计图
print(ui.Chart.image.byClass({image: modis_area,reducer: ee.Reducer.sum(),geometry: roi,scale: 500,dimensions: 'LC_Type1'})
);

代码详解

1. 定义研究区域

创建一个多边形区域roi,用于限定分析的地理范围,并设置地图中心。

2. 加载MODIS土地覆盖数据集

加载MODIS MCD12Q1数据集,并选择LC_Type1波段进行分析。

3. 土地覆盖数据可视化

定义IGBP土地覆盖类型的可视化参数,并裁剪数据至研究区域,然后添加至地图。

4. 打印土地覆盖直方图

使用ui.Chart.image.histogram打印MODIS土地覆盖类型的分布直方图。

5. 计算土地覆盖类型面积

计算每个像素的土地面积(单位:平方米),并添加至MODIS图像。

6. 按土地覆盖类型打印面积统计图

使用ui.Chart.image.byClass按土地覆盖类型打印面积统计图。

结论

本教程展示了如何使用GEE对MODIS土地覆盖数据进行分类和面积计算。通过此分析,可以了解不同土地覆盖类型的空间分布和面积,为土地资源管理和生态环境研究提供支持。

进一步探索

GEE提供了多种工具和方法来进行土地覆盖分类和面积计算。在后续的教程中,我们将继续探索GEE在不同领域的应用。

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

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

相关文章

每天一个数据分析题(四百十五)- 线性回归模型

线性回归模型中误差项的数学期望为 A. 0 B. 1 C. 2 D. 3 数据分析认证考试介绍:点击进入 题目来源于CDA模拟题库 点击此处获取答案 数据分析专项练习题库 内容涵盖Python,SQL,统计学,数据分析理论,深度学习&am…

世界商用飞机机型大全-使用Java抓取FlightAware后的答案

目录 前言 一、数据说明 1、实时航班飞机机型数据 2、网页结构分析 二、使用Java进行信息抓取 1、定义页面PageVO对象 2、爬取属性定义 3、启动信息抓取组件 三、成果分析 1、商业飞行的飞机机型的种类 2、飞机种类排名前十名 3、航班数排名后十名 4、看中国国产大飞…

【网络安全】一文带你了解什么是【网络劫持】

网络劫持(Network Hijacking)是一种网络攻击,攻击者通过非法手段劫持网络通信,导致合法用户的数据流被拦截、篡改或重定向到攻击者控制的系统。这种攻击可以在各种网络层面上进行,包括域名系统(DNS&#xf…

你真的会信息收集嘛,4k字渗透测试信息收集10大技巧

前言 在渗透测试中,信息收集是非常关键的一步,它为后续的漏洞发现和利用提供了重要的基础。以下是非常详细的信息收集方式: 一、被动信息收集 被动信息收集是指在不与目标系统直接交互的情况下,通过公开渠道获取目标系统的相关…

基于51单片机的四路抢答器Protues仿真设计

一、设计背景 近年来随着科技的飞速发展,单片机的应用正在不断的走向深入。本文阐述了基于51单片机的八路抢答器设计。本设计中,51单片机充当了核心控制器的角色,通过IO口与各个功能模块相连接。按键模块负责检测参与者的抢答动作&#xff0c…

线程交互现象

线程交互现象 小明对自家的狗子有个规定,就是在狗狗还没吃完的时候,可以继续给他加饭 不好的解决方式 狗狗感觉一千年没吃饭了,狼吞虎咽起来,最后饭只剩下最后一点点,吃饭线程中使用while循环判断是否是1,如果是1那么就一直循环,知道加饭又重新回到了起点,这虽然是狗狗…

GEE代码实例教程详解:湖泊面积分析

GEE代码实例教程详解:湖泊面积分析 完整代码 // 定义研究区域的坐标点 var coordinates [[42.000552219688586, 38.18969302118053],[43.868228000938586, 38.18969302118053],[43.868228000938586, 39.209978258633186],[42.000552219688586, 39.20997825863318…

C++ --> 类和对象(一)

欢迎来到我的Blog,点击关注哦💕 前言 前面讲到了C的入门需要学习的知识,是为了后面更好的学习。学习是不断深入的,内容是不断复杂的。笃定信心。 一、面向对象编程(OOP)和面向过程编程(POP)的认识 面向过程编程(Proc…

力扣-贪心算法4

406.根据身高重建队列 406. 根据身高重建队列 题目 假设有打乱顺序的一群人站成一个队列,数组 people 表示队列中一些人的属性(不一定按顺序)。每个 people[i] [hi, ki] 表示第 i 个人的身高为 hi ,前面 正好 有 ki 个身高大于或…

MyBatis的简介与使用

Mybatis JDBC操作数据库的缺点 存在大量的冗余代码。手工创建 Connection、Statement 等,效率低下。手工将结果集封装成实体对象。查询效率低,没有对数据访问进行优化。 Mybatis框架 简介 MyBatis 本是 apache 的一个开源项目 iBatis, 2010年这个项目由…

imx6ull/linux应用编程学习(14) MQTT基础知识

什么是mqtt? 与HTTP 协议一样, MQTT 协议也是应用层协议,工作在 TCP/IP 四层模型中的最上层(应用层),构建于 TCP/IP协议上。 MQTT 最大优点在于,可以以极少的代码和有限的带宽,为连接…

网络资源模板--Android Studio 外卖点餐App

目录 一、项目演示 二、项目测试环境 三、项目详情 四、完整的项目源码 原创外卖点餐:基于Android studio 实现外卖(点)订餐系统 非原创奶茶点餐:网络资源模板--基于 Android Studio 实现的奶茶点餐App报告 一、项目演示 网络资源模板--基于Android …

在AvaotaA1全志T527开发板上使用AvaotaOS 部署 Docker 服务

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。 准备…

dolphinscheduler-springboot集成

springboot集成dolphinscheduler 说明 为了避免对DolphinScheduler产生过度依赖,实践中通常不会全面采用其内置的所有任务节点类型。相反,会选择性地利用DolphinScheduler的HTTP任务节点功能,以此作为工作流执行管理的桥梁,对接…

信息技术课上的纪律秘诀:营造有序学习环境

信息技术课是学生们探索数字世界的乐园,但同时也是课堂纪律管理的挑战场。电脑、网络、游戏等元素可能分散学生的注意力,影响学习效果。本文将分享一些有效的策略,帮助教师在信息技术课上维持课堂纪律,确保教学活动顺利进行。 制…

几何建模基础-样条曲线和样条曲面介绍

1.概念介绍 1.1 样条曲线的来源 样条的英语单词spline来源于可变形的样条工具,那是一种在造船和工程制图时用来画出光滑形状的工具:富有弹性的均匀细木条/金属条/有机玻璃条,它围绕着按指定位置放置的重物或者压铁做弹性弯曲,以…

JS实现一个简单的模糊匹配

1、示例数据如下: // 示例数据 const data [ { name: ‘Alice’, age: 25 }, { name: ‘Bob’, age: 30 }, { name: ‘Charlie’, age: 35 }, { name: ‘David’, age: 40 }, { name: ‘Eve’, age: 45 } ]; 2、模糊匹配函数 // 模糊匹配函数 function fuzzyMatch(…

基于LangChain的RAG开发教程(二)

v1.0官方文档:https://python.langchain.com/v0.1/docs/get_started/introduction/ 最新文档:https://python.langchain.com/v0.2/docs/introduction/ LangChain是一个能够利用大语言模型(LLM,Large Language Model)能…

植物大战僵尸融合嫁接版 MAC 版本下载安装详细教程

继植物大战僵尸杂交版火了之后,PVZ改版可谓是百花齐放,最近又有一个非常好玩的模式被开发出来了,他们称为《植物大战僵尸融合嫁接版》 该版本并没有对植物卡牌做改动,而是可以将任意两种植物叠放到一起进行融合,产生新…

思路打开!腾讯造了10亿个角色,驱动数据合成!7B模型效果打爆了

世界由形形色色的角色构成,每个角色都拥有独特的知识、经验、兴趣、个性和职业,他们共同制造了丰富多元的知识与文化。 所谓术业有专攻,比如AI科学家专注于构建LLMs,医务工作者们共建庞大的医学知识库,数学家们则偏爱数学公式与定…