Detect all clouds in Sentinel 2 imagery

Hi :slight_smile:

I’m trying to observe a specific location over multiple time stamps using Sentinel 2 imagery. I noticed that for some time stamps, there are clouds or fringes of the clouds right over my area of interest, while the entire scene has a very low cloud coverage. I’m trying to automatically detect those scenes by checking if the cloud mask inside the L2A product file overlaps with my area of interest but it seems like the mask only covers major/big clouds of the scene. The shape of the clouds is also more similar to a circle rather than actual clouds. I attached an image of the scene to visualize my problem.

You can see that only the centers of the clouds are covered (its the opague_clouds_10m file). Sometimes small remote clouds are not covered at all. I tried to implement a workaround by analyzing the cloud probability files but they are not very helpful or I just don’t understand what they show. Sometimes pixel have a probability of 100 but there is no cloud, not even nearby in the RGB image (you can also see patterns of the observed terrain in the probability file which makes me already a bit skeptical…). Sometimes probability is around 50 or something while I can easily identify a cloud for this group of pixels in the RGB image.

Is there a reliable method to detect whether there are clouds in my area of interest? Methods which could be implemented in an automated process are preferred if possible :slight_smile:

Thank you very much! You help me a lot!


Have you tested the IDEPIX operator?