Parameter | Description | Default |
---|---|---|
spike threshold | Sets the size of abrupt deviation in spectral value that is considered a spike. Smaller values filter out spikes more aggressively | 0.9 |
p-value threshold | The p-value threshold for trajectory selection. Trajectories with p-values that exceed this threshold are considered no change. | 0.05 |
max segments | The maximum number of segments allowed in trajectory fitting | |
vertex count overshoot | Initial regression-based detection of potential vertices can overshoot the number of vertices allowed by max segments by this value; angle-based culling is used to return to the desired number of vertices if overshoot occurs. This allows for a mix of criteria for vertex identification. | 3 |
recovery threshold | Disallows candidate segment that have a recovery rate faster than 1/recovery threshold (in years). | 0.25 |
prevent one year recovery | Disallows all segments with recovery rates equal to one year, either true or false. | FALSE |
best model proportion | Allows models with more vertices than allowed by max segments to be chosen if their p-value is no more than (2 – best model proportion) times the p-value of the best model. | 0.75 |
minimum observations needed | Minimum number of cloud free images needed to perform fitting. | 6 |
Getting Started
Recommended papers and resources
Both the original LandTrendr paper Kennedy et al. 2010 and the GEE engine implementation paper Kennedy et al. 2018 are excellent jumping off points for understanding how the algorithm works.
For more specific information on LandTrendr in GEE, the holy grail is the eMapR LT GEE Guide. This document walks you through running LandTrendr in GEE step by step, with example code. Speaking of code, most of us in the CAFRI lab use the eMapR API code (or derivatives of it) when running LandTrendr. These scripts are the easiest place to start if you would like to run LandTrendr on your own. For quick reference, the GEE developers guide has good information about algorithm parameter defaults.
Understanding algorithm parameters
The LandTrendr algorithm has several parameters that a user can adjust to control how the algorithm segments the time series of spectral data. While each of these parameters serves a specific purpose, there are some that we have found to be more useful than others. For more detailed discussion of each parameter, and their sensitivity, see Kennedy et al. 2010. For information on adjusting these parameters for using Landtrendr in the Northern Forest Region see Algorithm Tuning
Recovery Threshold
The recovery threshold parameter sets the minimum allowable length of time after a disturbance event for spectral recovery. That is, this parameter control what length of time is ‘too fast’ to see a recovery of spectral values. By default this time period is 4 years (recovery period is the inverse of recovery threshold, 0.25 = 4 year recovery period) which in the Northeast is quite a long time, as our forest disturbance events tend to be low intensity and there is often advanced regeneration ready to fill any new canopy gaps. This parameter is the first parameter that we adjust in the CAFRI lab, often setting it to 0.75 (see Algorithm Tuning for more).
Max Segments
This parameter is the only algorithm parameter without a default value as the appropriate number of segments depends on how long of a time period you are studying. For example, if you have a 3 year time period you wouldn’t want to have the same maximum number of segments as a 30 year time period, otherwise you would have a segmentation that is much more complex than would be reasonable for a short amount of time. Therefore the general rule is, the longer the time period, the more segments that you need.
Mapping Parameters
There is also a second set of parameters that are easily adjusted by the user that control which parts of the segmented time series are exported to a change map output. These parameters can greatly affect how your change map appears, and as such are important to understand. For more details on these parameters see the eMapR API documentation.
Parameter | Description |
---|---|
delta | Change type to map – either loss (disturbance) or gain (recovery/growth). |
sort | The type of change to identify if there is more than one change event in the pixel of interest – one of greatest, least, newest, oldest, fastest, slowest. |
magnitude | Either a minimum or maximum value for filtering change events by change in spectral reflectance value; filtering is not required. |
duration | Either a minimum or maximum value for filtering change events by length of event. Filtering by disturbance duration is not required. |
preval | Either a minimum or maximum value for filtering change events by the pre-change value of the spectral index. Filtering by preval is not required. |
minimum mapping unit (mmu) | Indicates the smallest allowable disturbance patch. Pixels disturbed in the same year and adjacent following an 8-neightbor rule are considered to be of the same patch. Filtering by mmu is not required. |
Selecting imagery
One thing to be aware of when you are running LandTrendr is what imagery you are feeding into the algorithm. If you are using one of the eMapR scripts, the selection of imagery happens under the hood in a separate piece of code that is called to actually run the algorithm. As of April 2024, all the eMapR scripts default to Collection 2 Landsat imagery. For most users, who want to run Landtrendr on Landsat imagery, this is not a problem. However, if you want to use other timeseries data or if you are generating outputs over long periods of time, you may need to adjust this.
Additionally, if you are using the eMapR scripts, their API is designed to automatically be compatible with many common spectral indcies which makes it easy to switch between indices. In the CAFRI lab we almost always run LandTrendr on NBR, as we have found it to have the best performance.