Généralisation des zones avec Développer et Réduire

Disponible avec une licence Spatial Analyst.

Vous pouvez utiliser les outils Développer et Diminuer pour généraliser ou simplifier les rasters. Contrairement aux outils Filtre majoritaire et Nettoyage de limites, les outils Développer et Réduire vous permettent de cibler la généralisation à une ou plusieurs zones spécifiques. Selon l’outil que vous utilisez, vous pouvez agrandir ou réduire des zones spécifiques. Vous pouvez également contrôler le niveau de généralisation qui aura lieu.

Chaque outil propose deux méthodes. La première est une approche de morphologie mathématique. L’autre approche est axée sur la distance.

Comparaison des outils Développer et Réduire

Les deux outils fonctionnent en permettant à certaines zones de remplacer les cellules d’autres zones.

Développer

Avec l’outil Développer, la taille des zones sélectionnées peut augmenter en se développant dans d’autres zones. En théorie, les Zone Values (Valeurs de zone) sélectionnées peuvent être vues comme des zones de premier plan, les autres valeurs restant des zones d’arrière-plan. Les zones de premier plan peuvent être étendues jusqu’aux zones d’arrière-plan.

Réduire

Avec l’outil Shrink (Réduire), les zones sélectionnées sont réduites, ou diminuent en taille, des cellules d’autres zones se développant en elles. Théoriquement, les Zone Values (Valeurs de zone) sélectionnées sont considérées comme des zones de premier plan, tandis que les valeurs de zone restantes sont considérées comme des zones d'arrière-plan. Avec cet outil, les cellules des zones de premier plan peuvent être remplacées par les cellules des zones d'arrière-plan.

Les îles fines présentes à l’intérieur d’une zone qui sont susceptibles d’être interprétées comme partageant des limites avec la zone, peuvent également être remplacées

Niveau de généralisation

Le niveau de généralisation peut être contrôlé à l’aide du paramètre Number of Cells (Nombre de cellules). Par défaut, ce paramètre a la valeur 1, ce qui signifie que selon l’outil utilisé, l'augmentation ou la diminution des zones sélectionnées correspondra à la taille d’une cellule. Pour augmenter le degré de généralisation, vous pouvez spécifier une valeur supérieure pour ce paramètre. En théorie, cela revient à utiliser l’outil un nombre de fois équivalant au nombre spécifié, les résultats de l’exécution précédente formant l’entrée de l’itération suivante

Méthodes

Deux méthodes permettent de généraliser les rasters avec les outils Développer et Réduire, l’une repose sur la morphologie mathématique et l’autre sur la distance

Morphologie mathématique

L’approche de morphologie mathématique applique un élément structurant au raster pour en extraire une connaissance. Il existe plusieurs formes possibles, la plus répandue étant un simple carré de 3 cellules par 3 cellules. Pendant l’opération, l’inclusion ou l’exclusion de chaque cellule traitée dans le raster est contrôlée dans l’ensemble de la zone sélectionnée (Matheron, 1967, et Sera, 1982). Les algorithmes ont évolué passant du traitement d'images binaires au début du traitement des images pour s’appliquer aux entrées avec de multiples valeurs de zone, et des tailles sélectionnables de l’élément structurant. Pour cette méthode, les outils Développer et Réduire utilisent un carré de 3x3 comme élément structurant.

Approche axée sur la distance

L’approche axée sur la distance suppose que les cellules avec une ou plusieurs valeurs de zone en entrée sélectionnées sont des sources. Chaque cellule du raster en entrée est considérée en fonction de sa distance par rapport à la cellule source la plus proche. La distance est limitée à la distance euclidienne en multiples d’entiers de la résolution de cellule du raster en entrée.

Les conditions suivantes sont évaluées pour déterminer quelle sera la valeur en sortie finale de n’importe quelle cellule dans cette distance. Bien que les descriptions concernent l’outil Développer, les mêmes principes s’appliquent à l’outil Réduire.

  • Si une cellule ne peut trouver qu’un type de cellule source de zone dans la plage de distance autorisée, le développement se produira dans cette cellule avec cette valeur de zone.
  • Si une cellule possède plusieurs types de valeurs de zone dans la distance autorisée, le développement se fera dans cette cellule selon la valeur de la zone la plus proche.
  • Si une cellule possède plusieurs types de cellules sources dans la distance autorisée, et que deux cellules sources ou plus se trouvent à égale distance, l’algorithme tiendra compte en premier de la contribution de chacune des zones sources. La zone dont la contribution totale est la plus importante sera utilisée en tant que valeur en sortie pour cette cellule.
  • Une égalité signifie que deux zones source ou plus sont à la fois les plus proches et possèdent des contributions égales. Dans ce cas, le développement dans la cellule sera effectué par la source ayant la valeur de cellule la plus faible.

Exemples

Les exemples ci-après montrent l’utilisation de ces outils lorsque les paramètres de leur Expand method (Méthode Développer) ou Shrink method (méthode Réduire) respectives sont définis sur l’option Morphological (Morphologique) par défaut.

Exemple de l’outil Développer

Dans l’image ci-dessous, la fonction Développer a été appliquée au raster en entrée : la zone 5 a été agrandie d’une cellule. Notez que la zone 5 s’étend jusqu’aux valeurs NoData en bas à droite.

Illustration de l’outil Développer
OutRas = Expand(InRas1, 1, 5, 'MORPHOLOGICAL')

Exemple de l’outil Réduire

Dans l’image ci-dessous, l’outil Réduire est appliqué au raster en entrée : la zone 5 est donc réduite d’une cellule. La largeur de la zone 5 n’excède jamais deux cellules dans n’importe quelle surface ; toutes les cellules contenant la valeur 5 sont remplacées par la valeur qui survient le plus souvent dans leur voisinage. La valeur NoData occupe deux emplacements en bas à droite, car il s’agit de la valeur qui apparaît le plus souvent dans ces emplacements.

Illustration de l’outil Diminuer
OutRas = Shrink(InRas1, 1, 5, 'MORPHOLOGICAL')

Dans l’image ci-dessous, la fonction Réduire a été appliquée au raster en entrée : la zone 4 et la zone 6 ont été contractées d’une cellule. Dans l’angle supérieur gauche, la valeur 4 est conservée, car elle est plus profonde qu’une cellule.

Illustration de l’outil Diminuer
OutRas = Shrink(InRas1, 1, [4, 6], 'MORPHOLOGICAL')

Pour spécifier plusieurs valeurs de zone dans Python, vous devez définir une liste de valeurs multiples entre crochets.

Bibliographie

Matheron, G., Éléments pour une théorie des milieux poreux, Masson, Paris, 1967

Serra, J. Image Analysis and Mathematical Morphology, Academic Press, London 1982

Rubriques connexes