Sentinel-2: Cloud Probability

COPERNICUS/S2_CLOUD_PROBABILITY
Veri Kümesi Kullanılabilirliği
2015-06-27T00:00:00Z–2025-10-13T18:13:31Z
Veri Kümesi Sağlayıcı
Earth Engine Snippet'i
ee.ImageCollection("COPERNICUS/S2_CLOUD_PROBABILITY")
Yeniden Ziyaret Aralığı
5 gün
Etiketler
cloud copernicus esa eu msi radiance satellite-imagery sentinel
sentinelhub

Açıklama

S2 bulut olasılığı, sentinel2-cloud-detector kitaplığı (LightGBM kullanılarak) ile oluşturulur. Gradyan artırma temel algoritması uygulanmadan önce tüm bantlar, 10 m çözünürlüğe iki doğrusal enterpolasyon kullanılarak örneklenir. Elde edilen 0..1 kayan nokta olasılığı 0..100 ile ölçeklendirilir ve UINT8 olarak depolanır. Bantların herhangi birinin veya tümünün eksik olduğu alanlar maskelenir. Daha yüksek değerler, bulut veya yüksek yansıtıcı yüzeyler (ör. çatılar veya kar) olma olasılığı daha yüksek olan değerlerdir.

Sentinel-2, bitki örtüsü, toprak ve su örtüsünün izlenmesinin yanı sıra iç su yollarının ve kıyı bölgelerinin gözlemlenmesi de dahil olmak üzere Copernicus Arazi İzleme çalışmalarını destekleyen, geniş bantlı, yüksek çözünürlüklü, çok spektrumlu bir görüntüleme görevidir.

2. seviye verileri, COPERNICUS/S2_SR_HARMONIZED koleksiyonunda bulunabilir. Seviye 1B verileri, COPERNICUS/S2_HARMONIZED koleksiyonunda bulunabilir. Bu koleksiyonlardaki öğeler için ek meta veriler mevcuttur.

Bulut maskesinin nasıl uygulanacağını açıklayan bu eğitime göz atın.

Bantlar

Bantlar

Ad Min. Maks. Piksel Boyutu Açıklama
probability 0 100 10 metre

Pikselin bulutlu olma olasılığı.

Kullanım Şartları

Kullanım Şartları

Sentinel verilerinin kullanımı Copernicus Sentinel Veri Hüküm ve Koşulları'na tabidir.

Earth Engine ile Keşif

Kod Düzenleyici (JavaScript)

var s2Sr = ee.ImageCollection('COPERNICUS/S2_SR_HARMONIZED');
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);
Kod Düzenleyicide Aç