简介
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
Name | Min | Max | Pixel Size | Description |
probability |
0 | 100 | 10 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);
去云属性
Parameter | Type | Description |
AOI |
ee.Geometry |
Area of interest |
START_DATE |
string | Image collection start date (inclusive) |
END_DATE |
string | Image collection end date (exclusive) |
CLOUD_FILTER |
integer | Maximum image cloud cover percent allowed in image collection |
CLD_PRB_THRESH |
integer | Cloud probability (%); values greater than are considered cloud |
NIR_DRK_THRESH |
float | Near-infrared reflectance; values less than are considered potential cloud shadow |
CLD_PRJ_DIST |
float | Maximum distance (km) to search for cloud shadows from cloud edges |
BUFFER |
integer | Distance (m) to dilate the edge of cloud-identified objects |
目前为 AOI、START_DATE、END_DATE 和 CLOUD_FILTER 设置的值旨在为美国俄勒冈州波特兰附近地区的单个 S2 立交桥建立一个集合。在对新区域的云掩蔽进行参数化和评估时,好的做法是确定一个单一的高架桥日期,并限制区域范围,以尽量减少处理要求。如果您想使用不同的示例,请使用此地球引擎应用程序识别包含一些云层的图像,然后用应用程序中提供的参数值替换下面的相关参数值。