LinearUnmixing

Disponible con licencia de Image Analyst.

Disponible con una licencia de Spatial Analyst.

Resumen

Performs subpixel classification and calculates the fractional abundance of land cover types for individual pixels.

Debate

For more information about how this function works, see the Linear Spectral Unmixing raster function.

The referenced raster dataset for the raster object is temporary. To make it permanent, you can call the raster object's save method.

Sintaxis

LinearUnmixing (in_raster, in_spectral_profile_file, {value_option})
ParámetroExplicaciónTipo de datos
in_raster

The input raster.

Raster
in_spectral_profile_file

The path to the spectral profile for the various land cover classes.

This can be provided as a polygon feature class, a classifier definition file (.ecd) generated from the Train Maximum Likelihood Classifier tool, or a JSON file (.json) that contains the class spectral profiles.

String
value_option

Specifies how the output pixel values will be defined.

  • SUM_TO_ONE—Class values for each pixel will be provided in decimal format with the sum of all classes equal to 1; for example, Class1 = 0.16; Class2 = 0.24; Class3 = 0.60.
  • NON_NEGATIVE—There will be no negative output values.

Both options can be specified by delimiting with a semicolon: "SUM_TO_ONE;NON_NEGATIVE".

String
Valor de retorno
Tipo de datosExplicación
Raster

The output raster.

Muestra de código

LinearUnmixing example

This example resolves the fractional class values for each pixel in the multispectral raster.

from arcpy.ia import *
out_linearunmixing_raster = LinearUnmixing(
    "Landsat8.tif","C:/arcpyExamples/data/training_feature.ecd")
out_linearunmixing_raster.save(
    "C:/arcpyexamples/outputs/linearunmix_output.tif")
LinearUnmixing example

This example resolves the fractional class values for each pixel in the multispectral raster.

# Import system modules
import arcpy
from arcpy.ia import *

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

# Set the local variables
in_raster = "C:/data/Landsat_8.tif"
in_spectral_profile = "C:/data/training_features.ecd"
value_options = "SUM_TO_ONE;NON_NEGATIVE" 

# Apply LinearSpectralUnmixing function
unmixing_outputs = LinearUnmixing(in_raster, in_spectral_profile, value_options)

# Save the output
unmixing_outputs.save("C:/arcpyExamples/outputs/unmixing_results.tif")