Skip to main content

LinearUnmixing

汇总

执行亚像素分类并计算单个像素的不同土地覆盖类型的分数丰度。

讨论

有关此函数工作原理的详细信息,请参阅 线性光谱解混 栅格函数。

栅格对象所引用的栅格数据集是临时性的。 要将其设置为永久,可以调用栅格对象的 save 方法。

语法

LinearUnmixing(in_raster, in_spectral_profile_file, {value_option})

参数 说明 数据类型

in_raster

输入栅格。

Raster

in_spectral_profile_file

不同土地覆被类的光谱图路径。

可通过以下形式提供该信息:面要素类、生成自 训练最大似然法分类器 工具的分类器定义文件 (.ecd) 或包含类光谱图的 JSON 文件 (.json)。

String

value_option

指定将如何定义输出像素值。

  • SUM_TO_ONE - 每个像素的类值都将以十进制格式提供,且所有类的总和等于 1,例如,Class1 = 0.16,Class2 = 0.24,Class3 = 0.60。

  • NON_NEGATIVE - 不会存在负输出值。

可以通过使用分号进行分隔来指定两个选项: "SUM_TO_ONE;NON_NEGATIVE"

String

返回值

数据类型 说明

Raster

输出栅格。

代码示例

LinearUnmixing 示例

本示例将求解多光谱栅格中每个像素的分数类值。

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

本示例将求解多光谱栅格中每个像素的分数类值。

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

# Set the analysis environments
arcpy.env.workspace = "C:/arcpyExamples/data"

# Set the local variables
in_raster = "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")