Quality of SLSTR products



I want to extract pixels from SLSTR L-1b products but only the valid ones. For example, for OLCI i use the equation:
quality_flags.invalid == 0 and quality_flags.dubious == 0.

In SLSTR, I suppose, I should do it for each stripe a, b, c, i and for each view differently. Will it be enough to use confidence__cosmetic == 0, located in Masks->met as an indicator of the invalid pixels?

Thank you,

PS are L1c products available?


Invalid pixels will have the no data value of the band. I recommend that you use that one to check for invalid data.
If you want to use a flag, I suggest you use the flags from the respective exception bands, most importantly ISP_absent, no_signal, invalid_radiance and unfilled_pixel .


Hi, Tonio,

What is the meaning of pixel_absent mask? I understand it as a pixel was missing and was cosmetically filled with the neighbouring pixel value. Am I right?


Yes, you’re right. The confirmation is somewhat hidden, but you can find it here: https://sentinel.esa.int/documents/247904/349589/SLSTR_Level-1_ATBD.pdf, chapter


Thank you, Tonio! I was looking for this document.
To confirm, all cosmetically filled pixels are not valid measurements done in a footprint of the pixel, but they are just there for beauty. Thus, these pixels can not be used for making scientific conclusions, can they?


so the best option would be to combine the following masks to avoid mistaken pixels:
thanks for clarification!


on the other hand, you also have “orphan pixels” (i think, that’s what they are called) - valid measurements that aren’t placed into a pixel because the pixel already has a measurement assigned, or in other words multiple valid measurements within the spatial extend of a pixel.

i didn’t follow the most recent developments, but some weeks ago these multiple pixels would be sorted into the image and the orphan category just in the order the algorithm processed them, not according to some quality hierarchy. i.e. for “best” science it could be good to have a look at the orphan pixels and their corresponding image pixels and decide yourself, which ones you want to use (on pixel-by-pixel base). there were plans, though, as I understood, to change that - maybe has been done in the meanwhile…


@Prikaziuk : I leave this up to you. As these pixels come from a Nearest-Neighbour-Interpolation I wouldn’t say they are complete nonsense.

@Luca_D: You could argue that every exception flag should be masked out (see Prikaziuk’s post). I’d propose to look at some images to see what is flagged out and at the document to which I posted a link to understand the meanings of the flags. What is “the best option” is somewhat up to your needs.