Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to main content
Skip table of contents

S2 Processing

This page deepens the information regarding the Sentinel-2 production’s logic baseline and algorithms and it’s targeted to all expert users looking for more details and explanation on product generation. It includes very specific information on products and is very helpful for users wishing to perform data processing. The final paragraph hosts the Sentinel-2 Precise Orbit Determination products and specifications.

Processing Baseline

The processing baseline indicates the version of the processing algorithm applied to the raw data to generate the products available to users. It is updated periodically to improve product quality and incorporate new algorithms or corrections. The baseline version is included in the product metadata. The Product Specification Document (PSD) provides detailed information about the structure, format, and content of Sentinel-2 products. The PSD ensures that users understand the different data levels, naming conventions, metadata structure, and the organization of the data files. Updates about the baselines and PSDs are announced via the Sentinel Online webpage.

The processing baseline Ground Image Processing Parameters (GIPP) (PROBAS- L1C, PROBA2 - L2A) are configuration files that evolve over the Mission lifetime. This evolution is done to manage the introduction of new product features or processing steps (e.g. introduction of the geometric refinement), and the correction of errors in the processing chain.

The evolutions of the processing baseline are tracked and justified in the 'Processing Baseline Status' section of the Data Quality Report that is published on a monthly basis by the Mission Performance Cluster (MPC) and available from the Sentinel Document Library.

L1C Processing Baseline

Table 1: PSD History and relationship to CGS Processing Baseline (PROBAS) for L1C products

PSD

Version

Date

Introduced

Initial

Processing Baseline

Product Level

XSD Location

12.0

10/09/2014

01.00

Level-1C

PSD 12

13.0

30/11/2015

02.00

Level-1C

PSD 13

13.1

15/12/2015

02.01

13.2

03/05/2016

02.02

14.2

06/12/2016

02.05

Level-1C

PSD 14

14.3

23/10/2017

02.06

14.5

06/11/2018

02.07

14.6

31/03/2021

03.00

14.9

25/01/2022

04.00

15.0

23/07/2024

05.11

Level-1C

PSD 15

Table 2: CGS Processing Baseline (PROBAS) for L1C products

Processing Version

Date Introduced

Reason

02.00

23 November 2015

Initial product Baseline

02.01

15 December 2015

updated to accommodate changes in the Tiling Grid configuration file

02.02

3 May 2016

to correct an issue identified in which anomalous pixels with incorrect value are present in the overlap of datastrips. This occurred in only a few products.

02.03

9 June 2016

Affected by a strong spectral mis-registration anomaly, and withdrawn.

02.04

15 June 2016

To replace 02.03

02.05

27 April 2017

A fix introduced to the satellite ancillary metadata, to correct instances where the value of Instrument Measurement Time (IMT) is not represented correctly.

02.06

23 October 2017

An update of the ‘Product Discriminator’ component of the product name and filename, and the product-level Metadata file in the structure holding the quality control report summary references.

02.07

6 November 2018

The crenellation effect at the edge of images was significantly reduced by estimating the inverse locations for grid points lying just after the edge of the acquisition.

The accuracy of the tile sensing time reported in the tile metadata was improved by computing for each tile the average acquisition time of all relevant pixels. The new tile sensing time will be reported in the field General_Info/ SENSING_TIME of the Tile Metadata without format change.

The detector footprint vector files provide the precise location of the boundary between detectors, without overlap. This improvement will enable Users to have an accurate estimation of the viewing direction for each pixel.

The correlated across-track noise on very dark images was significantly reduced thanks to an improved radiometric correction algorithm.

02.08

8 July 2019

Correction of the formatting to the instrument telemetry of the Datastrip metadata (FEE Temperature Value and GPS_Time date).

02.09

4 February 2020

Improvement of the NO DATA mask accuracy

Improvement ECMWF GRIB reference time accuracy

Correction of a sporadic anomaly on product footprint

Removal of the spurious viewing angle information for detectors not present in the image.

03.00

30 March 2021

Activation of the Geometric Refinement.

Use of the new Copernicus https://doi.org/10.5270/ESA-c5d3d65 (COP-DEM) at 90 m, with corresponding improvement of the geolocation performance over mountainous areas in particular, replacing the Planet DEM90.

Improvement of the Level-1C cloud detection algorithm over high-altitude terrains

Improvement of the Level-1C Technical Quality (TECQUA) mask accuracy

Additional On-Line Quality Control checks applicable to the geometrically refined products.

03.01

30 June 2021

Increment to introduce:

  1. A minor modification of the Datastrip metadata, to harmonise them with Refined products, by adding processing_specific_parameters fields for unrefined products.

  2. Update to the algorithm used to derive the checksum - from MD5 to the more resilient SHA3 (Secure Hash Algorithm 3) with SHA3-256 instance hash codes.

04.00

25 January 2022

  1. Correction of the radiometric bias between Sentinel-2A and Sentinel-2B (keeping Sentinel-2A as reference).

  2. Generation of the Level-1C quality masks in raster format. The masks will be grouped in 3 categories as defined as follow:

  • MSK_CLASSI: 60 m classification masks (i.e., the cirrus and opaque clouds).

  • MSK_QUALIT: For each spectral band, and at the same spatial resolution as that band, a raster file composed of all the radiometric and technical quality masks.

  • MSK_DETFOO: for each spectral band, and at the same spatial resolution as that band, a 1-byte raster file using 4 bits to encode the 12 detector footprints.

Rasterization of MSK_CLASSI and MSK_QUALITY will be implemented as single bit “multi-band” raster files.

  1. Addition of ECMWF (European Centre for Medium-Range Weather Forecasts) parameters: u/v wind components (10u and 10v) and relative humidity (r). The format of the AUX_ECMWFT file will remain unchanged.

  2. AUX_CAMSFO: In AUX_DATA folder embedded in the Level-1C products, in a single dedicated GRIB-formatted file named as AUX_CAMSFO, the following CAMS (Copernicus Atmosphere Monitoring Service) forecast data for that specific Tile:

  • Total Aerosol Optical Depth at 550 nm (aod550),

  • Surface Geopotential (z),

  • Black Carbon Aerosol Optical Depth at 550 nm (bcaod550),

  • Dust Aerosol Optical Depth at 550nm (duaod550),

  • Organic Matter Aerosol Optical Depth at 550 nm (omaod550),

  • Sea Salt Aerosol Optical Depth at 550 nm (ssaod550),

  • Sulphate Aerosol Optical Depth at 550 nm (suaod550),

  • Total Aerosol Optical Depth at 469 nm (aod469),

  • Total Aerosol Optical Depth at 670 nm (aod670),

  • Total Aerosol Optical Depth at 865 nm (aod865) and

  • Total Aerosol Optical Depth at 1240 nm (aod1240).

  1. Addition of Level-1C snow/ice mask: A new SNOICE raster mask in JPEG2000 format. The snow/ice mask will be included in the MSK_CLASSI. The snow percentage will also be added into the Quality_Indicators_Info section of the L1C Tile metadata.

  2. Provision of negative radiometric values (implementing an offset):A radiometric offset will be added up to the image reflectance at Level-1C. The dynamic range will be shifted by a band-dependent constant, i.e. RADIO_ADD_OFFSET. From the user’s point of view, the L1C Top of Atmosphere (TOA) reflectance (L1C_TOA) shall be retrieved from the output radiometry as follows:

  • Digital Number DN=0 will remain the “NO_DATA” value

  • For a given DN in [1;215-1], the L1C TOA reflectance value will be: L1C_TOAi = (L1C_DNi + RADIO_ADD_OFFSETi) / QUANTIFICATION_VALUEi

The offset will be reported in a new field in the General_Info/Product_Image_Characteristics section of the Datastrip and User Product Metadata. This evolution allows avoiding the loss of information due to clamping of negative values in the predefined range [1-32767] occurring over dark surfaces.

  1. Addition of the DOI (Digital Object Identifier) in the Level-1C metadata: A DOI is a string of numbers, letters and symbols used to permanently identify a document and/or a dataset and to create a link to it on the web. The DOI URL will be reported in a new field in the General_Info section of the Datastrip and User Product Metadata.

05.09

06 December 2022

Improvement of quality mask for radiometric saturation.

The Processing Baseline identifier 05.09 tags the operational products generated with the same operational processor used to generate the Copernicus Sentinel-2 Collection-1 but with the 90 m version of the Copernicus DEM (the ‘9’ suffix expresses here the use of the 90m DEM).

05.10

13 December 2023

Use of the new Copernicus https://doi.org/10.5270/ESA-c5d3d65 (COP-DEM) at 30 m, with corresponding improvement of the geolocation performance over mountainous areas in particular, replacing the Copernicus DEM at 90m.

05.11

23 July 2024

Optimization of geometric refining to further improve geolocation accuracy in certain cases.

Correction of the quality mask for lost packets.

L2A Processing Baseline

Table 3 : PSD History and relationship to CGS Processing Baseline (PROBAS) - L1C (above) and L2A (below)

PSD

Version

Date

Introduced

Initial

Processing Baseline

Product Level

XSD Location

14.5

26/03/2018

02.07

 

Level-2A

 

PSD 14

14.6

31/03/2021

03.00

14.9

25/01/2022

04.00

15.0

23/07/2024

05.11

Level-2A

PSD 15

Table 4: CGS Processing Baseline (PROBAS) L2A

Processing Version

Date Introduced

Reason

02.07

26 March 2018

Initial product Baseline

02.08

23 May 2018

Update of the quality control reports embedded in the L2A products (referring to ‘OLQC' reports in the product specifications).

Change in the coding of the section of the Product Level Metadata, in order to group all band image files of the same tile in the same record.

02.09

8 October 2018

Improvement of the accuracy of Scene Classification over water, urban and bare areas thanks to the usage of the ESA CCI Land cover website data.

Improvement of the spatial homogeneity of surface reflectance between adjacent tiles.

02.10

6 November 2018

See L1C 02.07 (above)

02.11

21 November 2018

Improvement of the terrain correction algorithm in mountainous areas, in order to avoid artefacts for pixels under semi-transparent clouds.

02.12

6 May 2019

Improvement of the terrain correction algorithm, in order to avoid adjacent tile discontinuities in terrain correction for seemingly flat areas with gentle slopes.

02.13

8 July 2019

Correction of the formatting to the instrument telemetry of the Datastrip metadata (FEE Temperature Value and GPS_Time date).

02.14

4 February 2020

See L1C 02.09 (above)

03.00

30 March 2021

Correction of a light halo observed along Level-2A image boundaries, either at the edge of the swath or at the end of data-strips

Improvement of the Level-2A cloud probability layer near the boundary of the swath

Improvement of the topographic correction thanks to the use of the Copernicus 90 m DEM

03.01

30 June 2021

Increment to introduce:

  1. Minor modification of the Datastrip metadata, to harmonise them with Refined products, by adding processing_specific_parameters fields for unrefined products.

  2. Update to the algorithm used to derive the checksum - from MD5 to the more resilient SHA3 (Secure Hash Algorithm 3) with SHA3-256 instance hash codes.

04.00

25 January 2022

In addition to the first five above-mentioned evolutions inherited from the corresponding Level-1C product, the following L2A evolutions will be included:

  1. Provision of negative radiometric values (implementing an offset): the dynamic range will be shifted by a band-dependent constant, i.e. BOA_ADD_OFFSET. From the user’s point of view, the L2A Surface Reflectance (L2A SR) shall be retrieved from the output radiometry as follows:

    • Digital Number DN=0 remains the “NO_DATA” value

    • For a given DN in [1;215-1], the L2A Surface Reflectance (SR) value will be: L2A_SRi = (L2A_DNi + BOA_ADD_OFFSETi) / QUANTIFICATION_VALUEi

The radiometric offset value will be consistent with the one applied to the Level-1C product and will be reported in a new field in the General_Info/ Product_Image_Characteristics section of the Datastrip and User Product Metadata. It is also noted that the percentage of negative surface reflectance pixels per band will be also reported in the L2A_QUALITY report in the QI_DATA folder of the tile.

  1. Provision of Band 01 at 20 m spatial resolution: Band 01 will be added with 20 m resolution (in the 20 m resolution image folder) in addition to the native 60 m resolution.

  2. Addition of Level-2A Quality Indicators (new fields in the tile metadata and additional xml L2A_QI_report in the QI_DATA folder): New Quality Indicators CLOUDY_PIXEL_OVER_LAND_PERCENTAGE, AOT_RETRIEVAL_METHOD, GRANULE_MEAN_AOT, GRANULE_MEAN_WV, OZONE_SOURCE, and OZONE_VALUE, will be added in the Level-2A tile metadata in the Quality_Indicators_Info section. In addition, Quality Indicators providing information on the Scene Classification, Atmospheric Correction and Auxiliary Data will be reported in a new L2A_QUALITY.xml report in the QI_DATA folder of the tile.

  3. Aerosol correction using CAMS auxiliary data: The Level-2A processor will use the CAMS Total Aerosol Optical Depth (AOD) at 550 nm when Dark Dense Vegetation (DDV) pixels are missing in the image. This improvement will mitigate the chess-board effect that is sometimes visible between tiles.

  4. Improvement of the bright target classification over coastal areas: The cloud detection over coastal areas of bright targets (e.g. buildings and bright sand) is improved to mitigate against false detections.

  5. Improvement of the topographic and casted shadows: The class “dark features and shadows” (SCL = 2) is replaced by “topographic and casted shadows” (keeping code SCL = 2), while dark features pixels will be re-assigned to the “unclassified” class (SCL = 7).

  6. Improvement of clouds and cloud shadows detection: Thanks to the use of the Sentinel-2 MSI parallax properties between bands B08 (resampled at 20m) and B8A (20m native resolution), the accuracy of the cloud detection algorithm has been improved, reducing the false clouds detection of bright targets - especially in urban areas - as well as reducing the snow false detection in high altitude clouds. Also, the cloud shadow algorithm benefits from using the parallax properties, by retrieving an estimate of the cloud top-height to improve the localization of clouds shadows on ground.

  7. Addition of the DOI (Digital Object Identifier) in the Level-2A metadata: Similarly, to Level-1C product, a DOI will be reported in a new field in the General_Info section of the Datastrip and User Product Metadata.

05.09

6 December 2022

Identification of defective pixels from missing instrument source packets in L2A Scene Classification map

The Processing Baseline identifier 05.09 tags the operational products generated with the same operational processor used to generate the Copernicus Sentinel-2 Collection-1but with the 90 m version of the Copernicus DEM (the ‘9’ suffix expresses here the use of the 90m DEM).

05.10

13 December 2023

Use of the new Copernicus https://doi.org/10.5270/ESA-c5d3d65 (COP-DEM) at 30 m, with corresponding improvement of the geolocation performance over mountainous areas in particular, replacing the Copernicus DEM at 90m.

05.11

23 July 2024

Renaming of the DARK_FEATURES class (SCL = 2) in the Level-2A Scene Classification Layer by CAST_SHADOW. The computation of this class remains unchanged since PB 04.00 (where shadows are separated from dark features pixels which are assigned to the UNCLASSIFIED class (SCL = 7), see above). Only the name of the class is updated to better reflect what is flagged in that class since the PB 04.00 deployment.

Optimization of snow/ice detection in the scene classification at very high latitudes.

Addition of a new AOT retrieval method ‘NA’ reported in L2A_QUALITY.xml files when the atmospheric correction cannot be performed.

Collection-1 Processing Baseline

The Copernicus Sentinel-2 Collection-1 is currently being generated using the Sentinel-2 historical archive to ensure consistent time series from Sentinel-2A and Sentinel-2B, with uniform processing baselines and enhanced calibration. This process particularly focuses on improving the geometric performance of the products and their radiometry. All historical data, from the launch of Sentinel-2A in 2015 up until December 13th, 2023 (when the latest processing baseline for Collection-1 reprocessing was released in operation), is scheduled for reprocessing.

Processing version

Acquisition dates of corresponding products

Content

05.00

4 July 2015 –

31 December 2021

The improvements introduced in processing baselines up to baseline 04.00 (in operations since 25 January 2022) have been generalised to the historical archive:

  • Geometric refining using the high-quality Copernicus Digital Elevation Model (introduced in Processing Baseline PB  03.00)

  • Harmonized radiometry after alignment of S2B on S2A (introduced with PB 04.00)

  • Most recent product format for L1C and L2A with radiometric offset, quality masks in raster format, L2A quality indicators, DOI (introduced in PB 04.00)

  • Improved L2A processing algorithms for scene classification and surface reflectance (PB 04.00 feature)

  • Compliance with the CEOS Analysis Ready Data for Land (CEOS ARD) standard of the Level-2A surface reflectance product (PB 04.00 feature).

Additional improvements are brought over the baseline 04.00:

  • Use of the 30 m Copernicus Digital Elevation Model (DEM), with corresponding improvement of the geolocation performance over mountainous areas in particular.  More details about the last DEM versions and how to access the data is available at Copernicus Digital Elevation Model - Copernicus Contributing Missions Online.

  • Optimization of the applicability along-time of the successive radiometric and geometric calibrations 

  • Corrected quality mask for radiometric saturation

  • Identification of defective pixels from missing instrument source packets in the L2A Scene Classification layer.

05.10

1 January 2022 –

13 December 2023

Like PB 05.00 above, plus a computing optimization.

Similar to PB 05.10 used in operation (starting from December 13th, 2023), see L1C operational Processing Baseline and L2A operational Processing Baseline

It is highlighted that the Level-1C and Level-2A product format remains according to version 14.9 of the Product Specification Document (PSD v14.9).

L0 Algorithms

The Level-0 product is raw image data (on-board compressed) in raw Instrument Source Packet (ISP) format. It is initially processed to safeguard the integrity of the Near-Real-Time-acquired data. As summarised in Figure 1 this operation includes:

  • MSI telemetry analysis: concatenates acquired ISP data into granules and performs data analysis and error detection functions

  • Datation: the datation of the individual lines in an image enables the exact capture time of each ISP within a granule to be recorded

  • Low resolution image extraction: extracts the low-resolution images for quicklook generation

  • Satellite ancillary telemetry analysis: compares extracted satellite ancillary data from bit values and checks it relative to pre-defined admissible ranges

As highlighted previously, the Level-0 initial processing, performed to preserve the integrity of the acquired data, occurs in real-time (i.e. in parallel to data reception). By contrast, Level-0 consolidation and downstream processing activities (i.e. to Level-1) are delayed until triggered by the on-ground recovery of the ancillary data. This occurs at the end of every satellite pass. Ancillary data are ingested together with the MSI raw data at the beginning of the Level-0 consolidation processing collates and appends all necessary metadata required for archiving and onward processing to Level-1.

  1. Level-0 viewing model initialisation: computes the viewing model for generation of the Preliminary Quicklook (PQL)

  2. PQL processing: this step includes the PQL resampling and the computation of ancillary data for the consolidated Level-0 product

  3. Preliminary cloud mask processing: generates the cloud mask from the PQL based on spectral criteria

  4. PQL compression: performs the compression of the PQL

The position of these initial processes can be seen in the middle of Figure 1, up to the output block named Level-0 (Consolidated).

Figure 1: Level-0 Processing Workflow

L1A Algorithms

Level-1A processing includes:

  • Level-1 viewing model initialisation: This processing step computes the viewing model that will be used to initialize Level-1B processing. It uses the Precise Orbit Determination (POD) products generated by the Mission Performance Centre Coordinating Centre (MPC/CC).

  • Decompression: This processing step decompresses the ISPs.

  • Level-1A radiometric processing: This step includes the SWIR pixels arrangement.

  • Level-1A compression: This processing step uses the JPEG2000 algorithm to compress the Level-1A imagery.

Figure 2: Level-1A Processing Overview

L1B Algorithms

The Level-1B processing aims to generate TOA calibrated radiance from input Level-1A TOA radiance data. It includes:

  • radiometric corrections:

    • inverse of on-board equalization

    • equalization correction

    • dark current correction including offset and non-uniformity correction (if equalization correction activated)

    • blind pixels removal

    • cross-talk correction including optical and electronic crosstalk correction

    • relative response correction

    • SWIR rearrangement

    • defective pixels correction

    • restoration including deconvolution and denoising (optional). This correction is disabled by default in the Level-1B processing.

    • binning for 60 m bands (B1, B9 and B10)

    • no data pixels correction

    • radiometric offset addition to avoid truncation of negative values

    • masks management including saturated Level-1B masks generation, no_data mask generation, defective masks generation.

  • physical geometric model refinement (which is not applied at this level)

    • Common Geometry Grid Computation for Image-GRI Registration, defining the common monolithic geometry in which the Global Reference Images (GRI) and the reference band of the image to refine shall be resampled.

    • Resampling on Common Geometry Grid for Image-GRI Registration, performing the resampling on the common geometry grid for the registration between the GRI and the reference band.

    • Tie-Points Collection for Image-GRI Registration, including the collection of the tie-points from the two images for the registration between the GRI and the reference band.

    • Tie-Points Filtering for Image-GRI Registration, performing a filtering of the tie-points over several areas (sub-scenes) and a given number of trusted tie-points is required for each subscene.

    • Spatiotriangulation for Image-GRI Registration, refining the viewing model using the initialized viewing model and the set of Ground Control Points (GCPs) from previous steps. The output refined model ensures the registration between the GRI and the reference band.

    • Optional Steps in VNIR-SWIR Registration Processing:

      • Common Geometry Grid Computation for VNIR-SWIR Registration, defining the common geometry in which the registration will be performed.

      • Resampling on Common Geometry Grid for VNIR-SWIR Registration, performing the resampling on the common geometry grid for the registration between VNIR and SWIR bands.

      • Tie-Points Collection for VNIR-SWIR Registration, including the collection of the tie-points from the two images for the refinement of the registration between VNIR and SWIR focal planes.

      • Tie-Points Filtering for VNIR-SWIR Registration, performing a filtering of the tie-points over several areas (sub-scenes) and a given number of trusted tie-points are required for each subscene.

      • Spatiotriangulation for VNIR-SWIR Registration, refining the viewing model using the initialized viewing model and the set of ground control points from previous steps. The output of this step is a refined viewing model ensuring the registration between VNIR and SWIR focal planes.

  • Level-1B Compression compresses Level-1B imagery using the JPEG2000 algorithm. The Kakadu software library is used for the JP2K compression of product images.

These steps are chained and activated for each band. Each algorithm step is described below; please refer to the Level 1 ATBD for more details about the algorithms.

Figure 3: Level-1B Processing Overview

Radiometric Corrections

The Sentinel-2/MSI radiometric model is given by Equation 1:

Equation 1: Sentinel-2 Radiometric Model

Where:

  • Y(p,l,b,d) is the raw signal of pixel p corrected from the dark signal and from the pixel contextual offset (expressed in Least Significant Bit (LSB))

  • Z(p,l,b,d) is the equalized signal also corrected from non-linearity (expressed in LSB)

  • ϒ(p,b,d,Y(p,l,b,d)) is a function that compensates the non-linearity of the global response of the pixel p and its relative behaviour with respect to other pixels

  • DS(p,j,b,d), is the dark signal of the pixel p in channel b, for chronogram sub-cycle line number j (j is within 1 to 6)

  • PCmasked(p,l,b,d) is the pixel contextual offset. It aims at compensating the dark signal variation due to voltages fluctuations with temperature.

Two different functions are required for modelling ϒ (p,b,d,Y(p,l,b,d)):

  • a piece-wise linear (two parts: bilinear)

  • a cubic (polynomial of degree 3)

For VNIR channels, the baseline is to consider a polynomial function of degree 3 to have a best fit of the detector response. For SWIR channel, the bilinear is the baseline option that will be used.

Inversion of the On-board Equalization

The bilinear equalization is applied on-board to both channels (VNIR and SWIR) and per detection line before compression to reduce compression effect on detector photo-response non-uniformity.

An inversion of the on-board equalization is performed to retrieve the original detectors response Xk(i,j) and further radiometric corrections are applied such as cross-talk correction and improved equalization processing.

As output a reverse equalized image (output image is called X in the mathematical description) is obtained.

Equalization Correction

The objective of equalization is to achieve a uniform image when the observed landscape is uniform. It is performed by correcting the image of the relative response of the detectors (if equalization correction is activated).

Dark Signal Correction

The dark signal correction involves correcting an unequalised image by subtracting the dark signal (if equalization correction is activated). The dark signal DS(p,j) can be decomposed as shown in Equation 2:

Equation 2: Sentinel-2 Dark Signal

  • a cyclic component that does not evolve with time: DS(p,j,b,d) is the dark signal of the pixel p in channel b, for chronogram sub-cycle line number j (j is within 1 to 6 for 10 m resolution band, 1 to 3 for 20 m band, and equal 1 for 60 m band);

  • a residual with time: PCmasked(p,l,b,d) is the pixel contextual offset (Dark Signal Offset).

Dark Signal Non-Uniformity

Variability in the dark signal arises as a result of the different time required for integration by the individual bands. This signal varies as a function of the line number with a spatial frequency.

Defining a cycle by the integration time for 60 m bands, there are:

  • six different working configurations, i.e. six different dark signals, for 10 m bands

  • three different dark signals for 20 m bands

  • one dark signal for 60 m bands.

For a given line 'i' in the image, the corresponding dark signal depends on the line number inside the area. The average of 'i' observations assumes that the same radiance is observed and allows noise reduction (Equation 3).

Equation 3: Sentinel-2 Dark Signal Uniformity

Where Nm is the number of lines being summed, and j is an index within the range [1,6] corresponding to the chronogram sub-cycle line numbe (j is within [1,6] range for 10 m bands, [1,3] for 20 m bands and [1,1] for 60 m bands).

DS(p,j,b,d) is determined as an average of the dark signal along the columns and therefore is independent of the line variable.

Dark Signal Offset

The offset variation of dark signal is due to voltage fluctuations. To compensate for this signal, an offset for each line is computed using blind pixels located at the extremity of each detector module. The number of blind pixels depends on the band (32 blind pixels for 10 m bands, and 16 blind pixels for 20 m and 60 m bands). For each band, each detector module and each line of the image, the offset is computed as the average value of the signal acquired by the valid blind pixels:

Equation 4: Sentinel-2 Dark Offset Computation

Where N is the number of valid blind pixels per detector module and l the blind pixel index and Inter_Image is the raw image corrected from the application of the Non-Uniformity Dark signal.

Blind Pixel Removal

For each band and each detector module, blind pixels are removed from the image product.

Crosstalk Correction

Crosstalk correction involves correcting parasitic signal at pixel level from two distinct sources: electronic and optical crosstalk (if equalization correction is activated).

In both cases, the parasitic signal of a pixel in a given band is modelled as a linear function of the signal in the other bands acquired at the same time and at the same position across track.

Relative Response Correction

Relative response correction involves correcting the image of the relative response of the detectors (if equalization correction is activated). The correction applies respectively a bilinear and a three-degree polynomial function to the SWIR and VNIR channels.

The coefficients of the polynomial function are made from sun diffuser observations during calibration mode; the BRDF of the diffuser being characterised before launch. An estimation of the coefficients for each instrument is performed at the same time as the estimation of the absolute radiometric calibration, i.e. every three repeat cycles (30 days). Assuming that the response of the instrument is a cubic function (e.g. VNIR channels) of the radiance, Eq. (1) can be written as:

Equation 5: Sentinel-2 Equalization Correction

In case of the SWIR band Equation (3) becomes:

Equation 6: Sentinel-2 Equalization Correction

Where:

G3, G2, G1 and G0 are the parameters of the cubic model and A1, A2, Zc and Zs are the parameter of the bilinear model.

Equalization processing is performed for each non-defective pixel or non-blind pixel.

SWIR Rearrangement

Pixels of the SWIR bands (band 10, band 11 and band 12) are rearranged. For the SWIR bands, each detector module is composed of three lines for band 10 and four lines for band 11 and band 12. To make optimal use of the pixels with the best SNR for the acquisition, one pixel over three lines for band 10 and two successive pixels over four lines for band 11 and band 12 is selected for each column. In the instrument, these bands work in Time Delay Integration (TDI) mode and are re-arranged along columns on the ground. This algorithmic procedure ensures the best registration between columns of SWIR images.

For 20 m resolution bands (band 11, band 12), the shift to be applied is ± 1 pixel.

For 60 m resolution band (band 10), the shift to be applied is ± 1/3 pixel and is performed using a one-dimensional filter.

Defective Pixel Correction

Defective pixel correction involves allocating to a defective pixel, a value corresponding to the bicubic interpolated radiometry of its neighbouring pixels (if they are valid, and their value is greater than a threshold).

Defective pixels can arise as a result of:

  • weak response that cannot be compensated for by equalization

  • saturated response

  • temporal instability

As well as the pixel position and the type of defect, the interpolation filter is provided in a GIPP. The maximum number of allowed adjacent defective pixels is defined by a threshold provided in a GIPP as well. If the number of adjacent pixels is outside the threshold, the correction is not applied.

Holes in the spectral filters can also affect the Sentinel-2 images. The same correction as for defective pixels is applied.

Restoration

Restoration processing combines two actions:

  • image de-convolution - applying a bi-dimensional spatial filter to the effect of the MTF to enhance the contrast

  • image de-noising - performing a decomposition of the image in wavelet packets.

De-convolution processing compensates for blurring due to instrumental MTF. De-convolution is recommended when the MTF at Nyquist frequency is low, however, de-convolution processing increases the noise for high spatial frequencies, particularly over uniform areas. This phenomenon is limited by dedicated de-noising.

De-convolution is performed by Fourier Transform (FT) and the de-noising process is based on a thresholding technique of wavelets coefficients.

These restoration processes are currently disabled by default in the Level-1B processing. It is not recommended to use the restoration step because the instrument's MTF is already high enough.

Binning for 60 m Bands

For bands B1, B9 and B10, the spatial resolution is approximately 60 m along track and approximately 20 m across track. To achieve a homogeneous resolution (i.e. 60 m) both along and across track, these bands are filtered and sub-sampled in the across track direction. The filter and the sampling rate (3, by default) are provided in a GIPP by the IQP.

No Data Pixels

Pixels with no data generally correspond to missing lines within the image product. These pixels are identified in a mask provided with the product.

To correct for no data, and to insert a value, these pixels are interpolated using neighbouring valid lines. The interpolation filter is provided in a GIPP. A threshold for the maximum number of missing joined lines is defined. This threshold is provided in a GIPP. Beyond this threshold, no correction processing is applied.

Radiometric Offset

To avoid truncation of negative values, the dynamic range of both Sentinel-2A and Sentinel-2B is shifted by a band-dependent constant radiometric offset called RADIO_ADD_OFFSET and defined in a configuration file. The new pixel value is computed as following:

NewDN= CurrentDN - RADIO_ADD_OFFSET

Note that in the convention used, the offset is a negative value.

It is important to note that:

  • the radiometric offset will have no impact on the generation of the numerical saturation value, as it will be added up after. Moreover, there will be no saturation due to this offset as the measured levels are far from the numerical saturation for Level-1B data. Indeed, for a 12-bit integer, numerical saturation is reached for a value of 4095.

  • adding an offset for Level-1B would imply that this offset should be handled by the refining and should be subtracted before the Level-1C projection and TOA conversion.

Saturated Pixels

Saturated pixels are identified in a mask associated to the product. No correction is applied.

Geometric processing

After the radiometry step, and to improve the accuracy of geolocation performance, a geometric refinement can be carried out. This operation occurs before the orthorectification process for Level-1C products. It is performed on the full swath by the longest possible length in automatic mode.

Viewing model refining

The viewing model includes:

  • a datation model for determining the exact start date of each line ,

  • a tabulated orbital data, allowing to know the position of the spacecraft at the time of the line acquisition.

  • a tabulated attitude data, allowing to know the orientation of the spacecraft at the time of the line acquisition.

  • the viewing directions in the spacecraft piloting frame.

The viewing model allows to compute the viewing vector (line of sight) at the time of the pixel acquisition. By intersecting this viewing vector with an Earth model, it is possible to compute the geolocation (or direct location) of the pixel, and inversely, to determine the position of a point on the ground in the image (Image location or inverse location).

However, the attitude and orbital data are known with a given precision, due to the sensors inaccuracy: GPS, attitude sensors. Additionally, thermo-elastic effects at the scale of the orbit can also impact the accuracy of the geolocation. To improve the geolocation performance, geometric refining can be applied by adding polynomial corrections to the viewing model.

To correct the position data, a polynomial function of time is estimated. The polynomial coefficients are estimated by a mean square regression called the spatio-triangulation. The polynomial functions coefficients, correcting the attitude and orbital information used by the location functions (geolocation function and inverse location function), are computed so as to minimise the average residual values (cf. Figure 4) of a large number of Ground Control Points (GCP). To sum up, the refining outputs are the polynomial functions correcting attitude and orbital data.

Figure 4: Illustration of residuals distance values (P-P') and (M-M')

Ground Control Points Selection

Common geometry resampling

To find the GCP necessary to the refining, a correlation is performed between the reference segment and the segment to refine. This correlation is high when images with similar spectral contents, at a similar resolution and in a similar geometry are used.

The first two conditions are guaranteed by using one reference spectral band for the correlation process. The reference cover is called the Global Reference Image (GRI).

The GRI is a set of globally acquired, cloud-free, mono-spectral (B4, red channel) Level-1B Sentinel-2 images. The GRI, illustrated in Figure 5, is composed of roughly 1000 images. The cloudy areas are constituted of a stack of overlapping images in order to limit clouds and ensure a full coverage.

Figure 5: Overview of Sentinel-2 GRI images

Products over Svalbard, isolated islands at high latitude and Antarctica are not covered by the GRI so are not refined. Moreover, several orbits covering Greenland and Northern Canada (Nunavut and Yukon territories) could not be completed. Please also note that orbit R109 is empty because it is almost totally located over sea.

For the last condition (similar geometry), it is necessary to resample the two segments in a common virtual geometry, because of Sentinel-2 specificities: the images are split in 12 detectors and the pointing precision is at worst 2 kms.

This viewing model of the common virtual geometry is computed by:

  • constructing an average regular datation model over the segment to refine,

  • selecting the attitude and orbital data of the segment to refine

  • and by computing regular viewing directions, as if it were a push-broom sensor, composed of one single detector, covering the whole Sentinel-2 swath.

The two images are then resampled, using the resampling grids, an interpolation filter and the definition of interest area for each detector, as illustrated in Figure 6. Then the correlation is performed between two monolithic images composed of one single detector. This guarantees that the processing is homogeneous for all the detectors and allows detection of yaw angle. It has to be noticed that this common geometry is only used for the correlation process for finding GCP and is then discarded.

Figure 6: Resampling in a Monolithic Geometry

Tie points collection and filtering

A spatial correlation between a correlation window of reference image (vignette 1) and a research window image to refine (vignette 2) is performed for each pixel. Then, for each pixel of the vignette 2, a resemblance criterion is computed: it is the normalized covariance. The set of all criterion values make a grid of resemblance criteria. The maximum of correlation and a curvature are computed by fitting this grid of resemblance criteria to a quadratic function. The best candidate points coordinates correspond to the maximum of the quadratic function with high curvature. A threshold on the maximum correlation value and the curvature and a filter to eliminate wrong points are applied to obtain the homologous points.

This defines a set of tie points, as illustrated in Figure 7.

Figure 7: Tie points collection

This grid of measured differences between the two images is filtered in order to select tie points with a specific strategy: the image is divided into several areas (sub-scenes) and a given number of trusty tie points is required for each sub-scene. If the required number of points cannot be found in a given subscene, this area is densified using image matching with a lower step. If there are more tie points than the required number, a random selection is performed. The algorithm fails if it cannot get the requested number of points for a minimum number of sub-scenes.

From tie points to GCPs

Due to parallax between odd and event detectors, as shown in Figure 8, the tie-points need to be converted in native geometry.

Figure 8: Line on ground seen at different dates by odd as even detectors

Then the tie-points coordinates of the reference image are converted in geometric coordinates (latitude, longitude, altitude) using the Copernicus DEM - Global and European Digital Elevation Model (COP-DEM) and the reference geometric model.

The following Figure 9 sums up the different steps, which take place for the conversion of tie points to ground control points.

Figure 9: Tie points to GCPs conversion

Geometric refining

The geometric refining of the viewing model is done by spatio-triangulation using GCPs extracted at the previous step, with the parameters to refine and for each, the degree of the modelling polynomial function, chosen among:

  • Spacecraft gravity centre position: X, Y, Z in WGS and type of correction: constant or polynomial function of time.

  • Attitudes: roll, pitch and yaw, type of correction: constant or polynomial function of time.

  • Spacecraft to focal plane transformation: rotation (3 angles), translation, homothetic transformation, type of correction: constant or polynomial function.

The default setting is given below and illustrated in Figure 10:

  • Attitudes:

    • roll, pitch, yaw in spacecraft frame

    • correction modelled by a bias and a drift

  • Spacecraft gravity centre position:

    • X, Y, Z in WGS84

    • correction modelled by a second-degree polynomial function

Figure 10: Viewing model and parameters to refine

L1C Algorithms

The Level-1C processing uses the Level-1B product and applies radiometric and geometric corrections (including orthorectification and spatial registration) to generate the Level-1C (TOA reflectance) product

Level-1C processing is broken down into the following steps:

  • Level-1C Tiles Association. This module selects predefined tiles which intersect the image footprint.

  • Level-1C Resampling Grid Computation. This step calculates the resampling grids, linking the image in native geometry to the target geometry (orthoimage).

  • Resampling on Level-1C Geometry. This processing step resamples each spectral band in the geometry of the orthoimage using the resampling grids and an interpolation filter. In addition, it calculates the TOA reflectance.

  • Masks Computation. This step generates the cloud, cirrus and snow/ice masks at Level-1C geometry.

  • Level-1C Compression. This processing step compresses Level-1C imagery using the JPEG2000 algorithm. Level-1C data is generated at the end of this step.

Figure 11: Level-1C Processing Overview

Ortho-image generation

The different steps of this ortho-image generation are:

  • Tiling module to select pre-defined tiles, which intersect the image footprint.

  • Computation of resampling grids, linking the image in native geometry to the target geometry (ortho-image).

  • Resampling of each spectral band in the geometry of the ortho-image using the resampling grids and an interpolation filter to compute the pixel radiometry.

Resampling grids computation

For Sentinel-2 orthorectification, the resampling is complex and cannot be modelled by analytic transformation. Figure 12 shows the resampling grids that have to be computed between the source geometry of the native sensor (Level-1B geometry) and the target geometry (each ortho-image tile).

Figure 12: Resampling Grid

For each point (a,b) of the ortho-image, the coordinates (l,c) of the corresponding pixel in the native image is computed by bilinear interpolation of the 4 adjacent nodes (L, C), as shown in Figure 13.

Figure 13: Resampling grid interpolation

The geometric deformations are then supposed to be linear within a mesh; this approximation is acceptable if the step of the resampling grid is “small” enough.

Resampling grids computation is based in three steps:

  • Transformation of the native coordinates into the DEM referential.

  • DEM interpolation to get each grid point altitude.

  • Image location computation to the source geometry by the physical model.

There is a grid for each band and each detector. 

More details about the last DEM versions and how to access the data is available at Copernicus DEM - Global and European Digital Elevation Model (COP-DEM).

Radiometric Interpolation

The radiance values of the target point is computed based on the radiance of nearby pixels using cubic spline functions.

TOA Reflectance Computation

The numeric digital counts (CN) of each pixel image (i,j) and each spectral band (k) are converted in TOA reflectance (ρ). This conversion takes into account the equivalent extra-terrestrial solar spectrum (Es), the incoming solar direction defined by its zenith angle (θs) for each pixel of the image and the absolute calibration (Ak) of the instrument MSI.

The conversion equation is:

Equation 7: Top of Atmosphere conversion

Where:

  • CNk,NTDI is the equalized numeric digital count of the pixel (i,j) with NTDI, the number of Sentinel-2 TDI lines, after removing the Level-1B offset (RADIO _ADD_OFFSET) added during the Level-1B generation

  • Ak;NTDI is the absolute calibration coefficient

  • Es is the equivalent extra-terrestrial solar spectrum and depends on the spectral response of the Sentinel-2 bands

  • The component d(t) is the correction for the sun-Earth distance variation (see Equation 8). It utilises the inverse square law of irradiance, under which, the intensity (or irradiance) of light radiating from a point source is inversely proportional to the square of the distance from the source.

Equation 8: Earth Sun distance

Where:

  • t is the Julian Day which corresponds to the acquisition date (reference day: 01/01/1950)

  • t0=2

  • e is the eccentricity of the Earth orbit, e=0.01673

  • n is the Earth orbit angular velocity, n=0.0172 rad/day

The parameters Ak and Es are provided by the GIPP and are also included in the ancillary data of the Level-1 products.

The sun zenith angles are determined at this level too. A sun angle grid is computed by regularly down-sampling the target geometry (Level-1C tile). The cosine of the zenith angle θs is defined at each point of the grid using the ground coordinates and the datation of the corresponding pixel acquisition. The azimuth angle is not processed here.

For Level-1C products, the noise model is also adapted to the new range of TOA reflectance radiometric values. The parameters (Ak,Es) of the Level-1B noise model are corrected using Equation 1 by replacing CNk with the Level-1B parameters Ak1B and Es1B.

The reflectance, often between 0 and 1, is converted into integer values, in order to preserve the dynamic range of the data by applying a fixed coefficient (10000 by default) called QUANTIFICATION_VALUE.

In order to avoid truncation of negative values, the dynamic range of Level-1C products (starting with the PB 04.00 introduced the 25th of January 2022) is shifted by a band-dependent constant radiometric offset called RADIO_ADD_OFFSET.

Before storage inside L1C (in a 16 bits integer format), a quantization gain and the offset are applied to the computed TOA reflectance (ρ).

L1C_DN = ρ * QUANTIFICATION_VALUE - RADIO_ADD_OFFSET

The L1C product's metadata includes the values for the QUANTIFICATION_VALUE and RADIO_ADD_OFFSET.

Please also note that:

  • the radiometric offset is defined as a negative value.

  • the radiometric offset will have no impact on the generation of the saturation value, as it will be added up after. Moreover, there will be no saturation due to this offset as the measured levels are far from the numerical saturation level (32767) for Level-1C data.

Computation of the Masks

The last operation to obtain the final Level-1C product is computation of the masks for a tile in the Level-1C geometry.

The Level-1C masks are in in raster format (JP2000, single-bit/multi-layer raster files) and are composed of:

  • MSK_CLASSI (cloud, cirrus and snow)

  • MSK_QUALIT (lost ancillary packets, degraded ancillary packets, lost MSI packets, degraded MSI packets, defective pixels, no data, partially corrected crosstalk and saturated pixels)

  • MSK_DETFOO: the 12 detector footprints

The computation of these masks is explained and detailed in the Masks section.

Table 5

Main Type

Former Main Type (before January 2022)

Sub Type

Description

Multiband Encoding

Comments

 

MSK_CLASSI

MSK_CLOUDS

OPAQUE

Opaque clouds

Band 1

Bit = 1 when pixel is OPAQUE

CIRRUS

Cirrus clouds

Band 2

Bit = 1 when pixel is CIRRUS

MSK_SNOICE

SNOW_ICE

Snow and Ice areas

Band 3

Bit = 1 when pixel is SNOW/ICE

 

MSK_QUALIT

MSK_TECQUA

ANC_LOST

Ancillary lost data

Band 1

 

 

Bit = 1 when pixel is ANC/MSI data is lost/degraded

ANC_DEG

Ancillary degraded data

Band 2

MSI_LOST

MSI lost data

Band 3

MSI_DEG

MSI degraded data

Band 4

MSK_DEFECT

QT_DEFECTIVE_PIXELS

Defective pixels (matching defective columns)

Band 5

Bit = 1 when pixel

is defective

MSK_NODATA

QT_NODATA_PIXELS

No–data pixels

Band 6

Bit = 1 when pixel is NO_DATA

                                                            

QT_PARTIALLY_CORRECTED

_PIXELS

Pixels partially corrected during cross-talk processing.

Band 7

Bit = 1 when pixel

is

PARTIALLY_COR RECTED

MSK_SATURA

QT_SATURATED_PIXELS_L 1A

Saturated pixels before on-

ground radiometric processing

Band 8

For L1A: Bit = 1 when L1A pixel is saturated

MSK_DETFOO

MSK_DETFOO

DETECTOR_FOOTPRINT

Detector footprint masks

Bits 0-3

4 bits to encode the 12 detectors ID:

0000 => No detector

0001 => D01

0010 => D02

0011 => D03

0100 => D04

0101 => D05

0110 => D06

0111 => D07

1000 => D08

1001 => D09

1010 => D10

1011 => D11

1100 => D12

Auxiliary Data Files (ADFs)

Auxiliary data is all other data (i.e. excluding direct measurements from the instrument and information on platform orbital dynamics) necessary for product processing and generation.

ADFs, such as the Copernicus DEM - Global and European Digital Elevation Model (DEM) or the Global Reference Image (GRI), that are used in the generation of Level-1 and Level-2A products, are verified before use to ensure the processing chain is not compromised. The GRI enables the automatic creation of Ground Control Points (GCPs) for Level-1C processing.

For Sentinel-2, auxiliary data is composed of:

  • On-Board Configuration Data (OBCD), comprised of on-board configuration parameters and payload and platform characterisation data

  • On-Ground Configuration Data (OGCD), which, for Level-1 and Level-2A products, is composed of Ground Image Processing Parameters (GIPP) and includes the DEM, the GRI, the ECMWF and CAMS auxiliary files, the International Earth Rotation and Reference Systems Service (IERS) Bulletins and the processors versions.

Each OBCD and OGCD file is identified by the type of data, applicability date, version number and the satellite to which it is applicable (Sentinel-2A, Sentinel-2B or both). Any update of one or other of the files will result in the other being updated at the same time. All auxiliary data used for Level-1B, Level-1C and Level-2A processing can be identified in the metadata accompanying the product.

ADFs

ECMWF global forecast data

In addition to the Level-1B auxiliary data, the Level-1C and Level-2A auxiliary data also includes meteorological parameters, temporally and spatially interpolated from raw ECMWF global forecast data sets:

  • Total Column Ozone (TCO3) [kg/m2]

  • Total Column Water Vapour (TCWV) [kg/m2]

  • Mean Sea Level Pressure (MSLP) [hPa]

  • 10 meter V wind component (10v)

  • 10 meter U wind component (10u)

  • Relative Humidity @ Isobaric Surface

This meteorological auxiliary data are resampled and distributed within the Level-1C and Level-2A tiles. Grid points are provided in latitude/longitude using the WGS84 reference system.

ECMWF Ozone

Within Level-1C products, in addition to Total Column Water Vapour (TCWV) and Mean Sea Level Pressure (MSLP) auxiliary data, Total Column Ozone (TCO3) auxiliary data is also provided. Expressed in units of kg/m2, TCO3 corresponds to the vertical integrated ozone content.

TCO3 is used in the context of atmospheric corrections, to correct ozone gaseous absorption affecting TOA measurements, and forms part of the On-Ground Configuration Data (OGCD) provided for onward processing (i.e. to Level-2A).

The input data content is provided by ECMWF and is derived from temporal and spatial interpolation of the raw global forecast dataset. This data is then resampled to conform to the Level-1C grid and information requirements. Grid points are provided in latitude/longitude using the WGS84 reference system.

Total Column Water Vapour

Sentinel-2 Water Vapour

One of the parameters included in the Level-1C auxiliary data is the Total Column Water Vapour (TCWV) expressed in kg/m2. This parameter corresponds to the vertically integrated water vapour. TCWV is used in the context of atmospheric corrections, to correct water vapour gaseous absorption affecting TOA measurements.

TCWV data is derived from ECMWF input data resampled and distributed in grid information tiles with the same dimensions as the Level-1C tiles. Grid points are provided in latitude / longitude using the WGS84 reference system.

Mean Sea Level Pressure (MSLP)

One of the parameters embedded in the Level-1C auxiliary data is the Mean Sea Level Pressure (MSLP) expressed in hPa. This parameter corresponds to the atmospheric pressure at sea level.

The MSLP is used in the context of atmospheric corrections to correct TOA measurements for Rayleigh scattering.

It is derived from temporal and spatial interpolation of the raw ECMWF global forecast dataset. This dataset is updated daily. MSLP data is resampled and distributed in grid information tiles with the same dimensions as the Level-1C tiles. Grid points are provided in latitude/longitude using the WGS84 reference system.

More information on these ECMWF inputs can be found at Forecasts charts and data.

CAMS atmospheric auxiliary data

Since 25 January 2022, the Level-1C and Level-2A contain the Copernicus Atmosphere Monitoring Service (CAMS) atmospheric auxiliary data. Indeed, to improve the atmospheric correction when DDV pixels are missing in the image, a fallback solution is to use CAMS atmospheric auxiliary data.

The following CAMS parameters are expected:

  • Total Aerosol Optical Depth at 550nm (aod550): mandatory parameter

  • Surface geopotential (z): mandatory parameter

  • Black Carbon Aerosol Optical Depth at 550nm (bcaod550)

  • Dust Aerosol Optical Depth at 550nm (duaod550)

  • Organic Matter Aerosol Optical Depth at 550nm (omaod550)

  • Sea Salt Aerosol Optical Depth at 550nm (ssaod550)

  • Sulphate Aerosol Optical Depth at 550nm (suaod550

  • Total Aerosol Optical Depth at 469nm (aod469)

  • Total Aerosol Optical Depth at 670nm (aod670)

  • Total Aerosol Optical Depth at 865nm (aod865)

  • Total Aerosol Optical Depth at 1240nm (aod1240)

The original CAMS data covering the whole globe (CAMS Global) can be divided in three types:

  • Global forecasts (from 1 h to 120 h in the future)

  • Global analysis (available within 24 hours)

  • Global reanalysis (covers the period 2003 – June 2020 at the time of this TN)

For more information on the CAMS data catalogue and access, please refer to the following website:

https://confluence.ecmwf.int/pages/viewpage.action?pageId=151530675

Masks

Cloud Masks

The cloud mask is included in the MSK_CLASSI and contains both opaque clouds and cirrus clouds with an indicator specifying the cloud type (cirrus or opaque cloud). Three spectral bands are used to process this mask: a blue band (B1 (443 nm) or B2 (490 nm)), the band B10 (1375 nm) and a SWIR band (B11 (1610 nm) or B12 (2190 nm)).

The blue and the SWIR bands are defined in a GIPP. By default, the BLUE band is the band B1 and the SWIR band is the band B11.

The processing is performed at a spatial resolution of 60 m (the lower resolution of the three spectral bands).

The processing steps are:

  • Resampling the data in 60 m resolution (modification of the spatial resolution + radiometric interpolation),

  • Cloud detection.

The cloud detection is based on spectral criteria:

  • Opaque cloud mask: the same criteria as for the inventory, described in paragraph 3.1.4, are used.

  • Cirrus mask: the cirrus clouds are very wispy and are often transparent. They form themselves only at high altitudes (about 6 or 7 km above the Earth’s surface). These properties are used to discriminate this type of clouds from opaque clouds. Therefore, the cirrus mask processing is based on two spectral criteria. As cirrus clouds are formed only at high altitude, they are characterised by a high reflectance in the band B10 (1375 nm). As they are also semi-transparent, they are not detected by the blue threshold defined above. A pixel, which respects these two criteria, has a good probability to be a cirrus. Nevertheless, it is important to notice that it is just a probability and not a certainty. Indeed, there exists some opaque clouds which are characterised by a low reflectance in the blue band and which are detected by this cirrus mask algorithm.

The cloud mask determination method is then composed of theses following steps:

  • Atmospheric correction

  • Threshold on blue reflectance for opaque clouds detection

  • Threshold on B10, including a threshold modulation in accordance with ground elevation, to detect cirrus clouds.

  • Snow index calculation

  • Cloud masks refinement

  • Mathematical morphology

  • Some of them are detailed in the next paragraphs.

Atmospheric correction

Ground reflectance is not the only contributor to the signal observed by the satellite. In fact, the Rayleigh diffusion and the aerosols diffusion add a positive contribution. Consequently, by removing the diffuse atmospheric contribution, it should improve the effectiveness of the thresholds that are applied to the reflectance.

The aerosols atmospheric content is very variable in time and space, and it is almost impossible to predict it. On the other hand, Rayleigh diffusion depends on the acquisition geometry (solar and viewing angles) and is perfectly modelled by radiative transfer code. It is then proposed, as a pre-processing, to remove the effect of the Rayleigh diffusion. For that, a Look Up Table (LUT) was created. It contains the top of atmosphere reflectance due to the Rayleigh diffusion for many different acquisition geometries. The solar zenithal angle has been chosen in a range from 0° to 90° with a step of 5°, the viewing zenithal angle in a range from 0° to 20° with a step of 5° and the difference between the solar azimuthal angle and the viewing azimuthal angle in a range from 0° to 360° with a step of 10°. The reflectance due to Rayleigh diffusion has been calculated in each case with the 6S radiative transfer code and is stored in an ascii file.

B10 altitude thresholding

The B10 band is an absorption band of water vapor so, at low altitude, this band shows clouds and not ground. Indeed, the B10 band detects only things at high altitude (cirrus clouds, top of the opaque clouds and mountaintops). The cirrus cloud mask is essentially calculated with the spectral band B10. Nevertheless, mountaintops higher than about 3,000 m of altitude are, at least, as bright as cirrus clouds. So, beyond an elevation of 3,000 m, it is impossible to distinguish cirrus clouds and ground that is why the cirrus cloud mask is calculated only below 3,000 m. Moreover, at this altitude, ground has, in general, a reflectance on B10 below 0.0220.

To avoid these false detections, a modulation of the B10 threshold value is created as follows:

Figure 14: Absorption spectrum of water vapor with Sentinel-2 band B10

This modification is applied on cirrus cloud mask and opaque cloud mask.

Snow index calculation

With the spectral criteria used for opaque cloud detection algorithm, snow is most of the time identified as opaque clouds. Snow, on mountain, is as bright as opaque clouds in bands B1 and B10. To avert these false detections, a snow index can be derived from bands B4 (665 nm) and B11 (1610 nm). Indeed, snow reflectance is very low in B11 but not in B4 as shown in next figure:

Figure 15: Evolution of threshold_B10 with ground elevation in wetlands

The snow index is defined as follows:

Snow_index = (B4) / (B11)

Then it is possible to create a snow mask with this index:

If (B1) > threshold_B1 and B10 < threshold_B10 modulatedWithGroundElevation and snow_index > threshold_snow_index:

Pixel is snow

This mask allows distinguishing snow and opaque clouds.

Cloud mask refinement

The clouds masks can be computed taking the snow masks and the threshold on B10 modulated with ground elevation as follows:

If (B1) > threshold_B1 and Pixel is not snow

Pixel is opaque

Else If (B1) < threshold_B1

(B10) > threshold_B10 modulatedWithGroundElevation

Pixel is cirrus

A pixel is declared cloudy if it satisfies the criteria defined above. A cloud image is then filled in with 0 if is a cloud free pixel, 1 if it is an opaque pixel and 2 for a cirrus pixel. Nevertheless, these criteria are not perfect. There could be false detections due to a high reflected feature in the blue band or due to a geometric error. Indeed, clouds are not spectrally registered.

To limit the impact of such errors, a filtering is performed on the cloud masks (on the opaque and on the cirrus masks separately) using an opening (morphology-based operations). This processing ensures that a pixel declared cloud free is really cloud free. The intersection of the two masks is then handled after the filtering operation. If a pixel has two labels (i.e. 1 and 2), the opaque label (1) prevails.

The percentage of cloudy pixels is calculated on the cloud mask. It corresponds to the ratio between the pixels declared cloudy (including opaque and cirrus clouds: label 1 and label 2) and the total number of pixels in the image.

The percentage of cirrus clouds is also calculated on the cloud mask. It corresponds to the ratio between the pixels declared cirrus (label 2) and the pixels declared cloudy (including cirrus and opaque clouds).

L2A Algorithms

The Level-2A processing includes a Scene Classification and an Atmospheric Correction applied to Top-Of-Atmosphere (TOA) Level-1C orthoimage products. Level-2A main output is an orthoimage atmospherically corrected, Surface Reflectance product.

Please be aware that "Surface Reflectance (SR)" is a new term that has been introduced to replace the former one: "Bottom of Atmosphere (BOA) reflectance."

The Level-2A algorithms have been developed by DLR/Telespazio, and rely on Sen2Cor [R1] processor algorithm is a combination of state-of-the-art techniques for performing atmospheric corrections which have been tailored to the Sentinel-2 environment together with a scene classification module described in [R2].

Defective, non-existent and saturated pixels are excluded from the Level-2A processing steps. The surface reflectance is performed at the resolution of the native products depending on the band resolution (10, 20 and 60 m). The Level-2A algorithms require information derived from bands with different resolutions. Some channels are resampled at 60 m for the needs of the algorithms.

The Scene Classification (SCL) algorithm allows the detection of clouds, snow and cloud shadows and generation of a classification map, which consists of three different classes for clouds (including cirrus), together with six different classifications for shadows, cloud shadows, vegetation, not vegetated, water and snow. Cloud screening is applied to the data in order to retrieve accurate atmospheric and surface parameters during the atmospheric correction step. The L2A SCL map can also be a valuable input for further processing steps or data analysis.

The SCL algorithm uses the reflective properties of scene features to establish the presence or absence of clouds in a scene. It is based on a series of threshold tests that use as input: TOA reflectance of several Sentinel-2 spectral bands, band ratios and indexes like Normalised Difference Vegetation Index (NDVI) and Normalised Difference Snow and Ice Index (NDSI). For each of these threshold tests, a level of confidence is associated. It produces at the end of the processing chain a probabilistic cloud mask quality indicator and a snow mask quality indicator. The most recent version of the SCL algorithm includes also morphological operations, usage of auxiliary data like Digital Elevation Model and Land Cover information and exploit the parallax characteristics of Sentinel-2 MSI instrument to improve its overall classification accuracy.

The aerosol type and visibility or optical thickness of the atmosphere is derived using the Dense Dark Vegetation (DDV) algorithm [R3]. This algorithm requires that the scene contains reference areas of known reflectance behaviour, preferably DDV and water bodies. The algorithm starts with a user-defined visibility (default: 40 km).

If there are not enough DDV-pixels present in the image, then the aerosol optical depth estimates present in the CAMS auxiliary file (embedded in L1C and L2A products) are used to derive the visibility of the atmosphere.

Water vapour retrieval over land is performed with the Atmospheric Pre-corrected Differential Absorption (APDA) algorithm [R4] which is applied to the two Sentinel-2 bands (B8a, and B9). Band 8a is the reference channel in an atmospheric window region. Band 9 is the measurement channel in the absorption region. The absorption depth is evaluated in the way that the radiance is calculated for an atmosphere with no water vapour assuming that the surface reflectance for the measurement channel is the same as for the reference channel. The absorption depth is then a measure of the water vapour column content.

Atmospheric correction is performed using a set of look-up tables generated via http://www.libradtran.org/. Baseline processing is the rural/continental aerosol type. Other look-up tables can also be used according to the scene geographic location and climatology.

Figure 16: The figure shows from left to right: (1) Sentinel-2 Level-1C TOA reflectance input image, (2) the atmospherically corrected Level-2A Surface Reflectance image, (3) the output Scene Classification map of the Level-1C product.

[R1]: M. Main-Knorn, B. Pflug, J. Louis, V. Debaecker, U. Müller-Wilm, F. Gascon, "Sen2Cor for Sentinel-2", Proc. SPIE 10427, Image and Signal Processing for Remote Sensing XXIII, 1042704 (2017)

[R2]: Sentinel-2 Level-2A ATBD

[R3]: Kaufman, Y., Sendra, C. Algorithm for automatic atmospheric corrections to visible and near-IR satellite imagery, International Journal of Remote Sensing, Volume 9, Issue 8, 1357-1381 (1988)

[R4]: Schläpfer, D. et al., "Atmospheric precorrected differential absorption technique to retrieve columnar water vapour", Remote Sens. Environ., Vol. 65, 353366 (1998)

Scene Classification (SC)

The SC algorithm enables:

  • generation of a classification map which includes four different classes for clouds (including cirrus) and six different classifications for shadows, cloud shadows, vegetation, soils/deserts, water and snow

  • provision of associated quality indicators corresponding to a map of cloud probability and a map of snow probability.

The SC algorithm steps are presented in Figure 17. The algorithm includes:

  • cloud/snow detection

  • cirrus detection

  • cloud shadow detection

  • classification mask generation.

The SC processing is applied to Level-1C products (TOA reflectance) resampled at a spatial resolution of 60 m.

Figure 17: Level-2A Classification Processing Modules (grey) and Outputs (red)
(NN: Neural Network, TS: Threshold algorithm)

Cloud/Snow Detection

The steps of the cloud/snow detection algorithm sequence are presented in Figure 18.

Figure 18: Level 2 Cloud/Snow Detection Algorithm Sequence

The cloud/snow detection algorithm is based on a series of threshold filtering steps:

Cloud/snow detection steps

Step 1a: Brightness Thresholds on Red (Band 4)

This step is targeted at discarding cloud-free pixels by applying two thresholds on band 4 (red) reflectance. If:

  • band 4 reflectance is lower than a band 4 T1 threshold (0.07), the pixel is considered as cloud-free (cloud probability equal to 0.0)

  • band 4 reflectance is higher than a band 4 T2 threshold (0.25), the pixel is considered as cloudy (cloud probability equal to 1.0) and passes to step 2 processing

Pixels with band 4 reflectance between band 4 T1 and band 4 T2 threshold values are considered as potentially cloudy (with a cloud probability calculated linearly from 0.0 to 1.0) and pass to step 1b processing.

Step 1b: Normalised Difference Snow Index (NDSI)

The NDSI ratio (Equation 1) is a ratio of two bands: one in the VIR (Band 3) and one in the SWIR (Band 11). Snow absorbs in the SWIR, but reflects in the VIR, whereas cloud is generally reflective in these Bands.

Equation 1: NDSI Ratio

Most potential cloudy pixels have NDSI values in a range between -0.1 and +0.2, therefore:

  • pixels with strong NDSI negative values (lower than NDSI T1 threshold) are considered as cloud-free (cloud probability equal to 0.0)

  • pixels with NDSI values exceeding an NDSI T2 threshold value are considered as cloudy (cloud probability equal to 1.0)

  • pixels with NDSI values between NDSI T1 and T2 threshold values are considered as potentially cloudy (with a cloud probability calculated linearly from 0.0 to 1.0 and multiplied by step 1a cloud probability).

Pixels with a cloud probability higher than zero pass to Step 2 processing.

Step 2: Snow Detection / Snow Confidence Mask

The objective of this step is to detect snow pixels and to create a snow confidence mask. This step is split into four successive filters on band 2, band 3, band 8 and band 11 reflectance values. It is only applied to pixels for which snow has been detected during the past 10 years.

Step 2.1 Snow Filter 1: Normalised Difference Snow Index (NDSI)

The first filter (step 2.1) is particularly useful for eliminating snow. It is based on the understanding that:

  • cloud and snow reflectances are similar in band 3

  • band 11 reflectance for clouds is very high while it is low for snow.

This filter is based on applying two thresholds on NDSI values. If:

  • pixels have NDSI value under a NDSI T1 threshold (0.20), they are considered as 'no snow' pixels (snow probability equal to 0.0)

  • pixels with NDSI values exceeding NDSI T2 threshold (0.42) are considered as 'snow' pixels (snow probability equal to 1.0)

  • pixels with NDSI values between NDSI T1 and NDSI T2 thresholds are potentially snowy (with a snow probability calculated linearly from 0.0 to 1.0).

Pixels with a snow probability higher than zero pass to step 2.2.

Step 2.2 Snow Filter 2: Band 8 thresholds

The second filter (step 2.2) eliminates pixels that have high NDSI values and low band 8 (NIR) reflectance. If:

  • pixels have band 8 reflectance lower than a band 8 T1 threshold value (0.15), they are considered as 'no snow' pixels (snow probability equal to 0.0)

  • pixels have band 8 reflectance higher than a band 8 T2 threshold value (0.35), they are considered as 'snow' pixels (snow probability equal to 1.0)

  • pixels have band 8 reflectance between band 8 T1 and band 8 T2 threshold values, they are considered as potentially snowy (with a snow probability calculated linearly from 0.0 to 1.0 and multiplied with precedent snow probability).

Pixels with a snow probability higher than zero pass to step 2.3.

Step 2.3 Snow Filter 3: Band 2 thresholds

The third filter (step 2.3) eliminates pixels that have high NDSI values and low band 2 (blue) reflectance. If:

  • pixels have band 2 reflectance lower than a band 2 T1 threshold value (0.18), they are considered as 'no snow' pixels (snow probability equal to 0.0)

  • pixels have band 2 reflectance higher than a band 2 T2 threshold value (0.22), they are considered as 'snow' pixels (snow probability equal to 1.0)

  • pixels have band 2 reflectance between band 2 T1 and Band 2 T2 threshold values, they are considered as potentially snowy (with a snow probability calculated linearly from 0.0 to 1.0 and multiplied with precedent snow probability).

Pixels with a snow probability higher than zero pass to step 2.4.

Step 2.4 Snow Filter 4: Ratio Band 2 / Band 4

The fourth filter (step 2.4) eliminates pixels that have high NDSI values and low Band 2/Band 4 reflectance ratio which usually corresponds to water bodies. If:

  • pixels have band 2/band 4 reflectance ratio lower than a band 2/band 4 T1 threshold value (0.85), they are considered as 'no snow' pixels (snow probability equal to 0.0)

  • pixels have band 2/band 4 reflectance ratio higher than a band 2/band 4 T2 threshold value (0.95), they are considered as 'snow' pixels (snow probability equal to 1.0)

  • pixels have band 2/band 4 reflectance ratio between band 2/band 4 T1 and band 2/band 4 T2 threshold values, they are considered as potentially snowy (with a snow probability calculated linearly from 0.0 to 1.0 and multiplied with precedent snow probability).

Pixels with a snow probability higher than zero pass to step 2.5.

Step 2.5: Processing of Snow Boundaries Zones

This process removes false cloud detection at the boundaries of a snowing region where mixed pixel (snow and ground) could be detected as 'cloud' in the cloud detection algorithm. The 'snow' region is dilated and band 12 reflectance threshold filtering is applied on the dilated boundary zone. Pixels with band 12 reflectance lower than a band 12 threshold value have snow confidence that remains unchanged. Pixels that exceed the threshold have their snow probability set to 0.0 and are identified as 'no snow'.

Step 2 ends considering the pixel snow probability. If it is below a threshold value, pixels pass to the next cloud detection step, whereas pixels that have their snow probability higher than this threshold are classified as 'snow' pixels in the classification map.

Step 3: Normalised Difference Vegetation Index (NDVI)

This step eliminates highly reflective vegetation pixels using filtering tests based on NDVI (Equation 2).

Equation 2: NDVI Ratio

The NDVI ratio can be determined from the contribution of visible wavelength and near-infra-red wavelengths. Strong and well-nourished vegetation will absorb most of the visible wavelengths that it receives and will reflect back a large proportion of the near-infra-red light, whereas poor condition vegetation or thin areas, will reflect more visible wavelength light and less near-infra-red light.

The NDVI ratio for SENTINEL-2 is outlined in Equation 2a:

Equation 2a: SENTINEL-2 NDVI

  • Pixels with NDVI higher than NDVI T2 threshold value are considered as 'cloud-free' pixels (cloud probability equal to 1.0) and classified as 'vegetation' pixels in the classification map.

  • Pixels with NDVI value lower than NDVI T1 threshold value have a cloud confidence that remains unchanged.

  • Pixels that have a NDVI value between NDVI T1 and NDVI T2 thresholds are considered as potentially cloudy (the cloud probability is calculated linearly from 0.0 to 1.0 and multiplied with precedent cloud probability).

Pixels with a cloud probability higher than zero pass to step 4.

Step 4 Band 8/Band 3 Ratio For Senescing Vegetation

This process eliminates highly reflective senescing vegetation using filtering tests on band 8/band 3 reflectance ratio. This test is based on the fact that senescing vegetation is highly reflective in NIR and more highly reflective in the green than green vegetation due to chlorophyll loss. The band 8/band 3 reflectance ratio is higher for vegetation than for cloud or other scene features.

  • Pixels with band 8/band 3 ratio higher than band 8/band 3 T2 threshold value (0.40) are considered as cloud-free pixels (cloud probability equal to 1.0) and classified as 'vegetation' pixels in the classification map.

  • Pixels with band 8/band 3 ratio lower than band 8/band 3 T1 threshold value (0.36) have a cloud confidence that remains unchanged.

  • Pixels with band 8/band 3 ratio between band 8/band 3 T1 and band 8/band 3 T2 thresholds are potentially cloudy (the cloud probability is calculated linearly from 0.0 to 1.0 and multiplied with precedent cloud probability).

Pixels with a cloud probability higher than zero pass to step 5.

Step 5 Band 2/Band 11 Ratio for Soils and Water Bodies

This process identifies bare soils and bright water/lake pixels via two steps.

Step 5.1 Pass 1 for soils detection

This step allows identification of bare soil pixels using a threshold on the band 2/band 11 reflectance ratio.

The band 2/band 11 ratio values are lower for soils than other scene features including clouds. This identification step is only applied on pixels with band 2 values lower than a threshold that varies linearly as a function of the band 2/band 11 ratio.

  • Pixels with band 2/band 11 ratio lower than the band 2/band 11 T1 threshold value (1.50) are considered as cloud-free pixels (cloud probability equal to 1.0) and classified as soil pixels in the classification map.

  • Pixels with band 2/band 11 ratio higher than the band 2/band 11 T2 threshold value (2.50) have a cloud confidence that remains unchanged.

  • Pixels with band 2/band 11 ratio between band 2/band 11 T1 and band 2/band 11 T2 thresholds are considered as potentially cloudy (the cloud probability is calculated linearly from 0.0 to 1.0 and multiplied with precedent cloud probability).

Pixels with a cloud probability higher than zero pass to step 5.2.

Step 5.2 Pass for water bodies detection

This step identifies different types of water bodies.

The band 2/band 11 ratio values are higher for water bodies than other scene features including clouds. This identification step is only applied to pixels with band 12 values lower than a threshold that varies linearly as a function of band 2/band 11 ratio.

  • Pixels with band 2/band 11 ratio higher than the band 2/band 11 T2 threshold value are considered as cloud-free pixels (cloud probability equal to 1.0) and classified as water pixels in the classification map.

  • Pixels with band 2/band 11 ratio lower than the band 2/band 11 T1 threshold value have a cloud confidence that remains unchanged.

  • Pixels with a band 2/band 11 ratio between band 2/band 11 T1 and band 2/band 11 T2 thresholds are considered as potentially cloudy (the cloud probability is calculated linearly from 0.0 to 1.0 and multiplied with precedent cloud probability).

Pixels with a cloud probability higher than zero pass to step 6.

Step 6 Band 8/Band 11 Ratio for Rocks and Sands in Deserts

This process allows identification of highly reflective rocks and sands in desert landscapes. Rocks and sands tend to exhibit higher reflectance in band 11 than in band 8, whereas the opposite is true for clouds.

  • Pixels with a band 8/band 11 ratio lower than the band 8/band 11 T1 threshold value (0.90) are considered as cloud-free pixels (cloud probability equal to 1.0) and classified as soil/desert pixels in the classification map.

  • Pixels with a band 8/band 11 ratio higher than the band 8/band 11 T2 threshold values (1.10) have a cloud confidence that remains unchanged.

  • Pixels with a band 2/band 11 ratio between band 2/band 11 T1 and band 2/band 11 T2 thresholds are considered as potentially cloudy (the cloud probability is calculated linearly from 0.0 to 1.0 and multiplied with precedent cloud probability).

Pixels with a cloud probability higher than zero pass to step 7.

Step 7 Spatial Filtering

This is is an optional step related to spatial filtering.

At this stage, cloud and snow confidence masks are available. This optional filtering takes into account the slight mis-registration of S2 spectral bands at the altitude of clouds. Indeed, S2 spectral bands are co-registered at ground level with the use of a DEM. The spatial filtering also helps to reduce false cloud detection occurring on the borders of highly contrasted regions like river contours or shorelines. It applies a median filter followed by a dilatation operator to the final cloud mask. The kernel size of the filters could be 3 by 3 or 5 by 5, depending on the level of desired artefacts reduction. This spatial filtering is performed for the generation of the three cloud classes and the thin cirrus class in the classification map.

Cirrus Cloud Detection Algorithm and cloud quality cross check

Cirrus cloud detection is based on band 10 (1.375 µm) reflectance threshold filtering tests. The cloud detection relies on strong water vapour absorption at 1.38 µm. If the pixel reflectance exceeds the clear-sky threshold (0.012) and is below the thick cloud threshold (0.035), then thin cirrus clouds are detected.

An additional test is performed with the probabilistic cloud mask obtained at the end of the cloud/snow detection step. This is because pixels classified as cirrus could have a cloud probability unequal to 0. The cloud probability of thin cirrus cloud pixels is checked:

  • If the cloud probability is above 0.65 then the thin cirrus cloud classification is rejected and the pixel classification is set to cloud high probability.

  • If the cloud probability is above 0.35 then the thin cirrus cloud classification is rejected and the pixel classification is set to cloud medium probability.

  • If the cloud probability is below or equal 0.35 then the thin cirrus cloud classification is accepted.

Cloud Shadow Detection Algorithm

The cloud shadow mask is built by multiplying the 'geometrically probable' cloud shadows derived from the final cloud mask, sun position and cloud height distribution, and the 'radiometrically probable' cloud shadow derived from the neural network "dark areas" classification (based on a Kohonen map algorithm).

The pixels that have a cloud shadow probability that exceeds a threshold are classified as cloud shadow pixels in the classification map.

Classification Mask Generation

The classification mask is generated along with the process of generating the cloud mask quality indicator and by merging the information obtained from cirrus cloud detection and cloud shadow detection.

The classification map is produced for each Sentinel-2 Level-2A product at 20 and 60 m resolution and byte values of the classification map are organised as shown in Table 6:

Table 6: Scene Classification Values

Label

Classification

0

NO_DATA

1

SATURATED_OR_DEFECTIVE

2

CAST_SHADOWS

3

CLOUD_SHADOWS

4

VEGETATION

5

NOT_VEGETATED

6

WATER

7

UNCLASSIFIED

8

CLOUD_MEDIUM_PROBABILITY

9

CLOUD_HIGH_PROBABILITY

10

THIN_CIRRUS

11

SNOW or ICE

Atmospheric Correction (AC)

This algorithm allows calculation of atmospherically corrected Surface Reflectance (SR) from Top Of Atmosphere (TOA) reflectance images available in Level-1C products.

Defective, non-existent and saturated pixels are excluded from this Level-2A processing step.

Sentinel-2 Atmospheric Correction (S2AC) is based on an algorithm proposed in Atmospheric/Topographic Correction for Satellite Imagery[1]. The method performs atmospheric correction based on the LIBRADTRAN radiative transfer model [2].

The model is run once to generate a large LUT of sensor-specific functions (required for the AC: path radiance, direct and diffuse transmittances, direct and diffuse solar fluxes, and spherical albedo) that accounts for a wide variety of atmospheric conditions, solar geometries and ground elevations. This database is generated with a high spectral resolution (0.6 nm) and then resampled with Sentinel-2 spectral responses. This LUT is used as a simplified model (running faster than the full model) to invert the radiative transfer equation and to calculate the Surface Reflectance.

All gaseous and aerosol properties of the atmosphere are either derived by the algorithm itself or fixed to an a priori value.

The Aerosol Optical Thickness (AOT) can be derived from the images themselves above reference areas of known reflectance behaviour, preferably Dark Dense Vegetation (DDV) targets and water bodies. If no sufficiently dark reference areas can be found in the scene, an incremental threshold in the 2.2 µm band is applied (from 0.05 to 0.1 and 0.12) to identify reference areas with medium brightness. The visibility, and consequently the corresponding AOT, is automatically derived from a correlation of SWIR reflectance (band 12 = 2.19 µm) with the blue (band 2) and red (band 4) reflectance. The principle of the AOT retrieval method is based on Kaufman et al. (1997) with some slight differences (reduction of negative reflectance values, fixed rural/continental aerosol type, etc.).

Water vapour retrieval over land is performed using the Atmospheric Pre-corrected Differential Absorption (ADPA) algorithm which is applied to band 8a and band 9. Band 8a is the reference band in an atmospheric window region and band 9 is the measurement channel in the absorption region. Haze removal over land is an optional process.

Cirrus detection and removal is the baseline process. Haze removal can be selected instead of cirrus removal. The cirrus detection and removal is based on the exploitation of the band 10 (1.38 µm) measurements and potential correlation of the cirrus signal at this wavelength and other wavelengths in the VNIR and SWIR region.

S2AC employs Lambert's reflectance law. Topographic effects can be corrected during the surface retrieval process using an accurate Digital Elevation Model (DEM). S2AC accounts for and assumes a constant viewing angle per tile (sub-scene). The solar zenith and azimuth angles can either be treated as constant per tile or can be specified for the tile corners with a subsequent bilinear interpolation across the scene.

References

[1] R. Richter and Schläpfer, D.:Atmospheric/Topographic Correction for Satellite Imagery: ATCOR-2/3 UserGuide", DLR IB 565-01/11, Wessling, Germany, 2011.

[2] Mayer, B. and Kylling, A.: Technical note: The libRadtran software package for radiative transfer calculations - description and examples of use, Atmos. Chem. Phys., 5, 1855-1877, https://doi.org/10.5194/acp-5-1855-2005, 2005.

[3] GMES-GSEG-EOPG-TN-09-0029, SENTINEL-2 Payload Data Ground Segment (CGS), Products Definition Document (ESA), Issue 2.3 (March 2012)

[4] GMES-GSEG-EOPG-PL-10-0054, GMES SENTINEL-2 Calibration and Validation Plan for the Operational Phase (ESA document), Issue: 1.6 (December 2014)

[5] SENTINEL-2, ESA's Optical High-Resolution Mission for GMES Operational Services (ESA), SP-1322/2 (March 2012)

[6] M. Drusch, U. Del Bello, S. Carlier, O. Colin, V. Fernandez, F. Gascon, B. Hoersch, C. Isola, P. Laberinti, P. Martimort, A. Meygret, F. Spoto, O. Sy, F. Marchese, P. Bargellini, Sentinel-2: ESA's Optical High-Resolution Mission for GMES Operational Services, Remote Sensing of Environment, Volume 120, 2012 ,Pages 25-36,ISSN 0034-4257, https://doi.org/10.1016/j.rse.2011.11.026

[7] http://www.ecmwf.int/en/forecasts

POD Sentinel-2 Products Specification

Satellite Parameters for POD

The Sentinel-2 mission is supported by two identical spacecraft, Sentinel-2A and Sentinel-2B, flying in the same orbital plane with a phase shift of 180º. An overall description of the satellite is available, showing the geometry of the satellite. Additionally, they are equipped with two dual frequency RUAG GPS receivers to allow POD in order to meet the accuracy requirements of the mission.

Figure 19: Drawing of Sentinel-2A satellite showing the GPS receivers [Credits: ESA]

For Precise Orbit Determination processing it is of paramount importance to know in great detail the mass history of the satellite, the evolution of its centre of gravity, the manoeuvre history and the attitude information. Moreover, for GNSS based processing, the location and orientation of the antennae are required. In the case of the manoeuvre and mass history file (including the CoG position), available hereafter, a historical record is kept since the launch of the satellite:

For the convenience of users, another file combining information on manoeuvres and GNSS outages for the mission is provided below:

Please note that all of the files provided above contain a header that explains the format of their content.

The GPS Antenna absolute phase centre offset and variations (PCO/PCV) of both GPS receivers is located in this ANTEX file.

Metrics

The official POD products in NRT are computed using 24 hours of data. The predicted orbit files are a propagation extracted from the NRT product, and therefore have the same passing metrics. This information and other modelling parameters are included in the Product Handbook. They are computed using P1/P2 code and L1/L2 phase ionosphere-free combinations. The number of used and rejected observations for each timeliness are shown hereafter:

Figure 20: Number of used and rejected observations in Sentinel-2 NRT processing

The RMS of residuals obtained from the processing of pseudorange and carrier phase after applying an ANTEX correction [https://files.igs.org/pub/station/general/antex14.txt] to the GPS antenna are shown below for all generated products.

Figure 21: RMS of GNSS pseudorange residuals in Sentinel-2 NRT processing

Figure 22: RMS of GNSS carrier phase residuals in Sentinel-2 NRT processing

Orbit Comparisons

The operational Sentinel-2 AUX_RESORB solutions from the CPOD Service are compared here against the combined solution (COMB), which is computed as a weighted mean of several external solutions provided by the CPOD QWG.

In the following figures, the position accuracy of each orbit solution is shown (in 2D or 3D RMS depending on the requirement). Each figure is presented along with the distribution of the obtained accuracy metrics, where the percentiles of these metrics are calculated for different thresholds.

The period of time for AUX_RESORB products correspond to the latest RSR report . Orbit comparisons considered as outliers (i.e., those mostly generated from periods of time with manoeuvres or data gaps) have been filtered-out from the statistics shown below.

AUX_RESORB

image-20240813-080044.png

Figure 23: Sentinel-2 AUX_RESORB products – Orbit comparisons against COMB solution [3D RMS; cm] (the accuracy requirement expressed as 1-sigma, if appears, is shown with a blue line; vertical lines indicate periods of manoeuvres or data gaps

Table 7: Sentinel-2 AUX_RESORB products – Accuracy percentiles (they are calculated from the orbit comparisons against COMB solution [3D RMS])

Product Accuracy

Threshold

Percentage Fulfilment

SENTINEL-2A

SENTINEL-2B

3 cm

61.11%

65.54%

5 cm

96.65%

97.06%

10 cm

99.64%

99.71%

50 cm

100.00%

99.95%

100 cm

100.00%

100.00%

Global Reference Image (GRI)

Access to the Copernicus Sentinel-2 Global Reference Image (GRI)

The Copernicus Sentinel-2 Global Reference Image (GRI) was initially generated as a layer of reference composed of Sentinel-2 Level-1B (L1B) images (in sensor frame) covering the whole globe (except high latitudes areas and some small isolated islands) with highly accurate geolocation information. The images, acquired by the Sentinel-2 mission between 2015 and 2018, use the Sentinel-2 reference band (B04) and are mostly (but not entirely) cloud-free. The GRI covers most emerged land masses and has a global absolute geolocation accuracy better than 6 m.

The geometric refinement of the Copernicus Sentinel-2 imagery relies on the GRI and is part of the Sentinel-2 geometric calibration process, applied worldwide since August 2021. It has highly improved the absolute geolocation and the multi-temporal co-registration of Sentinel-2 products. Indeed, thanks to the geometric refinement using the GRI, all the products inherit the same absolute geolocation performance.

Usage of the Copernicus Sentinel-2 GRI can be extended to other missions than Sentinel-2. In this framework and driven by user’s needs, it has been decided to freely give access to the scientific community to the entire GRI. Moreover, in order to facilitate the usage of the GRI, additional versions derived from the original Multi-Layer Copernicus Sentinel-2 GRI in Level-1B have been generated.

Therefore, the following four versions of the GRI are made available:

  • Multi-Layer Copernicus Sentinel-2 GRI in Level-1B (L1B);

  • Multi-Layer Copernicus Sentinel-2 GRI in Level-1C (L1C);

  • Copernicus Sentinel-2 GRI as Database of GCPs in L1B;

  • Copernicus Sentinel-2 GRI as Database of GCPs in L1C.

Table 8: The Table provided the four Copernicus Sentinel-2 GRI versions, along with download access and their corresponding documentation.

The versions of the GRI have been generated by using Sentinel-2A and Sentinel-2B data acquired between 2015 and 2018.

Copernicus Sentinel-2 GRI as Databases of GCPs in Level-1B and Level-1C

The Copernicus Sentinel-2 GRI as Databases of GCPs in L1B and L1C are sets of L1B and L1C chip images, respectively, extracted from the Multi-Layer GRI in L1B.  The GCPs are selected according to their radiometric contrast properties and perennity, making them suitable as a geometric reference. Moreover, since the Multi-Layer GRI in L1B has sometimes overlaps due to different relative orbits acquisitions or to avoid clouds presence, each GCP is consequently composed by multiple measurements. This allows having the same detail of the landscape acquired with different angles of views or on different seasons.

Figure 24: Illustration of GCPs in L1C

Both the L1B and L1C chips are provided in GEOTIFF format, mono-spectral (B4, red channel), 16 bits, 57 x 57p at 10m of resolution. The associated coordinates (sensor or ground) correspond to the center of the chip. L1C chip images are locally rectified using the 30 m Copernicus DEM in UTM projection, using a constant altitude computed at the center of the chip.

They are grouped by square degree (Lat/Long) associated with a metadata file providing quality indicators for each GCP. The coverage of the GRI as Database of GCPs corresponds to the one of the Multi-Layer GRI. It provides a worldwide coverage (except high latitude areas), including most of the islands. Figure 25 shows the density map in terms of number of GCPs within a 1°x1° square of the Copernicus Sentinel-2 GRI as Database of GCPs.

Figure 25: Density map in terms of number of points within a 1°x1° square of the Copernicus Sentinel-2 GRI as Database of GCPs.

The access to download the Copernicus Sentinel-2 GRI as Database of GCPs either in L1B or L1C, as well as the associated documentation (Product Handbook and Validation report), is freely available.

Multi-Layer Copernicus Sentinel-2 GRI in L1C

The Multi-Layer Copernicus Sentinel-2 GRI in L1C was generated by converting the Multi-Layer GRI in L1B into L1C and using the last available operational version of the Sentinel-2 Level-1 processor (PB 05.00) at that time, with the Copernicus DEM at 30 m resolution for orthorectification.

Figure 26: Extent of the Multi-Layer L1C GRI

The access to download the https://s2gri.csgroup.space/#/GRI_L1C/collection.json, as well as the associated documentation (Product Handbook and Validation report), is freely available.

Multi-Layer Copernicus Sentinel-2 GRI in L1B

The Multi-Layer Copernicus Sentinel-2 GRI in L1B is the first GRI version generated and is the one currently used by the ESA Ground Segment to systematically perform the geometric refinement into the Sentinel-2 processing chain, in order to improve the geometric performance of Sentinel-2 products.

Copernicus Sentinel-2 data systematically distributed by the ESA Ground Segment are geometrically refined over the Euro-Africa region since the 30th of March, 2021, and worldwide since the 23rd of August, 2021. Since then, both the Sentinel-2 data absolute geolocation and relative (multi-temporal) performance have significantly improved.

Figure 27: Extent of the Multi-Layer L1B GRI

The access to download the https://s2gri.csgroup.space/#/GRI_L1B/collection.json, as well as the associated documentation (Product Handbook and Validation report), is freely available.

Copernicus Sentinel-2 GRI Distribution Portal : How To Use

Copernicus Sentinel-2 GRI as Databases of GCPs in L1B and L1C

The GRI as Database of GCPs in L1B and L1C STAC versions (GCP_L1B and GCP_L1C) are part of the https://s2gri.csgroup.space/#/?.language=en. It contains the items stored in tar.gz archives and split by latitude and then square degrees.

Figure 28: Example of L1C GCPs GRI Catalog Structure. Similar Catalog Structure is applied as well to the L1B GCPs

The assets for both GRI as Databases of GCPs in L1B and L1C point to:

  • the XNNYNNN.tar.gz archive file, i.e. the actual GRI unitary data (square degree),

  • the XNNYNNN.json file allowing the user to see all information regarding the GCP of square degree without having to download the complete archive file.

  • only for the GRI as Database of GCPs in L1B: a list of .tar.gz files containing the auxiliary data and metadata of the Database from which the GCPs have been extracted.

These data have not been included in the XNNYNNN.tar.gz files because they are heavy, and all the users may not be interested in downloading them (or all of them). As is, the users can choose if they want or not to download these files, knowing that the correspondence between each GCP and the L1B datastrip metadata file is available in XNNYNNN.json. Users can therefore identify the files to download.

The metadata for each item contain:

  • The footprint of the square degree tile,

  • The number of GCPs for the square degree.

For both the GRI as Database of GCPs in L1B and L1C, the main webpage displays the latitudes for which the GCPs are available. The examples below focus on GRI as Database of GCPs in L1C but are also valid for the GRI as Database of GCPs in L1B (Fig.29a). Clicking on one latitude opens the page allowing narrowing the selection to the square degrees for this latitude (Fig.29b).

Figure 29: a) L1C GCP GRI Collection first page; b) L1C GCP GRI for Latitude N61 page

The user can then download the square degree as a tar.gz file, and the corresponding .json file providing all the information regarding the L1C GCP available in this square degree (Fig. 30).

Figure 30: L1C GCP GRI for N61E022 square degree download page

Multi-Layer Copernicus Sentinel-2 GRI in L1C

The Multi-Layer L1C GRI STAC collection (GRI_L1C) is part of the https://s2gri.csgroup.space/#/. It contains the items stored in tar.gz archives and split by UTM zones and UTM tiles.

Figure 31: Multi-Layer L1C GRI Catalog Structure

The metadata for each item contain:

  • The footprint of the UTM tile,

  • The list of relative orbits to which the L1C tiles belong.

The main webpage of the Multi-Layer Copernicus Sentinel-2 GRI in L1C version displays all the UTM zones of the GRI. Clicking on one UTM zone opens a page allowing to select the grid zones (Fig 32a). Grid zones are UTM zones (e.g. T32) restricted to a given latitude band. Clicking on one grid zone opens a page allowing to select the tiles for download (Fig. 32b).

Figure 32:  a) Multi-Layer L1C GRI T32 Grid Zone page ; b) Multi-Layer L1C GRI T32T page

Clicking on one tile opens instead a page allowing to download the L1C tiles corresponding to the displayed UTM tile. The user can then download the L1C overlapped tiles as a tar.gz file (Fig.33).

Figure 33: Multi-Layer L1C GRI T32TLP Tile download page

Multi-Layer Copernicus Sentinel-2 GRI in L1B

The Multi-Layer Copernicus Sentinel-2 GRI in L1B STAC version (GRI_L1B) is part of the https://s2gri.csgroup.space/#/. It contains the items stored in .TGZ archives and split by relative orbit number (from 1 to 143).

Figure 34: Multi-Layer L1B GRI Catalog Structure

The metadata for each item contains:

  • The footprints of the SAFE files contained in the GRI orbit,

  • The GRI orbit number.

The Multi-Layer Copernicus Sentinel-2 GRI in L1B version main webpage displays all the orbits of the GRI (Fig.35a). Clicking on one orbit opens the page allowing the download of the GRI orbit product. The user can then download the orbit as a TGZ file (Fig 35b).

Figure 35: a) Multi-Layer L1B GRI Collection first page; b) Multi-Layer L1B GRI orbit 11 download page

Copernicus Sentinel-2 Collection-1 Availability Status

The Copernicus Sentinel-2 Collection-1 is presently being created over the Sentinel-2 historical archive to provide consistent Sentinel-2A and Sentinel-2B time series with a uniform processing baseline and optimised calibration, in particular improving, but not limited to, the products geometric performance. All historical data in the period spanning from the Sentinel-2A satellite launch back in 2015 until December 2021 are planned to be reprocessed.

The section “Collection-1 products features” below recalls the main anticipated features of Sentinel-2 Collection-1 products.

This article aims at providing up-to-date progress information on the proceedings of the generation of Collection-1 and on the gradual availability of Collection-1 Level-1C and Level-2A products, under the form of a synthetic facts sheet as provided here below.

The Copernicus Data Space Ecosystem is the main distribution service for data from the Copernicus Sentinels missions. These data,including the Sentinel-2 Collection-1, are accessible via a series of APIs, as well as through a new, more intuitive browser interface, the Copernicus Browser.

image copernicus Data Space Ecosystem.JPG

The Sentinel-2 Collection 1 (reprocessed data) featuring processing baseline 5.00 is gradually ingested into the Copernicus Data Space Ecosystem. This ingestion will be completed in the end of Q2 2024. 

The products are made available based on the first acquisitions after the commissioning of the satellites.

Updated availability by sensing time period (*)

Sentinel-2A

Sentinel-2B

Published (Processing baseline 05.00)

From 4 July 2015 to 31 December 2021 included

From 17 March 2017 to 31 December 2021 included

Next period in list (Processing baseline 05.10)

From 1 January 2022 then continuing in chronological order of sensing time, up to 13 December 2023

From 1 January 2022 then continuing in chronological order of sensing time, up to 13 December 2023

Last updated: 17/07/2024

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.