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


    前言

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

    1 导入库

    !pip install geemap #安装geemap库
    import ee
    import geemap
    
    geemap.show_youtube('0CZ7Aj8hCyo')
    
    • 1
    • 2
    • 3
    • 4
    • 5

    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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

    显示结果,分辨率很是很高的。
    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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46

    显示结果
    image.png

    后记

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

  • 相关阅读:
    【阅读笔记】后真相时代的竞争性真相
    【NI-DAQmx入门】校准
    【iOS】-- 内存五大分区
    ef core code first pgsql
    奇偶链表问题
    CHATGPT----自然辩证法分析
    Ubuntu20.04 /dev/nvme0n1p5: clean,nnnnn/mmmmmfiles,nnnnnnn/mmmmmmblocks 解决过程
    flink1.13.2 Streaming File Sink产生大量orc小文件的问题解决方案
    Java版分布式微服务云开发架构 Spring Cloud+Spring Boot+Mybatis 电子招标采购系统功能清单
    【新学期新FLAG】一名计科新生の大一学习计划
  • 原文地址:https://blog.csdn.net/qq_41951977/article/details/134512410