Disponible avec une licence Spatial Analyst.
Résumé
Crée un raster multicanal de canaux de probabilité, avec un canal qui est créé pour chaque classe représentée dans le fichier de signatures en entrée.
Pour plus d'informations sur le fonctionnement de l'outil Probabilité de classe
Utilisation
Lorsqu’un raster multicanal est spécifié comme l’un des canaux raster en entrée (Input raster bands) (in_raster_bands dans Python), tous les canaux sont utilisés.
Pour traiter une sélection de canaux à partir d’un raster multicanal, vous pouvez créer en premier un jeu de données raster composé de ces canaux spécifiques à l’aide de l’outil Canaux composites et utilisez le résultat dans la liste des canaux raster en entrée (Input raster bands) (in_raster_bands dans Python).
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.
Cet outil emploie des statistiques bayésiennes pour estimer les probabilités de classe. Les statistiques bayésiennes impliquent de commencer avec des informations antérieures sur les données, puis de mettre à jour ces informations une fois les données rassemblées. Les informations antérieures sur les valeurs des données sont quantifiées avec des probabilités a priori, qui sont ensuite ajustées par la fonction de vraisemblance pour recevoir des probabilités postérieures (informations mises à jour). La fonction de vraisemblance est définie par les valeurs des données pour chaque classe/agrégat.
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 vous indiquez une probabilité nulle, aucun canal de probabilité associé ne sera créé pour la classe dans le raster multicanal en sortie. La somme des probabilités a priori spécifiées doit être inférieure ou égale à un. Exemple illustrant le format du fichier comme suit :
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.
Vous pouvez attribuer l'extension .txt ou .asc au fichier de probabilités a priori en entrée.
La valeur que vous attribuez en guise de valeur en sortie maximale régit la plage supérieure de valeurs dans les canaux de probabilité en sortie. Si vous employez la valeur 100 par défaut, vous pouvez créer un raster multicanal. Chaque canal contient un entier compris entre 0 et 100. Tout entier supérieur à zéro est autorisé pour calculer la valeur en sortie maximale. Seule la valeur de l'un des arguments de valeur en sortie maximal permet d'obtenir des canaux dotés de valeurs à virgule flottante.
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
ClassProbability(in_raster_bands, in_signature_file, {maximum_output_value}, {a_priori_probabilities}, {in_a_priori_file})
Paramètre | Explication | Type de données |
in_raster_bands [in_raster_band,...] | Canaux raster en entrée. Ils peuvent être de type entier ou à virgule flottante. | Raster Layer |
in_signature_file | Fichier de signatures en entrée dont les signatures de classe permettent de générer les canaux de probabilités a priori. L'extension .gsg est obligatoire. | File |
maximum_output_value (Facultatif) | Facteur permettant la mise à l'échelle des valeurs dans les canaux de probabilités en sortie. Par défaut, les valeurs sont comprises entre 0 et 100. | Long |
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é 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 |
Valeur renvoyée
Nom | Explication | Type de données |
out_multiband_raster | Jeu de données d'un raster multicanal en sortie. Il sera de type entier. Si la sortie est une Grid Esri, le nom de fichier ne peut pas avoir plus de 9 caractères. | Raster |
Exemple de code
Premier exemple avec l'outil ClassProbability (fenêtre Python)
Cet exemple décrit un raster multicanal de canaux de probabilité pour chaque classe dans un fichier de signatures.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outClassProbability = ClassProbability("redlands","C:/sapyexamples/data/wedit5.gsg",
100,"EQUAL","")
outClassProbability.save("c:/sapyexamples/output/classprob")
Deuxième exemple d'utilisation de l'outil ClassProbability (script autonome)
Cet exemple décrit un raster multicanal de canaux de probabilité pour chaque classe dans un fichier de signatures.
# Name: ClassProbability_Ex_02.py
# Description: Creates probability layers for each class in a 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 = "redl123"
inSigFile = "c:/sapyexamples/data/wedit5.gsg"
maxValue = 100
aPrioriWeight = "EQUAL"
aPrioriFile = ""
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute ClassProbability
outClassProbability = ClassProbability(inRaster,inSigFile,
maxValue, aPrioriWeight, aPrioriFile)
# Save the output
outClassProbability.save("c:/sapyexamples/output/classprob01")
Environnements
Informations de licence
- Basic: Requiert Spatial Analyst
- Standard: Requiert Spatial Analyst
- Advanced: Requiert Spatial Analyst