Phenological analysis for image time series
Table of Contents
1 Introduction
This module implements a several algorithms allowing to extract phenological information from time profiles. These time profiles should represent vegetation status as for instance NDVI, LAI, etc.
2 Library
The library provides tools for fitting parametric models to time profiles:
- double logistics
- assymetric gaussians
Only the double logistic has been thoroughly tested. A double logistic has this form:
\begin{equation} g(x) = A\left(f_1(x)-f_2(x)\right)+B = A\left(\frac{1}{1+e^{\frac{x_0-x}{x_1}}}-\frac{1}{1+e^{\frac{x_2-x}{x_3}}}\right)+B, \end{equation}where \(A+B\) is the maximum value and \(B\) is the minimum.
From the double logistic fitting, some key parametres can be obtained. The 6 parameters of the model can be used to define the following phenological metrics:
Since
\begin{equation} \frac{df(x)}{dx} = \frac{e^{\frac{x_0-x}{x_1}}}{x_1\left(1+e^{\frac{x_0-x}{x_1}} \right)^2} \end{equation}we have
\begin{equation} g'(x)=\frac{dg(x)}{dx} = A\left( \frac{e^{\frac{x_0-x}{x_1}}}{x_1\left(1+e^{\frac{x_0-x}{x_1}} \right)^2} - \frac{e^{\frac{x_2-x}{x_3}}}{x_3\left(1+e^{\frac{x_2-x}{x_3}} \right)^2}\right) \end{equation}
Figure 2: Double logistic function and associated parameters
2.1 Date of the maximum positive gradient
By definition, this is \(x_0\).
2.2 Starting date
The date for which the straight line with the slope of \(x_0\) intercepts the horizontal axis. If
\begin{equation} g'(x_0) = m \end{equation}this line's equation is
\begin{equation} y = m x + b \end{equation}and verifies that
\begin{equation} \begin{split} 0 = & m t_0 + b \\ g(x_0) = & m x_0 + b \end{split} \end{equation}which gives
\begin{equation} y = g'(x_0) x + (g(x_0) - g'(x_0) x_0) \end{equation}and therefore,
\begin{equation} t_0 = \frac{m x_0 - g(x_0) }{m} = x_0 - \frac{g(x_0)}{g'(x_0)} \end{equation}2.3 Length of the plateau
We define \(t_1\) as the date for which the previous straight line reaches the maximum value.
\begin{equation} t_1 = \frac{A+B - (g(x_0) - g'(x_0) x_0)}{g'(x_0)} \end{equation}Similarly, we can use the straight line associated to the descending slope:
\begin{equation} y = g'(x_2) x + (g(x_2)-g'(x_2)x_2) \end{equation}and define
\begin{equation} t_2 = \frac{A+B - (g(x_2) - g'(x_2) x_2)}{g'(x_2)} \end{equation}And the length of the plateau is:
\begin{equation} L = t_2 - t_1 \end{equation}2.4 Senescense slope
By definition this is g'(x2).
3 Applications
Only one application is provided at this time. It allows fitting double logistics to each pixel of an image time series. The output contains 2 double logistics, one for the main phenological cycle and another one for a secondary cycle. This secondary cycle may not be present in the input data. This should not have any impact in the estimation of the main cycle.
The application can generate a 12 band image, where each band is one of the parameters of the 2 double logistics in the order \(A\), \(B\), \(x_0\), \(x_1\), \(x_2\), \(x_3\).
The application can also instead generate an output image with the same number of bands as the input image, but replacing the value of each date for each pixel by the value taken by the logistic fitting.