使用更改分析栅格检测更改 (Image Analyst)

获得 Image Analyst 许可后可用。

摘要

可以利用使用 CCDC 分析变化工具或使用 LandTrendr 分析变化工具的输出变化分析栅格来生成包含像素变化信息的栅格。

使用情况

  • 该工具使用通过使用 CCDC 分析变化工具或使用 LandTrendr 分析变化工具生成的变化分析栅格来生成包含变化点信息的栅格。

    变化分析栅格包含有关每个像素如何随时间变化的模型信息。 此工具将分析该信息。

  • 变化类型参数用于指示将要生成的信息。 信息将从变化分析栅格中进行提取。

    使用 CCDC 分析变化工具的输出运行此工具时,可从以下选项中进行选择:

    • 最新变化的时间 - 像素被标记为变化的最新日期和时间。
    • 最早变化的时间 - 像素被标记为变化的最早日期和时间。
    • 最大变化的时间 - 计算的变化为像素最显著变化的日期和时间。
    • 变化次数 - 像素变化的总次数。

    有关详细信息,请参阅使用 CCDC 分析变化的工作原理

    使用 LandTrendr 分析变化工具的输出运行此工具时,可以使用以下附加选项:

    • 最长变化的时间 - 像素被标记为变化的日期,位于最长变化时间段的起点或终点。
    • 最短变化的时间 - 像素被标记为变化的日期,位于最短变化时间段的起点或终点。
    • 最快变化的时间 - 像素被标记为变化的日期,位于最快变化时间段的起点或终点。
    • 最慢变化的时间 - 像素被标记为变化的日期,位于最慢变化时间段的起点或终点。
    • 按起始值过滤 - 按起始值过滤,以仅在输出中包含给定起始值的变化。
    • 按结束值过滤 - 按结束值过滤,以仅在输出中包含给定结束值的变化。

  • 按起始值过滤按起始值过滤参数使用包含模型系数的变化分析栅格中表面反射率的拟合值。 在时间分布图中绘制拟合值时,将通过拟合值线段中的中断表示发生变化的时间。

    有关详细信息,请参阅使用 LandTrendr 分析变化的工作原理

  • 输出是一个多波段栅格,其中每个波段都包含变化信息,具体取决于所选的变化类型和指定的最大变化次数。 例如,如果变化类型参数设置为最早变化的日期,且最大变化次数参数设置为 2,则在整个时间序列中每个像素发生变化时,该工具都会计算两个最早的日期。 结果为栅格,其中第一个波段包含每个像素最早变化的日期,第二个波段包含每个像素第二早的变化日期。

  • 使用 LandTrendr 分析变化工具的输出运行此工具时,可使用段日期参数提取标记变化开始或结束的日期。 例如,要了解时间序列中最新变化是如何开始的,将变化类型参数设置为最新变化的时间,并将段日期参数设置为段起点

  • 使用以下过滤参数可从变化分析栅格中提取更具体的变化日期:

    • 按年过滤 - 识别特定时间段内发生的变化,例如,持续五年的干旱中地表发生的变化。
    • 按持续时间过滤 - 识别给定年份范围内发生的变化,例如,在 1 或 2 年内发生的突然变化。 可使用公式 end year - start year +1 来计算持续时间。 将包含时间序列中的空白。
    • 按量级过滤 - 识别给定量级的变化,例如,植被指数 NDVI 的较大变化。 量级是一个绝对值,因此最小值和最大值不能为负。 要指定方向变化,使用变化方向参数。

参数

标注说明数据类型
输入更改分析栅格

通过使用 CCDC 分析变化工具或使用 LandTrendr 分析变化工具生成的变化分析栅格。

Raster Dataset; Raster Layer; Image Service
更改类型
(可选)

指定要为每个像素计算的变化信息。

  • 最新变化的时间每个像素都将包含其在时间序列中最近变化的日期。 这是默认设置。
  • 最早变化的日期每个像素都将包含其在时间序列中最早变化的日期。
  • 最大变化的日期每个像素都将包含其在时间序列中最显著变化的日期。
  • 变化次数每个像素都将包含其在时间序列中发生变化的总次数。
  • 最长变化的时间每个像素将包含时间序列中位于最长过渡段的起点或终点处的变化日期。
  • 最短变化的时间每个像素将包含时间序列中位于最短过渡段的起点或终点处的变化日期。
  • 最快变化的时间每个像素将包含位于最快发生的过渡起点或终点的变化日期。
  • 最慢变化的时间每个像素将包含位于最慢发生的过渡起点或终点的变化日期。
String
最大更改数
(可选)

要计算的每个像素的最大变化次数。 该数字与输出栅格中的波段数相对应。 默认值为 1,表示将仅计算一个变化日期,且输出栅格将仅包含一个波段。

变化类型参数设置为变化次数时,此参数将处于非活动状态。

Long
段日期
(可选)

指定是提取位于变化段的起点还是终点处的日期。

仅当输入变化分析栅格是来自使用 LandTrendr 分析变化工具的输出时,此参数才可用。

  • 段起点将提取位于变化段的起点处的日期。 这是默认设置。
  • 段终点将提取位于变化段的终点处的日期。
String
变化方向
(可选)

指定要在分析中包含的变化方向。

仅当输入变化分析栅格是来自使用 LandTrendr 分析变化工具的输出时,此参数才可用。

  • 全部方向所有变化方向将包含在输出中。 这是默认设置。
  • 递增输出中仅包含正向或递增方向的变化。
  • 递减输出中仅包含负向或递减方向的变化。
String
按年过滤
(可选)

指定是否按年范围过滤输出。

  • 选中 - 将过滤结果,以仅在输出中包含特定年范围内发生的变化。
  • 未选中 - 不会按年对结果进行过滤。 这是默认设置。

Boolean
最小值
(可选)

用于过滤结果的最早年份。 选中按年过滤参数时,此参数为必需项。

Long
最大值
(可选)

用于过滤结果的最近年份。

选中按年过滤参数时,此参数为必需项。

Long
按持续时间过滤
(可选)

指定是否按变化持续时间对结果进行过滤。

仅当输入变化分析栅格是来自使用 LandTrendr 分析变化工具的输出时,此参数才处于活动状态。

  • 选中 - 将按持续时间过滤结果,以仅在输出中包含持续给定时间的变化。
  • 未选中 - 不会按持续时间对结果进行过滤。 这是默认设置。

Boolean
最小持续时间(以年为单位)
(可选)

将包含在结果中的最小连续年数。

当选中按持续时间过滤参数时,此参数为必需项。

Double
最大持续时间(以年为单位)
(可选)

将包含在结果中的最大连续年数。

当选中按持续时间过滤参数时,此参数为必需项。

Double
按量级过滤
(可选)

指定是否按变化量级对结果进行过滤。

  • 选中 - 将按量级过滤结果,以仅在输出中包含给定量级的变化。
  • 未选中 - 不会按量级对结果进行过滤。 这是默认设置。

指定是否按变化量级对结果进行过滤。

  • FILTER_BY_MAGNITUDE将按量级过滤结果,以仅在输出中包含给定量级的变化。
  • NO_FILTER_BY_MAGNITUDE不会按量级对结果进行过滤。 这是默认设置。
Boolean
最小量级
(可选)

将包含在结果中的最小量级。

当选中按量级过滤参数时,此参数为必需项。

Double
最大量级
(可选)

将包含在结果中的最大量级。

当选中按持续时间过滤参数时,此参数为必需项。

Double
按起始值过滤
(可选)

指定是否按起始值对结果进行过滤。

仅当输入变化分析栅格是来自使用 LandTrendr 分析变化工具的输出时,此参数才处于活动状态。

  • 选中 - 将按起始值过滤结果,以仅在输出中包含给定起始值的变化。
  • 未选中 - 不会按起始值对结果进行过滤。 这是默认设置。

Boolean
最小起始值
(可选)

将包含在结果中的最小起始值。

选中按起始值过滤参数时,此参数为必需项。

Double
最大起始值
(可选)

将包含在结果中的最大起始值。

选中按起始值过滤参数时,此参数为必需项。

Double
按结束值过滤
(可选)

指定是否按结束值对结果进行过滤。

仅当输入变化分析栅格是来自使用 LandTrendr 分析变化工具的输出时,此参数才处于活动状态。

  • 选中 - 将按结束值过滤结果,以仅在输出中包含给定结束值的变化。
  • 未选中 - 不会按结束值对结果进行过滤。 这是默认设置。

Boolean
最小结束值
(可选)

将包含在结果中的最小结束值。

选中按结束值过滤参数时,此参数为必需项。

Double
最大结束值
(可选)

将包含在结果中的最大结束值。

选中按结束值过滤参数时,此参数为必需项。

Double

返回值

标注说明数据类型
输出栅格

包含检测变化信息的输出栅格。

Raster

DetectChangeUsingChangeAnalysisRaster(in_change_analysis_raster, {change_type}, {max_number_changes}, {segment_date}, {change_direction}, {filter_by_year}, {min_year}, {max_year}, {filter_by_duration}, {min_duration}, {max_duration}, {filter_by_magnitude}, {min_magnitude}, {max_magnitude}, {filter_by_start_value}, {min_start_value}, {max_start_value}, {filter_by_end_value}, {min_end_value}, {max_end_value})
名称说明数据类型
in_change_analysis_raster

通过使用 CCDC 分析变化工具或使用 LandTrendr 分析变化工具生成的变化分析栅格。

Raster Dataset; Raster Layer; Image Service
change_type
(可选)

指定要为每个像素计算的变化信息。

  • TIME_OF_LATEST_CHANGE每个像素都将包含其在时间序列中最近变化的日期。 这是默认设置。
  • TIME_OF_EARLIEST_CHANGE每个像素都将包含其在时间序列中最早变化的日期。
  • TIME_OF_LARGEST_CHANGE每个像素都将包含其在时间序列中最显著变化的日期。
  • NUM_OF_CHANGES每个像素都将包含其在时间序列中发生变化的总次数。
  • TIME_OF_LONGEST_CHANGE每个像素将包含时间序列中位于最长过渡段的起点或终点处的变化日期。
  • TIME_OF_SHORTEST_CHANGE每个像素将包含时间序列中位于最短过渡段的起点或终点处的变化日期。
  • TIME_OF_FASTEST_CHANGE每个像素将包含位于最快发生的过渡起点或终点的变化日期。
  • TIME_OF_SLOWEST_CHANGE每个像素将包含位于最慢发生的过渡起点或终点的变化日期。
String
max_number_changes
(可选)

要计算的每个像素的最大变化次数。 该数字与输出栅格中的波段数相对应。 默认值为 1,表示将仅计算一个变化日期,且输出栅格将仅包含一个波段。

change_type 参数设置为 NUM_OF_CHANGES 时,不会启用此参数。

Long
segment_date
(可选)

指定是提取位于变化段的起点还是终点处的日期。

仅当输入变化分析栅格是来自使用 LandTrendr 分析变化工具的输出时,此参数才可用。

  • BEGINNING_OF_SEGMENT将提取位于变化段的起点处的日期。 这是默认设置。
  • END_OF_SEGMENT将提取位于变化段的终点处的日期。
String
change_direction
(可选)

指定要在分析中包含的变化方向。

仅当输入变化分析栅格是来自使用 LandTrendr 分析变化工具的输出时,此参数才可用。

  • ALL所有变化方向将包含在输出中。 这是默认设置。
  • INCREASE输出中仅包含正向或递增方向的变化。
  • DECREASE输出中仅包含负向或递减方向的变化。
String
filter_by_year
(可选)

指定是否按年范围过滤输出。

  • FILTER_BY_YEAR将过滤结果,以仅在输出中包含特定年范围内发生的变化。
  • NO_FILTER_BY_YEAR不会按年对结果进行过滤。 这是默认设置。
Boolean
min_year
(可选)

用于过滤结果的最早年份。 当将 filter_by_year 参数设置为 FILTER_BY_YEAR 时,此参数为必需项。

Long
max_year
(可选)

用于过滤结果的最近年份。

当将 filter_by_year 参数设置为 FILTER_BY_YEAR 时,此参数为必需项。

Long
filter_by_duration
(可选)

指定是否按变化持续时间对结果进行过滤。

仅当输入变化分析栅格是来自使用 LandTrendr 分析变化工具的输出时,此参数才会启用。

  • FILTER_BY_DURATION将按持续时间过滤结果,以仅在输出中包含持续给定时间的变化。
  • NO_FILTER_BY_DURATION不会按持续时间对结果进行过滤。 这是默认设置。
Boolean
min_duration
(可选)

将包含在结果中的最小连续年数。

当将 filter_by_duration 参数设置为 FILTER_BY_DURATION 时,此参数为必需项。

Double
max_duration
(可选)

将包含在结果中的最大连续年数。

当将 filter_by_duration 参数设置为 FILTER_BY_DURATION 时,此参数为必需项。

Double
filter_by_magnitude
(可选)

指定是否按变化量级对结果进行过滤。

  • 选中 - 将按量级过滤结果,以仅在输出中包含给定量级的变化。
  • 未选中 - 不会按量级对结果进行过滤。 这是默认设置。

指定是否按变化量级对结果进行过滤。

  • FILTER_BY_MAGNITUDE将按量级过滤结果,以仅在输出中包含给定量级的变化。
  • NO_FILTER_BY_MAGNITUDE不会按量级对结果进行过滤。 这是默认设置。
Boolean
min_magnitude
(可选)

将包含在结果中的最小量级。

当将 filter_by_magnitude 参数设置为 FILTER_BY_MAGNITUDE 时,此参数为必需项。

Double
max_magnitude
(可选)

将包含在结果中的最大量级。

当将 filter_by_magnitude 参数设置为 FILTER_BY_MAGNITUDE 时,此参数为必需项。

Double
filter_by_start_value
(可选)

指定是否按起始值对结果进行过滤。

仅当输入变化分析栅格是来自使用 LandTrendr 分析变化工具的输出时,此参数才会启用。

  • FILTER_BY_START_VALUE将按起始值过滤结果,以仅在输出中包含给定起始值的变化。
  • NO_FILTER_BY_START_VALUE不会按起始值对结果进行过滤。 这是默认设置。
Boolean
min_start_value
(可选)

将包含在结果中的最小起始值。

当将 filter_by_start_value 参数设置为 FILTER_BY_START_VALUE 时,此参数为必需项。

Double
max_start_value
(可选)

将包含在结果中的最大起始值。

当将 filter_by_start_value 参数设置为 FILTER_BY_START_VALUE 时,此参数为必需项。

Double
filter_by_end_value
(可选)

指定是否按结束值对结果进行过滤。

仅当输入变化分析栅格是来自使用 LandTrendr 分析变化工具的输出时,此参数才会启用。

  • FILTER_BY_END_VALUE将按结束值过滤结果,以仅在输出中包含给定结束值的变化。
  • NO_FILTER_BY_END_VALUE不会按结束值对结果进行过滤。 这是默认设置。
Boolean
min_end_value
(可选)

将包含在结果中的最小结束值。

当将 filter_by_end_value 参数设置为 FILTER_BY_END_VALUE 时,此参数为必需项。

Double
max_end_value
(可选)

将包含在结果中的最大结束值。

当将 filter_by_end_value 参数设置为 FILTER_BY_END_VALUE 时,此参数为必需项。

Double

返回值

名称说明数据类型
out_raster

包含检测变化信息的输出栅格。

Raster

代码示例

DetectChangeUsingChangeAnalysisRaster 示例 1(Python 窗口)

本示例将返回变化量级介于 0.25 和 2 之间的最长 NDVI 恢复期(递增值)的结束日期。

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

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

# Execute
dateOfLatestChange = arcpy.ia.DetectChangeUsingChangeAnalysis(
	"Monthly_NDVI_Change_Analysis.crf", "TIME_OF_LATEST_CHANGE", 1)

# Save output
dateOfLatestChange.save(r"C:\data\NDVI_LatestChanges.crf")
DetectChangeUsingChangeAnalysisRaster 示例 2(独立脚本)

本示例返回像素在 Landsat 时间序列中发生变化的总次数。

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

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

# Define input parameters
in_change_analysis = r"C:\data\Landsat_ChangeAnalysis.crf"
change_type = "NUM_OF_CHANGES"

# Execute
number_of_changes = arcpy.ia.DetectChangeUsingChangeAnalysis(
	in_change_analysis, change_type)

# Save output
number_of_changes.save("C:/data/NumberOfChanges_Landsat.crf")

相关主题