Fonctionnement de l'outil Flux focal
Lorsque l'outil Flux focal fait appel à la méthode de "fenêtre mobile" pour traiter un jeu de données de la même manière que l'outil Statistiques focales, le calcul des valeurs en sortie peut varier. Il utilise un voisinage immédiat 3 x 3 pour déterminer laquelle des huit voisines s'écoule dans cette cellule. Le flux est défini par n'importe quelle cellule d'un voisinage dont la valeur est plus élevée que celle de la cellule de traitement. Très souvent, les valeurs représentent le mouvement des fluides, notamment de l'eau qui se déplace en altitude ou sur une pente. Néanmoins, le flux peut correspondre à n'importe quel mouvement que vous définissez, comme la manière dont un contaminant se déplace vers un emplacement dont la concentration est inférieure.
Pour savoir si une cellule de voisinage déterminée s'écoule dans la cellule de traitement, vous devez soustraire la valeur de chaque cellule de voisinage de la cellule de traitement. Si une valeur est positive, la cellule du voisinage ne s'écoule pas dans la cellule de traitement. Elle s'écoule lorsque la valeur est négative. Si aucune cellule ne s'écoule dans la cellule de traitement, l'emplacement est associé à la valeur 0. Si vous avez fixé un seuil, la différence entre la valeur de la cellule du voisinage moins la valeur de la cellule de traitement doit être supérieure au seuil pour que le flux puisse circuler. Dans le cas contraire, aucun flux ne provient de la cellule de voisinage.
La gestion d'une combinaison de flux provenant de plusieurs cellules de voisinage dans une cellule de traitement unique intervient au moyen de la représentation binaire de cette cellule de traitement. Chaque bit de la représentation binaire de la cellule de traitement correspond à un emplacement de cellule de voisinage. La cellule située immédiatement à droite de la cellule de traitement a la valeur 1. Le voisin en bas à droite a la valeur 2. Celui qui se trouve juste en dessous a la valeur 4, et ainsi de suite, jusqu'à ce que vous obteniez la valeur 128 (puissance de deux, puisque la représentation est binaire) avec le dernier voisin en haut à droite.
Si une cellule du voisinage s'écoule dans la cellule de traitement, le bit qui représente l'emplacement de voisinage (voyez précéder le diagramme) est activé ou a affecté un 1. Si une cellule du voisinage ne s'écoule pas dans la cellule de traitement, le bit qui représente l'emplacement est désactivé, ou valeur attribuée 0. Une fois que tous les emplacements de voisinage ont été testés pour la circulation, aucun, un, plusieurs ou tous les bits ne peut être activé (affecté un 1). La représentation binaire pour tous les bits est reconvertie en base 10, conformément au motif circulation-bits. La base 10 est ensuite attribuée à la cellule de traitement. Le codage attribue un nombre distinct à chaque combinaison possible de nombres en amont. Le nombre total de combinaisons de circulation dans une cellule de traitement est 255.
Exemples
Vous trouverez ci-après quelques exemples qui expliquent comment la valeur en sortie est dérivée :
- Cellule qui reçoit le flux en provenance de la cellule adjacente supérieure gauche
La position du flux provenant de la cellule adjacente supérieure gauche est de 6 bits de voisinage (reportez-vous au graphique précédent qui décrit le codage d’un flux focal). La valeur de base 10 correspondant à cette position de bit est 32.
- Cellule qui reçoit le flux émanant de plusieurs cellules
Dans le graphique suivant, la cellule de traitement a trois cellules environnantes qui ont une valeur plus élevée. Il s’agit de la cellule juste au-dessus à droite (la première position), de celle qui se trouve en bas à gauche (le quatrième bit) et de celle qui apparaît juste au-dessus (position du septième bit). Par conséquent, le premier, le quatrième et le septième bit sont activés (ou associés à la valeur 1). Cette configuration binaire renvoie le résultat 73 en base 10. Elle est enregistrée à l'emplacement de la cellule de traitement dans le raster en sortie.
- Cellule qui reçoit le flux des huit cellules environnantes
Prenons une cellule dans laquelle tous les voisins s’écoulent. La valeur en sortie doit être la somme de toutes les positions de bits comprises entre 1 et 128. Le résultat calculé avec 128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 sera donc 255.