Unexpected Cloud Cover From Cloud Mask (CLM) Layer

We make use of the Sentinel-Hub Process API to download our NDVI imagery as well as the Cloud Mask layer (CLM). If there are clouds present in the CLM layer, it is overlayed with the NDVI image to ensure that the cloudy areas are represented as such. It has been noticed that not all clouds are picked up on which makes sense as some clouds are extremely faint and almost appear as a haze. We do however expect this as it cannot be possible to account for the smaller/fainter clouds.

Today, however, we noticed that a small area (on one of our clients farms) was marked as cloudy but when looking at the true colour image and NDVI visualisations on EO Browser for the area, there was no visible cloud. I have attached images for reference to depict what I am speaking about.

Could you please provide some clarity on what might have caused this anomaly? Your feedback would be greatly appreciated.

The farm is located just outside of a town called Kakamas in the Northern Cape of South Africa. The coordinates of the farm house (in DD, WGS84) are: 20,58637 E -28,70515 S.

On a side note, I have read about the Cloud Probability Layer (CLP) that is available for download like the CLM layer. Would one be able to make use of both of these layers (or just the CLP) to reduce the probability of smaller clouds affecting the pixel values?

Hi @impifarm!

Unfortunately, the cloud detector isn’t perfect, and it is very likely that - as you say - some smaller clouds or haze isn’t picked up. However, let’s see what can be done in this case.

You mention that you were visualizing this in EO Browser. Could I ask you to share the EO Browser link with the appropriate location and date? It is hard to find the exact scene that you have in mind based on the coordinates alone. I also don’t see any attached images that you mentioned.

You can click on the “share” icon (far right) to obtain a short URL.



Hi Matic.

Thanks for the swift response, your feedback is appreciated.

My apologies for not making sure that I sent the images through. I have attached the overlayed image here (as a new user I can only upload a single image):

Here is the url for the image in EO browser as well:
S2 Full image link

Let me know if there is anything else I can do to assist!


Hi @impifarm!

Thanks for the additional info. I have all I need now.

Here are some plots:

True image:

Cloud mask overlayed:

Cloud probabilities overlayed:

As you can see, the cloud detector is confused on the area with the lighter shade of green, where it is mistakenly confident that there is a cloud there, resulting in the mask to be triggered. This is one of the cases where the cloud detector did not see many reference data like this, so it thinks it’s looking at a cloud/haze. In most cases it is correct, but in this case I would say it is just bad luck.

Regarding your question about the probabilities: While it is possible to bring down the sensitivity of the cloud detector, it would also affect other regions/cases where there actually are clouds and it would let them through and contaminate the data. Of course, it also depends on your use case.

If I scroll thorough time, it seems to me this doesn’t happen so much, so perhaps you’re able to live with it, otherwise if the problem persists, another option would be to download all the data and perform cloud cleaning yourself, possibly even utilizing the multi-temporal cloud detector, available as an EOTask here.

I hope this helps at least a bit. Don’t hesitate if there is anything else I can help you with.


Thank you very much for explaining everything so clearly and with the attached images. I can see why those very light farm blocks confused and triggered the mask.

I completely understand regarding the sensitivity of the cloud detector. It makes more sense to keep the sensitivity as it currently is because as you have said there are very few of these cases.

Again as you’ve this is a rare occurrence so we are able to live with it.

I will definitely be in contact again if I have any other queries relating to the imagery we download from sentinel-hub.

Thanks again for all the help.


1 Like