Not all configuration options of sen2cor appear to be traceable in the final level 2A product. As a consequence, it is impossible to know is some correction is or is not applied to the final product. The IODD lists the solution to this, copy the GIPP into the level 2A product. However, this appears not to be the case.
sen2cor offers four corrections that can be enabled/disabled in
L2A_GIPP.xml, as well as some parameters for these algorithms. However, not all processing parameters appear to be covered by the
MTD_DS.xml or other metedata files of the level 2A products. As a consequence it appears to be impossible to reverse engineer the corrections and parameters applied during processing.
The IODD, PDD and SUM documents are vague on this at best. However, section 2.1.2 of the IODD states in an incomplete sentence that the GIPP file is “and [sic] subsequently copied into the AUX_DATA subfolder of the corresponding granule for documentation purposes.” Unfortunately, I can not find such copy in my products. Furthermore, the suggested output is not listed in Table 4 of the IODD either.
As a consequence it is impossible to verify if similar corrections are applied to all images in a time series. Without it is impossible to conclude if a difference is due to a difference in reflectance or due to different TOA to BOA processing.
Therefore, I tried to compile a list of corrections and their presence in the output. I would welcome any additions/corrections. For each section I have added a conclusion on the traceability of the settings/properties. This is all based on the configuration parameters of sen2cor 2.8, as available on the ESA STEP website. Products processed with sen2cor 2.8 change the processing baseline 9999, to indicate a user product (with potentially different settings). However, sen2cor 2.5.5 copies the baseline from the initial product and no such indication is available. This necessitates a copy of the configuration in the final level 2A product.
- Trivial are the settings
Downsample_20_to_60that can be traced by the output generated.
- The presence of the ESA CCI auxiliary data can be found in
MTD_MSIL2A.xmlas values for
- The auxillary
GlobalSnowMap.tiffis provided by default and reported as
The setting for
Median_Filter is not referenced in
MTD_MSIL2A.xml or another output.
Conclusion: if the classification is present, classification was applied. The use of the auxiliary files can be derived by their presence in
MTD_MSIL2A.xml, given the tile is within the latitude limits of SRTM. There is no indication if the median filter was applied.
Some reverse engineering is necessary. In
MTD_MSIL2A.xml there the filename of the LUT used (
LUT_FILENAME). One can compare this value between images to ensure the same LUT was used (see notes on
AUTO in section 18.104.22.168.2 of SUM, page 17). Fortunately the IODD lists the filename specification that allows us to derive the original settings from this single
LUT_FILENAME value. Not clear from the IODD (section 32.4, page 28) is that the first character indicates both the temperature profile and ozone content. Letters F-K indicate the increasing ozone contents for summer profiles, and T-Y are winter profiles.
Conclusion: settings can be reverse engineered from the
Aerosol Optical Thickness
The exact inner workings of this algorithm are unknown to me. The SUM states that this is an initialization parameter. The consequences of changing this setting (another output, or just slower/faster convergence) are unclear to me. However, I can not find it in the metadata of the level 2A product.
Conclusion: setting is not preserved, but may not be relevant?
Water vapor correction
Default: 1. The comments in the GIPP file lists options 0-4, however, the IODD specifies only 0 and 1. Judging by the SUM, the algorithm might have been changed, as there is no indication of multiple algorithms.
Hypothesis: if correction is applied, the water vapor map is available. Otherwise not.
FALSE. When applied, cirrus correction is only applied to output at 20 and 60 meter resolution, not to 10 meter resolution!
There is no indication if the correction was applied in
MTD_MSIL2A.xml. The value for
THIN_CIRRUS_PERCENTAGE and the classification
SC_THIN_CIRRUS are from the classification algorithm instead.
Conclusion: there is no indication if the correction was applied.
Terrain correction (DEM)
TRUE, but necessary parameters not supplied (effectively
Local directory where the DEM can be found or will be cached (irrelevant to processing).
Default is PlanetDEM (90m) for ESA products, none for user products. SRTM 4.1 (90m) is suggested for user products (
http://data_public:GDdci@data.cgiar-csi.org/srtm/tiles/GeoTIFF/), but not enabled by default. Moreover, the IODD states (Table 2, page 15): “Currently only the CGIAR 90 m resolution DEMs are supported, …” Therefore, a local or high resolution DEM is only possible with a workaround. This claim is not repeated in Table 23 (page 35) where the same variable is discussed.
The setting can be found in
Default: 0.100 km. Height to be used in the absence of a DEM, the setting can not be traced in
If a DEM is provided, but
DEM_Terrain_Correction is set to
FALSE, the DEM is “… only used for scene classification and AOT.” (IODD, 22.214.171.124/Table 23)
Conclusion: there is no indication if the correction was applied, only if a DEM was available. A correction with a constant height can not be traced.
Terrain correction (BRDF)
Default: 0 (
L2A_GIPP.xml), however the IODD recommends 21 as default.
There is no reference to the BRDF configuration in
Conclusion: there is no indication if the correction was applied and what settings were used.
There is no reference to the this parameter in
Conclusion: there is no indication of the value used during processing.
Default: 1 (‘variable visibility’)
Unknown setting (not mentioned in either IODD, PDD or SUM).
Most corrections appear to be untraceable. Worst case I will have to rerun all corrections to ensure a homogeneous data set. An unfavorable situation. However, this can easily be solved, by including a copy of the
L2A_GIPP.xml file in the final product.