Improvement of high cloud detection in MAJA for Sentinel-2 images.

=> The research to improve the performances of our MAJA atmospheric correction processor relies on a very small team within CESBIO, with two persons, Bastien Rouquié, who is working at improving aerosol retrievals, and myself, who spend most of the time in meetings, or writing blog posts, and sometimes doing both simultaneously ;). This is why improvements take time.

Atmospheric absorption : in blue, the surface reflectance of a vegetation pixel, as a function of wavelength. In red, the reflectance of the same pixel at the top of atmosphere. For a wavelength of 1.38 µm, water vapour totally absorbs the light that comes from the earth surface at sea level.

Anyway, I recently found some time to work on improving cloud masks above water. And these last days, i worked at improving the detection of high cloud using the cirrus band, which is available on Sentinel-2 as well as Landsat 8. As explained in this post, the « cirrus » band is locates in a strong absorption band of water vapour, strong enough to prevent photons from going from the sun to the satellite via the earth surface at sea level. As most of the water vapour lies in the low layers of the atmosphere, the clouds situated higher in the atmosphere have more chances to reflect light to the satellite. As a result, this channel allows us to detect the high clouds. The detection method looks simple : just use a threshold on the cirrus band. Well that’s not that easy !

Mountains can also be above the absorbing layer and send light to the satellite. We have to account for earth surface altitude to detect cirrus clouds. Even if theory suggests an exponential law, we have been using so far a threshold that varies linearly with the altitude. We therefore need to determine the offset and gain of the linear law :

Threshold= S0 + G*h

To tune these values, one needs two steps. First determining the value of S0 using images in low altitude, and then determining the gain on images with higher altitude. Of course, you need to process hundred of images on different sites and different dates to accumulate different surface reflectance and atmospheric conditions.

The plot provided below shows our new threshold law, and compares it to samples of cirrus and cloud free observations from 6 different images, with and without clouds, from three sites, one at law altitude, near Toulouse (S2 tilename = 31TCJ), and two in altitude, on the high plateaux of Madagascar (S2 tilename is 38KPC) and on Atlas mountains in Morocco (S2 tilename is 29RPQ). The data set in this plot is just illustrative of the complexity of the detection.

Sentinel-2 cirrus band reflectance as a function of surface altitude for cirrus clouds (blue) and cloud free (red) pixels for 6 images from three sites in France(31TFJ), Madagascar (38KPC) and Morocco (29RPQ). The New Threshold line is in green, while the previous one (until product version 1.5 is in black).

The new thresholding will be included in version 1.6 of the products delivered by Theia, in a couple of weeks. The previous threshold law had been set to prevent classifying as clouds dry altitude regions, but had the drawback to miss detection of thin cirrus clouds. On the contrary, the new threshold will detect more clouds, but also sometimes classify high altitude regions with a dry atmosphere as clouds. This is what we observe in the following example, over Atlas, on a dry day :

Old cirrus threshold

New cirrus threshold

We still can hope that these bright regions with a dry air are not often cloudy, and that only the driest dates will be wrongly classified as clouds. This case excepted, the new threshold improves the detection of thin clouds. For instance for this other date over Atlas.

Old cirrus thresholdNew cirrus threshold

Or maybe over that date in Madagascar :

Old cirrus thresholdNew cirrus threshold

Really good observers will notice that we are still missing the thinnest parts of the cirrus clouds, but that’s the price to pay not to declare as cloudy the dry mountains. MAJA cloud detection does not only rely on the cirrus bands and several other tests can also detect the thin clouds. Some of you might also have noticed on the above plot the detection threshold of cirrus clouds could be lower to discard more of the blue cloud markers. However, some of the blue symbols were sampled on the image below (left, the cirrus band reflectance coded between 0 and 0.02). Cirrus clouds are present, but they do not disturb the values in the other channels. It would therefore be a pity to advise users not to use these pixels by classifying them as clouds. As I said, high cloud detection with the cirrus band is not that easy !

B10 bandNew cirrus threshold

 

Plus d'actualités

BIOMASS, the third launched satellite mission designed at CESBIO !

After SMOS in 2009, and VENµS in 2017, the CESBIO Laboratory is very proud to see its third proposed mission, Biomass, reach orbit. As always, it has been a long journey from the idea, at the beginning of the century, to the selection in 2013 as the seventh Earth Explorer Mission by ESA, to the […]

« Claude Shannon’s nightmare »

How did I miss the blog animated by Remi Cresson, from « la maison de la télédétection » in Montpellier (House of Remote Sensing) ? It is well written, very funny  and above all it shows impressive results from our favourite optical satellites, exactly what I intended to do in multitemp blog when I had time to […]

[MUSCATE news] back to nominal production

Good news, MUSCATE is back to nominal production !The source of the issue (archiving the produced data) is not solved yet, but it has been mitigated to allow to come back to real time production. A big thanks to the exploitation team and to the CNES computing center who gave us extra disk space to […]

Rechercher