Capas de probabilidad para cada clase (Spatial Analyst)
Resumen
Crea un ráster multibanda de bandas de probabilidad, con una banda que se crea para cada clase representada en el archivo de firma de entrada.
Más información sobre cómo funciona Capas de probabilidad para cada clase
Uso
-
Cualquier archivo de firmas creado por las herramientas Crear firma, Editar firma o Cluster ISO es una entrada válida para el archivo de firmas de entrada. Estos tendrán una extensión.gsg.
-
Esta herramienta emplea estadísticas bayesianas para estimar las probabilidades de clase. Las estadísticas bayesianas implican comenzar con información previa acerca de los datos, luego actualizar esa información después de que se recolectan los datos. La información previa acerca de los valores de datos se cuantifica con probabilidades a priori, que luego se ajustan por una función de probabilidad para recibir probabilidades posteriores (la información actualizada). La función de probabilidad se define por valores de datos para cada clase/cluster.
El archivo de probabilidad a priori de entrada debe ser un archivo ASCII que conste de dos columnas. Los valores en la columna izquierda representan los Id. de clase. Los valores en la columna derecha representan las probabilidades a priori para las respectivas clases. Los valores válidos para las probabilidades a priori de clase deben ser mayores o iguales a cero. Si se especifica cero como una probabilidad, no se creará ninguna banda de probabilidad asociada para la clase en el ráster multibanda de salida. La suma de las probabilidades a priori especificadas debe ser menor o igual a uno. El siguiente ejemplo muestra el formato del archivo como se indica:
1 .3 2 .1 4 .0 5 .15 7 .05 8 .2
Las clases omitidas en el archivo recibirán la probabilidad a priori promedio de la porción restante del valor uno. En el ejemplo anterior, todas las clases de 1 a 8 están representadas en el archivo de firma. Las probabilidades a priori de las clases 3 y 6 no están presentes en el archivo de probabilidad a priori de entrada. Como la suma de todas las probabilidades especificadas en el archivo anterior es igual a 0,8, la porción restante de la probabilidad (0,2) está dividida por la cantidad de clases no especificadas (2). Por lo tanto, a las clases 3 y 6 se les asignará una probabilidad de 0,1.
La extensión del archivo de probabilidad a priori de entrada puede ser .txt o .asc.
-
El valor introducido para el valor de salida máximo establece el rango superior de los valores de las bandas de probabilidad de salida. El valor predeterminado 100 crea un ráster multibanda con cada banda que contiene valores enteros que varían de 0 a 100. Cualquier valor entero mayor a cero es válido como un valor de salida máximo. Sólo el valor 1 para el argumento de valor de salida máximo dará como resultado bandas con valores de punto flotante.
-
Si la entrada es una capa creada desde un ráster multibanda con más de tres bandas, la operación considerará todas las bandas asociadas con el dataset de origen, no sólo las tres bandas que fueron cargadas (simbolizadas) por la capa.
Hay varias maneras de especificar un subconjunto de bandas a partir de un ráster multibanda para utilizar como entrada en la herramienta.
- Si utiliza el cuadro de diálogo de la herramienta, navegue hasta el ráster multibanda utilizando el botón junto a Bandas de ráster de entrada, abra el ráster y, a continuación, seleccione las bandas deseadas.
- Si el ráster multibanda es una capa en la Tabla de contenido, puede utilizar la herramienta Crear capa ráster para crear una nueva capa multibanda que contiene solo las bandas deseadas.
- También puede crear un nuevo dataset que contiene solo las bandas deseadas con Bandas compuestas y utilizar el dataset resultante como entrada para la herramienta.
- En Python, las bandas deseadas se pueden especificar directamente en el parámetro de herramienta como una lista.
Sintaxis
Parámetro | Explicación | Tipo de datos |
in_raster_bands [in_raster_band,...] |
Bandas del ráster de entrada. Las bandas de ráster pueden ser de tipo entero o punto flotante. | Raster Layer |
in_signature_file |
Los archivos de firma de entrada cuyas firmas de clase se utilizan para generar las bandas de probabilidad a priori. Se requiere una extensión .gsg. | File |
maximum_output_value (Opcional) |
Factor para escalar el rango de valores de las bandas de probabilidad de salida. Por defecto, los valores varían entre 0 y 100. | Long |
a_priori_probabilities (Opcional) | Especifica cómo se determinarán las probabilidades a priori.
| String |
in_a_priori_file (Opcional) | Archivo de texto que contiene probabilidades a priori para las clases de firmas de entrada. Sólo se requiere una entrada para el archivo de probabilidades a priori cuando se utiliza la opción FILE. La extensión para el archivo a priori puede ser .txt o .asc. | File |
Valor de retorno
Nombre | Explicación | Tipo de datos |
out_multiband_raster |
El dataset ráster multibanda de salida. Si la salida es una cuadrícula de Esri, el nombre del archivo no puede tener más de 9 caracteres. | Raster |
Ejemplo de código
Este ejemplo crea un ráster multibanda de bandas de probabilidad para cada clase en un archivo de firma.
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")
Este ejemplo crea un ráster multibanda de bandas de probabilidad para cada clase en un archivo de firma.
# 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")