Classification de vraisemblance maximale (Spatial Analyst)
Récapitulatif
Effectue une classification de vraisemblance maximale sur un jeu de canaux raster et crée un raster classé en sortie.
Pour en savoir plus sur le fonctionnement de l'outil Classification de vraisemblance maximale
Utilisation
-
Tout fichier de signatures créé par l'outil Créer des signatures, Modifier des signatures ou Iso cluster est une entrée valide pour le fichier de signatures en entrée. Il aura l'extension .gsg.
-
Par défaut, toutes les cellules du raster en sortie sont classées, chaque classe ayant des pondérations de probabilité égale jointes à ses signatures.
-
Le fichier de probabilités a priori en entrée doit être un fichier ASCII qui comprend deux colonnes. Les valeurs dans la colonne de gauche représentent des identifiants de classe. Les valeurs dans la colonne de droite correspondent aux probabilités a priori relatives aux classes concernées. Les valeurs autorisées pour les probabilités a priori doivent être supérieures ou égales à zéro. Si zéro est spécifié comme probabilité, la classe n'apparaîtra pas sur le raster en sortie. La somme des probabilités a priori spécifiées doit être inférieure ou égale à un. Le format du fichier est le suivant :
1 .3 2 .1 4 .0 5 .15 7 .05 8 .2
Les classes omises dans le fichier recevront la probabilité a priori moyenne de la portion restante de la valeur d'un. Dans l'exemple ci-dessus, toutes les classes de 1 à 8 sont représentées dans le fichier de signatures. Les probabilités a priori associées aux classes 3 et 6 n'apparaissent pas dans le fichier de probabilités a priori en entrée. Puisque la somme de toutes les probabilités indiquées dans le fichier ci-dessus est égale à 0,8, la fraction de probabilité qui reste (0,2) est divisée par le nombre de classes qui n'est pas indiqué (2). Vous allez donc attribuer une probabilité de 0,1 aux classes 3 et 6.
-
Une fraction de rejet spécifiée, située entre deux valeurs valides, est attribuée à la valeur valide supérieure suivante. Par exemple, 0,02 devient 0,025.
-
Il existe une relation directe entre le nombre de cellules non classifiées sur le raster en sortie, résultant de la fraction de rebut, et le nombre de cellules, représenté par la somme des niveaux de confiance plus petite que la valeur respective entrée pour la fraction de rebut.
-
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.
Si le nom de la classe enregistré dans le fichier de signatures est différent de l'ID de la classe, un champ supplémentaire appelé CLASSNAME est ajouté à la table attributaire de raster en sortie. Pour chaque classe de la table en sortie, CLASSNAME contiendra le nom associé à la classe. Par exemple, si les noms des classes enregistrés dans le fichier de signatures sont des chaînes descriptives (conifères, masses d'eau et urbain, par exemple), ces noms sont utilisés dans le champ CLASSNAME.
-
L'extension pour un fichier de probabilités a priori en entrée est .txt.
Syntaxe
Paramètre | Explication | Type de données |
in_raster_bands [in_raster_band,...] |
Canaux raster en entrée. | Raster Layer |
in_signature_file |
Fichier de signatures en entrée dont les signatures de classes sont utilisées par le classificateur de vraisemblance maximale. Une extension .gsg est requise. | File |
reject_fraction (Facultatif) |
Partie des cellules qui resteront non classifiées en raison de la plus petite possibilité d'affectations correctes. La valeur par défaut est 0,0 (chaque cellule est classée). Les 14 entrées valides sont 0,0, 0,005, 0,01, 0,025, 0,05, 0,1, 0,25, 0,5, 0,75, 0,9, 0,95, 0,975, 0,99 et 0,995. | String |
a_priori_probabilities (Facultatif) | Indique la manière dont sont déterminées les probabilités a priori.
| String |
in_a_priori_file (Facultatif) | Fichier texte contenant des probabilités a priori pour les classes de signatures en entrée. Une entrée pour le fichier de probabilités a priori n'est requise que lorsque l'option FILE est utilisée. L'extension du fichier a priori peut être .txt ou .asc. | File |
out_confidence_raster (Facultatif) |
Jeu de données raster de confiance en sortie spécifiant la certitude de la classification parmi 14 niveaux de confiance, la valeur la plus basse représentant la fiabilité la plus élevée. | Raster Dataset |
Valeur renvoyée
Nom | Explication | Type de données |
out_classified_raster |
Raster classé en sortie. | Raster |
Exemple de code
Cet exemple crée un raster classé en sortie contenant cinq classes dérivé d'un fichier de signatures en entrée et un raster multicanal.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
mlcOut = MLClassify("redlands", "c:/sapyexamples/data/wedit5.gsg", "0.0",
"EQUAL", "", "c:/sapyexamples/output/redmlcconf")
mlcOut.save("c:/sapyexamples/output/redmlc")
Cet exemple crée un raster classé en sortie contenant cinq classes dérivé d'un fichier de signatures en entrée et un raster multicanal.
# Name: MLClassify_Ex_02.py
# Description: Performs a maximum likelihood classification on a set of
# raster bands.
# 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"
sigFile = "c:/sapyexamples/data/wedit5.gsg"
probThreshold = "0.0"
aPrioriWeight = "EQUAL"
aPrioriFile = ""
outConfidence = "c:/sapyexamples/output/redconfmlc"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute
mlcOut = MLClassify(inRaster, sigFile, probThreshold, aPrioriWeight,
aPrioriFile, outConfidence)
# Save the output
mlcOut.save("c:/sapyexamples/output/redmlc02")