Re-escalar por función (Spatial Analyst)

Nivel de licencia:BasicStandardAdvanced

Resumen

Re-escala los valores ráster de entrada mediante la aplicación una función de transformación seleccionada y la transformación de los valores de función resultantes a una escala de evaluación continua especificada.

Descripción detallada de cómo funciona Re-escalar por función

Uso

Sintaxis

RescaleByFunction (in_raster, {transformation_function}, {from_scale}, {to_scale})
ParámetroExplicaciónTipo de datos
in_raster

Ráster de entrada para re-escalar.

Raster Layer
transformation_function
(Opcional)

Especifica la función continua para transformar el ráster de entrada.

Las clases de función de transformación se utilizan para especificar el tipo de función de transformación.

Los tipos de clases de funciones de transformación son

La función de transformación que se debe usar depende de cuál de ellas representa mejor la interacción de la preferencia del fenómeno con los valores de entrada. Para entender mejor cómo afectan los umbrales inferior y superior a los valores de salida, y obtener más información sobre los parámetros que controlan los umbrales, consulte Efecto de los umbrales inferior y superior sobre los valores de salida.

A continuación, se presentan las formas de las clases de funciones de transformación:

  • TfExponential({shift}, {baseFactor}, {lowerThreshold}, {valueBelowThreshold}, {upperThreshold}, {valueAboveThreshold})
  • TfGaussian({midpoint}, {spread}, {lowerThreshold}, {valueBelowThreshold}, {upperThreshold}, {valueAboveThreshold})
  • TfLarge({midpoint}, {spread}, {lowerThreshold}, {valueBelowThreshold}, {upperThreshold}, {valueAboveThreshold})
  • TfLinear({minimum}, {maximum}, {lowerThreshold}, {valueBelowThreshold}, {upperThreshold}, {valueAboveThreshold})
  • TfLogarithm({shift}, {factor}, {lowerThreshold}, {valueBelowThreshold}, {upperThreshold}, {valueAboveThreshold})
  • TfLogisticDecay({minimum}, {maximum}, {yInterceptPercent}, {lowerThreshold}, {valueBelowThreshold}, {upperThreshold}, {valueAboveThreshold})
  • TfLogisticGrowth({minimum}, {maximum}, {yInterceptPercent}, {lowerThreshold}, {valueBelowThreshold}, {upperThreshold}, {valueAboveThreshold})
  • TfMSLarge({meanMultiplier}, {STDMultiplier}, {lowerThreshold}, {valueBelowThreshold}, {upperThreshold}, {valueAboveThreshold})
  • TfMSSmall({meanMultiplier}, {STDMultiplier}, {lowerThreshold}, {valueBelowThreshold}, {upperThreshold}, {valueAboveThreshold})
  • TfNear({midpoint}, {spread}, {lowerThreshold}, {valueBelowThreshold}, {upperThreshold}, {valueAboveThreshold})
  • TfPower({shift}, {exponent}, {lowerThreshold}, {valueBelowThreshold}, {upperThreshold}, {valueAboveThreshold})
  • TfSmall({midpoint}, {spread}, {lowerThreshold}, {valueBelowThreshold}, {upperThreshold}, {valueAboveThreshold})
  • TfSymmetricLinear({minimum}, {maximum}, {lowerThreshold}, {valueBelowThreshold}, {upperThreshold}, {valueAboveThreshold})

La función predeteminada de transformación es TfMSSmall.

Los valores predeterminados de los parámetros para las funciones de transformación incluyen los siguientes:

  • baseFactor (de TfExponential) se determina a partir del ráster de entrada.
  • exponente (de TfPower) se determina a partir del ráster de entrada.
  • factor (de TfLogarithm) se determina a partir del ráster de entrada.
  • lowerThreshold (de todas las funciones) se establece en el mínimo del ráster de entrada.
  • maximum (de TfLinear, TfLogisticDecay, TfLogisticGrowth y TfSymmetricLinear) se establece en el máximo del ráster de entrada.
  • meanMultiplier (de TfMSLarge y TfMSSmall) es 1.
  • midpoint (de TfGaussian y TfNear) se establece en el punto medio del rango de valores del ráster de entrada.
  • midpoint (de TfLarge y TfSmall) se establece en el valor medio del ráster de entrada.
  • minimum (de TfLinear, TfLogisticDecay, TfLogisticGrowth y TfSymmetricLinear) se establece en el mínimo del ráster de entrada.
  • shift (de TfExponential, TfLogarithm y TfPower) se determina a partir del ráster de entrada.
  • spread (de TfGaussian y TfNear) se determina a partir del ráster de entrada.
  • spread (de TfLarge y TfSmall) es 5.
  • STDMultiplier (de TfMSLarge y TFMSSmall) es 1.
  • upperThreshold (de todas las funciones) es establece en el máximo del ráster de entrada.
  • valueAboveThreshold (de todas las funciones) se establece como el valor to_scale.
  • valueBelowThreshold (de todas las funciones) se establece en el valor de from_scale.
  • yInterceptPercent (de TfLogisticDecay) es 99,0000.
  • yInterceptPercent (de TfLogisticGrowth) es 1,0000.

Transformation function
from_scale
(Opcional)

El valor de inicio de la escala de evaluación de salida.

El valor from_scale no puede ser igual al valor to_scale. El valor from_scale puede ser menor o mayor que el valor to_scale (por ejemplo, del 1 al 10, o del 10 al 1).

El valor debe ser positivo y puede ser un valor entero o doble.

El valor predeterminado es 1.

Double
to_scale
(Opcional)

El valor de fin de la escala de evaluación de salida.

El valor to_scale no puede ser igual al valor from_scale. El valor to_scale puede ser menor o mayor que el valor from_scale (por ejemplo, del 1 al 10 o del 10 al 1).

El valor debe ser positivo y puede ser un valor entero o doble.

El valor predeterminado es 10.

Double

Valor de retorno

NombreExplicaciónTipo de datos
out_raster

Ráster re-escalado de salida.

La salida será un ráster de punto flotante con valores que oscilan entre (o están dentro de) los valores de evaluación from_scale y to_scale.

Raster

Ejemplo de código

Ejemplo 1 de RescaleByFunction (ventana Python)

Este ejemplo crea un ráster cuyos valores están re-escalados usando la función MSSmall.

import arcpy
from arcpy.sa import *
from arcpy import env
env.workspace = "c:/sapyexamples/data"
outRescale = RescaleByFunction("elevation", TfMSSmall(1.25, 1.5, "#", "#", 4000, "NoData"), 1, 10)
outRescale.save("c:/sapyexamples/rescaletfms1")
Ejemplo 2 de RescaleByFunction (secuencia de comandos independiente)

Muestra el uso de esta herramienta sobre datos de elevación, donde las localizaciones con menor elevación son mucho más preferibles que las de mayor elevación. Las localizaciones por encima de los 4.000 metros se establecen en NoData.

# Name: TfMSSmall_Ex_02.py
# Description: Rescales input raster data using a MSSmall function and
#     transforms the function values onto a specified evaluation scale. 
# Requirements: Spatial Analyst Extension
# Author: esri

# 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 TfMSSmall object
meanmult = 1.25
stdmult = 1.5
lowerthresh = "#"
valbelowthresh = "10"
upperthresh = 4000
valabovethresh = "NoData"
myTfFunction = TfMSSmall(meanmult, stdmult, lowerthresh, valbelowthresh, upperthresh, valabovethresh)

# Set evaluation scale
fromscale = 1
toscale = 10

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Execute RescaleByFunction
outRescale = RescaleByFunction(inRaster, myTfFunction, fromscale, toscale)

# Save the output
outRescale.save("c:/sapyexamples/rescaletfms2")

Entornos

Temas relacionados

Información sobre licencias

ArcGIS for Desktop Basic: Requiere Spatial Analyst
ArcGIS for Desktop Standard: Requiere Spatial Analyst
ArcGIS for Desktop Advanced: Requiere Spatial Analyst
5/10/2014