Disponible avec une licence Spatial Analyst.
Résumé
Affine les entités linéaires rasterisées en réduisant le nombre de cellules représentant la largeur des entités.
Utilisation
Une application type de l'outil Affinage concerne le traitement d'une carte numérisée représentant des isolignes d'altitude. En raison de la résolution du scanner et de la largeur des lignes sur la carte d'origine, les isolignes sont représentées dans le raster obtenu sous forme d'éléments linéaires larges de cinq à dix cellules. Après exécution de la fonction Affinage, chaque isoligne est représentée sous la forme d'une entité linéaire large d'une cellule.
Si elle est activée, l'option de filtre utilise le même algorithme de filtrage que l'outil Nettoyage de limites pour supprimer les entités linéaires courtes qui prolongent la branche principale. Elle peut également supprimer des entités dont la largeur ne dépasse pas trois cellules.
La spécification de l'épaisseur maximale des entités linéaires en entrée est essentielle pour affiner des rasters là où l'épaisseur d'entités linéaires peut dépasser ou rester au-dessous de la valeur d'épaisseur maximale par défaut. Les meilleurs résultats peuvent être obtenus lorsque l'épaisseur maximale correspond aux entités linéaires les plus épaisses à affiner.
L'algorithme général utilisé dans l'outil Affinage est expliqué dans cet ouvrage :
Zhan, Cixiang, 1993, A Hybrid Line Thinning Approach, Proceedings Auto-Carto 11, Minneapolis , pp. 396-405
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
Thin(in_raster, {background_value}, {filter}, {corners}, {maximum_thickness})
Paramètre | Explication | Type de données |
in_raster | Raster en entrée à affiner. Il doit être de type entier. | Raster Layer |
background_value (Facultatif) | Spécifie la valeur de la cellule qui doit identifier les cellules d'arrière-plan. Les entités linéaires sont formées à partir des cellules de premier plan.
| String |
filter (Facultatif) | Précise si un filtre doit être appliqué comme premier stade de l'affinage.
| Boolean |
corners (Facultatif) | Précise s'il faut ou non arrondir les angles (tournants et jonctions). Cette option est également utilisée lors de la conversion en vecteurs pour spliner les courbes et créer des angles vifs aux intersections et aux coins.
| String |
maximum_thickness (Facultatif) | Epaisseur maximale des entités linéaires du raster en entrée (en unités de carte). L'épaisseur par défaut représente dix fois la taille de cellule. | Double |
Valeur renvoyée
Nom | Explication | Type de données |
out_raster | Raster en sortie après affinage. La sortie est toujours de type entier. | Raster |
Exemple de code
Cet exemple affine un raster où les valeurs d'arrière-plan sont NoData, et lisse les limites en essayant de conserver des angles et des jonctions.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
thinOut = Thin("land","NODATA", "FILTER", "SHARP", 300)
thinOut.save("c:/sapyexamples/output/thinout")
Cet exemple affine un raster où les valeurs d'arrière-plan sont NoData, et lisse les limites en essayant de conserver des angles et des jonctions.
# Name: Thin_Ex_02.py
# Description: Thins rasterized linear features by
# reducing the number of cells
# representing the width of the features.
# 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"
tolerance = 300
# Execute Thin
thinOut = Thin(inRaster, "NODATA", "FILTER", "SHARP", tolerance)
# Save the output
thinOut.save("c:/sapyexamples/output/thinoutput")
Environnements
Informations de licence
- Basic: Requiert Spatial Analyst
- Standard: Requiert Spatial Analyst
- Advanced: Requiert Spatial Analyst
Rubriques connexes
Vous avez un commentaire à formuler concernant cette rubrique ?