Synthèses mensuelles de la durée d'enneigement dans les Alpes françaises

Pour le Conservatoire botanique national alpin j'ai généré les cartes de durée d'enneigement par mois (avril, mai, juin et juillet) pour 2016, 2017 et 2018 à partir de toutes les images Sentinel-2 et Landsat-8 disponibles chez Theia sur les Alpes (tuiles 31TGM 32TLS 31TGL 32TLR 31TGK 32TLQ). Normalement la méthode est conçue pour faire des synthèses annuelles donc j'étais curieux de voir le résultat au pas de temps mensuel.

Detecting geolocation errors in glacier outlines with Sentinel-2 snow cover duration maps

Two years ago I posted an animation of the snow cover area evolution near Zermatt, Switzerland from Sentinel-2 L2A data processed by LIS.

From this time series of snow maps I generated a snow cover duration map and
added the glacier outlines from the Randolph Glacier Inventory 5.0.

Colors: Snow cover duration between 01 Sep 2016 to 31 Aug 2017 (in days). Black line: Glacier outline from RGI.

I was satisfied by the overall good agreement between the areas with a high snow cover duration and the glacier outlines. However by looking more closely at the small isolated glacier in the eastern part I noticed a mismatch between both datasets..
Continue reading

Les séries temporelles de niveau 3A de Sentinel-2


Le mois d'avril, malgré un ennuagement certain, nous a de nouveau offert une belle synthèse sans nuages. En fait, les produits de Niveau 3A de Theia utilisent 46 jours centrés sur le 15 du mois, nous avons donc bénéficié du beau temps des derniers jours de mars ou des premiers jours de mai. Comme chaque mois, Peter Kettig du CNES a produit les synthèses de niveau 3A à partir des données Sentinel-2 du mois précédent. Une colonne de tuiles est dégradée sur l'Ouest de la France. Il s'agit d'un problème dû à la récupération des données Sentinel par PEPS. Nous allons la retraiter.
Les données à pleine résolution, avec leurs masques de qualité, peuvent être téléchargées depuis le serveur de distribution Theia au CNES.

Si vous n'avez pas peur d'y passer trop de temps, alors que de nombreuses urgences vous attendent, vous pouvez jeter un œil aux mosaïques de ces produits disponibles sur la France depuis Juillet. Chaque mosaïque est accessible à partir des liens ci-dessous :

Une chouette interface de visualisation (merci à Michel Lepage !), est aussi disponible ci-dessous, pour comparer la synthèse d'octobre avec celle des mois précédents.

voir en plein écran

Continue reading

Snow cover duration in the Canadian Rockies from Sentinel-2 observations

Recently I generated one year of snow maps from Sentinel-2 in the Canadian Rockies for a talented colleague who is working on the numerical simulation of the snow cover at high-resolution with an exciting new hydrological model. The area is not covered by Theia, hence I used Start_Maja to generate the L2A products and then LIS to generate the snow masks on the CNES supercomputer (thanks!).

Study area (four Sentinel-2 tiles)

This area is quite challenging for snow optical remote sensing: the terrain is steep and there are a lot of forests. After processing this area, I also found some unexpected issues in the LIS processor, which need to be fixed, like turbid rivers detected as snow, or wildfires smoke detected as snow. I tried to use Pekel's water mask to remove the rivers and lakes pixels but there are some glaciers that are misclassified as water in this product hence I simply masked out areas below 2000 m. This eliminates most of the water surfaces but not all the forests, hence I used Hansen's global forest product to mask out pixels with a tree cover density larger than 50%.

Peter Lougheed Provincial Park

Continue reading

Sentinel-2 Level-3A time series


April, despite a certain amount of cloudiness, once again offered us a beautiful, cloudless synthesis. In fact, Theia's Level 3A products use 46 days periods centered on the 15th of the month, and the good weather of the last days of March or the first days of May compensates the cloudy April. As every month, Peter Kettig from CNES produced the Level 3A syntheses from the previous month's Sentinel-2 data. As you can see, a column of tiles is degraded in western France. This is due to a problem during the download of Sentinel data by PEPS. We're going to reprocess it.

Translated with

The full resolution data, and the corresponding data quality masks, can be downloaded from Theia's distribution server at CNES.
If you are not afraid to spend too much time while you have urgent things to do, you may have a look to the mosaic of Sentinel-2 monthly syntheses for each month since July over France. Each monthly synthesis is accessible using the following links :

Or you may also use the nice viewer below (merci Michel Lepage !) to compare with the previous months.

See it full screen
Continue reading

WASP source and executable are now openly available

WASP (Weighted Average Synthesis Processor) is the tool we use to compute the nice (mostly) cloud free syntheses of Sentinel-2 surface reflectances, as shown in the images below. A full resolution viewer is also available in this post, or you may also download the products you can download from Theia. As promised (but it took a while to get the allowance), we have just released it as an open source software and we are also providing a compiled version for linux platforms.

The WASP method was developed at CESBIO by O.Hagolle, in 2007, during the preparation of the Venµs mission. It then evolved and improved with the help of several persons at CESBIO (V.Debaecker, M.Huc, D.Morin, M.Kadiri). Then an operational version was developed by CS Romania within the Sen2Agri consortium funded by ESA, which is distributed as open source. WASP was finally adapted to work in Theia context, and improved by P.Kettig. Peter also set up distribution of the software.

So finally, here is how you can download the software :

  • the source code is available within CNES github repository. You will also find there a forum (issues) and a readme file to compile and use the software.
  • but P.Kettig also compiled an executable version (which is tested on Redhat and Ubuntu), which is available from CNES software distribution server. Until now, only a couple of users have used it, so in case of problems, please open an issue on the github platform.


Sentinel-2 Level 3A products : syntheses or composites ?


For the past few months, Copernicus has been distributing Level 3A products for the Sentinel-2 mission as part of the S2GM (Sentinel-2 Global Mosaics) .


This ambitious project aims to provide monthly, quarterly or annual Level 3A products worldwide. The user defines his zone and period of interest and orders the product. The web site seems to be hosted by SInergise, and as everything done by this company, is easy and very straightforward to use.


The call for tender, with two or three million euros, was launched by the Copernicus program of the European Union two years ago. It required the use of ESA Level 2A official products obtained with Sen2Cor. For this reason, we decided not to participate because our Level 3A method, which calculates a weighted average of non-cloudy observations, requires very good cloud masks, which is not quite the case of Sen2cor products.


The tender was won by a consortium of Brockman Consult, Geoville and SInergise companies. To compensate for the poor quality of cloud detection, the authors of the S2GM product had to use a BAP method: "Best Available Pixel". This method chooses for each pixel the best date according to certain criteria (no cloud or shadow detected, minimum reflectance in the blue, maximum NDVI ...). This method minimizes cloud disturbances when clouds are not detected correctly, but also has the disadvantage of suddenly changing the date from one pixel to another, which causes artifacts and noise. Outputs are therefore composite products , which assemble pieces of images acquired for the different dates available over the period.


Theia Level 3 products are not composites, but syntheses, which use all cloudless observations of a single pixel over the entire monthly observation period to find the value that best represents the surface reflectance we would have had at the central date of the product. Theia's syntheses use the WASP (Weighted Average Synthesis Processor) chain, which calculates a weighted average of surface reflectances over a month, after atmospheric correction and detection of clouds obtained from Level 2A products generated by our MAJA channel , of course. If the clouds are badly detected, they enter into the synthesis and disturb it.

Comparison of a synthesis obtained with WASP + MAJA, with a composite product from S2GM + Sen2cor, on the Toulouse region, in October 2018. (Click on image to enlarge)

The animation provided above shows a full resolution comparison over Toulouse region, of a synthesis of WASP and of the corresponding composite of S2GM obtained on the same date in October 2018. We see very quickly that the composite of S2GM is very noisy, much more than the synthesis from WASP. It is quite often possible to locate the areas where the synthesis tool has chosen to change the date in its composite. You will also notice the appearance of many white dots, which are in fact pixels without clouds, but quite bright that Sen2Cor systematically classifies as clouds.


In short, provided you have a good level 2A product, syntheses can provide much better results than composites.



Produits de Niveau 3A: Synthèses ou composites ?


Copernicus diffuse depuis quelques mois des produits de niveau 3A pour la mission Sentinel-2 dans le cadre du projet S2GM (Sentinel-2 Global Mosaics).


Ce projet très ambitieux a pour but de fournir, à l'échelle mondiale, des synthèses mensuelles, trimestrielles ou annuelles. L'utilisateur définit sa zone et sa période d'intérêt et commande le produit. Le site est très bien conçu et très évident à utiliser.


L'appel d'offres, doté de deux ou trois millions d'€uros quand même, avait été lancé par le programme Copernicus de l'Union Européenne il y a deux ans. Il imposait d'utiliser les produits officiels de niveau 2A de l'ESA, obtenus avec Sen2Cor. C'est pour cette raison que nous avons décidé de ne pas participer, car notre méthode de synthèse, qui calcule une moyenne pondérée des observations non nuageuses, a besoin de très bons masques de nuages, ce qui n'est pas tout à fait le cas des produits de Sen2cor.


L'appel d'offres a été remporté par un consortium composé des sociétés Brockman Consult, Geoville et SInergise. Pour compenser la piètre qualité de la détection des nuages, les auteurs du produit S2GM ont dû utiliser une méthode BAP : "Best Available Pixel". Cette méthode choisit, pour chaque pixel la meilleure date selon certains critères (pas de nuage ou d'ombre détecté, réflectance dans le bleu minimale, NDVI maximal...). Cette méthode permet de minimiser les perturbations nuageuses lorsque les nuages sont mal détectés, mais présente aussi l'inconvénient de changer brutalement de date d'un pixel à l'autre, ce qui cause des artefacts et du bruit. Les sorties sont donc des produits composites, qui assemblent des morceaux d'images acquis lors des différentes dates disponibles sur la période.


Les produits de Niveau 3 de Theia ne sont pas des composites, mais des synthèses, qui utilisent toutes les observations sans nuage d'un même pixel sur la période d'observation mensuelle en entier pour trouver la valeur qui représente le mieux la réflectance de surface qu'on aurait eu à la date centrale du produit. Les synthèses de Theia utilisent la chaîne WASP (Weighted Average Synthesis Processor), qui calcule une moyenne pondérée des réflectances de surface sur un mois, après correction atmosphérique et détection des nuages obtenus à partir de produits de niveau 2A générés par notre chaîne MAJA, bien sûr. Si les nuages sont mal détectés, ils entrent dans la synthèse et la perturbent.

Comparaison d'une synthèse obtenue avec WASP+MAJA, avec un produit composite issu de S2GM+Sen2cor, sur la région de Toulouse, en Octobre 2018. (cliquer sur l

L'animation fournie ci-dessus présente une comparaison sur la région de Toulouse, et à pleine résolution, d'une synthèse de WASP et du composite correspondant de S2GM obtenu à la même date en octobre 2018. On constate très vite que le composite de S2GM est très bruités, beaucoup plus que les synthèses issues de WASP. Il est assez souvent possible de repérer les zones où l'outil de synthèse a choisi de changer de date dans son composite. Vous remarquerez aussi l'apparition de nombreux points blancs, qui sont en fait des pixels sans nuages, mais assez brillants que Sen2Cor classe systématiquement comme nuages.


Bref, à condition d'avoir un bon produit de niveau 2A, les synthèses peuvent fournir de bien meilleurs résultats que les composites.


Sentinel-2 Level3A time series (July, August, September 2018)

If you are not afraid to spend too much time while you have urgent things to do, you may have a look to the mosaic of Sentinel-2 monthly syntheses for September over France. You may access to each monthly synthesis using the following links :

Or you may also use the viewer below to compare with the previous months and see how France became brown in September :

See it full screen

The monthly syntheses are produced using the WASP processor, which is described here.

By comparing the various syntheses, you will see the evolution of the landscape, generally much brownler in September, but this representation will also help you spot the composite artefacts. These are not very numerous, but you will see them :

  • on some web browsers (firefox V58), geometrical differences appear even at a low resolution. Other browsers and versions do not have this defect. It is really not due to Sentinel-2 or Theia products
  • above water and snow (we must work on this defect)
  • where clouds have covered a place during the whole month of July or August. These pixels are flagged as invalid in the products (but not on the mosaic).
  • where clouds or shadows were not properly detected by MAJA
  • at the edges of Sentinel-2 swath. For the first time, in october, a swath edge is clearly visible near Cambrai. The area must have been quite cloudy, and we observe here a greener part on the right, observed later in October, that the browner part on the left. The only way to correct this kind of atefact while keeping a physical meaning to the reflectances, would be to improve Sentinel-2 revisit time
  • some tile edges in July, due to the fact that Level 3A products were not all generated for the 15th of July, but for dates between the 8th and the 26th. This has been corrected for the next months


Snow cover duration from 01 Sep 2017 to 31 Aug 2018 in the Alps and Pyrenees


We are thinking to distribute a new product that would provide the snow cover duration in the Alps and the Pyrenees over a hydrological year (snow persistence map). Here is a preview of a "beta" version that is only 100 m resolution for now.

Snow cover duration from 01 Sep 2017 to 31 Aug 2018. Pixels with less than 60 days were masked out.

A few words on the method (see also here): this map is generated after a linear interpolation at the daily time step of every available Theia snow product. Here we have selected 26 Sentinel-2 tiles, which represents 3189 snow maps for the study period, that is 96 billion pixels to process.
With the accumulation of Sentinel-2 data it becomes possible to look at interannual variability. Here is for example a visual comparison of the snow cover duration calculated from January to May for three years in the Pyrenees (31TCH):

 Snow cover duration 31TCH

Snow Duration from Jan 01 to May 31 in the Pyrenees (tile 31TCH)

We can see longer snow durations for the year 2018, which was an exceptional year!