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?
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.
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 EOTaskhere.
I hope this helps at least a bit. Don’t hesitate if there is anything else I can help you with.