GEE数据集——哨兵2号Sentinel-2 云概率数据集

文章介绍了Sentinel-2:CloudProbability数据集,它通过LightGBM算法和双线性插值技术,提供10米分辨率的云概率估计。该数据集有助于去除云遮挡,分析云覆盖率,并支持植被、土壤等环境研究。EarthEngineSnippet展示了如何在EarthEngine中应用该数据集进行图像处理。
摘要由CSDN通过智能技术生成

简介

S2 云概率由 sentinel2-cloud-detector 库创建(使用 LightGBM)。在应用梯度提升基础算法之前,先使用双线性插值法将所有波段上采样至 10 米分辨率。得到的 0...1 浮点概率被缩放为 0...100,并存储为 UINT8。缺少任何或所有波段的区域都会被屏蔽掉。数值较高的区域更有可能是云层或高反射表面(如屋顶或积雪)。前言 – 人工智能教程

哨兵-2 是一项宽波段、高分辨率、多光谱成像任务,支持哥白尼陆地监测研究,包括植被、土壤和水覆盖监测,以及内陆水道和沿海地区观测。

2 级数据可在 COPERNICUS/S2_SR 数据集中找到。1B 级数据可在 COPERNICUS/S2 数据集中找到。这些数据集中的资产还提供其他元数据。

Sentinel-2: Cloud Probability 数据集是欧洲航天局 (ESA) 的 Sentinel-2 卫星项目的一项产品。该数据集提供 Sentinel-2 图像中云的概率。

Sentinel-2 卫星是一个多光谱遥感卫星,可提供 13 个波段的图像。这些波段覆盖了可见光、近红外和短波红外波段。云在 Sentinel-2 图像中的表现与波段有关。在可见光波段中,云通常是黑色的,而在近红外波段中,云通常是白色的。

Sentinel-2: Cloud Probability 数据集使用了一种基于光谱特征的算法来估计云的概率。该算法首先将 Sentinel-2 图像中的每个像素分配给一个波段组。然后,该算法使用每个波段组的光谱特征来估计该像素是云还是非云。

Sentinel-2: Cloud Probability 数据集的每个像素都有一个云概率值,范围为 0 到 1。值为 0 表示该像素是云,值为 1 表示该像素是非云。

Sentinel-2: Cloud Probability 数据集可用于以下应用:

  • 去除云遮挡,以便更好地观察地表特征。
  • 估计云覆盖率。
  • 研究云的变化。

Sentinel-2: Cloud Probability 数据集可通过以下方式获取:

  • 从 ESA 的 Sentinel Hub 服务。
  • 从 ESA 的 Sentinel-2 数据集。

以下是 Sentinel-2: Cloud Probability 数据集的一些技术细节:

  • 数据集提供 13 个波段的云概率值。
  • 数据集的空间分辨率为 10 米。
  • 数据集的时间分辨率为 5 天。

Sentinel-2: Cloud Probability 数据集是一项重要的资源,可用于处理 Sentinel-2 图像。该数据集可用于提高 Sentinel-2 图像的质量,并为各种应用提供支持。

tuneshare

more_vert

add_photo_alternate

Dataset Availability

2015-06-23T00:00:00Z–2024-01-02T18:17:41

Dataset Provider

European Union/ESA/Copernicus/SentinelHub

Earth Engine Snippet

ee.ImageCollection("COPERNICUS/S2_CLOUD_PROBABILITY") o

Bands

NameMinMaxPixel SizeDescription
probability010010 meters

Probability that the pixel is cloudy.

Terms of Use

The use of Sentinel data is governed by the Copernicus Sentinel Data Terms and Conditions.

代码:

var s2Sr = ee.ImageCollection('COPERNICUS/S2_SR');
var s2Clouds = ee.ImageCollection('COPERNICUS/S2_CLOUD_PROBABILITY');

var START_DATE = ee.Date('2019-01-01');
var END_DATE = ee.Date('2019-03-01');
var MAX_CLOUD_PROBABILITY = 65;
var region =
    ee.Geometry.Rectangle({coords: [-76.5, 2.0, -74, 4.0], geodesic: false});
Map.setCenter(-75, 3, 12);

function maskClouds(img) {
  var clouds = ee.Image(img.get('cloud_mask')).select('probability');
  var isNotCloud = clouds.lt(MAX_CLOUD_PROBABILITY);
  return img.updateMask(isNotCloud);
}

// The masks for the 10m bands sometimes do not exclude bad data at
// scene edges, so we apply masks from the 20m and 60m bands as well.
// Example asset that needs this operation:
// COPERNICUS/S2_CLOUD_PROBABILITY/20190301T000239_20190301T000238_T55GDP
function maskEdges(s2_img) {
  return s2_img.updateMask(
      s2_img.select('B8A').mask().updateMask(s2_img.select('B9').mask()));
}

// Filter input collections by desired data range and region.
var criteria = ee.Filter.and(
    ee.Filter.bounds(region), ee.Filter.date(START_DATE, END_DATE));
s2Sr = s2Sr.filter(criteria).map(maskEdges);
s2Clouds = s2Clouds.filter(criteria);

// Join S2 SR with cloud probability dataset to add cloud mask.
var s2SrWithCloudMask = ee.Join.saveFirst('cloud_mask').apply({
  primary: s2Sr,
  secondary: s2Clouds,
  condition:
      ee.Filter.equals({leftField: 'system:index', rightField: 'system:index'})
});

var s2CloudMasked =
    ee.ImageCollection(s2SrWithCloudMask).map(maskClouds).median();
var rgbVis = {min: 0, max: 3000, bands: ['B4', 'B3', 'B2']};

Map.addLayer(
    s2CloudMasked, rgbVis, 'S2 SR masked at ' + MAX_CLOUD_PROBABILITY + '%',
    true);

去云属性

ParameterTypeDescription
AOIee.GeometryArea of interest
START_DATEstringImage collection start date (inclusive)
END_DATEstringImage collection end date (exclusive)
CLOUD_FILTERintegerMaximum image cloud cover percent allowed in image collection
CLD_PRB_THRESHintegerCloud probability (%); values greater than are considered cloud
NIR_DRK_THRESHfloatNear-infrared reflectance; values less than are considered potential cloud shadow
CLD_PRJ_DISTfloatMaximum distance (km) to search for cloud shadows from cloud edges
BUFFERintegerDistance (m) to dilate the edge of cloud-identified objects

目前为 AOI、START_DATE、END_DATE 和 CLOUD_FILTER 设置的值旨在为美国俄勒冈州波特兰附近地区的单个 S2 立交桥建立一个集合。在对新区域的云掩蔽进行参数化和评估时,好的做法是确定一个单一的高架桥日期,并限制区域范围,以尽量减少处理要求。如果您想使用不同的示例,请使用此地球引擎应用程序识别包含一些云层的图像,然后用应用程序中提供的参数值替换下面的相关参数值。 

  • 20
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
以下是在GEE中下载Sentinel-2数据的步骤: 1. 打开GEE平台(https://earthengine.google.com/)并登录账号。 2. 在左侧菜单栏中选择“Assets”选项,然后单击“+ New”按钮以创建新的asset。 3. 输入Sentinel-2数据的名称,并设置合适的权限以便其他用户能够访问。 4. 在左侧菜单栏中选择“Code Editor”选项,在弹出的代码编辑器中输入以下代码: ``` var geometry = /* color: #d63000 */ee.Geometry.Polygon( [[[73.99351271285157, 34.08809017138208], [73.99351271285157, 33.94537291288632], [74.267975227554, 33.94537291288632], [74.267975227554, 34.08809017138208]]], null, false); var startDate = '2019-01-01'; var endDate = '2019-12-31'; var image = ee.ImageCollection('COPERNICUS/S2_SR') .filterBounds(geometry) .filterDate(startDate, endDate) .sort('CLOUD_COVER') .first(); var bands = ['B4', 'B3', 'B2']; var clipped = image.clip(geometry); Map.addLayer(clipped, {bands: bands, min: 0, max: 3000}, 'Sentinel 2'); ``` 5. 在代码中,将变量“geometry”中的经纬度坐标改为你想要下载的区域的范围。 6. 将变量“startDate”和“endDate”中的日期范围更改为你想要下载的数据的时间范围。 7. 单击代码编辑器右上方的“Run”按钮以运行代码。地图上会显示选择的区域内的Sentinel-2图像。 8. 在左侧菜单栏中选择“Tasks”选项,然后单击“Create a new export task”按钮。 9. 在弹出的窗口中,选择下载数据的格式、文件名和导出路径等选项。 10. 单击“Run”按钮以开始下载数据。 注意:下载Sentinel-2数据需要使用Google Drive或Google Cloud Storage进行存储。如果你没有这些存储空间,你需要先创建一个。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

此星光明

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

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

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

打赏作者

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

抵扣说明:

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

余额充值