GEE:遥感影像的合成(composite)与镶嵌(Mosaic)

2023-10-27 23:20

本文主要是介绍GEE:遥感影像的合成(composite)与镶嵌(Mosaic),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

  • 前言
  • 一、分析步骤
  • 二、python代码
    • 1、影像合成Composite
    • 2、影像镶嵌Mosaic
    • 3、进一步挖掘Mosaic的特性
  • 三、小结


为学须刚与恒,不刚则隋隳,不恒则退 。——宋.冯子咸


前言

GEE,如何实现遥感影像的合成(composite)与镶嵌(mosaic)?二者有何区别?

分析区域如下:
在这里插入图片描述


一、分析步骤

主要分析步骤:

加载影像集
MVC最大值合成
加载影像集
空间镶嵌Mosaic
进一步探索镶嵌Mosaic特征

二、python代码

1、影像合成Composite

python代码如下
注意:合成composite更主要体现的是同一区域多期影像的合成操作

Map = geemap.Map()
# 加载影像数据
naip2004_2012 = ee.ImageCollection('USDA/NAIP/DOQQ') \.filterBounds(ee.Geometry.Point(-71.09, 42.4)) \.filterDate('2004-07-01', '2012-12-31') \.select(['R', 'G', 'B'])
# 最大值合成
composite = naip2004_2012.max()
Map.addLayer(composite, {}, 'max value composite')
Map.setCenter(-71.09, 42.4, 14)
Map

结果如下:
在这里插入图片描述

2、影像镶嵌Mosaic

  • ee.ImageCollection.mosaic()
    在这里插入图片描述
    注意:镶嵌mosaic更主要体现的不同区域影像的合成操作
    需要同时拼接四个不同的 DOQQ,但位置不同

python代码如下

# 加载跨4幅影像的数据
naip2012 = ee.ImageCollection('USDA/NAIP/DOQQ') \.filterBounds(ee.Geometry.Rectangle([-71.18, 42.35, -71.09, 42.41])) \.filterDate('2012-01-01', '2012-12-31')
# 影像镶嵌mosaic
mosaic = naip2012.mosaic()
Map.addLayer(naip2012, {}, 'naip2012')
Map.setCenter(-71.12532, 42.3712, 12)

结果如下:
在这里插入图片描述

3、进一步挖掘Mosaic的特性

重点:mosaic()方法根据它们在集合中的顺序(最后在顶部)合成重叠图像。要控制镶嵌(或合成)中像素的来源,可使用图像掩膜mask。
例如,以下使用光谱阈值进行镶嵌新的图像数据

python代码如下:

# 加载影像,显示
naip = ee.Image('USDA/NAIP/DOQQ/m_4207148_nw_19_1_20120710')
Map.setCenter(-71.0915, 42.3443, 12)
Map.addLayer(naip, {}, 'naip')

在这里插入图片描述

# 生成NDVI、NDWI指数
ndvi = naip.normalizedDifference(['N', 'R']).rename('ndvi')
ndwi = naip.normalizedDifference(['G', 'N']).rename('ndwi')# 利用上述2个指数,采用不同阈值条件,探测区域裸地分布
# 裸地1,植被指数低于0.2,同时水体指数低于0.3的区域
bare1 = ndvi.lt(0.2).And(ndwi.lt(0.3))
# 裸地2,植被指数低于0.2,同时水体指数低于0.8的区域。可见其敏感性比上一阈值较低
bare2 = ndvi.lt(0.2).And(ndwi.lt(0.8))# 显示参数
vis_ndvi = {'min':-1, 'max':1, 'palette':['red', 'green']}
vis_ndwi = {'min':0.5, 'max':1, 'palette':['gray', 'blue']}# 加载显示
Map.addLayer(ndvi, vis_ndvi, 'ndvi')
Map.addLayer(ndwi, vis_ndwi, 'ndwi')
Map.addLayer(bare1, {}, 'bare1')
Map.addLayer(bare2, {}, 'bare2')

显示结果:
在这里插入图片描述

# 掩膜并镶嵌可视化影像,可以看到最后的图层位于最上层(这是Mosaic的特点)
mosaic = ee.ImageCollection([ndwi.updateMask(ndwi.gte(0.5)).visualize(**vis_ndwi), ndvi.updateMask(ndvi.gte(0.2)).visualize(**vis_ndvi),bare2.updateMask(bare2.And(bare1.Not())).visualize(**{'palette':['gray']}),bare1.updateMask(bare1).visualize(**{'palette':['white']})
]).mosaic()
Map.addLayer(mosaic, {}, 'visualization mosaic')

结果如下:
在这里插入图片描述



三、小结

  1. 分析了影像合成与影像镶嵌的两种不同影响合成方法,其中影像合成composite更多的表现在同一区域不同时间影像的组合,多使用的合成方法有最大化合成(MVC,max value composite)、中值合成(median)、均值合成(mean)等合成方法,在具体工作中可根据实际需要采用不同的合成方法;镶嵌(mosaic)更多的表现在不同区域上的多幅影像的合成。
  2. 镶嵌的特点是最后的图层位于最上层,这也是Mosaic的特点之一。

参考:
  • https://developers.google.com/earth-engine/apidocs/ee-image-visualize?hl=en
  • https://github.com/giswqs/earthengine-py-notebooks/blob/master/ImageCollection/mosaicking.ipynb
  • https://developers.google.com/earth-engine/guides/ic_composite_mosaic?hl=en

这篇关于GEE:遥感影像的合成(composite)与镶嵌(Mosaic)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/289092

相关文章

【详细介绍一下GEE】

GEE(Google Earth Engine)是一个强大的云计算平台,它允许用户处理和分析大规模的地球科学数据集,如卫星图像、气候模型输出等。以下是对GEE用法的详细介绍: 一、平台访问与账户设置 访问GEE平台: 用户可以通过访问Google Earth Engine的官方网站来开始使用GEE。 创建账户: 用户需要注册并登录Google账户,然后申请访问GEE平台。申请过程可能需要提

参会邀请 | 第二届机器视觉、图像处理与影像技术国际会议(MVIPIT 2024)

第二届机器视觉、图像处理与影像技术国际会议(MVIPIT 2024)将于2024年9月13日-15日在中国张家口召开。 MVIPIT 2024聚焦机器视觉、图像处理与影像技术,旨在为专家、学者和研究人员提供一个国际平台,分享研究成果,讨论问题和挑战,探索前沿技术。诚邀高校、科研院所、企业等有关方面的专家学者参加会议。 9月13日(周五):签到日 9月14日(周六):会议日 9月15日(周日

unity导入半透明webm + AE合成半透明视频

有些webm的文件导入unity后无法正常播报,踩坑好久才知道需要webm中的:VP8 标准 现在手上有几条mp4双通道的视频,当然unity中有插件是可以支持这种视频的,为了省事和代码洁癖,毅然决然要webm走到黑。 mp4导入AE合成半透明 打开 AE 软件,创建一个新的合成项目。在项目面板中,选择 “导入” 或直接将 MP4 视频文件拖放到项目面板中,导入视频素材。项目面板中,右击

三文带你轻松上手鸿蒙的AI语音03-文本合成声音

三文带你轻松上手鸿蒙的AI语音03-文本合成声音 前言 接上文 三文带你轻松上手鸿蒙的AI语音02-声音文件转文本 HarmonyOS NEXT 提供的AI 文本合并语音功能,可以将一段不超过10000字符的文本合成为语音并进行播报。 场景举例 手机在无网状态下,系统应用无障碍(屏幕朗读)接入文本转语音能力,为视障人士提供播报能力。类似微信读书,可以实现将文章内容通过语音朗读,可以

【在GEE中计算NDVI*2】

在Google Earth Engine (GEE) 中计算归一化植被指数(NDVI)是一个相对直接的过程,涉及到加载图像数据、定义NDVI的计算公式,并将该公式应用于图像或图像集合。以下是一个在GEE中计算NDVI的详细步骤和示例代码。 步骤 1: 初始化GEE并导入必要的库 通常,在GEE的Code Editor中,你不需要显式地导入库,因为ee对象已经为你准备好了。但是,如果你是在一个自

1.39TB高清卫星影像更新(WGS84坐标投影)

最近对WGS84版的高清卫星影像数据进行了一次更新,并基于更新区域生成了相应的接图表。 1.39TB高清卫星影像更新 本次数据更新了1576个离线包,共1.39TB大小,并全部生成了更新接图表。 更新接图表范围 更新接图表由每一个离线包文件的范围构成,放大地图可以查看接图表的编号。    接图表编号 我们打开瓦片编号并放到到第12级,可以发现接图表的编号与瓦片编号完全一

多行命令提示符中的命令合成一行

C:\Windows\System32\cmd & cd C:\Siemens\Teamcenter12\tc_menu & C:\Siemens\Teamcenter12\tc_menu\tcdb_config1.bat & C:\Users\Administrator\Desktop\ITK\TEST1\x64\Debug\TEST1.exe 用&分割 C:\Windows\System3

震惊,从仿真走向现实,3D Map最大提升超12,Cube R-CNN使用合成数据集迁移到真实数据集

震惊,从仿真走向现实,3D Map最大提升超12,Cube R-CNN使用合成数据集迁移到真实数据集 Abstract 由于摄像机视角多变和场景条件不可预测,在动态路边场景中从单目图像中准确检测三维物体仍然是一个具有挑战性的问题。本文介绍了一种两阶段的训练策略来应对这些挑战。我们的方法首先在大规模合成数据集RoadSense3D上训练模型,该数据集提供了多样化的场景以实现稳健的特征学习。随后,

【UVALive】6709 Mosaic 二维线段树

传送门:【UVALive】6709 Mosaic 题目大意: 每次选择矩阵中的一个点,求以他为中心,边长为D(D一定是奇数)的矩阵中的最小值min和最大值max,输出ans =(min+max)/ 2(向下取整)。然后将该点的值修改为ans。 题目分析: 赤果果的二维线段树单点修改、区间查询。 又一次学习了线段树,发现原来所有的更新操作全部放在二维中即可。 很不错,一定要经常看看,温

mapreduce将若干小文件合成大文件

1、思路: http://blog.yfteach.com/?p=815,注意原文中有一个错误,就是FileInputformat中并没有找到createRecordReader这个方法,应该在TextInputFormat中有,而不是textFileInputFormat 2、编码:       第一步:编写将整个文件作为一条记录处理的类,即实现FileInputFormat. 注意:F