Skip to content

Commit

Permalink
M1 dev (#28)
Browse files Browse the repository at this point in the history
* revision of theme 1 raster time series processing tutorial (xarray)

* revision of theme 2sentinel2 stac tutorial

* revise theme 2 gee python api tutorial

* revise point cloud exploration tutorial: metadata and package management recommendations

* revise theme 3 landcover classification tutorial

* edit environment setup instructions for theme 2 tutorials (simplified, less specific, refer to software page for easier course maintenance)

* revise module1.md practical parts overview

* simplify environment setup instructions in theme 1 xarray tutorial

* revise theme 3 snow cover time series tutorial

* revise theme 3 snow cover time series tutorial with excercise

* revise theme 4 tutorial on forest disturbance assessment

* theme 3 landcover classification tutorial: add import of folium.plugins

* revise theme 6 accuracy assessment tutorial

* repair link to t6 excercise section in m1 overview

* revise classification accuracy metrics

* add links to module 2

* add links to #algorithms in m2t5

* add section about feature selection and links to m2t4

* add ml references

* add mlxtend package to list of ml tools

* add short explanation of CV and bootstrapping with links to literature and to M2T4

* repair internal links

* add links to m2 and m3

* add links to m2 and m3

* repair internal links

* correct typos

* add link to Module 2 Excercise 2 (tools for reference data acquisition)

* snow cover maps: add discrete ticks and colormap to colorscale

* minor corrections in comments

* Added self-eval quizzes

* Adapting question 1

* fix typos

* add T5 tutorial: Sentinel-1/-2 fusion for surface water monitoring

* add link to theme 5 tutorial (S1/S2 fusion)

* add link to theme 5 tutorial (S1/S2 fusion)

* update theme 5 theory (spatio-temporal data fusion

* add lineplot with s1 s2 water extent

* Added exercise video and adapted the instructions.

* update t5 water surface tutorial

* add figures

* revision of t5, add figures, references, excercise

* remove comments

* update m1 python env yaml file

* replace non-recognized t5 notebook with earlier, quasi-identical version

* M1T5: correct formatting (numbered lists, ...)

* correct citation format and center figures

* add self-evaluation quiz for M1T4

* add self-evaluation quiz for M1T5

* add figure with data fusion levels

* minor corrections: rename sections, format bullet points

* Update data section

---------

Co-authored-by: unknown <andreas.mayr@uibk.ac.at>
Co-authored-by: jdvorak <jakub.dvorak@natur.cuni.cz>
  • Loading branch information
3 people authored Oct 23, 2023
1 parent 274375d commit 2d33cdb
Show file tree
Hide file tree
Showing 4 changed files with 129 additions and 29 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,9 @@ For many applications related to the study of human-environment interactions it

Time series of remote sensing data essentially provide for every spatial unit (e.g. pixel) a series of observations, with each observation containing the value of a variable at a specific point in time. The fluctuation of these values with time can be seen as a *trajectory* in variable space (feature space). This may become clearer when we plot the observations for one spatial unit as points, connect them with lines and add a resampling or smoothing operation to the time series (to remove noise or high frequency parts of the signal).

<img src="media/trajectory_example.png" title="A spectral trajectory" width="600">
<p align="center">
<img src="media/trajectory_example.png" title="A spectral trajectory" width="600">
</p>

*Example of a spectral trajectory. The detectability of changes is depending on how the original time series is acquired and processed (e.g. resampled or smoothed). The yearly maxima of a vegetation index indicate a change in the year 2019, whereas this is not well visible if observations are available only every four years, i.e. the temporal resolution of observations and aggregated time series is important.*

Expand All @@ -54,21 +56,23 @@ Learn more on theoretical backgrounds and practical implementations in the dedic

### Analysis and decomposition of spectral trajectories

As time series of remote sensing data are expanding the possibilities for land change analysis, [Woodcock et al. (2020)](https://doi.org/10.1016/j.rse.2019.111558) have postulated a paradigm shift away from bi-temporal change detection towards more continuous monitoring of change. This methodological trend enhances the detection of subtle changes, the precise recognition of their timing, and the characterization of the nature of change (e.g. gradual vs. abrupt). Especially the imagery from Landsat and Sentinel-2 permit users to conduct analyses at spatial and temporal scales appropriate for many ecological topics [Kennedy et al. 2014](https://doi.org/10.1890/130066).
As time series of remote sensing data are expanding the possibilities for land change analysis, [Woodcock et al. (2020)](https://doi.org/10.1016/j.rse.2019.111558) have postulated a paradigm shift away from bi-temporal change detection towards more continuous monitoring of change. This methodological trend enhances the detection of subtle changes, the precise recognition of their timing, and the characterization of the nature of change (e.g. gradual vs. abrupt). Especially the imagery from Landsat and Sentinel-2 permit users to conduct analyses at spatial and temporal scales appropriate for many ecological topics ([Kennedy et al. 2014](https://doi.org/10.1890/130066)).


**Monitoring ecosystem disturbance and recovery**

Among the many applications of such analyses, one of the most prominent ones is studying ecosystem disturbance and recovery, especially of forests (e.g., [Kennedy et al. 2007](https://doi.org/10.1016/j.rse.2007.03.010), [White et al. 2017](https://doi.org/10.1016/j.rse.2017.03.035), [Zhu et al 2020](https://doi.org/10.1016/j.rse.2019.03.009)).
To identify and categorize vegetation cover disturbance by open-pit mining and assess the status of subsequent vegetation recovery, [Yang et al. 2018](https://doi.org/10.1016/j.scitotenv.2018.06.341) classified different types of Landsat NDVI trajectories. In this context, the *LandTrendr* software ([Kennedy et al. 2010](https://doi.org/10.1016/j.rse.2010.07.008)) was developed for segmenting spectral-temporal time series. It is capable of capturing and describing the characteristic trajectories of different forest states, with shorter disturbance events and longer-term processes of recovery in forested ecosystems (see also [Module 2](https://3dgeo-heidelberg.github.io/etrainee/module2/05_vegetation_monitoring/05_vegetation_monitoring.html#the-landsat-based-detection-of-trends-in-disturbance-and-recovery-landtrendr)). The LandTrendr algorithm has also been ported from its original IDL implementation to the Google Earth Engine platform ([Kennedy et al. 2018](https://doi.org/10.3390/rs10050691)), for details see the documentation at the [LT-GEE website](https://emapr.github.io/LT-GEE/index.html).
To identify and categorize vegetation cover disturbance by open-pit mining and assess the status of subsequent vegetation recovery, [Yang et al. (2018)](https://doi.org/10.1016/j.scitotenv.2018.06.341) classified different types of Landsat NDVI trajectories. In this context, the *LandTrendr* software ([Kennedy et al. 2010](https://doi.org/10.1016/j.rse.2010.07.008)) was developed for segmenting spectral-temporal time series. It is capable of capturing and describing the characteristic trajectories of different forest states, with shorter disturbance events and longer-term processes of recovery in forested ecosystems (see also [Module 2](https://3dgeo-heidelberg.github.io/etrainee/module2/05_vegetation_monitoring/05_vegetation_monitoring.html#the-landsat-based-detection-of-trends-in-disturbance-and-recovery-landtrendr)). The LandTrendr algorithm has also been ported from its original IDL implementation to the Google Earth Engine platform ([Kennedy et al. 2018](https://doi.org/10.3390/rs10050691)), for details see the documentation at the [LT-GEE website](https://emapr.github.io/LT-GEE/index.html).

<img src="media/Wulder_et_al_2019.jpg" title="Spectral trajectories for different forest states" width="600">
<p align="center">
<img src="media/Wulder_et_al_2019.jpg" title="Spectral trajectories for different forest states" width="600">
</p>

*Spectral trajectories for different forest states (left) and an illustration of different change metrics (such as magnitude (m<sub>1</sub>, m<sub>2</sub>) and persistence (p<sub>1</sub>, p<sub>2</sub>); right; figure by [Wulder et al. 2019](https://doi.org/10.1016/j.rse.2019.02.015)/ [CC BY 4.0](http://creativecommons.org/licenses/by/4.0/)).*

Another widely used option for landcover change detection is the search for breakpoints in remote sensing trajectories, e.g. with the [Breaks For Additive Season and Trend (BFAST)](https://bfast.readthedocs.io/en/latest/index.html) algorithm ([Verbesselt et al. 2010](https://doi.org/10.1016/j.rse.2009.08.014)). BFAST is an unsupervised time series change detection algorithm specialised in detecting multiple breakpoints within a multi-year time series. It involves an iterative process with multiple steps for decomposing a time series into trend, seasonal and error components, and for detecting breakpoints in each of the components. Variants developed on this basis include the faster and more flexible BFASTlite ([Masiliūnas et al. 2021](https://doi.org/10.3390/rs13163308)), BFASTmonitor (for near-real time detection of a single break; [Verbesselt et al. 2012](https://doi.org/10.1016/j.rse.2012.02.022)), and a Google Earth Engine implementation of BFASTmonitor ([Hamunyela et al. 2020](https://doi.org/10.3390/rs12182953)).

A comprehensive overview of algorithms for change detection and characterization in satellite image time series is provided in [Module 2](https://3dgeo-heidelberg.github.io/etrainee/module2/05_vegetation_monitoring/05_vegetation_monitoring.html#algorithms). A single change detection method often turns out to be not reliable enough and, depending on the situation (e.g. change type, data availability, etc.), different algorithms will be most suitable. This motivates the development of multi-algorithm ensembles to increase change detection accuracy. [Xu et al. (2022)](https://doi.org/10.1016/j.rse.2022.112905) took an ensemble approach for land cover change detection and combined different BFAST outputs in a Random Forest classification. [Bullock et al. 2020](https://doi.org/10.1016/j.rse.2019.04.018) found that using a combination of break detection algorithms based on fundamentally different approaches can considerably improve the robustness of land change monitoring. In their study, they applied two tests to detect breaks and another test to identify falsely identified breaks.
A comprehensive overview of algorithms for change detection and characterization in satellite image time series is provided in [Module 2](https://3dgeo-heidelberg.github.io/etrainee/module2/05_vegetation_monitoring/05_vegetation_monitoring.html#algorithms). A single change detection method often turns out to be not reliable enough and, depending on the situation (e.g. change type, data availability, etc.), different algorithms will be most suitable. This motivates the development of multi-algorithm ensembles to increase change detection accuracy. [Xu et al. (2022)](https://doi.org/10.1016/j.rse.2022.112905) took an ensemble approach for land cover change detection and combined different BFAST outputs in a Random Forest classification. [Bullock et al. (2020)](https://doi.org/10.1016/j.rse.2019.04.018) found that using a combination of break detection algorithms based on fundamentally different approaches can considerably improve the robustness of land change monitoring. In their study, they applied two tests to detect breaks and another test to identify falsely identified breaks.


**Seasonality parameters/phenology**
Expand All @@ -77,7 +81,9 @@ Another application where satellite image time series are invaluable, is the stu

The *TIMESAT* software ([Eklundh & Jönsson 2016](https://doi.org/10.1007/978-3-319-47037-5_9), [Eklundh 2023](https://web.nateko.lu.se/timesat/timesat.asp)) was developed to derive a number of seasonality parameters from satellite image time series. A smoothing method (either asymmetric Gaussian fits, double-logistic fits, or Savitzky-Golay filtering) is applied to the time series of each pixel. A range of parameters can then be extracted from the smoothed trajectories for each season. TIMESAT is typically employed for phenological studies, and the upcoming release (version 4) is also used for the [Copernicus HR-VPP](https://land.copernicus.eu/pan-european/biophysical-parameters/high-resolution-vegetation-phenology-and-productivity) (high-resolution vegetation phenology and productivity) product suite.

<img src="media/TIMESAT_parameters.png" title="TIMESAT seasonality parameters" width="400">
<p align="center">
<img src="media/TIMESAT_parameters.png" title="TIMESAT seasonality parameters" width="400">
</p>

*Some of the seasonality parameters generated in TIMESAT: (a) beginning of season, (b) end of season, (c) length of season, (d) base value, (e) time of middle of season, (f) maximum value, (g) amplitude, (h) small integrated value, (h+i) large integrated value. (figure by [Eklundh 2023](https://web.nateko.lu.se/timesat/timesat.asp)/ [CC BY-NC-ND 2.5 SE](http://creativecommons.org/licenses/by-nc-nd/2.5/se/)).*

Expand All @@ -101,19 +107,59 @@ Similarly, [Radwan et al. (2021)](https://doi.org/10.1038/s41598-021-92256-2) pr

*Areal development of different landcover types per continent between 1992 and 2018, relative to the initial area. Error bars for the 95% confidence interval are provided for the continent showing greatest change in each plot (figure by [Radwan et al. 2021](https://doi.org/10.1038/s41598-021-92256-2)/ [CC BY 4.0](http://creativecommons.org/licenses/by/4.0/))*

<img src="media/Radwan_et_al_2021_LC_transitions_global.png" title="Global LC transitions between 1992 and 2018" width="400">
<p align="center">
<img src="media/Radwan_et_al_2021_LC_transitions_global.png" title="Global LC transitions between 1992 and 2018" width="400">
</p>

*Global LC transitions (from-to change) between 1992 and 2018, expressed in percentage terms relative to the total global LC area that changed over this period (figure by [Radwan et al. 2021](https://doi.org/10.1038/s41598-021-92256-2)/ [CC BY 4.0](http://creativecommons.org/licenses/by/4.0/)).*


**Coastal change**

[Murray et al. (2019)](https://doi.org/10.1038/s41586-018-0805-8) used satellite image time series analysis to map and study the global extent of and change in tidal flats over the course of 33 years (1984–2016). This analysis was later expanded until 2019 by [Murray et al. 2022](https://doi.org/10.1038/s41597-022-01635-5). The dataset can be explored in [this](https://www.intertidal.app/home) Google Earth Engine app. [Luijendijk et al. (2018)](https://doi.org/10.1038/s41598-018-24630-6) used data from the Landsat archive to study directions and rates of shoreline change at sandy beaches of the World.
[Murray et al. (2019)](https://doi.org/10.1038/s41586-018-0805-8) used satellite image time series analysis to map and study the global extent of and change in tidal flats over the course of 33 years (1984–2016). This analysis was later expanded until 2019 by [Murray et al. (2022)](https://doi.org/10.1038/s41597-022-01635-5). The dataset can be explored in [this](https://www.intertidal.app/home) Google Earth Engine app. [Luijendijk et al. (2018)](https://doi.org/10.1038/s41598-018-24630-6) used data from the Landsat archive to study directions and rates of shoreline change at sandy beaches of the World.

<img src="media/Luijendijk_et_al_2018_world_beach_dynamics.png" title="Global hotspots of beach erosion and accretion" width="900">

*Global hotspots of beach erosion and accretion. The red (green) circles indicate erosion (accretion) for the four shoreline change rate categories (depicted in the legend). The bar plots to the right and at the bottom present the relative occurrence of eroding (accreting) sandy shorelines per degree latitude and longitude, respectively. The numbers presented in the main plot represent the average change rate for all sandy shorelines per continent (figure by [Luijendijk et al. (2018)](https://doi.org/10.1038/s41598-018-24630-6)/ [CC BY 4.0](http://creativecommons.org/licenses/by/4.0/)).*

## Self-evaluation quiz

<form name="quiz" action="" method="post" onsubmit="evaluate_quiz(); return false">

<!--Question 1-->
<label for="q_01">
1) Correct or false: A trajectory-based analysis of remote sensing time series (RSTS) …
</label><br>
<input type="checkbox" name="q_01">… looks at the spatial variation at each moment by computing a variable’s differences between neighbouring spatial units (e.g., pixels).<br>
<input type="checkbox" name="q_01">… analyses how a variable fluctuates in a spatial unit with time.<br>
<div hidden id="correct_q_01">… analyses how a variable fluctuates in a spatial unit with time.</div>
<output id="output_q_01"></output><br>

<!--Question 2-->
<label for="q_02">
2) Correct or false: For an analysis of spectral-temporal trajectories in RSTS, it is usually best to …
</label><br>
<input type="checkbox" name="q_02">… use the original data with high temporal resolution to ensure maximum accuracy.<br>
<input type="checkbox" name="q_02">… resample, aggregate, or smooth the time series to identify changes at the desired temporal scale and ignore higher-frequency fluctuations.<br>
<input type="checkbox" name="q_02">… strive for a good trade-off between high temporal resolution and filtering of undesired parts of the signal.<br>
<div hidden id="correct_q_02">… resample, aggregate, or smooth the time series to identify changes at the desired temporal scale and ignore higher-frequency fluctuations.&… strive for a good trade-off between high temporal resolution and filtering of undesired parts of the signal.</div>
<output id="output_q_02"></output><br>

<!--Question 3-->
<label for="q_03">
3) What are main differences between classic change detection with bi-temporal data and change analysis in remote sensing time series (RSTS)?
</label><br>
<input type="checkbox" name="q_03">RSTS enhance the possibilities for a detection of subtle changes, for a precise recognition of their timing, and for the characterization of the nature of change (e.g., gradual vs. abrupt).<br>
<input type="checkbox" name="q_03">Bi-temporal change detection can deal with heterogeneous input data and needs no preprocessing (such as harmonization) of this data.<br>
<input type="checkbox" name="q_03">Change detection and analysis with RSTS requires more specialized algorithms and software.<br>
<div hidden id="correct_q_03">RSTS enhance the possibilities for a detection of subtle changes, for a precise recognition of their timing, and for the characterization of the nature of change (e.g., gradual vs. abrupt).&Change detection and analysis with RSTS requires more specialized algorithms and software.</div>
<output id="output_q_03"></output><br>

<input type="submit" value="Submit" style="font-size:14pt"><br>

<output id="output_overall">
</output>
</form>

## Tutorial: Forest disturbance assessment in Python and GEE

Expand All @@ -127,11 +173,15 @@ In [this Jupyter Notebook](./T4_GEE_NDVI_time_series_points.ipynb) we compare La

*Avalanche zone north of Innsbruck (Austria) with forest damaged in January 2019 (images by A. Mayr, 23 June 2019/ [CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/)).*

<img src="media/L8_NDVI_forest_points.png" title="Landsat 8 NDVI time series of two forest sites" width="500">
<p align="center">
<img src="media/L8_NDVI_forest_points.png" title="Landsat 8 NDVI time series of two forest sites" width="500">
</p>

*Landsat 8 NDVI time series of a disturbed (blue) and an undisturbed (orange) forest site.*

<img src="media/L8_NDVI_forest_lines.png" title="Monthly, three monthly and annual maximum Landsat 8 NDVI time series" width="500">
<p align="center">
<img src="media/L8_NDVI_forest_lines.png" title="Monthly, three monthly and annual maximum Landsat 8 NDVI time series" width="500">
</p>

*Monthly (top), three monthly (center) and annual (bottom) maximum Landsat 8 NDVI time series of a disturbed (blue) and an undisturbed (orange) forest site.*

Expand Down
Loading

0 comments on commit 2d33cdb

Please sign in to comment.