GEE遥感云大数据林业应用典型案例实践及GPT模型应用

 近年来遥感技术得到了突飞猛进的发展,航天、航空、临近空间等多遥感平台不断增加,数据的空间、时间、光谱分辨率不断提高,数据量猛增,遥感数据已经越来越具有大数据特征。遥感大数据的出现为相关研究提供了前所未有的机遇,同时如何处理好这些数据也提出了巨大的挑战。传统的工作站和服务器已经无法胜任大区域、多尺度海量遥感数据处理的需要。

 以Earth Engine(GEE)、PIE-Engine为代表全球尺度地球科学数据(尤其是卫星遥感数据)在线可视化计算和分析云平台应用越来越广泛。GEE平台存储和同步遥感领域目前常用的MODIS、Landsat和Sentinel等卫星影像、气候与天气、地球物理等方面的数据集超过80PB,同时依托全球上百万台超级服务器,提供足够的运算能力对这些数据进行处理。相比于ENVI等传统的遥感影像处理工具,GEE在处理海量遥感数据方面具有不可比拟的优势,一方面提供了丰富的计算资源,另一方面其巨大的云存储节省了科研人员大量的数据下载和预处理的时间,是遥感数据的计算和分析可视化方面代表世界该领域最前沿水平,是遥感领域的一次革命。

详情  靳老师18031211455

第一部分:基础实践篇

一、平台及基础开发平台

GEE平台及典型应用案例介绍;

GEE开发环境及常用数据资源介绍;

ChatGPT、文心一言等GPT模型介绍、帐号申请及林业遥感应用

JavaScript基础简介;

GEE遥感云重要概念与典型数据分析流程;

GEE基本对象介绍、矢量和栅格对象可视化、属性查看,API查询、基本调试等平台上手。

二、GEE基础知识与ChatGPT等AI模型交互

影像基本运算与操作:数学运算、关系/条件/布尔运算、形态滤波、纹理特征提取;影像掩码、裁剪和镶嵌等;

要素基本运算与操作:几何缓冲区,交、并、差运算等;

集合对象操作:循环迭代(map/iterate)、合并Merge、联合(Join);

数据整合Reduce:包括影像与影像集整合,影像合成、影像区域统计与域统计,分组整合与区邻域统计,影像集线性回归分析等;

机器学习算法:包括监督(随机森林、CART、SVM、决策树等)与非监督(wekaKMeans、wekaLVQ等)分类算法,分类精度评估等;

数据资产管理:包括本地端矢量和栅格数据上传、云端矢量和栅格数据下载、统计结果数据导出等;

绘图可视化:包括条形图、直方图、散点图、时间序列等图形绘制。

GPT模型交互:结合上述基本知识点和ChatGPT、文心一言等AI工具进行交互演示,包括辅助答疑、代码生成与修正等技巧。

第二部分:重要知识点微型案例串讲与GPT模型交互演示

1)Landsat、Sentinel-2影像批量自动去云和阴影

2)联合Landsat和Sentinel-2批量计算植被指数和年度合成

3)研究区可用影像数量和无云观测数量统计分析

4)中国区域年度NDVI植被数合成及年度最绿DOY时间查找

5)时间序列光学影像数据的移动窗口平滑

6)分层随机抽样及样本导出、样本本地评估与数据上传云端

7)中国近40年降雨量变化趋势分析

8)某区域年度森林损失统计分析(基于Hansen森林产品)

第三部分:典型案例综合演练

案例一:联合多源遥感数据的森林识别

详细介绍联合Landsat时间序列光学影像和PALSAR-2雷达数据,以及决策树算法实现森林等典型地类遥感分类的完整流程。专题涉及影像数据时空过滤、光学影像批量云掩膜与植被指数计算;分层随机抽样及样本导出、本地端质量控制与云端上传、样本随机切分、可分离性分析、分类算法构建及应用、分类后处理和精度评估,专题图绘制等。

案例二:长时间尺度的森林状态监测

利用长时间序列的MODIS或Landsat影像数据,对森林状态进行长期监测,分析森林植被绿化或褐变情况。专题涉及时间序列影像预处理、影像集连接、影像合成、变化趋势非参数检测、显著性检验和变化趋势量化与分级、空间统计和结果可视化和专题图绘制等。

案例三:森林砍伐与退化监测

联合Landsat系列影像,光谱分离模型和NDFI归一化差值分数指数实现森林的砍伐和退化监测。专题涉及影像预处理、混合像元分解、NDFI指数计算、函数封装、变化检测和强度分级,结果可视化、专题图绘制等。

案例四:森林火灾监测

详细介绍利用Landsat和Sentinel-2时间序列光学遥感影像,监测森林火灾损失情况,实现火灾强度分级。专题涉及影像过滤、Landsat和Sentinel-2光学影像除云等预处理、植被指数计算、影像合成、火灾区域识别和灾害强度分级,结果统计分析与可视化等。

案例五:长时间尺度的森林扰动监测

联合30年的Landsat等光学影像和经典LandTrendr算法实现森林扰动的监测。专题涉及长时间序列遥感影像预处理、植被指数批量计算、年度影像合成、数组影像概念和使用方法、LandTrendr算法原理及参数设置、森林扰动结果解译与空间统计分析、可视化及专题图绘制等。

案例六:森林关键生理参数(树高、生物量/碳储量)

反演联合GEDI激光雷达、Landsat/Sentinel-2多光谱光学影像、Sentinel-1 /PALSAR-2雷达影像等和机器学习算法反演森林的关键物理参数,如树高、生物量/碳储量。专题涉及GEDI激光雷达数据介绍、常见光学和雷达数据处理、机器学习算法应用、反演精度评估和变量重要性分析、结果可视化等内容。

图片

图片

图片

图片

关注科研技术平台获取更多详情

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

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

相关文章

docker安装php7.4安装(swoole)

容器 docker pull centos:centos7 docker run -dit -p9100:9100 --name“dade” --privilegedtrue centos:centos7 /usr/sbin/init 一、安装前库文件和工具准备 1、首先安装 EPEL 源 yum -y install epel-release2.安装 REMI 源 yum -y install http://rpms.remirepo.net/en…

SDWAN专线,解决银行网络搭建痛点

金融行业的不断发展和数字化转型,银行网络的搭建和管理面临着诸多挑战和痛点。SD-WAN(Software-Defined Wide Area Network,软件定义广域网)专线作为一种创新的网络解决方案,为银行解决了诸多网络搭建痛点,…

nextjs中怎么import svg,并且使用

在 Next.js 中,导入 SVG 并使用它的方法与常规 React 项目类似。以下是如何在 Next.js 中导入和使用 SVG 的步骤: 1、放置 SVG 文件 首先,将你的 SVG 文件放置在项目的某个目录中,例如 public/static/images。 2、导入 SVG 你…

Python数据处理实战(0)-常用功能以及操作

系列文章: 0、基本常用功能及其操作(本文操持更新) 1,20G文件,分类,放入不同文件,每个单独处理 2,数据的归类并处理 3,txt文件指定的数据处理并可视化作图 4&#xf…

【教程】uni-app iOS打包解决profile文件与私钥证书不匹配问题

摘要 当在uni-app中进行iOS打包时,有时会遇到profile文件与私钥证书不匹配的问题。本文将介绍如何解决这一问题,以及相关的技术细节和操作步骤。 引言 在uni-app开发过程中,iOS打包是一个常见的操作。然而,有时会出现profile文…

git的密钥管理

配置Git中的SSH密钥主要涉及到生成密钥对和将公钥添加到远程仓库(如GitHub)的过程。以下是一个详细的配置步骤: 生成SSH密钥对: 首先,确保你已经安装了Git。 打开终端或命令行界面。 输入命令 ssh-keygen -t ed25519 …

【vue.js】文档解读【day 2】 | 响应式基础

如果阅读有疑问的话,欢迎评论或私信!! 本人会很热心的阐述自己的想法!谢谢!!! 文章目录 响应式基础声明响应式状态(属性)响应式代理 vs 原始值声明方法深层响应性DOM 更新时机有状态方法 响应式…

NineData云原生智能数据管理平台新功能发布|2024年2月版

SQL开发:全功能支持百度云 GaiaDB 介绍:支持通过 SQL 开发所有能力管理 GaiaDB 实例。更多信息,请参见:真香!NineData SQL 开发全面适配 GaiaDB 场景:企业使用 GaiaDB 管理企业数据,需要一个一…

vue2+vite+@vitejs/plugin-vue2可以使用require引用图片资源

很多文章都说vite不能用require,vue3vite确实是这样的,但今天无意间发现vue2vite中是可以使用require引用资源的 vue3搭配vite一般使用的是vitejs/plugin-vue解析vue语法,而vue2使用的则是另一个插件vitejs/plugin-vue2插件解析vue语法 看下…

【Android】位置修改相关

获取位置服务总开关状态 //获取LOCATION_MODE值,但adb状态下无法获取 //0为关闭,1 gps、2 network、3 高精度等 int state Settings.Secure.getInt(mContext.getContentResolver(),Settings.Secure.LOCATION_MODE,Settings.Secure.LOCATION_MODE_HIGH_…

SpringBoot使用MongoTemplate详解

1.pom.xml引入Jar包 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-mongodb</artifactId> </dependency> 2.MongoDbHelper封装 /*** MongoDB Operation class* author HyoJung* date …

进程的奥德赛:并发世界中的核心概念与动态管理

✨✨ 欢迎大家来访Srlua的博文&#xff08;づ&#xffe3;3&#xffe3;&#xff09;づ╭❤&#xff5e;✨✨ &#x1f31f;&#x1f31f; 欢迎各位亲爱的读者&#xff0c;感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua&#xff0c;在这里我会分享我的知识和经验。&#x…

图神经网络实战(2)——图论基础

图神经网络实战&#xff08;2&#xff09;——图论基础 0. 前言1. 图属性1.1 有向图和无向图1.2 加权图和非加权图1.3 连通图和非连通图1.4 其它图类型 2. 图概念2.1 基本对象2.2 图的度量指标2.2 邻接矩阵表示法 3. 图算法3.1 广度优先搜索3.2 深度优先搜索 小结系列链接 0. 前…

《Effective C++》条款44

将与参数无关的代码抽离templates 存在这样一种类&#xff1a; template<class T,int n> class A { public:...int func(){...cout << n * n << endl;} }; 和这样的两种实例化对象&#xff1a; A<int, 5> a1; a1.func(); A<int, 10> a2; a2.…

力扣hot10---大根堆+双端队列

题目&#xff1a; 大根堆思路&#xff1a; 维护最大值&#xff0c;应该首先想到大根堆。C中对应着priority_queue&#xff0c;这里用pair<int,int>来记录对应的值和在nums中的索引。所以有priority_queue<pair<int,int>> q。在大根堆中&#xff0c;用q.top()…

使用axios结合access_token和refresh_token进行无感刷新

这里利用到的主要是 axios 请求失败的config配置可以记住本次请求的参数&#xff0c;以及利用拦截器&#xff0c;等待刷新完后通过 axios(config) 再次发起请求。 小技巧&#xff1a;将每次请求失败的config和promise的resolve参数存放到数组中&#xff0c;等待刷新token完成再…

【框架学习 | 第一篇】一篇文章读懂MyBatis

文章目录 1.Mybatis介绍1.1Mybatis历史1.2Mybatis特点1.3与其他持久化框架对比1.4对象关系映射——ORM 2.搭建Mybatis2.1引入依赖2.2创建核心配置文件2.3创建表、实体类、mapper接口2.4创建映射文件2.4.1映射文件命名位置规则2.4.2编写映射文件2.4.3修改核心配置文件中映射文件…

vue中v-if和v-for优先级

在Vue中&#xff0c;v-for的优先级高于v-if。这意味着在同一个元素上使用v-if和v-for时&#xff0c;v-for将首先被解析&#xff0c;然后是v-if。 下面是一个代码示例&#xff1a; <template><div><div v-for"item in items" v-if"item.isDispl…

python七大爬虫程序

一&#xff0c;爬取豆瓣电影信息 import random import urllib.request from bs4 import BeautifulSoup import codecs from time import sleepdef main(url, headers):# 发送请求page urllib.request.Request(url, headersheaders)page urllib.request.urlopen(page)conten…

priority_queue 优先级队列

从大到小排序&#xff1b; #include<cstdio> #include<queue> using namespace std; priority_queue <int> q; int main() {q.push(10),q.push(8),q.push(12),q.push(14),q.push(6);while(!q.empty())printf("%d ",q.top()),q.pop(); }输出 14 1…