Pertenencia difusa (Spatial Analyst)
Resumen
Transforma el ráster de entrada a una escala de 0 a 1, que indica la fortaleza de la pertenencia en un conjunto, en función de un algoritmo de difuminación especificado.
Un valor de 1 indica una pertenencia completa en el conjunto difuso; si la pertenencia disminuye a 0 quiere decir que no es miembro del conjunto difuso.
Uso
-
Esta herramienta no escala datos categóricos. Para incluir los datos categóricos en el análisis de superposición difuso es necesario un paso de preprocesamiento. Puede crear un modelo o ejecutar las siguientes herramientas de geoprocesamiento. Primero, utilice la herramienta Reclasificar para proporcionar un nuevo rango de valores (por ejemplo, de 1 a 100). Después, Divida el resultado por un factor (por ejemplo, por 100) para normalizar los valores de salida y que se encuentren entre 0,0 y 1,0.
La expansión determina qué tan rápido disminuyen los valores de pertenencia difusa de 1 a 0. Mientras más alto sea el valor, más pronunciado será el difuminado alrededor del punto medio. Dicho de otra manera, mientras menor sea la expansión, las pertenencias difusas se acercarán a 0 con mayor lentitud. La selección del valor de expansión adecuado es un proceso subjetivo que depende del rango de los valores precisos. Para Gaussiana y Cercano, el valor predeterminado de 0,1 es un buen punto inicial. Por lo general, los valores varían dentro de los rangos de [0,01–1] o [0,001-1], respectivamente. Para Pequeño y Grande, el valor predeterminado 5 es un buen punto inicial donde, por lo general, los valores varían entre 1 y 10.
-
Es posible que suceda que ninguno de los valores de entrada tenga una posibilidad del 100 por ciento de pertenecer al conjunto especificado. En otras palabras, ningún valor de entrada tiene una pertenencia difusa de 1. En este caso, es posible que desee re-escalar los valores de pertenencia difusa para reflejar la nueva escala. Por ejemplo, si la mayor pertenencia para los valores de entrada es de 75, puede establecer la nueva escala multiplicando cada uno de los valores de pertenencia difusa por 0,75.
-
Los cercos de setos implementados son Muy y Un poco. Muy también se conoce como concentración y se define como la función de pertenencia difusa al cuadrado. Un poco se conoce como dilación, o "Más o menos", y es la raíz cuadrada de la función de pertenencia difuminada. Los cercos de setos "muy" y "un poco" disminuyen y aumentan, respectivamente, las funciones de pertenencia difusa.
-
No se aceptan valores negativos en las funciones de pertenencia Pequeño y Grande.
-
Para la función de pertenencia lineal, el ráster de entrada debe ser de datos ordenados. El mínimo puede ser menor que el máximo para crear una pendiente positiva, o mayor que el máximo para crear una pendiente negativa para la transformación.
Si el mínimo es menor que el máximo, se utiliza una función con pendiente positiva para la transformación; si el mínimo es mayor que el máximo, se utiliza una función con pendiente negativa.
Sintaxis
Parámetro | Explicación | Tipo de datos |
in_raster |
El ráster de entrada cuyos valores se escalarán de 0 a 1. | Raster Layer |
fuzzy_function (Opcional) |
Especifica el algoritmo utilizado en el difuminado del ráster de entrada. Las clases difusas se utilizan para especificar el tipo de pertenencia. Los tipos de clases de pertenencia son: A continuación, se presentan las formas de las clases de pertenencia:
| Fuzzy function |
hedge (Opcional) |
Definir un cerco de setos aumenta o reduce los valores de pertenencia difusa que modifican el significado de un conjunto difuso. Los cercos de setos son útiles para ayudar a controlar los criterios o atributos importantes.
| String |
Valor de retorno
Nombre | Explicación | Tipo de datos |
out_raster |
La salida será un ráster de punto flotante con valores que varían de 0 a 1. | Raster |
Ejemplo de código
En este ejemplo se crea un ráster de pertenencia difusa mediante la función Gaussiana, donde los valores de elevación más cercanos al punto medio (1.200 pies) poseen un valor de pertenencia mayor.
import arcpy from arcpy.sa import * from arcpy import env env.workspace = "c:/sapyexamples/data" outFzyMember = FuzzyMembership("elevation", FuzzyGaussian(1200, 0.06)) outFzyMember.save("c:/sapyexamples/fzymemb")
En este ejemplo se crea un ráster de pertenencia difusa mediante la función Gaussiana y una expansión de 0,4, donde los valores de elevación más cercanos al punto medio (1.000 pies) poseen un valor de pertenencia mayor.
# Name: FuzzyMembership_Ex_02.py # Description: Scales input raster data into values ranging from zero to one # indicating the strength of a membership in a set. # 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 = "elevation" # Create the FuzzyGaussian algorithm object midpoint = 1000 spread = 0.4 myFuzzyAlgorithm = FuzzyGaussian(midpoint, spread) # Check out the ArcGIS Spatial Analyst extension license arcpy.CheckOutExtension("Spatial") # Execute FuzzyMembership outFuzzyMember = FuzzyMembership(inRaster, myFuzzyAlgorithm) # Save the output outFuzzyMember.save("c:/sapyexamples/fzymemb2")