Available with Image Analyst license.
Summary
Generates a raster containing pixel change information using the output change analysis raster from the Analyze Changes Using CCDC tool or the Analyze Changes Using LandTrendr tool.
Usage
This tool uses a change analysis raster generated from the Analyze Changes Using CCDC tool or the Analyze Changes Using LandTrendr tool to generate a raster containing point of change information.
Change analysis rasters contain model information about how each pixel has changed over time, and this tool analyzes that information.
The Change Type parameter indicates the information that will be generated. Information is extracted from the change analysis raster.
When running this tool on the output from the Analyze Changes Using CCDC tool, you can choose from the following options:
- Time of latest change—The most recent date and time at which a pixel was flagged as being changed.
- Time of earliest change—The earliest date and time at which a pixel was flagged as being changed.
- Time of largest change—The date and time at which the calculated change was the most significant for a pixel.
- Number of changes—The total number of times the pixel changed.
For more information, see How Analyze Changes Using CCDC works.
When running this tool on the output from the Analyze Changes Using LandTrendr tool, the following additional options are available:
- Time of longest change—The date at which a pixel was flagged as being changed, at the beginning or end of the longest period of change.
- Time of shortest change—The date at which a pixel was flagged as being changed, at the beginning or end of the shortest period of change.
- Time of fastest change—The date at which a pixel was flagged as being changed, at the beginning or end of the fastest period of change.
- Time of slowest change—The date at which a pixel was flagged as being changed, at the beginning or end of the slowest period of change.
For more information, see How Analyze Changes Using LandTrendr works.
The output is a multiband raster in which each band contains change information depending on the change type selected and the maximum number of changes specified. For example, if the Change Type parameter is set to Time of earliest change and the Maximum Number of Changes parameter is set to 2, the tool calculates the two earliest dates when change occurred throughout the time series for every pixel. The result is a raster in which the first band contains the dates of the earliest change per pixel, and the second band contains the dates of the second-earliest change per pixel.
When running this tool on the output from the Analyze Changes Using LandTrendr tool, you can choose whether to extract the date that marks the beginning of a change or the end of a change using the Segment Date parameter. For example, to understand how the most recent change in the time series started, set the Change Type parameter to Time of latest change and the Segment Date parameter to Beginning of segment.
Use the following filtering parameters to extract more specific dates of change from your change analysis raster:
- Filter by year—Identify changes that occurred within a specific time period, for example, if you are looking for changes that occurred in a landscape during five years of drought.
- Filter by duration—Identify changes that occurred over a given range of years, for example, if you are only looking for abrupt changes that took place over 1 or 2 years. You can calculate the duration you are interested in using the formula end year - start year +1. Gaps in the time series will be included.
- Filter by magnitude—Identify changes of a given magnitude, for example, if you are only looking for large changes in the vegetation index NDVI. Magnitude is an absolute value, so the minimum and maximum values cannot be negative. To specify directional change, use the Change Direction parameter.
Syntax
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})
Parameter | Explanation | Data Type |
in_change_analysis_raster | The change analysis raster generated from the Analyze Changes Using CCDCtool or the Analyze Changes Using LandTrendr tool. | Raster Dataset; Raster Layer; Image Service |
change_type (Optional) | Specifies the change information to calculate for each pixel.
| String |
max_number_changes (Optional) | The maximum number of changes per pixel to be calculated. This number corresponds to the number of bands in the output raster. The default is 1, meaning only one change date will be calculated, and the output raster will contain only one band. This parameter is not available when the change_type parameter is set to NUM_OF_CHANGES. | Long |
segment_date (Optional) | Specifies whether to extract the date at the beginning of a change segment, or the end. This parameter is available only when the input change analysis raster is the output from the Analyze Changes Using LandTrendr tool.
| String |
change_direction (Optional) | Specifies the direction of change to be included in the analysis. This parameter is available only when the input change analysis raster is the output from the Analyze Changes Using LandTrendr tool.
| String |
filter_by_year (Optional) | Specifies whether to filter by a range of years.
| Boolean |
min_year (Optional) | The earliest year to use to filter results. This parameter is required if the filter_by_year parameter is set to FILTER_BY_YEAR. | Long |
max_year (Optional) | The latest year to use to filter results. This parameter is required if the filter_by_year parameter is set to FILTER_BY_YEAR. | Long |
filter_by_duration (Optional) | Specifies whether to filter by the change duration. This parameter is available only when the input change analysis raster is the output from the Analyze Changes Using LandTrendr tool.
| Boolean |
min_duration (Optional) | The minimum number of consecutive years to include in the results. This parameter is required if the filter_by_duration parameter is set to FILTER_BY_DURATION. | Double |
max_duration (Optional) | The maximum number of consecutive years to include in the results. This parameter is required if the filter_by_duration parameter is set to FILTER_BY_DURATION. | Double |
filter_by_magnitude (Optional) | Specifies whether to filter by change magnitude.
Specifies whether to filter by change magnitude.
| Boolean |
min_magnitude (Optional) | The minimum magnitude to include in the results. This parameter is required if the filter_by_magnitude parameter is set to FILTER_BY_DURATION. | Double |
max_magnitude (Optional) | The maximum magnitude to include in the results. This parameter is required if the filter_by_duration parameter is set to FILTER_BY_DURATION. | Double |
Return Value
Name | Explanation | Data Type |
out_raster | The output raster containing the detected change information. | Raster |
Code sample
This example returns the end date of the longest period of NDVI recovery (increasing values) where the change was a magnitude between 0.25 and 2.
# 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")
This example returns the total number of times the pixels changed in a Landsat time series.
# 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")
Environments
Licensing information
- Basic: Requires Image Analyst
- Standard: Requires Image Analyst
- Advanced: Requires Image Analyst