=>Comme nous l’avons expliqué dans un article précédent, nous avons obtenu de la part de la société GEOSYS des masques de nuages de référence faits main pour Sentinel-2, qui nous ont permis de valider les masques de MACCS/MAJA. Nous avons voulu aller plus loin et comparer avec les masques de Sen2cor. Mais cette comparaison nécessite de résoudre une petite difficulté : les masques de GEOSYS sont généreusement dilatés pour ne pas prendre le risque de laisser passer des nuages dans la chaîne de traitement. Ceux de MACCS/MAJA le sont aussi, alors que ceux de Sen2cor ne le sont pas du tout. Dans ce qui suit, j’ai utilisé les masques de SEN2COR Medium Probability, fournis par la version 2.3.0 de SEN2COR (qui fournit 3 niveaux (High, Medium et Low). Les précisions obtenues pour les deux chaînes sont celles exposées ci-dessous : 

Comparaison des pourcentages de pixels bien classés par MACCS/MAJA (en rouge) et par Sen2cor, en bleu.

 Le reste de l’article expose la méthodologie utilisée pour obtenir ce résultat et montre quelques exemples.

Comparaison directe des masques Sen2Cor et GEOSYS

SEN2COR/GEOSYS
20161231 confusion % nuage_sen2cor clair_sen2cor OA
nuage_geosys 14.68 9.67
clair_geosys 3.36 72.29 86.97
20170103 confusion % nuage_sen2cor clair_sen2cor OA
nuage_geosys 0.71 4.99
clair_geosys 3.33 90.98 91.69
20170113 confusion % nuage_sen2cor clair_sen2cor OA
nuage_geosys 15.74 20.26
clair_geosys 2.3 61.69 77.43
20170202 confusion % nuage_sen2cor clair_sen2cor OA
nuage_geosys 60.63 26.31
clair_geosys 0.99 12.07 72.7
20160209 confusion % nuage_sen2cor clair_sen2cor OA
nuage_geosys 81.89 11.36
clair_geosys 0.13 6.62 88.51

Les résultats ne sont pas très bons, avec 85% de pixels bien classés. On note que lorsque la présence de petits nuages est importante, il y a de nombreux pixels classés comme clairs par Sen2Cor, qui sont classés comme nuages par GEOSYS. Une bonne part de cette différence est probablement dûe à la dilatation des masques de GEOSYS.

Comparaison des masques Sen2Cor dilatés et GEOSYS

Pour résoudre cette difficulté, j’ai dilaté les nuages de Sen2cor. Les résultats pour les mêmes images sont présentés ci-dessous.

SEN2COR dilaté /GEOSYS
20161231 confusion % nuage_sen2cor clair_sen2cor OA
nuage_geosys 22.91 1.43
clair_geosys 38.6 37.06 59.97
20170103 confusion % nuage_sen2cor clair_sen2cor OA
nuage_geosys 3.52 2.17
clair_geosys 43.97 52.51 56.03
20170113 confusion % nuage_sen2cor clair_sen2cor OA
nuage_geosys 31.47 4.53
clair_geosys 29.38 34.62 66.09
20170202 confusion % nuage_sen2cor clair_sen2cor OA
nuage_geosys 80.58 6.36
clair_geosys 8.11 4.95 85.53
20160209 confusion % nuage_sen2cor clair_sen2cor OA
nuage_geosys 88.74 4.51
clair_geosys 2.37 4.38 93.12

 Les résultats s’améliorent sur les images les plus nuageuses, mais se dégradent fortement sur les images les moins nuageuses. Celà est dû au fait que SEN2COR classe souvent les bâtiments brillants et certains sols nus comme nuages. Une fois dilatés ces « petits nuages » prennent une grande importance et dégradent fortement la statistique, comme on peut le voir dans l’image ci-dessous.

Comparaison des masques de nuages obtenus par Sen2cor à gauche et MACCS à droite sur Orléans. Les nuages sont entourés de vert et les ombres de jaune.

Comparaison des masques Sen2Cor et GEOSYS érodé

Afin de ne pas trop défavoriser SEN2COR, pour contourner ce problème, j’ai donc érodé les masques GE0SYS avant de les comparer à ceux de SEN2COR. Voici les résultats pour les mêmes images.

SEN2COR/GEOSYS Erodé
20161231 confusion % nuage_sen2cor clair_sen2cor OA
nuage_geosys 14.54 8.29
clair_geosys 3.51 73.67 88.21
20170103 confusion % nuage_sen2cor clair_sen2cor OA
nuage_geosys 0.65 3.87
clair_geosys 3.39 92.09 92.74
20170113 confusion % nuage_sen2cor clair_sen2cor OA
nuage_geosys 15.04 14.8
clair_geosys 3 67.16 82.2
20170202 confusion % nuage_sen2cor clair_sen2cor OA
nuage_geosys 59.84 24.62
clair_geosys 1.78 13.76 73.6
20160209 confusion % nuage_sen2cor clair_sen2cor OA
nuage_geosys 81.32 10.54
clair_geosys 0.7 7.44 88.76

 Dans ce cas, les résultats s’améliorent légèrement par rapport à la comparaison directe. Le grand nombre de petits nuages détectés par erreur par Sen2cor au dessus des bâtiments représente finalement un faible pourcentage de l’image, et l’accord avec la référence de GEOSYS est bon pour les images peu nuageuses. Mais de fortes différences subsistent par rapport aux masques GEOSYS dans les images fortement nuageuses.Au final, c’est cependant ce dernier résultat, le plus favorable à SEN2COR, que j’ai sélectionné pour la comparaison avec MACCS, que j’ai étendue aux 3 sites disponibles ( Arles, Orléans et Toulouse) 

Comparaison avec MACCS/MAJA

Si on résume les pourcentages de pixels bien classés obtenus sur SEN2COR ou MACCS/MAJA en prenant GEOSYS (érodé dans le cas de SEN2COR) comme référence, on obtient les résultats déjà présentés plus haut. On constate que MACCS/MAJA l’emporte dans tous les cas sauf un (Orléans 20170215). En général, les deux codes sont à peu près d’accord quand les images sont claires, mais divergent quand les images sont nuageuses.Le fait que les masques de référence soient dilatés a probablement une influence sur les résultats, mais il reste que ce résultat est pour moi une démonstration que les masques de MACCS/MAJA peuvent être utilisés dans le cadre de productions opérationnelles. S’il le faut absolument éviter toute erreur, celà pourrait s’effectuer avec un contrôle supplémentaire, mais qui pourrait être très rapide.  Encore un grand merci à GEOSYS pour avoir fourni ses masques de référence, et à l’ESA pour la distribution du logiciel Sen2Cor.  

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.