# NDVI Time Series applications This module contains two applications for NDVI time series processing. ## Dependencies * The [OTB](https://www.orfeo-toolbox.org/) library * The [TimeSeriesUtils](https://gitlab.irstea.fr/remi.cresson/TimeSeriesUtils) remote module for OTB * The [TemporalSmoothing](https://gitlab.irstea.fr/remi.cresson/TemporalSmoothing) remote module for OTB * The [TemporalGapFilling](http://tully.ups-tlse.fr/jordi/temporalgapfilling) remote module for OTB ## How to build it The module can be built like any other [otb remote module](https://wiki.orfeo-toolbox.org/index.php/How_to_write_a_remote_module). You can build it either from within OTB's sources or outside it. ## TimeSeriesIndexTrend application ### Description This application computes the trend of a given time series index (e.g. NDVI). The implemented pipeline is described in [Leroux et al](https://doi.org/10.1016/j.rse.2017.01.014). ![Pipeline](otbTimeSeriesIndexTrend.png) ### How to use it TimeSeriesIndexTrend is an OTBApplication. ``` This is the TimeSeriesIndexTrend (TimeSeriesIndexTrend) application, version 6.4.0 Compute the trend of the vegetation index time series Parameters: MISSING -ndvits Input NDVI time series images (mandatory) MISSING -ndvidates Input NDVI time series dates ASCII file (Must be YYYYMMDD format) (mandatory) -rainfts Input rainfall time series images (optional, off by default) -rainfdates Input rainfall time series dates ASCII file (Must be YYYYMMDD format) (optional, off by default) -ndvi NDVI Time series -ndvi.reduce Method to reduce time series [cumul/max/amplitude] (mandatory, default value is cumul) -ndvi.reduce.cumul.day1 Day 1 (mandatory, default value is 1) -ndvi.reduce.cumul.day2 Day 2 (mandatory, default value is 31) -ndvi.reduce.cumul.month1 Month 1 (mandatory, default value is 7) -ndvi.reduce.cumul.month2 Month 2 (mandatory, default value is 10) -ndvitrend [pixel] Output image for NDVI trend (Contains [slope, pvalue, correlation]) [pixel=uint8/uint16/int16/uint32/int32/float/double] (default value is float) (optional, off by default) -ndvilabel [pixel] Output image for NDVI label [pixel=uint8/uint16/int16/uint32/int32/float/double] (default value is uint8) (optional, off by default) -rain Rainfall Time series -rain.reduce Method to reduce time series [cumul] (mandatory, default value is cumul) -rain.reduce.cumul.day1 Day 1 (optional, on by default, default value is 1) -rain.reduce.cumul.day2 Day 2 (optional, on by default, default value is 31) -rain.reduce.cumul.month1 Month 1 (optional, on by default, default value is 6) -rain.reduce.cumul.month2 Month 2 (optional, on by default, default value is 10) -residues [pixel] Output image for NDVI residues [pixel=uint8/uint16/int16/uint32/int32/float/double] (default value is float) (optional, off by default) -restrend [pixel] Output image for NDVI residues trend [pixel=uint8/uint16/int16/uint32/int32/float/double] (default value is float) (optional, off by default) -reslabel [pixel] Output image for NDVI residues trend labels [pixel=uint8/uint16/int16/uint32/int32/float/double] (default value is uint8) (optional, off by default) -factorslabel [pixel] Output image for factors labels [pixel=uint8/uint16/int16/uint32/int32/float/double] (default value is uint8) (optional, off by default) -ndvicumul [pixel] Output image for ndvi year cumul [pixel=uint8/uint16/int16/uint32/int32/float/double] (default value is float) (optional, off by default) -rainfcumul [pixel] Output image for rainfall year cumul [pixel=uint8/uint16/int16/uint32/int32/float/double] (default value is float) (optional, off by default) -pearsoncoef [pixel] Output image for pearson coef [pixel=uint8/uint16/int16/uint32/int32/float/double] (default value is float) (optional, off by default) -ram Available RAM (Mb) (optional, off by default, default value is 128) -inxml Load otb application from xml file (optional, off by default) -progress Report progress -help Display long help (empty list), or help for given parameters keys Use -help param1 [... paramN] to see detailed documentation of those parameters. Examples: None ``` TimeSeriesIndexTrend can be used as any OTB application (gui, command line, python, c++, ...). To add the application in QGIS, just copy the file "_TimeSeriesIndexTrend.xml_" into the qgis/python/plugins/processing/algs/otb/description/5.0.0/ path. ## LandscapeFragmentation application ### Description This application computes the landscape fragmentation from an time series index (e.g. NDVI). The implemented pipeline is described in [Belon et al](http://dx.doi.org/10.3390/rs9060600). ![Pipeline](otbLandscapeFragmentation.png) ### How to use it LandscapeFragmentation is an OTBApplication. ``` This is the LandscapeFragmentation (LandscapeFragmentation) application, version 6.2.0 Compute the landscape fragmentation index of the land Parameters: -progress Report progress -help Display long help (empty list), or help for given parameters keys MISSING -mask Mask (mandatory) -id DatesFile (optional, off by default) -cw SpectralH (optional, on by default, default value is 0.5) -sw SpatialH (optional, on by default, default value is 0.5) MISSING -th Threshold (mandatory) -tmpdir TempDir (optional, off by default) MISSING -ndvits Input NDVI time series images (mandatory) -cbegin Component range begin (optional, on by default, default value is 2) -cend Component range end (optional, off by default) MISSING -outvec Output land units map (vector) (mandatory) -ram Available RAM (Mb) (optional, off by default, default value is 128) -inxml Load otb application from xml file (optional, off by default) Use -help param1 [... paramN] to see detailed documentation of those parameters. ``` LandscapeFragmentation can be used as any OTB application (gui, command line, python, c++, ...). To add the application in QGIS, just copy the file "_LandscapeFragmentation.xml_" into the qgis/python/plugins/processing/algs/otb/description/5.0.0/ path. ## License Please see the license for legal issues on the use of the software (GNU Affero General Public License v3.0). ## Contact Rémi Cresson (IRSTEA)