#1 Wed 01 June 2011 14:00
- ranfosic
- Membre
- Date d'inscription: 18 Sep 2007
- Messages: 118
Vote majoritaire entre différents rasters se superposant
Bonjour,
J'aimerais savoir s'il existe un outil sous ArcGIS 10 permettant de faire une sorte de vote majoritaire entre les différentes valeurs de rasters se superposant?
Je m'explique.
Je dispose de 5 rasters de même taille correspondant chacun à une classification de l'occupation du sol. Chaque raster est codé de 1 à 10, ces valeurs correspondant à des classes d'occupation du sol.
Je voudrais obtenir un nouveau raster qui conserve, pour chaque cellule, la valeur ayant le nombre d'occurrences le plus élevé.
Par exemple, pour une cellule, on a 3 raster qui classe le pixel en valeur 1 et 2 autres en valeurs 2. A cet emplacement le nouveau raster
prendrait la valeur 1. Pour une autre cellule, on a la combinaison suivante: 3, 5, 8, 5, 7 -> la cellule prend la valeur 5.
Un problème pourrait se poser si j'ai le même nombre d'occurences pour 2 valeurs: 4,4, 6, 6, 1. Quel valeur attribuée au raster de sortie?
Ceci pourrait être résolu par l'ajout de nouveaux rasters en entrée (chaque raster correspond à une classification réalisée par un algorithme différent et je peux en tester beaucoup).
J'ai testé différents outils disponibles sous ArcMap mais aucun ne me satisfait complètement. L'outil combine de spatial analyst me sort une valeur pour chaque combinaison unique et ne conserve pas les valeurs de départ. L'outil superposition pondérée (Weighted Overlay) ne
fait pas exactement ce que je recherche. Il fait la somme des valeurs multipliées par leur poids d'importance.
Je pense à reclasser mes rasters en multiple de 10: un raster en unités (1 à 9) , l'autre en dizaine (10 à 90), en centaine (100 à 900)...
Puis les additionner. En sortie, j'obtiens des combinaisons de différentes valeurs: 11123, 13311...Il me faut ensuite un moyen pour compter le nombre de chiffres distincts dans chaque valeur et attribuer le chiffre le plus fréquent comme valeur de cellule en sortie.
Ex: Valeur de cellule: 11123
nbre de 1 = 3, nbre de 2 = 1, nbre de 3 = 1.
Comme 3>1
En sortie, on garde la valeur 1.
Je pense que cela doit être possible en programmant (par ex en python) mais je sais pas vraiment comment faire. J'aimerais d'abord m'assurer que cela est réalisable.
Quelqu'un a t-il été confronté à un problème similaire? Voyez vous d'autres pistes que celles que j'ai évoqué?
Ranfosic
Dernière modification par ranfosic (Wed 01 June 2011 14:03)
Hors ligne
#2 Wed 01 June 2011 15:35
Re: Vote majoritaire entre différents rasters se superposant
Hello,
Tu peux essayer la chose suivante : tu convertis tes 5 rasters de valeurs de 1 à 10 en 10 x 5 raster, puis en 10 raster de valeurs cumulées :
Raster 1 : Valeur 1 = 1 , autres valeurs = 0
Raster 1 : Valeur 2 = 1 , autres valeurs = 0
...
Raster 1 : Valeur 10 = 1 , autres valeurs = 0
Ensuite tu les additionne pour avoir un raster du nombre d’occurrences pour la valeur 1 sur les 5 rasters.
Raster 2 : Valeur 1 = 1 , autres valeurs = 0
Raster 2 : Valeur 2 = 1 , autres valeurs = 0
...
Raster 2 : Valeur 10 = 1 , autres valeurs = 0
Ensuite tu les additionne pour avoir un raster du nombre d’occurrences de valeur 2 sur les 5 rasters.
Etc.
Déjà on part sur une base différente qui peut laisser la place à des traitements différents également. Le seul hic est que cette méthode ne conserve pas ton historique des rasters 1 à 5 (les rasters étant des années je suppose )
Le problème suivant consiste à départager les occurrences identiques. A ce niveau, on a un problème de base de donnée classique avec des doublons.
A suivre
Hors ligne
#3 Thu 02 June 2011 13:43
- dominique.lys
- Participant assidu
- Date d'inscription: 5 Oct 2006
- Messages: 473
- Site web
Re: Vote majoritaire entre différents rasters se superposant
Bonjour,
L'outil cells statistics dispose d'un filtre "Majority"
http://help.arcgis.com/en/arcgisdesktop … 000000.htm
When there is more than one majority value for a cell location, the output for that location is NoData.
ça devrait faire l'affaire non ?
Hors ligne
#5 Thu 02 June 2011 18:05
- ranfosic
- Membre
- Date d'inscription: 18 Sep 2007
- Messages: 118
Re: Vote majoritaire entre différents rasters se superposant
Bonjour,
Merci à vous deux pour vos réponses. Elles répondent toutes les 2 à mon problème.
Dominique.lys: l'outil cell statistics correspond exactement à ce que je voulais. Je n'avais pas assez cherché dans les outils disponibles.
Robin: ta méthode fonctionne également. Au départ, je ne comprenais pas vraiment, mais effectivement l'addition des 5 rasters convertit en 1 pour chaque valeur d'occupation du sol, me donne bien leur nombre d’occurrence. Ensuite à partir de ces rasters rasters d’occurrences pour chaque valeur, je peux faire une comparaison, puis un choix pour chaque cellule.
Mes rasters ne correspondent pas à différentes années, mais correspondent chacun à une classification de l'occupation du sol réalisée selon différentes algorithmes de classification (différents classifieurs). Je veux tester cette méthode pour s'assurer d'une certaine justesse dans la détermination des classes.
Bonne fin de journée.
Ranfosic
Hors ligne
#6 Thu 02 June 2011 20:54
Re: Vote majoritaire entre différents rasters se superposant
Je veux tester cette méthode pour s'assurer d'une certaine justesse dans la détermination des classes.
Tu ne testes que la répétabilité, la justesse n'est vraiment que relative.
Certes c'est toujours un certain indicateur, mais est-ce vraiment pertinent. Certes, Churchill a dit un jour
La démocratie est le plus mauvais système de gouvernement, à l'exception de tous les autres qui ont pu être expérimentés dans l'histoire.
Considérons un type d'erreur réalisé communément, mais qu'un seul algorithme arrive à éviter cette erreur, il serait écarté à cause d'un minority report ? La télédétection doit-elle être une démocratie ?
L'algorithme de classification n'étant pas la seule entrée du problème, tu as un certain nombre de biais possibles en ne gardant que cette partie dans ta méthode de "vérification de justesse".
Jérôme Cuinet
L'avantage de la Chine, c'est que le soleil se couche plus tard !
Hors ligne
#7 Fri 03 June 2011 14:12
- ranfosic
- Membre
- Date d'inscription: 18 Sep 2007
- Messages: 118
Re: Vote majoritaire entre différents rasters se superposant
Bonjour Jérôme,
Je suis tout à fait d'accord avec toi quand tu dis
L'algorithme de classification n'étant pas la seule entrée du problème, tu as un certain nombre de biais possibles en ne gardant que cette partie dans ta méthode de "vérification de justesse".
Si possible, j'utilise d'autres moyens pour "tenter" de vérifier ma classification. Je dis bien tenter car pour s'assurer de la pertinence d'une classification il faut disposer d'une vérité terrain fiable, ou d'informations de référence, ce qui n'est pas mon cas.
La classification n'étant qu'une modélisation de la représentation d'un paysage, il faut également bien s'assurer que les données en entrées soient représentatives de la complexité du paysage, ou dans une moindre mesure de ce que l'on veut montrer de ce paysage.
Je ne me suis pas bien exprimé :
Je veux tester cette méthode pour s'assurer d'une certaine justesse dans la détermination des classes.
Ce que je pourrais dire, c'est que si je considère mes données comme représentatives et mes classifieurs suffisamment fiables, cette méthode est une sorte de mesure d'incertitude. J'aurais moins d'incertitude sur un pixel classé 5 fois de suite dans la même classe que sur un pixel prenant 5 valeurs de classes différentes. On peut toujours trouver d'autres moyens pour avoir une idée de cette incertitude (classification floue par ex) mais pour l'instant, je veux tester cette méthode.
Ranfosic
Dernière modification par ranfosic (Fri 03 June 2011 14:13)
Hors ligne