Nettoyage des bords d’une zone avec l’outil Nettoyage de limites

La fonction Nettoyage de limites est utilisée pour appliquer une généralisation le long des bords des zones d’un raster. Les bords sont lissés par l’expansion et la contraction des limites entre les zones.

Généraliser les bords

La fonction Nettoyage de limites généralise ou simplifie les rasters en lissant les limites entre les zones. Il applique une méthode d’expansion et de contraction pour évaluer chaque cellule sur la base de ses voisins immédiats. Plusieurs options permettent de contrôler la manière dont les cellules des zones influencent le lissage. Le degré de lissage peut également être contrôlé.

Trier par priorité

Le processus commence par trier les zones du raster en entrée en fonction d’une priorité particulière. Pour chaque cellule de l’entrée, la priorité est utilisée pour déterminer, parmi les valeurs de zone du voisinage, celle qui peut remplacer la valeur de la cellule de traitement.

La priorité de tri peut être basée soit sur les valeurs des zones, soit sur la taille des zones. Le paramètre Sort type (Type de tri) détermine la priorité de tri à utiliser. Si le paramètre est défini sur la valeur par défaut Do not sort (Ne pas trier), les cellules de zones dotées de valeurs plus importantes seront prioritaires pour s’étendre dans des zones à valeurs moindres. Si le paramètre est défini sur Descending (Décroissant), les zones dotées de surfaces plus importantes seront prioritaires pour s’étendre dans des zones à surfaces moindres. Si le paramètre est défini sur Ascending (Croissant), les zones à surfaces moindres seront prioritaires pour s’étendre dans des zones dotées de surfaces plus importantes.

Quantité de lissage

La quantité de lissage est contrôlée par le nombre de fois que le processus d’expansion et de contraction est effectué : une fois ou deux fois. La valeur par défaut est de deux fois, ce qui entraîne un lissage plus important.

Processus d’expansion et de contraction

Le processus d’expansion et de contraction évalue les voisins immédiats de chaque cellule de traitement selon le type de priorité de tri défini dans le paramètre Sort type (Type de tri).

Au cours du processus, une expansion est suivie d’une contraction. Ce processus est effectué une seule fois si le paramètre Exécuter deux fois l’expansion et la contraction est désélectionné. Si le paramètre est sélectionné, le processus d’expansion et de contraction est effectué deux fois.

Des détails supplémentaires sur les algorithmes utilisés dans le processus sont fournis plus bas.

Expansion et contraction à un passage

Si le paramètre est défini sur un passage, le processus d’expansion et de contraction est effectué une seule fois.

Dans la phase d’expansion, les actions suivantes se produisent :

  • Pour chaque cellule de traitement dans le raster en entrée, évaluer chaque cellule voisine.
  • Pour chaque cellule voisine, déterminer si la valeur de priorité de cette cellule voisine est inférieure à la valeur de priorité de la cellule de traitement. Si c’est le cas, définir la priorité de la cellule voisine interne sur celle de la cellule de traitement en entrée. Mettre à jour le raster interne étendu avec la nouvelle valeur de priorité, et poursuivre avec la cellule voisine suivante.

Dans la phase de contraction, les actions suivantes se produisent :

  • Pour chaque cellule de traitement dans le raster en entrée, évaluer chaque cellule voisine en utilisant la valeur du raster interne étendu créé lors de la première phase.
  • Si la priorité d’une cellule voisine est égale à la priorité de la cellule de traitement, copier la valeur de la cellule du raster en entrée original dans la sortie. Si aucune des cellules voisines ne satisfait la condition, copier la valeur de la cellule à partir du raster étendu dans la sortie.

Expansion et contraction à deux passages

Si le paramètre Exécuter deux fois l’expansion et la contraction est coché (dans Python, le paramètre number_of_runs est défini sur TWO_WAY), un deuxième processus d’expansion et de contraction est effectué, mais cette fois-ci en inversant les priorités. La sortie du premier passage de l’opération est utilisée comme entrée pour le second passage.

Lors de la première phase d’expansion, la logique utilisée est la même que celle utilisée dans la phase d’expansion pour un seul passage.

Lors de la première phase de contraction, la logique utilisée est la même que celle utilisée dans la phase de contraction pour un seul passage.

Dans la deuxième phase d’expansion, les actions suivantes se produisent :

  • Pour chaque cellule de traitement dans le raster interne généré par le premier processus d’expansion et de contraction, évaluer chaque cellule voisine.
  • Pour chaque cellule voisine, déterminer si la valeur de priorité de cette cellule voisine est supérieure à la valeur de priorité de la cellule de traitement. Si c’est le cas, définir la priorité de la cellule voisine interne sur celle de la cellule de traitement en entrée. Mettre à jour le raster interne étendu avec la nouvelle valeur de priorité, et poursuivre avec la cellule voisine suivante.

Dans la deuxième phase de contraction, les actions suivantes se produisent :

  • Pour chaque cellule de traitement dans le raster interne étendu de l’étape précédente, évaluer chaque cellule voisine.
  • Pour chaque cellule voisine, si la valeur de priorité de la cellule voisine est inférieure ou supérieure à la valeur de la cellule de traitement dans le raster étendu, copier la valeur de la cellule de traitement du raster original dans la sortie.
  • Si la valeur de priorité de la cellule voisine est égale à la valeur de la cellule de traitement dans le raster étendu, copier la valeur de la cellule de traitement du raster étendu dans la sortie.

Gestion NoData

Les cellules en entrée dotées de la valeur NoData ont la priorité la plus faible lors du processus d’expansion et de contraction si celui-ci est exécuté une seule fois, ou lors du second passage si le processus d’expansion et de contraction est exécuté deux fois. Lors de la deuxième phase du tri à deux passages, les cellules NoData auront la priorité la plus élevée.

Exemple

Afin de comprendre les effets des divers paramètres sur la sortie, examinez le raster en entrée ci-dessous.

Exemple de raster en entrée pour l’outil Nettoyage de limites

Voici un exemple de raster en entrée pour l’outil Nettoyage de limites. Les cellules NoData apparaissent en gris.

Les sorties correspondant à toutes les valeurs du paramètre Type de tri seront présentées, ceci pour les deux choix du paramètre Exécuter deux fois l’expansion et la contraction (décoché ou coché).

Lorsque le paramètre Sort type (Type de tri) est défini sur Do not sort (Ne pas trier), les rasters en sortie sont les suivants :

Exemple de sortie avec les paramètres réglés sur Ne pas trier et Un passage (décoché)
Un passage (décoché)
Exemple de sortie avec les paramètres réglés sur Ne pas trier et Deux passages (coché)
Deux passages (coché)

Lorsque le paramètre Sort type (Type de tri) est défini sur Descending (Décroissant), les rasters en sortie sont les suivants :

Exemple de sortie avec les paramètres réglés sur Décroissant et Un passage (décoché)
Un passage (décoché)
Exemple de sortie avec les paramètres réglés sur Décroissant et Deux passages (coché)
Deux passages (coché)

Lorsque le paramètre Sort type (Type de tri) est défini sur Ascending (Croissant), les rasters en sortie sont les suivants :

Exemple de sortie avec les paramètres réglés sur Croissant et Un passage (décoché)
Un passage (décoché)
Exemple de sortie avec les paramètres réglés sur Croissant et Deux passages (coché)
Deux passages (coché)

Dans cette rubrique
  1. Généraliser les bords