Iso cluster (Spatial Analyst)
Récapitulatif
Utilise l'algorithme d'agrégation isodata pour déterminer les caractéristiques des regroupements naturels de cellules dans un espace d'attributs multidimensionnel et stocke les résultats dans un fichier de signatures ASCII en sortie.
Pour en savoir plus sur le fonctionnement de l'outil Iso cluster
Utilisation
-
Iso cluster effectue une agrégation des données multivariées combinées dans une liste de canaux en entrée. Le fichier de signatures produit peut être utilisé comme entrée pour un outil de classification, tel que Classification de vraisemblance maximale, qui produit un raster de classification non assistée.
-
La valeur valide minimale pour le nombre de classes est deux. Il n'existe pas de nombre maximal d'agrégats. En général, plus d'agrégats nécessitent plus d'itérations.
-
Pour fournir les statistiques suffisantes nécessaires pour générer un fichier de signatures pour une classification future, chaque agrégat doit contenir assez de cellules pour représenter avec précision l'agrégat. La valeur entrée comme taille de classe minimale doit être approximativement 10 fois plus grande que le nombre de couches dans les canaux raster en entrée.
-
La valeur entrée comme intervalle d'échantillonnage indique qu'une cellule par bloc de n x n cellules est utilisée dans les calculs d'agrégation.
-
Vous ne devez pas combiner ni supprimer de classes, ni modifier aucune des statistiques du fichier de signatures ASCII.
-
En général, plus le nombre de cellules contenues dans l'étendue de l'intersection des canaux en entrée est important et plus grandes doivent être les valeurs de la taille de classe minimale et de l'intervalle d'échantillonnage qui sont spécifiées. Les valeurs entrées pour l'intervalle d'échantillonnage doivent être assez petites pour que les plus petites catégories souhaitables existant dans les données en entrée soient échantillonnées convenablement.
-
Les valeurs d'ID de classe sur le fichier de signatures en sortie commencent à 1 et augmentent séquentiellement jusqu'au nombre de classes en entrée. L'attribution des numéros de classes est arbitraire.
-
Vous obtiendrez de meilleurs résultats si tous les canaux en entrée ont les mêmes plages de données. Si les canaux ont des plages de données très différentes, celles-ci peuvent être transformées en plage identique en utilisant l'algèbre spatial pour effectuer l'équation.
where: Z is the output raster with new data ranges. X is the input raster. oldmin is the minimum value of the input raster. oldmax is the maximum value of the input raster. newmin is the desired minimum value for the output raster. newmax is the desired maximum value for the output raster.
-
Si l'entrée est une couche créée à partir d'un raster multicanal comportant plus de trois canaux, l'opération considérera tous les canaux associés au jeu de données source, et non pas seulement les trois canaux qui ont été chargés (symbolisés) par la couche.
Vous pouvez employer plusieurs méthodes pour spécifier un sous-ensemble de canaux à partir d'un raster multicanal en vue de l'utiliser en entrée dans l'outil.
- Si vous utilisez la boîte de dialogue de l'outil, accédez au raster multicanal en cliquant sur le bouton Parcourir qui se trouve à côté de l'option Canaux raster en entrée, ouvrez le raster et sélectionnez les canaux de votre choix.
- Si le raster multicanal est une couche dans la table des matières, vous pouvez utiliser l'outil Générer une couche raster pour créer une couche multicanal contenant uniquement les canaux souhaités.
- Vous pouvez également faire appel à l'option Canaux composites pour créer un jeu de données contenant uniquement les canaux souhaités et utiliser le jeu de données résultant en entrée dans l'outil.
- Dans Python, vous pouvez spécifier les canaux de votre choix sous forme de liste directement dans le paramètre de l'outil.
Syntaxe
Paramètre | Explication | Type de données |
in_raster_bands [in_raster_band,...] |
Canaux raster en entrée. | Raster Layer |
out_signature_file |
Fichier de signatures en sortie. Une extension .gsg doit être spécifiée. | File |
number_classes |
Nombre de classes dans lesquelles les cellules sont regroupées. | Long |
number_iterations (Facultatif) | Nombre d'itérations du processus d'agrégation à exécuter. La valeur par défaut est 20. | Long |
min_class_size (Facultatif) | Nombre minimal de cellules dans une classe valide. La valeur par défaut est 20. | Long |
sample_interval (Facultatif) |
Intervalle à utiliser pour l'échantillonnage. La valeur par défaut est 10. | Long |
Exemple de code
Cet exemple crée un fichier de signatures pour la classification du raster multicanal en entrée en cinq classes.
import arcpy from arcpy import env from arcpy.sa import * env.workspace = "C:/sapyexamples/data" IsoCluster("redlands", "c:/sapyexamples/output/isosig.gsg", 5, 20, 50, 15)
Cet exemple crée un fichier de signatures pour la classification du raster multicanal en entrée en cinq classes.
# Name: IsoCluster_Ex_02.py # Description: Uses an isodata clustering algorithm to determine the # characteristics of the natural groupings of cells in multidimensional # attribute space and stores the results in an output ASCII signature file. # 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 = "redlands" outSig = "redlndiso.gsg" classes = 5 cycles = 20 minMembers = 50 sampInterval = 15 # Check out the ArcGIS Spatial Analyst extension license arcpy.CheckOutExtension("Spatial") # Execute IsoCluster IsoCluster(inRaster, outSig, classes, cycles, minMembers, sampInterval)