Remplissage (Spatial Analyst)
Récapitulatif
Remplit les cuvettes d’une surface raster pour supprimer de légères imperfections dans les données.
Utilisation
-
Une cuvette est une cellule avec une direction de drainage indéfinie. Aucune des cellules qui l'entoure n'est plus basse. Le point d'écoulement est la cellule limite avec l'altitude la plus basse pour la surface de captation d'une cuvette. Si la cuvette est pleine d'eau, c'est le point d'écoulement.
-
La limite z indique la différence maximale autorisée entre la profondeur d'une cuvette et le point d'écoulement et détermine quelles cuvettes vont être remplies et quelles cuvettes demeureront intactes. La limite z n'est pas la profondeur maximale pour remplir une cuvette.
Prenons par exemple une cuvette dans laquelle le point d'écoulement est à 210 pieds d'altitude et le point le plus profond au sein de la cuvette se trouve à 204 pieds (la différence est de 6 pieds). Si la limite z est définie sur 8, cette cuvette sera remplie. Toutefois, si la limite z est définie sur 4, cette cuvette ne sera pas remplie, car la profondeur de la cuvette dépasse cette différence et la cuvette n'est pas considérée comme valide.
-
Toutes les cuvettes inférieures à la limite z et au voisin adjacent sont remplies à la hauteur des points d'écoulement.
-
L'exécution de l'outil Remplissage peut solliciter des ressources non négligeables au niveau de la mémoire, du processeur et du disque. Il peut nécessiter jusqu'à quatre fois la capacité du disque du raster en entrée.
-
Le nombre de cuvettes recherché avec la limite z indique la durée du traitement. Plus vous avez de cuvettes, plus le traitement sera long.
-
L'outil Cuvettes peut être utilisé avant l'outil Remplissage pour trouver le nombre de cuvettes et leur profondeur. Si vous connaissez la profondeur des cuvettes, vous pouvez définir une limite z appropriée.
-
L'outil Remplissage permet également de supprimer les crêtes. Une crête est une cellule qui n'est pas plus élevée que les cellules adjacentes. Pour supprimer des crêtes, vous devez inverser le raster de surface en entrée. Pour ce faire, utilisez l'outil Soustraction. Spécifiez la plus haute valeur du raster de surface en tant que première entrée dans Soustraction et indiquez le raster de surface comme deuxième entrée. Effectuez un remplissage. Inversez les résultats pour obtenir une surface qui a des valeurs du raster de la surface originales avec les crêtes supprimées. Vous pouvez également insérer la limite z dans ce processus. Si rien n'est spécifié pour la limite z, toutes les crêtes seront supprimées. Si vous l'indiquez et que la différence de valeurs z entre les crêtes et le voisin le plus proche est supérieure à cette limite, le système ne supprime pas cette crête.
Syntaxe
Paramètre | Explication | Type de données |
in_surface_raster | Raster en entrée qui représente une surface continue. | Raster Layer |
z_limit (Facultatif) | La différence d'altitude maximale entre une cuvette et le point d'écoulement à remplir. Si la différence dans les valeurs z entre une cuvette et son point d'écoulement est supérieure à la limite z, cette cuvette ne sera pas remplie. La valeur de la limite z doit être supérieure à zéro. Si aucune valeur n'est indiquée pour ce paramètre, toutes les cuvettes seront remplies, quelle que soit la profondeur. | Double |
Valeur renvoyée
Nom | Explication | Type de données |
out_surface_raster |
Raster de surface en sortie après le remplissage des cuvettes. | Raster |
Exemple de code
Cet exemple décrit le remplissage des cuvettes d'un raster de grille de surface d'altitude en entrée.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outFill = Fill("elevation")
outFill.save("C:/sapyexamples/output/outfill01")
Cet exemple décrit le remplissage des cuvettes d'un raster de grille de surface d'altitude en entrée, compte tenu d'une limite z.
# Name: Fill_Ex_02.py
# Description: Fills sinks in a surface raster.
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inSurfaceRaster = "elevation"
zLimit = 3.28
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute FlowDirection
outFill = Fill(inSurfaceRaster, zLimit)
# Save the output
outFill.save("C:/sapyexamples/output/outfill02")