Cette technique de de délimitation d'enneigement et de calcul des surface d'un bassin versant en présence de uages est une variante de l'élaboration de l''enneigement d'un bassin présenté ici
Avec les nouvelles versions de PYTHON 3 et QGIS 3.10 il a été nécessaire de réécrire le script python pour l'adapter à la nnouvelle version. D'autre part la vectorisation dans QGIS 3.10 provoque des erreurs de polygones qu'il a fallut corriger.
La polygonisation des trames (raster) provoque des erreurs dans le cas de formes complexes .
S'il a été possible de simplifier la geometrie pour lle Modele Numerique duTerrain ( MNT )des Alpes et recuperer un polygone sans erreur, ce n'a pa été le cas pour les formes complexes de repartition de la neige (cartes FSC fractional snow cover).
La vectorisation de ces trames provoque des auto-intsections, ,polygones emmelés, moeuds doubles , que QGIS ne sait pas résoudre.
Les différentes tecniques de simplification de géométrie, remodelage des entités, découpe de polygones ne donnent pas de résultas probants. Et la résolution manuelle est bien trop longue ,contraignante et fastidieuse. Et le resultat n'est pas garanti.
La solution retenue sera donc de calculer la surface des cellules élementaires du raster FSC et par cohérence, je vais appliquer le script équivalent au calcul des surfaces de bassin au dessus d'une altitude donnée.
Voici un extrait du code du traitement des surfaces de neige visible
La version précédente était écctite en python2 . Il a fallut réécrire le code pour l'adapter à QGIS 3 et Python 3
notamment utilisation de QgsProject ,changement des algorithme processing.....
le code python et les bassins versant des Alpes sont accessibles sut github https://github.com/gknopf/Surface-d-enneigement