geemap学习笔记011:可视化遥感影像随时间的变化

前言

本节主要是介绍 .ts_inspector 工具,它是可以可视化遥感影像随时间的变化,与先前文章中介绍的.split_map差别在于,它可以加载时间序列数据。

1 导入库

!pip install geemap #安装geemap库
import ee
import geemap

geemap.show_youtube('0CZ7Aj8hCyo')

2 创建NAIP数据集时间变化

国家农业图像计划 (NAIP) 为美国大陆农业生长季节的航空图像,其图像是在一米地面采样距离 (GSD) 处采集的,其水平精度与图像检查过程中使用的可照片识别的地面控制点的六米范围内相匹配,旧的图像是使用3个波段(红、绿和蓝:RGB)收集的,较新的图像通常是使用附加的近红外波段 (RGBN) 收集的。

naip_ts = geemap.naip_timeseries(start_year=2009, end_year=2018) #创建National Agriculture Imagery Program(NAIP)数据集时间序列

layer_names = ['NAIP ' + str(year) for year in range(2009, 2019)] #创建要在下拉列表下显示的图层名称列表。
print(layer_names)

naip_vis = {'bands': ['N', 'R', 'G']} #设置可视化参数。

Map = geemap.Map() #创建split-panel地图以可视化NAIP图像
Map.ts_inspector(
    left_ts=naip_ts,
    right_ts=naip_ts,
    left_names=layer_names,
    right_names=layer_names,
    left_vis=naip_vis,
    right_vis=naip_vis,
)
Map

显示结果,分辨率很是很高的。
image.png

3 创建年度合成的Landsat影像

region = Map.draw_last_feature #可以手动绘制ROI

if region is not None: #如果ROI为空,则采用下面的Polygon
    roi = region.geometry()
else:
    roi = ee.Geometry.Polygon(
        [
            [
                [-115.897448, 35.640766],
                [-115.897448, 36.603608],
                [-113.784915, 36.603608],
                [-113.784915, 35.640766],
                [-115.897448, 35.640766],
            ]
        ],
        None,
        False,
    )

print(roi.getInfo()) #打印ROI信息

landsat_ts = geemap.landsat_timeseries(
    roi=roi, start_year=1984, end_year=2019, start_date='01-01', end_date='12-31'
) #该函数是用于创建landsat序列数据

layer_names = ['Landsat ' + str(year) for year in range(1984, 2020)]
print(layer_names)

landsat_vis = {
    'min': 0,
    'max': 0.3,
    'gamma': [1, 1, 1],
    'bands': ['NIR', 'Red', 'Green'],
} #参数设置

Map = geemap.Map() #显示roi区域不同年份的split-panel结果
Map.ts_inspector(
    left_ts=landsat_ts,
    right_ts=landsat_ts,
    left_names=layer_names,
    right_names=layer_names,
    left_vis=landsat_vis,
    right_vis=landsat_vis,
)
Map.centerObject(roi, zoom=8)
Map

显示结果
image.png

后记

大家如果有问题需要交流或者有项目需要合作,可以加Q Q :504156006详聊,加好友请留言“CSDN”,谢谢。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

了解一下公网IP和域名的区别与联系

​  公网IP和域名是互联网中两个重要的概念,它们在网络通信和网站访问中起着不同的作用。 我们来了解一下公网IP。公网IP是指在全球范围内唯一的IP地址,用于标识互联网上的设备。每个设备连接到互联网时都会被分配一个公网IP地址,这个地址可…

Python批量备份交换机配置+自动巡检

自动巡检功能考虑到不同设备回显有所不同,需要大量正则匹配,暂时没时间搞这些,所以索性将命令回显全部显示,没做进一步的回显提取。 以下是程序运行示例:#自动备份配置: 备份完成后,将配置保存于…

UVM项目笔记——通过寄存器模型实现AHB接口的寄存器读写(内含源码)

目录 1.前言 2.DRIVER实现 2.1 AHB二级流水时序 2.2 “队列错位法”实现driver 2.3 driver代码 2.4 仿真log与波形 2.5 多级流水拓展方法 1.前言 UVM driver在接口协议的实现中起着非常重要的作用,因为它一端处理基于类的事务级sequence,另一端处…

如何用 GPTs 帮你写科研项目申请书?

(注:本文为小报童精选文章,已订阅小报童或加入知识星球「玉树芝兰」用户请勿重复付费) 需求 学生们往往会觉得,写开题报告是个苦差事。但他们或许不知道,老师们写起科研项目申请书,压力远比他们…

Linux常用命令——bmodinfo命令

在线Linux命令查询工具 bmodinfo 显示给定模块的详细信息 补充说明 bmodinfo命令用于显示给定模块的详细信息。 语法 bmodinfo(选项)(参数)选项 -a:显示模块作者; -d:显示模块的描述信息; -l:显示模块的许可信息…

第三方模块远程注入到软件中引发软件异常的若干实战案例分享

目录 1、概述 2、老版本的输入法导致软件CPU频繁跳高(导致软件出现卡顿)的问题 3、QQ拼音输入法注入到安装包进程中,导致安装包主线程卡死问题 3.1、多线程死锁分析 3.2、进一步研究 4、安全软件注入到软件中,注入模块发生了…

Xilinx Zynq-7000系列FPGA任意尺寸图像缩放,提供两套工程源码和技术支持

目录 1、前言免责声明 2、相关方案推荐FPGA图像处理方案FPGA图像缩放方案 3、设计思路详解HLS 图像缩放介绍 4、工程代码1:图像缩放 HDMI 输出PL 端 FPGA 逻辑设计PS 端 SDK 软件设计 5、工程代码2:图像缩放 LCD 输出PL 端 FPGA 逻辑设计PS 端 SDK 软件设…

uni-app - 日期 · 时间选择器

目录 1.基本介绍 2.案例介绍 ①注意事项: ②效果展示 3.代码展示 ①view部分 ②js部分 ③css样式 1.基本介绍 从底部弹起的滚动选择器。支持五种选择器,通过mode来区分,分别是普通选择器,多列选择器,时间选择器&a…

visionOS空间计算实战开发教程Day 4 初识ImmersiveSpace

细心的读者会发现在在​​Day1​​​和​​Day2​​​的示例中我们使用的都是​​WindowGroup​​。 main struct visionOSDemoApp: App {var body: some Scene {WindowGroup {ContentView()}} } 本节我们来认识在visionOS开发中会经常用到的另一个概念​​ImmersiveSpace​​…

如何看待Unity新收费模式?

Unity新收费模式的变化主要在于将收费重心从功能分级收费转变为资源使用量收费,这个改变已经引起了一定的争议和反响。以下是我个人的看法: 优点: 更公平的收费方式:新的收费模式将更加公平,用户只需按照实际使用的数…

css取消移动端长按元素背景色

在开发微信小程序的时候,发现有的元素长按之后,出现了讨厌人的背景色,这就很奇怪,就想把它去掉,所以这里教一下方法: 在所在元素添加css样式: // 取消长按的背景色-webkit-tap-highlight-color:…

【Linux】Linux中的基本概念

Linux中的基本概念 1. 路径分隔符/2. 当前目录 .3. 返回上级目录 . .目录结构:多叉树 4. 路径5. 路径 { 绝对路径 相对路径 }6. * 通配符 指定路径下的所有文件7. 同级目录下,不允许存在同名文件,或者同名目录8. 命令的本质就是可执行文件9…

TypeError: expected np.ndarray (got Tensor)解决办法

文章目录 一、错误展示二、错误分析三、解决办法四、其余解决办法总结 一、错误展示 二、错误分析 这个错误表示正在尝试将一个PyTorch的Tensor对象作为numpy的ndarray对象来使用。我们需要使用numpy的ndarray而不是PyTorch的Tensor。 三、解决办法 在我的程序中去掉这一行代…

维格表项目进度同步到钉钉群

企业越来越依赖项目管理工具,以确保项目按时完成、成本控制得当、并实现预期的业务目标。但随着项目变得更加复杂,项目经理和团队需要更高效的方法来跟踪和传达项目进度,以确保团队内部保持一致的理解。 传统的项目管理方法,可能缺…

增速大幅下滑?基础L2博弈成本

在高阶智驾(从ALC到NOA)的光环之下,传统入门级基础L2级辅助驾驶赛道也在发生一些微妙的变化。 高工智能汽车研究院监测数据显示,2023年1-9月,基础L2在中国市场(不含进出口)乘用车前装标配交付45…

为了摆脱 Android ,亚马逊开发基于Linux的操作系统

导读亚马逊一直在开发一种新的操作系统 —— 内部代号为 “Vega”,以便在 Fire TV、智能显示器和其他联网设备上取代 Android 系统。 亚马逊一直在开发一种新的操作系统 —— 内部代号为 “Vega”,以便在 Fire TV、智能显示器和其他联网设备上取代 Andr…

Spring Framework IoC依赖注入-按Bean类型注入

Spring Framework 作为一个领先的企业级开发框架,以其强大的依赖注入(Dependency Injection,DI)机制而闻名。DI使得开发者可以更加灵活地管理对象之间的关系,而不必过多关注对象的创建和组装。在Spring Framework中&am…

bitmap基础介绍+holo实现离线UV计算

bitmap 基础介绍bitmaping 数据结构bitmap计算算子集成二阶段分布式计算:RoaringBitmap构造方案分桶方案建序方案 holo官网 离线UV计算创建用户映射表创建聚合结果表更新用户映射表和聚合结果表更新聚合结果表UV、PV查询 基础介绍 RoaringBitmap主要为了解决UV指标…

力扣 2. 两数相加

Problem: 2. 两数相加 思路与算法 Code /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}* ListNode(int val) { this.val val; }* ListNode(int val, ListNode next) { this.val val; this…

实验(四):指令部件实验

一、实验内容与目的 实验要求: 利用CP226实验仪上的小键盘将程序输入主存储器EM,通过指令的执行实现微程序控制器的程序控制。 实验目的: 1.掌握模型机的操作码测试过程; 2.掌握模型机微程序控制器的基本结构以及程序控制的基本原…