GEE高阶应用——利用eemont进行 VIIRS 产品中的云层和阴影去云(一行代码)

本教程利用geemap和eemont库对VIIRS(Visible Infrared Imaging Radiometer Suite)产品进行云层和阴影去云处理,涉及VNP09GA和VNP13A1产品的去云算法介绍,以及通过一行代码实现数据预处理和缩放。
摘要由CSDN通过智能技术生成

本教程使用geemap和 eemont进行MODIS产品的去云处理,并且进行波段缩放。

简介

VNP09GA(即 VNP09GA1 和 VNP09GA2)和 VNP13A1 是基于 VIIRS(Visible Infrared Imaging Radiometer Suite)传感器数据生成的两种地球遥感产品。

VNP09GA 是一种全球九天地表反射率产品,包括红外波段数据和夜晚灯光数据。它提供了地表的反射率和辐射值,以及夜晚灯光亮度数据。VNP09GA1提供了日间的反射率和辐射数据,VNP09GA2提供了夜晚的灯光亮度数据。这些数据可以用于研究物候学,气候变化,土地利用和覆盖,以及城市化等方面。

VNP13A1 是一种全球火灾和热点探测产品,提供了每日火灾和热点的位置和强度信息。该产品使用 VIIRS 的热红外波段数据,可以检测到全球范围内的火灾和热点,并提供其空间位置和火焰温度等信息。VNP13A1 产品对于监测和研究森林火灾、草原火灾和人为火灾等具有重要意义。

这些产品由美国国家航空航天局(NASA)和美国地质调查局(USGS)协作开发和分发,可免费获取和使用。它们广泛应用于气候研究、环境监测、自然灾害监测和土地管理等领域。

去云

VNP09GA 和 VNP13A1 产品都使用了遥感数据处理中常见的去云算法来减少云层对地表观测的影响。

对于 VNP09GA 产品,其中的日间反射率数据采用了一种基于多光谱比值的去云算法。该算法利用不同波长的光谱波段之间的反射率比值来判断像素是否被云覆盖。基于这些比值,可以生成一个云掩膜图像,将云覆盖的像素标记为无效数据。这样就可以在产品中剔除云层的干扰,得到更准确的地表反射率数据。

对于 VNP13A1 产品,采用了一种不同的去云算法。该算法主

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
geemap是基于Google Earth Engine的Python包,可以通过Earth Engine API调用其强大的计算资源和数据集。如果想要在geemap进行矢量数据的去计算,可以使用以下步骤: 1. 使用geemap的ee.FeatureCollection()函数加载矢量数据集,例如: ```python import geemap.eefolium as geemap # 加载矢量数据集 fc = geemap.shp_to_ee('path/to/shapefile.shp') ``` 2. 使用Earth Engine API的图像集合去算法(Cloud Masking)对图像进行处理。可以使用ee.ImageCollection()函数加载图像集合,然后调用map()函数对每个图像进行处理。例如,可以使用Landsat 8数据集的CFMask算法进行处理: ```python import ee # 加载Landsat 8数据集 collection = ee.ImageCollection('LANDSAT/LC08/C01/T1_SR') # 定义掩码算法 def maskL8sr(image): # 提取像元的掩码位 cloudBitMask = ee.Number(2).pow(3).int() # 根据掩码位生成掩码 qa = image.select('pixel_qa') mask = qa.bitwiseAnd(cloudBitMask).eq(0) # 应用掩码 return image.updateMask(mask) # 对图像集合应用掩码 collection = collection.map(maskL8sr) ``` 3. 使用Earth Engine API的矢量化算法(Vectorization)将处理后的图像转换为矢量数据。可以使用ee.Image.reduceToVectors()函数进行矢量化,然后使用ee.FeatureCollection()函数将结果转换为矢量数据集。例如: ```python # 定义矢量化参数 vectorParams = { 'geometryType': 'polygon', 'eightConnected': False, 'reducePixels': ee.Reducer.mean(), 'scale': 30 } # 对图像进行矢量化 vectors = collection.reduceToVectors(**vectorParams) # 将结果转换为矢量数据集 fc = ee.FeatureCollection(vectors) ``` 通过以上步骤,就可以在geemap进行矢量数据的去处理,并将结果转换为矢量数据集。需要注意的是,这里使用的是Earth Engine API的算法,因此需要先在geemap进行Earth Engine API的身份验证。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

此星光明

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值