Disponible avec une licence Spatial Analyst.
Résumé
Réduit la taille des zones sélectionnées selon un nombre de cellules défini, en remplaçant leur valeur par celle de la cellule la plus fréquente dans leur voisinage.
Illustration
Utilisation
Les valeurs de zone spécifié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.
Lorsque deux régions adjacentes font partie de l'ensemble sélectionné pour contraction, leur limite n'est pas modifiée.
Les valeurs NoData ont la même priorité que toute autre valeur valide pour occuper les zones libérées par les valeurs sélectionnées pour la réduction. Par conséquent, si une valeur sélectionnée est adjacente à une valeur NoData, elle peut prendre la valeur NoData après contraction.
Pour plus d’informations sur les environnements de géotraitement qui s’appliquent à cet outil, reportez-vous à la rubrique Environnements d’analyse et Spatial Analyst.
Syntaxe
Shrink(in_raster, number_cells, zone_values)
Paramètre | Explication | Type de données |
in_raster | Raster en entrée pour lequel les zones identifiées seront réduites. Il doit être de type entier. | Raster Layer |
number_cells | Nombre de cellules à utiliser pour réduire chaque zone spécifiée. La valeur doit être un entier supérieur à 0. | Long |
zone_values [zone_value,...] | Liste des valeurs de zone à contracter. Les valeurs de zone doivent être des entiers. Elles peuvent être dans un ordre quelconque. | Long |
Valeur renvoyée
Nom | Explication | Type de données |
out_raster | Raster généralisé en sortie. Les zones spécifiées du raster en entrée seront contractées en fonction du nombre spécifié de cellules. La sortie est toujours de type entier. | Raster |
Exemple de code
Exemple 1 d'utilisation de l'outil Shrink (fenêtre Python)
Cet exemple réduit la zone spécifiée en fonction d'une liste de valeurs (deux cellules).
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outShrink = Shrink("land", 2, [1, 3, 7])
outShrink.save("c:/sapyexamples/output/shrinkout")
Exemple 2 d'utilisation de l'outil Shrink (script autonome)
Cet exemple réduit la zone spécifiée en fonction d'une liste de valeurs (deux cellules).
# Name: Shrink_Ex_02.py
# Description: Shrinks the selected zones by a
# specified number of cells.
# 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
inRaster = "land"
cellRemove = 2
zoneSet = [1,3,7,9]
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute Shrink
outShrink = Shrink(inRaster, cellRemove, zoneSet)
# Save the output
outShrink.save("c:/sapyexamples/output/outshrink")
Environnements
Informations de licence
- Basic: Requiert Spatial Analyst
- Standard: Requiert Spatial Analyst
- Advanced: Requiert Spatial Analyst