Python-GEE遥感云大数据分析、管理与可视化
Python-GEE遥感云大数据分析、管理与可视化
近年来遥感技术得到了突飞猛进的发展,航天、航空、临近空间等多遥感平台不断增加,数据的空间、时间、光谱分辨率不断提高,数据量猛增,遥感数据已经越来越具有大数据特征。遥感大数据的出现为相关研究提供了前所未有的机遇,同时如何处理好这些数据也提出了巨大的挑战。传统的工作站和服务器已经无法胜任大区域、多尺度海量遥感数据处理的需要。
Google Earth Engine是谷歌公司提供的全球尺度地球科学数据(尤其是卫星遥感数据)在线可视化计算和分析云平台。该平台能够存取和同步遥感领域目前常用的MODIS、Landsat和Sentinel等卫星图像和NCEP等气象再分析数据集,同时依托全球上百万台超级服务器,提供足够的运算能力对这些数据进行处理。截止目前,GEE上包含的数据集超过200个公共的数据集,每天新增数据量超过 4000幅影像,容量超过50PB。相比于ENVI等传统的处理影像工具,Google Earth Engine在处理海量遥感数据方面具有不可比拟的优势,一方面GEE平台提供了丰富的计算资源,另一方面其巨大的云存储节省了科研人员大量的数据下载和预处理的时间。可以说,GEE在遥感数据的计算和分析可视化方面代表世界该领域最前沿水平,是遥感领域的一次革命。
目前,GEE以其强大的功能受到了国外越来越多的科技工作者的重视和应用,然而在国内应用还十分有限。GEE提供了基于Javascript和Python语言的API,前者是官方主推平台的编程语言,易于上手但在输入输出和绘图可视化等方面存在不足,而Python作为目前最受欢迎的编程语言,能够弥补Javascript在这方面存在的不足,且更方便批处理和机器学习。
第一章、理论基础
Earth Engine平台及应用、主要数据资源介绍
Earth Engine遥感云重要概念、数据类型与对象等
JavaScript与Python遥感云编程比较与选择
Python基础(语法、数据类型与程序控制结构、函数及类与对象等)
常用Python软件包((pandas、numpy、os等)介绍及基本功能演示(Excel/csv数据文件读取与数据处理、目录操作等)
6、JavaScript和Python遥感云API差异,学习方法及资源推荐
第二章、开发环境搭建
本地端与云端Python遥感云开发环境介绍
本地端开发环境搭建
Anaconda安装,pip/conda软件包安装方法和虚拟环境创建等;
earthengine-api、geemap等必备软件包安装;
遥感云本地端授权管理;
Jupyter Notebook/Visual Studio Code安装及运行调试。
3、云端Colab开发环境搭建
4、geemap介绍及常用功能演示
第三章、遥感大数据处理基础
遥感云平台影像数据分析处理流程介绍:介绍遥感云平台影像数据分析处理流程的基本框架,包括数据获取、数据预处理、算法开发、可视化等。
要素和影像等对象显示和属性字段探索:介绍如何在遥感云平台上显示和探索要素和影像等对象的属性字段,包括如何选择要素和影像对象、查看属性信息、筛选数据等。
影像/要素集的时间、空间和属性过滤方法:介绍如何对影像/要素集进行时间、空间和属性过滤,包括如何选择时间段、地理区域和属性条件,以实现更精确的数据分析。
波段运算、条件运算、植被指数计算、裁剪和镶嵌等:介绍如何在遥感云平台上进行波段运算、条件运算、植被指数计算、裁剪和镶嵌等操作,以实现更深入的数据分析。
Landsat/Sentinel-2等常用光学影像去云:介绍如何在遥感云平台上使用不同方法去除Landsat/Sentinel-2等常用光学影像中的云,以提高影像数据质量。
影像与要素集的迭代循环:介绍如何使用遥感云平台的迭代循环功能对影像和要素集进行批量处理,以提高数据分析效率。
影像数据整合(Reducer):介绍如何使用遥感云平台的Reducer功能将多个影像数据整合成一个数据集,以方便后续数据分析。
邻域分析与空间统计:介绍如何在遥感云平台上进行邻域分析和空间统计,以获取更深入的空间信息。
常见错误与代码优化:介绍遥感云平台数据分析过程中常见的错误和如何进行代码优化,以提高数据分析效率和精度。
10、Python遥感云数据分析专属包构建:介绍如何使用Python在遥感云平台上构建数据分析专属包,以方便多次使用和分享分析代码。
第四章、典型案例操作实践
11、机器学习分类算法案例:本案例联合Landsat等长时间序列影像和机器学习算法展示国家尺度的基本遥感分类过程。具体内容包括研究区影像统计、空间分层随机抽样、样本随机切分、时间序列影像预处理和合成、机器学习算法应用、分类后处理和精度评估等方面。
12、决策树森林分类算法案例:本案例联合L波段雷达和Landsat光学时间序列影像,使用决策树分类算法提取指定地区2007-2020年度森林分布图,并与JAXA年度森林产品进行空间比较。案例涉及多源数据联合使用、决策树分类算法构建、阈值动态优化、分类结果空间分析等方面。
13、洪涝灾害监测案例:本案例基于Sentinel-1 C波段雷达等影像,对省级尺度的特大暴雨灾害进行监测。案例内容包括Sentinel-1 C影像处理、多种水体识别算法构建、影像差异分析以及结果可视化等方面。。
14、干旱遥感监测案例:本案例使用40年历史的卫星遥感降雨数据产品如CHIRPS来监测省级尺度的特大干旱情况。案例内容包括气象数据基本处理、年和月尺度数据整合、长期平均值LPA/偏差计算,以及数据结果可视化等方面。
15、物候特征分析案例:本案例基于Landsat和MODIS等时间序列影像,通过植被指数变化分析典型地表植被多年的物候差异(样点尺度)和大尺度(如中国)的物候空间变化特征。案例内容包括时间序列影像合成、影像平滑(Smoothing)与间隙填充(Gap-filling)、结果可视化等方面。
16、森林植被健康状态监测案例:本案例利用20年的MODIS植被指数,对选定区域的森林进行长期监测,并分析森林植被的绿化或褐变情况。涉及影像的连接和合成、趋势分析、空间统计以及可视化等方法。
17、生态环境质量动态监测案例:该案例使用RSEI遥感生态指数和Landsat系列影像,对选定城市的生态状况进行快速监测。主要涉及的技术包括植被指数的计算、地表温度的提取、数据的归一化、主成分PCA分析、RSEI生态指数的构建以及结果的可视化等。
第五章、输入输出及数据资产高效管理
本地数据与云端交互:介绍如何将本地端csv、kml、矢量和栅格数据与云端数据相互转换,并讲解数据导出的方法。
服务器端数据批量下载:包括直接本地下载、影像集批量下载,以及如何快速下载大尺度和长时间序列数据产品,例如全球森林产品和20年的MODIS数据产品等。。
本地端数据上传与属性设置:包括earthengine命令使用,介绍如何上传少量本地端矢量与栅格数据并设置属性(小文件),以及如何批量上传数据并自动设置属性,还将介绍如何使用快速上传技巧上传超大影像文件,例如国产高分影像。
4、个人数据资产管理:介绍如何使用Python和earthengine命令行来管理个人数据资产,包括创建、删除、移动、重命名等操作,同时还会讲解如何批量取消上传/下载任务。
第六章、云端数据论文出版级可视化
Python可视化及主要软件包简介:介绍matplotlib和seaborn可视化程序包,讲解基本图形概念、图形构成以及快速绘制常用图形等内容。
研究区地形及样地分布图绘制:结合本地或云端矢量文件、云端地形数据等,绘制研究区示意图。涉及绘图流程、中文显示、配色美化等内容,还会介绍cpt-city精美调色板palette在线下载与本地端应用等。
研究区域影像覆盖统计和绘图:对指定区域的Landsat和Sentinel等系列影像的覆盖数量、无云影像覆盖情况进行统计,绘制区域影像统计图或像元级无云影像覆盖专题图。
样本光谱特征与物候特征等分析绘图:快速绘制不同类型样地的光谱和物候特征,动态下载并整合样点过去30年缩略图(thumbnails)和植被指数时间序列等。
分类结果专题图绘制及时空动态延时摄影Timelapse制作:单幅或多幅分类专题图绘制及配色美化,制作土地利用变化清晰的Timelapse,还会介绍动画文字添加等内容。
6、分类结果面积统计与绘图:基于云端的分类结果和矢量边界文件,统计不同区域不同地类面积,提取统计结果,以不同图形展示统计面积;制作土地利用变化统计绘图等。







点击查看原文
相关文章:

Python-GEE遥感云大数据分析、管理与可视化
Python-GEE遥感云大数据分析、管理与可视化近年来遥感技术得到了突飞猛进的发展,航天、航空、临近空间等多遥感平台不断增加,数据的空间、时间、光谱分辨率不断提高,数据量猛增,遥感数据已经越来越具有大数据特征。遥感大数据的出…...

信息学奥赛一本通 1375:骑马修栅栏(fence) | 洛谷 P2731 [USACO3.3]骑马修栅栏 Riding the Fences
【题目链接】 ybt 1375:骑马修栅栏(fence) 洛谷 P2731 [USACO3.3]骑马修栅栏 Riding the Fences 【题目考点】 1. 图论:欧拉回路 欧拉回路存在的条件:图中所有顶点的度都是偶数欧拉路径存在的条件:图中只有两个度为奇数的顶点…...

Spring Boot 应用的打包和发布
1. 创建项目(example-fast) 基于 Spring Boot 创建一个 WEB 项目 example-fast。 2. 编译打包 2.1 采用 IDEA 集成的 Maven 环境来对 Spring Boot 项目编译打包,可谓是超级 easy 2.2 mvn 命令打包 # mvn clean 清理编译 # install 打包 #…...

linux:iptables (3) 命令行操练(一)
目录 1.命令行手册查缺补漏 2.开始练习,从最陌生的参数练习开启 2.1 --list-rules -S :打印链或所有链中的规则 2.2 --zero -Z 链或所有链中的零计数器 2.3 --policy -P 修改默认链的默认规则 2.4 --new -N 接下来练习添加和删除自定义链 1.命令行手册查缺补…...

synchronized(this) 与synchronized(class) 有啥区别
前言 synchronized(this) 与 synchronized(class) 相同处:均对代码加锁,实现互斥性。synchronized(this) 与 synchronized(class) 区别:作用域不同。 synchronized (this) synchronized(this)使用的是对象锁。this为关键词,表示…...

BOSS直拒、失联招聘,消失的“金三银四”,失业的测试人出路在哪里?
裁员潮涌,经济严冬。最近很多测试人过得并不好,行业缩水对测试岗位影响很直接干脆,究其原因还是测试门槛在IT行业较低,同质化测试人员比较多。但实际上成为一位好测试却有着较高的门槛,一名优秀的测试应当对产品的深层…...

华为OD机试【密室逃生游戏】
密室逃生游戏 题目 小强增在参加《密室逃生》游戏,当前关卡要求找到符合给定 密码 K(升序的不重复小写字母组 成) 的箱子, 并给出箱子编号,箱子编号为 1~N 。 每个箱子中都有一个 字符串 s ,字符串由大写字…...

【Python学习笔记(六)】json解析模块的使用
json解析模块的使用 前言 json 是一种轻量级的数据交换格式,通过对象和数组的组合来表示数据。在 Python3 中可以使用 json 模块来对 json 数据进行编解码。 json 模块 是 Python 标准库模块,无需手动安装,可以直接导入 import json # 导入…...

《Spring系列》第3章 基于注解管理Bean
基于注解方式管理Bean 1.通过注解管理Bean 1) 基础注解 Component Service Controller Repository 2) 基于XML的注解扫描 a> 引入依赖 spring-aop-5.1.5.RELEASE.jarb> 开启组件扫描 最简单的开启注解 <context:component-scan base-package"com.jianan&q…...

【Redis】十大数据类型(下篇)
文章目录redis位图(bitmap) --- 底子还是string基本命令图示setbit key offset value setbit 键 偏移位 只能零或者1getbit key offset 查看获取字符串长度 strlen统计key中包含1的个数 bitcount keybitop 统计两个比特key是否都为1技术落地:打卡签到,频…...

【第十一届“泰迪杯”数据挖掘挑战赛】B题产品订单的数据分析与需求预测“解题思路“”以及“代码分享”
【第十一届泰迪杯B题产品订单的数据分析与需求预测产品订单的数据分析与需求预测 】第一大问代码分享(后续更新LSTMinformer多元预测多变量模型) PS: 代码全写有注释,通俗易懂,包看懂!!!&…...

Python入门到高级【第一章】
预计更新第一章. Python 简介 Python 简介和历史Python 特点和优势安装 Python 第二章. 变量和数据类型 变量和标识符基本数据类型:数字、字符串、布尔值等字符串操作列表、元组和字典 第三章. 控制语句和函数 分支结构:if/else 语句循环结构&#…...

【泰凌微TLSR8258 zigbee】OTA升级操作方法
目录 程序启动模式多地址启动模式Bootloader 启动模式多地址启动模式 Flash 分布Bootloader 启动模式Flash分布模式OTA升级OTA初始化OTA ServerOTA ClientOTA升级固件生成程序启动模式 在介绍OTA升级操作方法前,我们先介绍一下程序的启动模式,以及不同启动模式的优缺点。 多…...

网络基础设施监控
在过去的几十年里,网络基础设施在规模和功能方面都变得复杂起来。不断增长的业务需求和不断增长的技术能力推动了这种快速增长,监控网络基础设施以确保其最佳性能和最大效率已成为任何希望成为行业领跑者的组织不可或缺的优先事项。 什么是网络基础设施…...

OPNET Modeler 例程——创建一个包交换网络
文章目录一、例程简介二、创建新的包格式三、创建新的链路模型四、创建中心交换节点模型五、创建中心交换节点的进程模型六、创建周边节点模型七、创建周边节点进程模块八、创建网络模型九、收集统计量十、配置并仿真总结一、例程简介 本例程将仿真一个简单的包交换网络&#…...

JSON 基础结构
什么是JSON JSON,说白了就是JavaScript用来处理数据的一种格式,这种格式非常简单易用。 JSON,大部分都是用来处理JavaScript和web服务器端之间的数据交换,把后台web服务器的数据传递到前台,然后使用JavaScript进行处…...

雷达基础知识
雷达频率划分 以下是按照频率和波长划分雷达频段的表格: 波段名称频率范围(GHz)波长范围(cm)应用领域VHF0.03 - 0.3100 - 10气象雷达、空管雷达、航空雷达UHF0.3 - 3100 - 10航空雷达、海上雷达、地面雷达、火控雷达…...

【二阶锥规划】考虑气电联合需求响应的气电综合能源配网系统协调优化运行【IEEE33节点】(Matlab代码实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...

qt 编译器 调试器
电脑版本:win10 64位 qt版本:based on Qt 5.14.0(msvc 2017, 32位) Qt Creator 4.11.0 qt安装包:qt-opensource-windows-x86-5.9.9.exe 安装过程一路next,安装完成后,默认使用的…...

低代码平台助力AIGC:让人工智能技术更加普及和高效
今年人工智能的风是吹了一波又一波,从ChatGPT到文心一言,短短四个多月的时间,GPT完成了从3.0、3.5到4.0的推新发布,一步步刷新了民众对于目前人工智能技术发展的认知底线,让人们直观地感受到了人工智能技术的蓬勃发展。…...

Qt中Model/View结构
Qt中Model/View结构 Model/View框架的核心思想是模型(数据)与视图(显示)相分离,模型对外提供标准接口存取数据,不关心数据如何显示,视图自定义数据的显示方式,不关心数据如何组织存…...

中纬ZOOM35全站仪参数和使用说明书
免棱镜测程采用全新EDM,明显提升测距功能。极细可见激光免棱镜测程最高可达1000m,同等测程下无棱镜精度较高。 绝对编码度盘中纬静态条码式码盘测角,开机无需初始化,利用同样技术的徕卡全站仪,测角精度可高达0.5&#…...

【Note5】网络,并发/IO,内存,linux/vi命令,正则,Hash,iNode,文件查找与读取,linux启动/构建
文章目录1.局域网:CSMA/CD2.互联网:ARP,DHCP,NAT3.TCP协议:telnet,tcpdump,syn/accept队列4.HTTPS协议:摘要(sha、md5、crc)。win对文件进行MD5校验用自带的c…...

华为MRS_HADOOP集群 beeline使用操作
背景 由于项目测试需要,计划在华为hadoop集群hive上创建大量表,并且每表植入10w数据,之前分享过如何快速构造hive大表,感兴趣的可以去找一下。本次是想要快速构造多表并载入一些数据。 因为之前同事在构造相关测试数据时由于创建…...

PCB模块化设计10——PCI-E高速PCB布局布线设计规范
目录PCB模块化设计10——PCI-E高速PCB布局布线设计规范1、PCI-E管脚定义2、PCI-E叠层和参考平面3、 PCB设计指南1、阻抗要求2、线宽线距3、长度匹配4、走线弯曲角度5、测试点、过孔、焊盘6、AC去耦电容放置方法7、金手指和连接器的注意事项8、其他的注意事项PCB模块化设计10——…...

Java简介
Java简介 Java是一种面向对象的编程语言,由Sun Microsystems于1995年发布。Java设计的初衷是为了开发可移植、高性能的应用程序。Java代码可以在不同的操作系统上运行,包括Windows、Linux、Mac等。 Java是一种广泛使用的编程语言,用于开发各…...

python框架有哪些,常用的python框架代码
Python的应用已经相当广泛了,可以做很多事情,而 Python本身就是一个应用程序,我们也可以说 Python是一个高级语言。由于 Python有很多包,所以我们不能把所有的 Python包都了解一下,也不能把所有的包都读一遍࿰…...

jsp设计简单的购物车应用案例
代码解释 <%request.setCharacterEncoding("UTF-8");if (request.getParameter("c1")!null)session.setAttribute("s1",request.getParameter("c1"));if (request.getParameter("c2")!null)session.setAttribute("…...

VueX是什么?好处?何时使用?
VueX相关1、VueX是什么?2、使用VueX统一管理状态的好处3、什么样的数据适合存储到Vuex中?1、VueX是什么? VueX是实现组件全局状态(数据)管理的一种机制,可以方便的实现组件之间数据的共享。 如果没有VueX…...

第2章 封装组件初级篇(上)
1.环境搭建,在 vite 脚手架基础上集成 typescript 和 element-plus https://cn.vitejs.dev/guide/ 以下是开发过程中过使用到的包和版本号:package.json {"name": "m-components","version": "0.0.0","…...