iCOR-OLCI Plugin For SNAP Toolbox: Software User Manual
iCOR-OLCI Plugin For SNAP Toolbox: Software User Manual
Contents
1. Introduction ......................................................................................................................... 3
1.1. Scope ................................................................................................................................ 3
1.2. ICOR for OLCI background ................................................................................................ 3
i) AOT retrieval.................................................................................................................... 3
ii) Adjacency correction SIMEC ............................................................................................ 4
iii) Application of SVC gains .................................................................................................. 4
iv) Atmospheric correction ................................................................................................... 4
1.3. Reader level ...................................................................................................................... 4
1.4. References ........................................................................................................................ 4
2. Software installation ........................................................................................................... 6
2.1. Hardware requirements ................................................................................................... 6
2.2. Software requirements .................................................................................................... 6
2.3. Download and installation................................................................................................ 7
3. Processors.......................................................................................................................... 12
3.1. I/O parameters ............................................................................................................... 12
3.2. Processing parameters ................................................................................................... 13
4. Processing time ................................................................................................................. 20
5. Failures .............................................................................................................................. 20
6. Known issues ..................................................................................................................... 21
Acknowledgement..................................................................................................................... 22
1. Introduction
1.1. Scope
This document describes the installation and handling of the iCOR-OLCI plugin for SNAP.
The plugin allows users to perform the iCOR atmospheric correction on OLCI images for land,
inland and coastal waters.
iCOR for OLCI Sentinel-3 is a modified implementation of the ICOR approach as already
implemented in SNAP for the correction of Sentinel-2 and Landsat-8 (De Keukelaere et al.
(2018)). The methodology is briefly explained below.
i) AOT retrieval
One of the unknown input parameters for performing the atmospheric correction is the AOT
(Aerosol Optical Thickness). In iCOR we implemented an adapted version of the land based AOT
retrieval technique described by Guanter et al. (2005). The methodology can be summarized as
follows:
• The raw TOA image is subdivided into tiles of about 15 × 15 km which are small enough
to assume atmospheric homogeneity and large enough to include sufficient spectral
variability.
• For each tile with a cloud and water percentage less than respectively 20% and 50%, we
search for the lowest radiance value in each of the OLCI visible bands (i.e. Oa1 till Oa10).
This is done for all land pixels in the tile resulting in a dark target spectrum. The lowest
radiance values can be derived from different land pixels in the tile.
• The dark target spectrum is then used to set a first upper AOT boundary value for the
tile:
o The corresponding path radiance of the dark target spectrum is retrieved using
the pre-calculated MODTRAN5 Look-Up-Table (LUT).
o The AOT value leading to the path radiance closest to but not exceeding the
dark spectrum in any of the visible bands becomes the tile upper AOT boundary.
• In the next step, the initial AOT estimation is refined through a multiparameter
endmember inversion technique using selected end-members (ranging from bare soil to
highly vegetated pixels) within the scene.
• If the macro-pixel contains too much clouds and/or the spectral reflectance variability
within the macro-pixel is too small, no AOT retrieval is performed for that macro-pixel.
The AOT value is then interpolated from the nearby macro-pixels for which the retrieval
did succeed. Interpolation is done using an inverse weighted distance.
• Finally, a bilinear interpolation to the nominal pixel resolution is performed.
• In the OLCI implementation, this AOT is finally bounded over water pixels by a max AOT
value. This max AOT value is calculated as the minimum of the AOT values for which the
To correct for the known positive bias in the OLCI Level-1 data, System ViCarious (SVC) gains can
optionally be applied to the radiance data prior to this atmospheric correction step.
For water pixels, a correction for the Fresnel reflectance is applied while land pixels are assumed
to be Lambertian. To deal with uncertainties in the Fresnel correction, mainly related to glint
and haze effects, the water leaving reflectance at Oa21 (1020 nm) is subtracted from the
retrieved water leaving reflectance. This is only performed when a pixel is not mixed
(land/water) or when there are no remaining adjacency effects. This is automatically verified
based on the difference in reflectance in Oa10 (681.25nm) and Oa11 (708.75nm). Furthermore,
in case the reflectance at Oa21 (1020 nm) exceeds the reflectance at Oa17 (865nm), for instance
due to calibration issues, this latter band is used in the correction instead of Oa21.
It should be noted that LUTs are only calculated for the nominal central wavelengths. As a Smile
Correction Processor, like there is for MERIS, is not yet available in SNAP, smile related artefacts
(i.e. due to change of center wavelength between camera’s and pixels) might still be visible in
the iCOR atmospheric correction results. see chapter 6. for more details.
This document is written for SNAP Toolbox users. The document assumes that the reader is
familiar with the basic concepts in the SNAP software and its integrated processors.
1.4. References
De Keukelaere, L., Sterckx, S., Adriaensen, S., Knaeps, E., Reusen, I., Giardino, G., Brescani, M.,
Hunter, P., Van der Zande, D., Vaicute, D. (2018). iCOR Image Correction for Atmospheric
Effects, Results for Landsat-8 OLI and Sentinel-2 MSI, European Journal of Remote Sensing,
Vol. 51, 525-542.
Guanter, L., 2007. New algorithms for atmospheric correction and retrieval of biophysical
parameters in earth observation. Application to ENVISAT/MERIS data.
Guanter, L., Alonso, L., Moreno, J., Member, A., 2005. A Method for the Surface Reflectance
Retrieval From PROBA / CHRIS Data Over Land : Application to ESA SPARC Campaigns 43,
2908–2917.
Richter, R., Schläpfer, D., Müller, A., 2006. An automatic atmospheric correction algorithm for
visible/NIR imagery. Int. J. Remote Sens. 27, 2077–2085. doi:10.1080/01431160500486690
Sterckx, S., Knaeps, E., Adriaensen, S., Reusen, I., Keukelaere, L. De, Hunter, P., 2015. Opera : an
Atmospheric Correction for Land and Water. Proc. Sentin. Sci. Work. 3–6.
Sterckx, S., Knaeps, S., Kratzer, S., Ruddick, K., 2014. SIMilarity Environment Correction (SIMEC)
applied to MERIS data over inland and coastal waters. Remote Sens. Environ.
doi:10.1016/j.rse.2014.06.017
Vermote, E.F., Tanré, D., Deuzé, J.L., Herman, M., Morcrette, J.J., 1997. Second simulation of the
satellite signal in the solar spectrum, 6s: an overview. IEEE Trans. Geosci. Remote Sens. 35,
675–686. doi:10.1109/36.581987
2. Software installation
General :
Windows :
VS2017 x64 redistributables https://support.microsoft.com/en-us/help/2977003/the-
latest-supported-visual-c-downloads
During the installation of SNAP, select the ‘Configure SNAP for use with Python’ checkbox and
refer to the folder where Python 2.7 is installed (by default: C:\Python27\python.exe).
Installati on on WINDOWS
Run iCOR_Setup.msi
A new window will pop-up iCOR Setup. Go through the installation by selecting Next ‘I accept
the terms in the License Agreement’ choose the installation folder (by default: ‘C:/Program
Files/VITO/iCOR/’ for Windows or ‘/opt/vito/icor’ for Linux).
If the tool is successfully installed, you need to provide the installation path to SNAP. Therefore,
in the SNAP toolbox go to Tools Plugins Downloaded Add Plugins.
Browse to the directory where the iCOR files where downloaded, under the subdir ‘sta’ and
select the file.
- iCOR-sentinel3-sta-1.0.0-WINDOWS.nbm
- iCOR-sentinel3-sta-1.0.0-LINUX.nbm
For Windows, the default directory for these files is: C:/Program Files/VITO/iCOR/sta.
For Linux, the default directory for these files is: /opt/vito/icor/sta
Select the plugin (iCOR-sentinel3-sta) and press on Install Next Select ‘I accept the terms in
the License Agreement’ Install.
If you made adaptations to the installation path of one of the software tools (python by default:
C:\Python27\python.exe or iCOR by default: C:\Program Files\VITO\iCOR\), you might need to
adapt the settings through Tools Manage External Tools. A new window will pop-up where
you can highlight which tool you’d like to edit.
3. Processors
When the plugin is loaded in SNAP, the tool can be accessed through Optical iCOR iCOR-
SENTINEL-3-OLCI.
Target product : refers to the name of the output product as it will appear in SNAP. The default
output directory (i.e. C:\Temp) and default output name (i.e. S3*_processed.tif) can be changed
in the Processing Parameters tab.
Open in Snap : When this box is checked, the processed OLCI image will be opened in SNAP
when the iCOR processing has been finished.
Although the option is available, It is not recommended to change the default output file
format.
Explanation parameters
• Display execution output: It is advised to check this box. When this box is checked, the
different steps run through by iCOR are displayed. This helps to check if there was no failure
in one of the processing steps.
A failure might for instance occur when the image based AOT retrieval was not able to
retrieve AOT values from the scene (see WARNING Estimate AOT from image)
• Target output file: By default the output file will be stored under “c:\Temp\” with as
default output name: “S3*_processed.tif”. Users can change the default output directory to
another existing directory. The output name can also be changed. The “C:\Temp” directory
needs to exist. If not, the following warning will pop up :
• Keep Intermediate Files: This option enables the saving of intermediate products which are
used in the atmospheric correction process. These products are:
o Water mask
o Cloud mask
o AOT
During processing all intermediate files are stored into the processing folder, as well as a
“_config.log” file where all processing parameters are stored. This folder can be
accessed and browsed for inspection.
Example (for Windows users):
c:\users\[usenamer]\appData\Local\Temp\icor_3efxwh_proc\
After the final step in the processing, this folder will be deleted.
When failure has occurred, useful information can be derived from the remains in these
folders.
When the ‘keep_intermediate’ option is selected, temporary files will be stored in the
target output location, besides the target output file.
• Apply System Vicarious Gains: When this box is checked the System Vicarious Gains (SVC)
are applied to the at-sensor radiance data prior to the atmospheric correction. Users can
adapt the SVC gains by modifying the S3A.csv and S3B.csv files stored under “C:\Program
Files\VITO\iCOR\bin\Sensor_Sentinel3\s3_svc”. Please note that as currently SVC gains for
S3B are not yet available all values in the S3B.csv are set to “1”. The default SVC gains for
S3A are listed in Table 1.
• Table 1 OLCI S3A SVC gains
• Sensor Name: by default set to S3A. Needs to be set to S3B if an OLCI image of S3B is
selected.
• Use Product Water Mask: when this option is selected, the static water mask derived
from the OLCI Level 1b flags is used to delineate the water pixels in the image. By
default water body detection is based on a threshold value in a single band (see below).
o Use Inland Water Mask: this box can only be checked when also the Use
Product Water Mask box is checked. When checked, the SIMEC adjacency
correction is only applied to inland water pixels identified from the static inland
water mask derived from the OLCI Level 1b flags. This option might be of
interest to users not interested in coastal waters because processing time will
be reduced (SIMEC not applied to coastal waters).
• Water mask Band Id: If the Use Product Water Mask is not set, the water mask is
obtained using a threshold value on a single band. The default setting is using band
Oa18 at 885 nm. Users can change here the band used to create a land/water mask.
• Watermask Threshold: Defines the threshold value for the TOA reflectance for the
water mask. If the value is below the threshold, the pixel is identified as a water pixel,
otherwise it is a land pixel.
• The cloud mask is created using multiple threshold levels. A pixel is identified as a cloud
if it fulfils following requirements:
AND
Average_TOAreflectanceVISbands > ThresholdCloud Mask Average
o Cloud Mask Low Threshold – Threshold value for the cloud low ID band. If this value
is exceeded, one of the requirements of defining a cloud pixel is fulfilled.
o Cloud Low Band Identifier – Band ID used to check the Cloud Mask Low Threshold
value.
o Cloud Mask Average Threshold – Threshold value for the average TOA reflectance
in the VIS range (Oa1 till Oa 10). If this value is exceeded, one of the requirements of
defining a cloud pixel is fulfilled.
• Estimate AOT from image: Checking this box enables the image based AOT retrieval as
explained in paragraph 1.2.
WARNING: The image based AOT retrieval requires the presence of land pixel and sufficient
spectral variability in the scene. The image-based AOT retrieval might fail if scene is
dominated by for instance water, clouds, deserts or snow. In this case a failure message is
given in the execution window when the “display execution output” is checked. In this case
the user has to disable “Estimate AOT from image” (by unchecking the box) and insert of
fixed value in “AOT override value” box.
• AOT Override Value: you can choose to disable the image based AOT retrieval by
unchecking the Estimate AOT from image box and insert a fixed AOT value for the whole
scene.
• Use OLCI water Vapor Meteo Layer: By default the box is checked and the water vapour
concentration as provided in the OLCI auxiliary data layers is used in the atmospheric
correction. Users can uncheck the box and provide a fixed water vapor value in the next
line.
• Water Vapor Override Value: If the Use OLCI water Vapor Meteo Layer is not checked, a
fixed water vapor value, to be used for the whole scene, can be specified here.
• Use OLCI Ozone Meteo Layer: By default the box is checked and the ozone concentrations
as provided in the OLCI auxiliary data layers is used in the atmospheric correction. Users can
uncheck the box and provide a fixed water vapor value in the next line
• Ozone Override Value: If the Use OLCI Ozone Meteo Layer is not checked, a fixed ozone
value, to be used for the whole scene, can be specified here.
• Apply SIMEC Adjacency correction: if the box is checked, the SIMEC adjacency correction is
applied to water pixels as explained in paragraph 1.2. If both Use Product Water Mask and
Use Inland Water Mask were checked, SIMEC is only applied to the inland water pixels
retrieved from the static inland water mask OLCI Level 1b flags
• Keep Water Pixels Only: when checked, the final output image will only contain the water-
leaving reflectance for those pixels identified as water. Land and cloud pixels will be masked.
• Keep Land Pixels Only : when checked, the final output image will only contain the surface
reflectance for land pixels. Water and cloud pixels will be masked.
OUTPUT
For water pixels, iCOR calculates the water-Leaving reflectance and for all other pixels the
surface reflectance. The reflectance is retrieved for all OLCI bands except those affected by
atmospheric gaseous absorption (Oa13, Oa14, Oa15, Oa19, and Oa20). Therefore the ICOR
output product contains 16 spectral bands.
The output can be further analysed using SNAP or other image processing environments. Here
we explain how to visualise the image in SNAP.
Select the image of interest in the Product explorer, go to the Window tab and select Open RGB
Image window. A new window will pop-up where you can select the appropriate band settings.
In first instance you might get an image with only black and white colours, since iCOR sets
invalid pixels at max float.
To change this, go to the Colour Manipulation window (View Tools Windows Colour
Manipulation) and change the range of values for the different colour bands (red, green and
blue). Double click on the value at the end of the colour bar (highlighted in red in the following
figure) and change to more appropriate values (eg. 0 – 0.8). Press enter.
4. Processing time
iCOR is a computational intensive tool. Consequently, other programmes might run slow
meanwhile and the required time needed to process one image can take a while (in the order of
30 to 120 minutes) depending on the scene content and processing steps selected). Mainly the
AOT-retrieval and SIMEC steps are time consuming.
5. Failures
6. Known issues
iCOR LUTs are calculated for the OLCI nominal central wavelengths. However, it is known that
the center wavelengths vary between the five camera’s and between pixels (the so-called
spectral smile). Spectral smile artefacts might be visible in the iCOR results. A change in
reflectance might be observed when crossing the camera boundaries (Figure 1, Figure 2).
Acknowledgement
The research leading to the development of the iCOR atmospheric correction tool for OLCI has
received funding from ESA-ESRIN under the iCOR4S3 contract.