Include a new function for detecting changes
gilbertocamara opened this issue · comments
Describe the new API function requested
Time series analysis has problems that are not related to classification but to change detection. They involve the identification of breaks and discontinuities in image time series, using algorithms such as BFAST and CCDC to find places where there is a change in signal. One example is the detection of real-time deforestation alerts used in the DETER system by INPE. In such cases, we need a function which can compare subsets of a longer time series with a short time series that contains a pattern of change.
Algorithms such as TWDTW and RADD are better suited to such tasks than ML/DL classifiers such as RF and TempCNN. Therefore, we need a different API.
Associated sits API function
#' @title Detect changes in time series
#' @name sits_detect_change
#' @description Given a set of time series or an image, this function compares each time series
#' with a set of change/no-change patterns, and indicates places and dates where
#' change has been detected
#' @param data Set of time series
#' @param cd_ method Change detection method (with parameters)
#' @return Set of time series where significant change has been detected
#' @export
sits_detect_change <- function(
data,
cd_method = sits_twdtw(...)
}
*** Context
Each cd_method function will have methods that have to be parametrised differently. The assumption is that few pixels will represent change and this the output will be a set of time series, with additional predicted column.