Harmonized Sentinel-2 MSI: MultiSpectral Instrument, Level-2A (SR)

COPERNICUS/S2_SR_HARMONIZED
데이터 세트 제공
2017-03-28T00:00:00Z–2025-09-01T14:32:11.937000Z
데이터 세트 제공업체
Earth Engine 스니펫
ee.ImageCollection("COPERNICUS/S2_SR_HARMONIZED")
다시 방문 간격
5일
태그
코페르니쿠스 ESA eu MSI 반사율 위성 이미지 센티넬 SR

설명

2022년 1월 25일 이후 PROCESSING_BASELINE이 '04.00' 이상인 Sentinel-2 장면의 DN (값) 범위가 1000만큼 이동되었습니다. 조정된 컬렉션은 최신 장면의 데이터를 이전 장면과 동일한 범위로 이동합니다.

Sentinel-2는 식생, 토양, 수면 모니터링은 물론 내륙 수로와 연안 지역 관측 등 코페르니쿠스 육지 모니터링 연구를 지원하는 폭넓은 고해상도 다중 스펙트럼 이미지 처리 임무입니다.

Sentinel-2 L2 데이터는 CDSE에서 다운로드됩니다. sen2cor를 실행하여 계산되었습니다. 경고: EE 컬렉션의 2017~2018년 L2 범위는 아직 전 세계에 적용되지 않습니다.

애셋에는 SR이 10000으로 스케일링된 12개의 UINT16 스펙트럼 밴드가 포함됩니다 (L1 데이터와 달리 B10은 없음). 또한 L2 전용 대역이 몇 개 더 있습니다 (자세한 내용은 대역 목록 참고). 자세한 내용은 Sentinel-2 사용자 핸드북을 참고하세요.

QA60은 2022년 1월 25일까지 래스터화된 클라우드 마스크 다각형을 포함한 비트마스크 밴드입니다. 이 날짜 이후에는 이러한 다각형이 생성되지 않습니다. 2024년 2월 28일부터 기존과 일관된 QA60 밴드는 MSK_CLASSI 클라우드 분류 밴드에서 구성됩니다. 자세한 내용은 클라우드 마스크 계산 방식에 대한 전체 설명을 참고하세요.

Sentinel-2 L2 애셋의 EE 애셋 ID는 COPERNICUS/S2_SR/20151128T002653_20151128T102149_T56MNN 형식입니다. 여기서 첫 번째 숫자 부분은 감지 날짜와 시간을 나타내고, 두 번째 숫자 부분은 제품 생성 날짜와 시간을 나타내며, 마지막 6자리 문자열은 UTM 그리드 참조를 나타내는 고유한 그레뉼 식별자입니다 (MGRS 참고).

클라우드 또는 클라우드 그림자 감지에 도움이 되는 데이터 세트는 COPERNICUS/S2_CLOUD_PROBABILITYGOOGLE/CLOUD_SCORE_PLUS/V1/S2_HARMONIZED를 참고하세요.

Sentinel-2 방사량 해상도에 대한 자세한 내용은 이 페이지를 참고하세요.

대역

대역

이름 단위 최소 최대 확장 픽셀 크기 파장 설명
B1 0.0001 60미터 443.9nm (S2A) / 442.3nm (S2B)

에어로졸

B2 0.0001 10미터 496.6nm (S2A) / 492.1nm (S2B)

파란색

B3 0.0001 10미터 560nm (S2A) / 559nm (S2B)

초록색

B4 0.0001 10미터 664.5nm (S2A) / 665nm (S2B)

빨간색

B5 0.0001 20미터 703.9nm (S2A) / 703.8nm (S2B)

Red Edge 1

B6 0.0001 20미터 740.2nm (S2A) / 739.1nm (S2B)

Red Edge 2

B7 0.0001 20미터 782.5nm (S2A) / 779.7nm (S2B)

Red Edge 3

B8 0.0001 10미터 835.1nm (S2A) / 833nm (S2B)

NIR

B8A 0.0001 20미터 864.8nm (S2A) / 864nm (S2B)

Red Edge 4

B9 0.0001 60미터 945nm (S2A) / 943.2nm (S2B)

수증기

B11 0.0001 20미터 1613.7nm (S2A) / 1610.4nm (S2B)

SWIR 1

B12 0.0001 20미터 2202.4nm (S2A) / 2185.7nm (S2B)

SWIR 2

AOT 0.001 10미터 없음

에어로졸 광학 두께

WVP cm 0.001 10미터 없음

수증기압입니다. 증기가 액체로 응축되어 컬럼 전체에 고르게 퍼져 있을 때 물이 차지하는 높이입니다.

SCL 1 11 20미터 없음

장면 분류 지도('데이터 없음' 값 0은 마스크 처리됨)

TCI_R 10미터 없음

트루 컬러 이미지, 빨간색 채널

TCI_G 10미터 없음

트루 컬러 이미지, 녹색 채널

TCI_B 10미터 없음

트루 컬러 이미지, 파란색 채널

MSK_CLDPRB 0 100 20미터 없음

클라우드 확률 지도 (일부 제품에서 누락됨)

MSK_SNWPRB 0 100 10미터 없음

눈 확률 지도 (일부 제품에서 누락됨)

QA10 10미터 없음

항상 비어 있음

QA20 20미터 없음

항상 비어 있음

QA60 60미터 없음

구름 마스크 2022년 1월 25일부터 2024년 2월 28일까지 마스크 처리되었습니다.

MSK_CLASSI_OPAQUE 60미터 없음

불투명 구름 분류 밴드 (0=구름 없음, 1=구름). 2024년 2월 전에 마스크 처리되었습니다.

MSK_CLASSI_CIRRUS 60미터 없음

권운 분류 밴드 (0=구름 없음, 1=구름 있음) 2024년 2월 전에 마스크 처리되었습니다.

MSK_CLASSI_SNOW_ICE 60미터 없음

눈/얼음 분류 밴드 (0=눈/얼음 없음, 1=눈/얼음). 2024년 2월 전에 마스크 처리되었습니다.

SCL 클래스 테이블

색상 설명
1 #ff0004

포화 또는 결함

2 #868686

어두운 영역 픽셀

3 #774b0a

Cloud Shadows(구름 그림자)

4 #10d22c

초목

5 #ffff52

나지

6 #0000ff

7 #818181

구름 확률 낮음 / 분류되지 않음

8 #c0c0c0

구름이 있을 가능성이 중간

9 #f1f1f1

구름이 있을 확률이 높음

10 #bac5eb

Cirrus

11 #52fff9

눈 / 얼음

이미지 속성

이미지 속성

이름 유형 설명
AOT_RETRIEVAL_ACCURACY DOUBLE

에어로졸 광학 두께 모델의 정확도

CLOUDY_PIXEL_PERCENTAGE DOUBLE

원래 메타데이터에서 가져온 그레뉼별 흐린 픽셀 비율

CLOUD_COVERAGE_ASSESSMENT DOUBLE

이 그레인을 포함하는 전체 보관 파일의 흐린 픽셀 비율입니다. 원본 메타데이터에서 가져옴

CLOUDY_SHADOW_PERCENTAGE DOUBLE

구름 그림자로 분류된 픽셀의 비율

DARK_FEATURES_PERCENTAGE DOUBLE

어두운 특징 또는 그림자로 분류된 픽셀의 비율

DATASTRIP_ID 문자열

데이터 스트립 제품 데이터 항목 (PDI)의 고유 식별자

DATATAKE_IDENTIFIER 문자열

지정된 데이터 수집을 고유하게 식별합니다. ID에는 Sentinel-2 위성, 시작 날짜 및 시간, 절대 궤도 번호, 처리 기준선이 포함됩니다.

DATATAKE_TYPE 문자열

MSI 작동 모드

DEGRADED_MSI_DATA_PERCENTAGE DOUBLE

MSI 및 보조 데이터의 품질 저하 비율

FORMAT_CORRECTNESS 문자열

그레인 (Product_Syntax) 및 데이터 스트립 (Product Syntax 및 DS_Consistency) 수준에서 실행된 온라인 품질 관리 (OLQC) 검사의 합성

GENERAL_QUALITY 문자열

데이터 스트립 수준 (Relative_Orbit_Number)에서 실행된 OLQC 검사의 합성

GENERATION_TIME DOUBLE

제품 생성 시간

GEOMETRIC_QUALITY 문자열

데이터 스트립 수준에서 실행된 OLQC 검사의 합성 (Attitude_Quality_Indicator)

GRANULE_ID 문자열

그랜뉼 PDI의 고유 식별자 (PDI_ID)

HIGH_PROBA_CLOUDS_PERCENTAGE DOUBLE

높은 확률의 구름으로 분류된 픽셀의 비율

MEAN_INCIDENCE_AZIMUTH_ANGLE_B1 DOUBLE

B1 밴드 및 모든 감지기의 시청 발생률 방위각 평균을 포함하는 평균값

MEAN_INCIDENCE_AZIMUTH_ANGLE_B2 DOUBLE

B2 밴드 및 모든 감지기의 시청 발생률 방위각 평균을 포함하는 평균값

MEAN_INCIDENCE_AZIMUTH_ANGLE_B3 DOUBLE

B3 밴드 및 모든 감지기의 시청 발생률 방위각 평균을 포함하는 평균값

MEAN_INCIDENCE_AZIMUTH_ANGLE_B4 DOUBLE

밴드 B4 및 모든 감지기의 시청 발생률 방위각 평균을 포함하는 평균값

MEAN_INCIDENCE_AZIMUTH_ANGLE_B5 DOUBLE

B5 밴드 및 모든 감지기의 시청 발생률 방위각 평균을 포함하는 평균값

MEAN_INCIDENCE_AZIMUTH_ANGLE_B6 DOUBLE

밴드 B6 및 모든 감지기의 시청 발생률 방위각 평균을 포함하는 평균값

MEAN_INCIDENCE_AZIMUTH_ANGLE_B7 DOUBLE

밴드 B7 및 모든 감지기의 시청 발생률 방위각 평균을 포함하는 평균값

MEAN_INCIDENCE_AZIMUTH_ANGLE_B8 DOUBLE

B8 밴드 및 모든 감지기의 시야각 방위각 평균을 포함하는 평균값

MEAN_INCIDENCE_AZIMUTH_ANGLE_B8A DOUBLE

B8a 밴드 및 모든 감지기의 시야각 방위각 평균을 포함하는 평균값

MEAN_INCIDENCE_AZIMUTH_ANGLE_B9 DOUBLE

B9 밴드 및 모든 감지기의 시청 발생률 방위각 평균을 포함하는 평균값

MEAN_INCIDENCE_AZIMUTH_ANGLE_B10 DOUBLE

밴드 B10 및 모든 감지기의 시청 발생률 방위각 평균을 포함하는 평균값

MEAN_INCIDENCE_AZIMUTH_ANGLE_B11 DOUBLE

밴드 B11 및 모든 감지기의 시청 발생률 방위각 평균을 포함하는 평균값

MEAN_INCIDENCE_AZIMUTH_ANGLE_B12 DOUBLE

밴드 B12 및 모든 감지기의 시청 발생률 방위각 평균을 포함하는 평균값

MEAN_INCIDENCE_ZENITH_ANGLE_B1 DOUBLE

밴드 B1 및 모든 감지기의 시야각 천정각 평균을 포함하는 평균값

MEAN_INCIDENCE_ZENITH_ANGLE_B2 DOUBLE

밴드 B2 및 모든 감지기의 시야각 천정각 평균을 포함하는 평균값

MEAN_INCIDENCE_ZENITH_ANGLE_B3 DOUBLE

밴드 B3 및 모든 감지기의 시청 발생률 천정각 평균을 포함하는 평균값

MEAN_INCIDENCE_ZENITH_ANGLE_B4 DOUBLE

밴드 B4 및 모든 감지기의 시야각 천정각 평균을 포함하는 평균값

MEAN_INCIDENCE_ZENITH_ANGLE_B5 DOUBLE

밴드 B5 및 모든 감지기의 시야각 천정각 평균을 포함하는 평균값

MEAN_INCIDENCE_ZENITH_ANGLE_B6 DOUBLE

밴드 B6 및 모든 감지기의 시야각 천정각 평균을 포함하는 평균값

MEAN_INCIDENCE_ZENITH_ANGLE_B7 DOUBLE

밴드 B7 및 모든 감지기의 시청 발생률 천정각 평균을 포함하는 평균값

MEAN_INCIDENCE_ZENITH_ANGLE_B8 DOUBLE

밴드 B8 및 모든 감지기의 시야각 천정각 평균을 포함하는 평균값

MEAN_INCIDENCE_ZENITH_ANGLE_B8A DOUBLE

B8a 밴드 및 모든 감지기의 시야각 천정각 평균을 포함하는 평균값

MEAN_INCIDENCE_ZENITH_ANGLE_B9 DOUBLE

밴드 B9 및 모든 감지기의 시청 발생률 천정각 평균을 포함하는 평균값

MEAN_INCIDENCE_ZENITH_ANGLE_B10 DOUBLE

B10 밴드 및 모든 감지기의 시야각 천정각 평균을 포함하는 평균값

MEAN_INCIDENCE_ZENITH_ANGLE_B11 DOUBLE

B11 밴드 및 모든 감지기의 시야각 천정각 평균을 포함하는 평균값

MEAN_INCIDENCE_ZENITH_ANGLE_B12 DOUBLE

B12 밴드 및 모든 감지기의 시청 발생률 천정각 평균을 포함하는 평균값

MEAN_SOLAR_AZIMUTH_ANGLE DOUBLE

모든 밴드와 감지기의 태양 방위각 평균을 포함하는 평균값

MEAN_SOLAR_ZENITH_ANGLE DOUBLE

모든 밴드와 감지기의 태양 천정각 평균을 포함하는 평균값

MEDIUM_PROBA_CLOUDS_PERCENTAGE DOUBLE

중간 확률 구름으로 분류된 픽셀의 비율

MGRS_TILE 문자열

미국 군사 그리드 참조 시스템 (MGRS) 타일

NODATA_PIXEL_PERCENTAGE DOUBLE

데이터 없음 픽셀의 비율

NOT_VEGETATED_PERCENTAGE DOUBLE

식물이 없는 것으로 분류된 픽셀의 비율

PROCESSING_BASELINE 문자열

프로세서 소프트웨어 버전 및 주요 지상 이미지 처리 매개변수 (GIPP) 버전 측면에서 제품 생성 시 사용된 구성 기준

PRODUCT_ID 문자열

원래 Sentinel-2 제품의 전체 ID

RADIATIVE_TRANSFER_ACCURACY DOUBLE

복사 전달 모델의 정확도

RADIOMETRIC_QUALITY 문자열

RADIOMETRIC_QUALITY 체크리스트 이름이 있는 Datastrips/QI_DATA에 포함된 OLQC 보고서를 기반으로 합니다.

REFLECTANCE_CONVERSION_CORRECTION DOUBLE

지구-태양 거리 보정 계수

SATURATED_DEFECTIVE_PIXEL_PERCENTAGE DOUBLE

포화 또는 결함이 있는 픽셀의 비율

SENSING_ORBIT_DIRECTION 문자열

이미징 궤도 방향

SENSING_ORBIT_NUMBER DOUBLE

이미지 궤도 번호

SENSOR_QUALITY 문자열

그레뉼(Missing_Lines, Corrupted_ISP, Sensing_Time) 및 데이터 스트립(Degraded_SAD, Datation_Model) 수준에서 실행된 OLQC 검사의 합성

SOLAR_IRRADIANCE_B1 DOUBLE

밴드 B1의 평균 태양권외 일사량

SOLAR_IRRADIANCE_B2 DOUBLE

B2 밴드의 평균 태양권외 일사량

SOLAR_IRRADIANCE_B3 DOUBLE

밴드 B3의 평균 태양권외 일사량

SOLAR_IRRADIANCE_B4 DOUBLE

밴드 B4의 평균 태양권외권 일사량

SOLAR_IRRADIANCE_B5 DOUBLE

밴드 B5의 평균 태양권 외 대기권 일사량

SOLAR_IRRADIANCE_B6 DOUBLE

밴드 B6의 평균 태양권외 대기권 일사량

SOLAR_IRRADIANCE_B7 DOUBLE

밴드 B7의 평균 태양권외 복사 조도

SOLAR_IRRADIANCE_B8 DOUBLE

밴드 B8의 평균 태양권외 일사량

SOLAR_IRRADIANCE_B8A DOUBLE

밴드 B8a의 평균 태양권외 일사량

SOLAR_IRRADIANCE_B9 DOUBLE

밴드 B9의 평균 태양권 외 대기권 일사량

SOLAR_IRRADIANCE_B10 DOUBLE

밴드 B10의 평균 태양권외 복사 조도

SOLAR_IRRADIANCE_B11 DOUBLE

밴드 B11의 평균 태양권외 일사량

SOLAR_IRRADIANCE_B12 DOUBLE

밴드 B12의 평균 태양권 외 대기권 일사량

SNOW_ICE_PERCENTAGE DOUBLE

눈 또는 얼음으로 분류된 픽셀의 비율

SPACECRAFT_NAME 문자열

Sentinel-2 우주선 이름: Sentinel-2A, Sentinel-2B

THIN_CIRRUS_PERCENTAGE DOUBLE

얇은 권운으로 분류된 픽셀의 비율

UNCLASSIFIED_PERCENTAGE DOUBLE

분류되지 않은 픽셀의 비율

VEGETATION_PERCENTAGE DOUBLE

식물로 분류된 픽셀의 비율

WATER_PERCENTAGE DOUBLE

물로 분류된 픽셀의 비율

WATER_VAPOUR_RETRIEVAL_ACCURACY DOUBLE

수증기 모델의 선언된 정확도

이용약관

이용약관

Sentinel 데이터 사용에는 코페르니쿠스 Sentinel 데이터 이용약관이 적용됩니다.

Earth Engine으로 탐색

코드 편집기(JavaScript)

/**
 * Function to mask clouds using the Sentinel-2 QA band
 * @param {ee.Image} image Sentinel-2 image
 * @return {ee.Image} cloud masked Sentinel-2 image
 */
function maskS2clouds(image) {
  var qa = image.select('QA60');

  // Bits 10 and 11 are clouds and cirrus, respectively.
  var cloudBitMask = 1 << 10;
  var cirrusBitMask = 1 << 11;

  // Both flags should be set to zero, indicating clear conditions.
  var mask = qa.bitwiseAnd(cloudBitMask).eq(0)
      .and(qa.bitwiseAnd(cirrusBitMask).eq(0));

  return image.updateMask(mask).divide(10000);
}

var dataset = ee.ImageCollection('COPERNICUS/S2_SR_HARMONIZED')
                  .filterDate('2020-01-01', '2020-01-30')
                  // Pre-filter to get less cloudy granules.
                  .filter(ee.Filter.lt('CLOUDY_PIXEL_PERCENTAGE',20))
                  .map(maskS2clouds);

var visualization = {
  min: 0.0,
  max: 0.3,
  bands: ['B4', 'B3', 'B2'],
};

Map.setCenter(83.277, 17.7009, 12);

Map.addLayer(dataset.mean(), visualization, 'RGB');

Python 설정

Python API 및 geemap를 사용한 대화형 개발에 관한 자세한 내용은 Python 환경 페이지를 참고하세요.

import ee
import geemap.core as geemap

Colab (Python)

def mask_s2_clouds(image):
  """Masks clouds in a Sentinel-2 image using the QA band.

  Args:
      image (ee.Image): A Sentinel-2 image.

  Returns:
      ee.Image: A cloud-masked Sentinel-2 image.
  """
  qa = image.select('QA60')

  # Bits 10 and 11 are clouds and cirrus, respectively.
  cloud_bit_mask = 1 << 10
  cirrus_bit_mask = 1 << 11

  # Both flags should be set to zero, indicating clear conditions.
  mask = (
      qa.bitwiseAnd(cloud_bit_mask)
      .eq(0)
      .And(qa.bitwiseAnd(cirrus_bit_mask).eq(0))
  )

  return image.updateMask(mask).divide(10000)


dataset = (
    ee.ImageCollection('COPERNICUS/S2_SR_HARMONIZED')
    .filterDate('2020-01-01', '2020-01-30')
    # Pre-filter to get less cloudy granules.
    .filter(ee.Filter.lt('CLOUDY_PIXEL_PERCENTAGE', 20))
    .map(mask_s2_clouds)
)

visualization = {
    'min': 0.0,
    'max': 0.3,
    'bands': ['B4', 'B3', 'B2'],
}

m = geemap.Map()
m.set_center(83.277, 17.7009, 12)
m.add_layer(dataset.mean(), visualization, 'RGB')
m
코드 편집기에서 열기