Sentinel-3 SLSTR - How to use?

Dear EDC Team,
I was trying to use the S3SLSTR collection but I don’t understand the values that i receive in EDC using xcube_sh. Also there are more bands in the collection than described on SentinelHub Documentation.
See here: S3SLSTR seems to be corrupt/how to use? · Issue #96 · dcs4cop/xcube-sh · GitHub

Hi Peter,

Apologies for the slow reply on this topic, it took a little bit longer than expected to investigate this for you.

Firstly, regarding the different types of bands in Sentinel-3 SLSTR;

Sentinel Hub supports radiance (S1-S6), brightness temperature (S7-S9, F1, F2) as well as the meteorological bands (CLOUD_FRACTION, SEA_ICE_FRACTION, TEMPERATURE, etc). These different types cannot be mixed in a single request, however.

e.g. requesting bands S1, S2, S3 would work fine but would not work if you also requested band S7 in the same request.

In addition, it is highly recommended that when configuring your data cube using xcube, you should specify your upsampling or downsampling method as either bilinear or bicubic. By default, this parameter is set at linear. This will improve the output of the data you receive removing the striping that you can see in the examples you shared in the Github issue.

If there is anything else that I can help with, please let me know :slight_smile:

Hi William,
thanks for your answer and the explanation.
It would be great if this behaviour would be mentioned in a documentation.
Additionally, we tried only loading the S1 band with xcube and it returns only 0, 1 as well. See on github: https://github.com/EO-College/cubes-and-clouds/blob/main/exercises/master_asi_conae/test/test_s1_s3.ipynb

Thank you Peter, thanks for the feedback, we will explore how to make this behaviour clearer in the documentation.

Secondly, the issue with the S1 band, is this isolated to a single time and date or is this occurring regularly?

Hi William,
Peter is not available at the moment but I can confirm that the issue with the S1 band occurs also with different dates.
Additionally, we are also not able to retrieve the local incidence angle and shadow mask bands.
If you try the notebook that Peter linked above you will see both errors.

Hi @Michele.Claus ,

Thank you for reporting the issue. We’re currently investigating the issue and will get back to you soon.

Hi @Michele.Claus and @peterjames.zellner ,

Sorry for the late reply. It took us some time to figure out the issue.

First of all, regarding the error when fetching the localIncidenceAngle data, it turns out that cube configuration in your code is not requesting for orthorectified Sentinel-1 data, meaning that localIncidenceAngle is unavailable as this band is available only if orthorectification is enable (see the documentation). I’m still communicating with the maintainer of xcube_sh to try to get an example code of the cube configuration to enable orthorectification. I would also recommend asking how to enable orthorectification with the CubeConfig class on xcube_sh issue board.

Secondly, the issue with the Sentinel-3 SLSTR S1 band actually comes from the sampleType. When configure a cube with Sentinel-3 SLSTR data, it somehow uses sampleType: "UINT16" in the Evalscript, leading to a response of 0 or 1 as the typical range of the optical bands (S1-S6) is 0 to 0.4. The workaround here is to manually set the band_sample_types to "FLOAT32" when configuring a cube.

Please try the cube configuration below:

cube_config_s3 = CubeConfig(
    dataset_name='S3SLSTR',
    band_names=['S1'],
    band_sample_types="FLOAT32",
    bbox=[11.02, 46.65, 11.36, 46.95],
    spatial_res=0.009,
    upsampling='BILINEAR',
    downsampling='BILINEAR',
    time_range=['2018-02-01', '2018-06-30'],
)