Reclassification (Spatial Analyst)
Récapitulatif
Reclasse (ou modifie) les valeurs d'un raster.
Utilisation
-
Le raster en entrée doit présenter des statistiques valides. Si les statistiques n'existent pas, elles peuvent être créées à l'aide de l'outil Calculer les statistiques de la boîte à outils Outils de gestion des données.
-
Si vous utilisez la boîte de dialogue de l'outil, vous pouvez utiliser le bouton Enregistrer pour enregistrer la table de classification et l'utiliser ultérieurement. Utilisez le bouton Charger pour ouvrir les tables de classification que vous avez créées précédemment avec le bouton Enregistrer.
-
Il est recommandé de charger uniquement les tables enregistrées via l'outil Reclassification. Le format de la table est spécifique et doit contenir les champs FROM, TO, OUT et MAPPING.
-
Par défaut, le raster en entrée est classé en neuf classes pour la table de reclassification.
-
Si le raster en entrée est une couche, les anciennes valeurs de la reclassification seront obtenues à partir de la représentation. Si la représentation est étirée, la reclassification aura 255 classes par défaut.
-
Une fois que la table de classification de la reclassification a été modifiée, les valeurs ne sont pas mises à jour si un nouveau raster en entrée est sélectionné. Si la reclassification n'est pas appropriée pour le nouveau raster, pour réinitialiser une reclassification par défaut, procédez comme suit :
- modifiez ou sélectionnez une nouvelle valeur pour le champ de reclassement,
- redémarrez l'outil.
-
Cet outil est doté d'un contrôle de précision qui gère la façon dont sont traitées les décimales.
-
Lors de l'utilisation de l'outil Reclassification dans le cadre d'un modèle :
- Si l'entrée de l'outil correspond à des données dérivées d'un outil qui n'a pas encore été exécuté, le paramètre de classification de l'outil Reclassification sera vide jusqu'à ce que l'outil précédent soit exécuté et le modèle validé. Pour éviter cette situation, exécutez toujours les outils précédents avant de connecter leurs variables en sortie en tant qu'entrée de l'outil Reclassification. Vous pouvez aussi créer une table de reclassification personnalisée en ajoutant des entrées.
- Si vous exposez la table de reclassification en tant que paramètre de modèle, le champ de reclassement doit être exposé en tant que variable. Toutefois, il n'a pas besoin d'être défini en tant que paramètre de modèle. Si le champ n'est pas exposé en tant que variable, les boutons Valeurs uniques et Classer seront désactivés dans la boîte de dialogue de l'outil du modèle.
Syntaxe
Paramètre | Explication | Type de données |
in_raster |
Raster en entrée à reclasser. | Raster Layer |
reclass_field |
Champ permettant d'identifier les valeurs à reclasser. | Field |
remap |
L'objet Classification permet de spécifier comment reclasser des valeurs du raster en entrée. Il existe deux façons de définir la façon dont ces valeurs seront reclassées dans le raster en sortie, RemapRange et RemapValue. L'une ou l'autre des plages de valeurs en entrée peut être affectée à une nouvelle valeur en sortie, ou des valeurs individuelles peuvent être affectées à une nouvelle valeur en sortie. Les formules des objets de classification sont indiquées ci-après.
| Remap |
missing_values (Facultatif) |
Indique si les valeurs manquantes dans la table de reclassement conservent leur valeur ou si elles sont appariées à NoData.
| Boolean |
Valeur renvoyée
Nom | Explication | Type de données |
out_raster |
Raster en sortie reclassé. La sortie est toujours un nombre entier. | Raster |
Exemple de code
Les exemples ci-dessous illustrent plusieurs façons de reclasser un raster.
import arcpy from arcpy import env from arcpy.sa import * env.workspace = "C:/sapyexamples/data" outReclass1 = Reclassify("landuse", "Value", RemapValue([[1,9],[2,8],[3,1],[4,6],[5,3],[6,3],[7,1]])) outReclass1.save("C:/sapyexamples/output/landuse_rcls") outReclass2 = Reclassify("slope_grd", "Value", RemapRange([[0,10,"NODATA"],[10,20,1],[20,30,2], [30,40,3],[40,50,4],[50,60,5],[60,75,6]])) outReclass2.save("C:/sapyexamples/output/slope_rcls") outReclass3 = Reclassify("pop_density", "Value", RemapRange([[10,10,1],[10,20,2],[20,25,3], [25,50,4],[50,]]), "NODATA") outReclass3.save("C:/sapyexamples/output/popden_rcls")
Cet exemple reclasse le raster en entrée selon les valeurs d'un champ de type chaîne.
# Name: reclassify_example02.py # Description: Reclassifies the values in a 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 inRaster = "landuse" reclassField = "LANDUSE" remap = RemapValue([["Brush/transitional", 0], ["Water", 1],["Barren land", 2]]) # Check out the ArcGIS Spatial Analyst extension license arcpy.CheckOutExtension("Spatial") # Execute Reclassify outReclassify = Reclassify(inRaster, reclassField, remap, "NODATA") # Save the output outReclassify.save("C:/sapyexamples/output/outreclass02")