使用变化分析栅格检测变化 (Image Analyst)

获得 Image Analyst 许可后可用。

描述

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

使用方法

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

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

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

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

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

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

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

    • 最长变化的时间 - 像素被标记为变化的日期,位于最长变化时间段的起点或终点。
    • 最短变化的时间 - 像素被标记为变化的日期,位于最短变化时间段的起点或终点。
    • 最快变化的时间 - 像素被标记为变化的日期,位于最快变化时间段的起点或终点。
    • 最慢变化的时间 - 像素被标记为变化的日期,位于最慢变化时间段的起点或终点。

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

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

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

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

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

语法

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})
参数说明数据类型
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_DURATION 时,此参数为必需项。

Double
max_magnitude
(可选)

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

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

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
dateOfLongestChange = arcpy.ia.DetectChangeUsingChangeAnalysis(
	"LandTrendr_NDVI_Change_Analysis.crf", "TIME_OF_LONGEST_CHANGE", 1, "INCREASE", 
	"NO_FILTER_BY_YEAR",None,None,"NO_FILTER_BY_DURATION",None,None,"FILTER_BY_MAGNITUDE",
	0.25,2)

# Save output
dateOfLongestChange.save(r"C:\data\NDVI_LongestChange.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")

许可信息

  • Basic: 需要 Image Analyst
  • Standard: 需要 Image Analyst
  • Advanced: 需要 Image Analyst

相关主题