Learn R Programming

⚠️There's a newer version (1.12.0) of this package.Take me there.

SITS - Satellite Image Time Series Analysis for Earth Observation Data Cubes

Overview

The sits R package provides a set of tools for analysis, visualization and classification of satellite image time series. It includes methods for filtering, clustering, classification, and post-processing.

Installation

Pre-Requisites

The sits package relies on sf and rgdal, which in turn, require the installation of the GDAL and PROJ libraries. Please follow the instructions for installing sf and rgdal available at the RSpatial sf github repository.

Required Packages

Please follow the following steps.

# Install devtools, rmarkdown, knitr, testthat and Rcpp if not already available
install.packages(c("devtools", "rmarkdown", "Rcpp", "knitr", "testthat"))

# Please install the Suggested packages that are used by sits
install.packages(c("DBI","dendextend", "dtwclust","dtwSat", "e1071", "flexclust",
                   "imager", "imputeTS", "kohonen", "lwgeom", "MASS", "methods",
                   "mgcv", "nnet", "proto", "proxy", "ptw", "ranger", "RCurl",
                   "RSQLite", "signal", "xgboost", "zoo", "rstac"))

# Please install the Keras package from the RStudio repository
devtools::install_github("rstudio/reticulate")
devtools::install_github("rstudio/keras")
# Build the keras environment
library(keras)
keras::install_keras()
# Retrieve the "Rwtss" package (used for data access to the WTSS service)
devtools::install_github("e-sensing/Rwtss")
library(wtss)
# Please install the `sits` package from github
devtools::install_github("e-sensing/sits")
library(sits)
# Retrieve the data available in the "inSitu" package (used for some examples)
devtools::install_github("e-sensing/inSitu")
library(inSitu)

AMI Image

For users that have an AWS account, we have prepared a set of AMI (Amazon Machine Images that are optimized for running SITS in the Amazon Elastic Compute Cloud (or EC2). The AMI has the following settings: SITS 0.9.6, Ubuntu 18.04, R 4.0.2, and Rstudio Server 1.3.959. All packages have been updated as of 21 August 2020. The AMI is avaliable for the following regions:

When you create an EC2 instance based on this AMI, ensure that your ‘security group’ settings allow incoming HTTP (port 80), HTTPS (port 443) and SSH (port 20) traffic. After the EC2 instance is started, then copy-and-paste the ‘IPv4 Public IP’ address for your running instance to a web browser address bar. That should bring the RStudio server interface in your browser. Use “rstudio” as username and “e-sensing” as password.

Data Access

SITS has been designed to work with big satellite image data sets organised data cubes. Data cubes can be available in the cloud or in a local machine. Methods of data input for time series samples include: a) obtain data from a time series web services such as INPE’s WTSS (Web Series Time Service) or EMBRAPA’s SATVEG; b) read data stored in a time series in the zoo format; c) read a time series from a raster bricks; d) read a time series from Brazil Data Cube products. Currently, raster classification requires that data cubes are organised as a raster bricks which can reside on a local or remote service.

For more details on data access, please see the vignette “Accessing time series information in SITS”.

Visualization

#> SITS - satellite image time series analysis.
#> Loaded sits v0.10.0.
#>         See ?sits for help, citation("sits") for use in publication.
#>         See demo(package = "sits") for examples.
#> Using configuration file: /home/rolf/R/x86_64-pc-linux-gnu-library/4.0/sits/extdata/config.yml
#> Users can provide additional configurations in ~/.sits/config.yml
cerrado_2classes[1:3,]
#> # A tibble: 3 x 7
#>   longitude latitude start_date end_date   label   cube    time_series      
#>       <dbl>    <dbl> <date>     <date>     <chr>   <chr>   <list>           
#> 1     -54.2    -14.0 2000-09-13 2001-08-29 Cerrado MOD13Q1 <tibble [23 × 3]>
#> 2     -54.2    -14.0 2001-09-14 2002-08-29 Cerrado MOD13Q1 <tibble [23 × 3]>
#> 3     -54.2    -14.0 2002-09-14 2003-08-29 Cerrado MOD13Q1 <tibble [23 × 3]>

After a time series is imported, it is loaded in a tibble. The first six columns contain the metadata: spatial and temporal location, label assigned to the sample, and coverage from where the data has been extracted. The spatial location is given in longitude and latitude coordinates for the “WGS84” ellipsoid. For example, the first sample has been labelled “Pasture”, at location (-55.1852, -10.8387), and is considered valid for the period (2013-09-14, 2014-08-29). To display the time series, use the plot() function. For a large number of samples, where the amount of individual plots would be substantial, the default visualisation combines all samples together in a single temporal interval.

# select the "ndvi" band
samples_ndvi <- sits_select(samples_mt_4bands, "NDVI")
# select only the samples with the cerrado label
samples_cerrado <- dplyr::filter(samples_ndvi, 
                  label == "Cerrado")
plot(samples_cerrado)

Clustering

Clustering methods in SITS improve the quality of the samples and to remove those that might have been wrongly labeled or that have low discriminatory power. Good samples lead to good classification maps. sits provides support for two clustering methods to test sample quality: (a) Agglomerative Hierarchical Clustering (AHC); (b) Self-organizing Maps (SOM). For more details, please see the vignette “Clustering of Satellite Image Time Series with SITS”

Filtering

Satellite image time series are contaminated by atmospheric influence and directional effects. To make the best use of available satellite data archives, methods for satellite image time series analysis need to deal with data sets that are noisy and non-homogeneous. For data filtering, sits supports Savitzky–Golay (sits_sgolay()), Whittaker (sits_whittaker()), envelope (sits_envelope()) and the “cloud filter” (sits_cloud_filter()). As an example, we show how to apply the Whitakker smoother to a 16-year NDVI time series. For more details, please see the vignette “Satellite Image Time Series Filtering with SITS”

# apply Whitaker filter to a time series sample for the NDVI band from 2000 to 2016
# merge with the original data
# plot the original and the modified series
point_whit <- sits_filter(point_ndvi, sits_whittaker(lambda = 10))
point_whit %>% 
  sits_merge(point_ndvi) %>% 
  plot()

Time Series classification using machine learning

SITS provides support for the classification of both individual time series as well as data cubes. The following machine learning methods are available in SITS:

  • Linear discriminant analysis (sits_lda)
  • Quadratic discriminant analysis (sits_qda)
  • Multinomial logit and its variants ‘lasso’ and ‘ridge’ (sits_mlr)
  • Support vector machines (sits_svm)
  • Random forests (sits_rfor)
  • Extreme gradient boosting (sits_xgboost)
  • Deep learning (DL) using multi-layer perceptrons (sits_deeplearning)
  • DL with 1D convolutional neural networks (sits_FCN)
  • DL combining 1D CNN and multi-layer perceptron networks (sits_TempCNN)
  • DL using 1D version of ResNet (sits_ResNet)
  • DL using a combination of long-short term memory (LSTM) and 1D CNN (sits_LSTM_FCN)

The following example illustrate how to train a dataset and classify an individual time series. First we use the sits_train function with two parameters: the training dataset (described above) and the chosen machine learning model (in this case, a random forest classifier). The trained model is then used to classify a time series from Mato Grosso Brazilian state, using sits_classify. The results can be shown in text format using the function sits_show_prediction or graphically using plot.

# Train a machine learning model for the mato grosso dataset using SVM
samples_mt_2bands <- sits_select(samples_mt_4bands, bands = c("ndvi", "evi"))
svm_model <- sits_train(data = samples_mt_2bands, 
                         ml_method = sits_svm())

# get a point to be classified with four bands
point_mt_2bands <- sits_select(point_mt_6bands, bands = c("ndvi", "evi"))

# filter the point with a Whittaker smoother
point_filtered <- sits_whittaker(point_mt_2bands, lambda = 0.2, bands_suffix = "") 

# Classify using random forest model and plot the result
class.tb <- sits_classify(point_filtered, svm_model)
# plot the results of the prediction
plot(class.tb, bands = c("ndvi", "evi"))

The following example shows how to classify a data cube organised as a set of raster bricks. First, we need to build a model based on the the same bands as the data cube.

# estimate a model only for bands "ndvi" and "evi"
samples_mt_2bands <- sits_select_bands(samples_mt_4bands, ndvi, evi)
rfor_model <- sits_train(samples_mt_2bands, ml_method = sits_rfor(num_trees = 300))
# Create a data cube from two raster bricks
evi_file <- system.file("extdata/Sinop", "Sinop_evi_2014.tif", package = "inSitu")
ndvi_file <- system.file("extdata/Sinop", "Sinop_ndvi_2014.tif", package = "inSitu")

# Obtain the associated timeline
time_file <- system.file("extdata/Sinop", "timeline_2014.txt", package = "inSitu")
timeline_2013_2014 <- scan(time_file, character(), quiet = TRUE)

# create a raster metadata file based on the information about the files
raster_cube <- sits_cube(type = "BRICK", name = "Sinop", 
                         satellite = "TERRA", sensor = "MODIS",
                         timeline = timeline_2013_2014, 
                         bands = c("ndvi", "evi"), 
                         files = c(ndvi_file, evi_file))
# Classify the raster cube, generating a probability file
probs_cube <- sits_classify(raster_cube, ml_model = rfor_model)

# label the probability file (by default selecting the class with higher probability)
# apply a bayesian smoothing to remove outliers
bayes_cube <- sits_smooth(probs_cube)

# generate thematic map
label_cube <- sits_label_classification(bayes_cube)

# plot the first raster object with a selected color palette
# make a title, define the colors and the labels)
plot(label_cube, time = 1, title = "SINOP-MT - 2013/2014")

Additional information

For more information, please see the vignettes

Code of Conduct

Please note that the tibble project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.

Copy Link

Version

Install

install.packages('sits')

Monthly Downloads

526

Version

0.10.0

License

GPL-2 | file LICENSE

Issues

Pull Requests

Stars

Forks

Maintainer

Gilberto Camara

Last Published

February 13th, 2025

Functions in sits (0.10.0)

.sits_assess_accuracy_area

Support for Area-weighted post-classification accuracy
.sits_align_dates

Aligns dates of time series to a reference date
.sits_bbox_time_series

Find the bounding box for a set of time series
.sits_bdc_access_info

Include BDC access info
.sits_classify_check_params

Check clasification parameters
.sits_classify_interval

Classify one interval of data
.sits_bdc_access_check

Check access rigths on BDC
.sits_classify_multicores

Classify a chunk of raster data using multicores
.sits_clouds_thres_estimate

Retrieve the values associated to cloud detection for an extent
.sits_clouds_shds_estimate

Estimate clouds and shadows for a CBERS AWFI image
.sits_config_band_names

Obtain the name of the bands used by a cube or by SITS
.sits_config_band_names_convert

Convert bands names from cube to SITS
.sits_config_cube_types

Retrieve the types associated to data cubes known to SITS
.sits_config_cube_class

Retrieve the class associated to data cubes known to SITS
.sits_config_memory_bloat

Retrieve the estimated value of R memory bloat
.sits_config_minimum_values

Retrieve the minimum values for a given band
.sits_aws_check_access

Check access rights on AWS
.sits_cluster_dendrogram

Compute a dendrogram using hierarchical clustering
.sits_config_bdc_stac_access

Test if BDC STAC catalogue is available
.sits_cluster_validity

Cluster validity indices
.sits_clouds_values_combine

Estimate values associated to cloud detection for a whole CBERS image
.sits_bbox_intersect

Intersection between a bounding box and a cube
.sits_cluster_dendro_bestcut

Compute validity indexes to a range of cut height
.sits_config_bdc_web

Directory to read the BDC information on the web
.sits_config_data_meta_type

meta-type for data
.sits_config_data_parse_info

Standard files for data directory for cube type
.sits_color_name

Brewer color schemes
.sits_config_aws_default_region

Read the AWS default region from configuration file
.sits_config_bands_no_cloud

Retrieve all but except the cloud band
.sits_csv_check

Check if a CSV tibble is valid
.sits_config_cloud_values

Get the name of the band used for cloud information
.sits_config_bdc_stac

Directory to read the BDC STAC catalogue
.sits_config_resolution

Retrieve the pixel spatial resolution for a data cube
.sits_create_folds

Create partitions of a data set
.sits_config_cube_check

Check that the type is valid, based on the configuration file
.sits_cube_minimum_values

Retrieve the minimum values for a data cube
.sits_config_rstac_limit

Get pagination limit
.sits_config_processing_bloat

Retrieve the estimated value of R memory bloat
.sits_est_class_time

Estimate the processing time
.sits_config_satveg_access

Get the URL to be used to test for SATVEG access
.sits_config_satellites

List the satellites supported by the configuration file
.sits_config_missing_values

Retrieve the missing values for bands of a sensor
.sits_cube_labels

Return all labels associated to a data cube
.sits_clouds_blocks_estimate

Estimate the number of blocks to correct for clouds
.sits_config_scale_factors

Retrieve the scale factor for a given band for a data cube
.sits_cube_missing_values

Retrieve the missing values for a data cube
.sits_config_sensors

Retrieve the default sensor for the satellite
.sits_from_point_shp

Obtain a tibble with latitude and longitude points from POINT geometry
.sits_cube_bands_check

Check that the requested bands exist in the cube
.sits_config_s2_bands

Get the the bands in AWS for Sentinel-2 ARD given the resolution
.sits_config_satellite_sensor

Tests is satellite and sensor are known to SITS
.sits_cube_maximum_values

Retrieve the minimum values for a data cube
.sits_function_factory

Create a closure for calling functions with and without data
.sits_cube_scale_factors

Retrieve the scale factors for a data cube
.sits_cube_check_validity

Check that the cube is valid
.sits_gc_brick

Create a raster_cube object
.sits_gc_date

Extracted date from aggregated cubes
.sits_distances

Use time series values as distances for training patterns
.sits_config_data_delim

Delimiter for data type
.sits_clouds_interpolate

Create the output of the cloud estimation procedure
.sits_gc_cloud_mask

Create an object image_mask with information about mask band
.sits_gc_compose

Save the images based on an aggregation method.
.sits_config_data_dir_path

Standard files for data directory for cube type
.sits_plot_together

Plot a set of time series for the same spatio-temporal reference
.sits_kalman_filter

Compute the Kalman filter
.sits_keras_binary_class

Adjust keras prediction for the binary classification case
.sits_get_data_check

check if all points have been retrieved
.sits_labels_list

Sits labels processing function
.sits_ggplot_series_no_na

Plot one timeSeries using ggplot (no NAs present)
.sits_raster_api_read_extent

Read a part of a raster file and return a matrix
.sits_timeline_valid_date

Test if date fits with the timeline
.sits_ggplot_together

Plot many timeSeries together using ggplot
plot.predicted

Generic interface for ploting time series predictions
.sits_keras_prepare_data

Prepare data for keras model training
.sits_plot_dendrogram

Plot a dendrogram
.sits_config_s2_aws_bucket

Get the bucket where Sentinel-2 level 2A images are available in AWS
cerrado_2classes

Samples of classes Cerrado and Pasture
.sits_config_s2_aws_res

Get the the resolutions for Sentinel-2 ARD in AWS
.sits_plot_patterns

Plot classification patterns
.sits_plot_som_map

Plot the SOM grid with neurons labeled
.sits_plot_som_evaluate_cluster

Plot information about confusion between clusters
.sits_latlong_to_proj

Coordinate transformation (lat/long to X/Y)
.sits_points_from_shp

Obtain a tibble with lat/long points to be retrieved from a SHP
.sits_config_test_file

File to test access to cloud services
.sits_proj_to_latlong

Coordinate transformation (X/Y to lat/long)
.sits_config_satveg_url

Get the URL to be used for SATVEG access
.sits_config_stac_values

Get the metadata values from STAC.
.sits_distances_classify

Classify a distances tibble using machine learning models
.sits_config_satveg_size

Retrieve the size of the cube for SATVEG
.sits_cube_classified

Create a set of RasterLayer objects to store data cube classification results (only the probs)
.sits_cube_class_band_name

Define a name for classified band
.sits_from_satveg

Obtain one timeSeries from the EMBRAPA SATVEG server
.print_confusion_matrix

Print the values of a confusion matrix
.sits_from_polygon_shp

Obtain a tibble from POLYGON geometry
.sits_plot_title

Create a plot title to use with ggplot
.sits_label_cube

Create a set of RasterLayer objects to store data cube classification results (labelled classes)
.sits_distances_sample

Sample a percentage of a time series distance matrix
.sits_config_aws_endpoint

Read the AWS end point from configuration file
.sits_config_bdc_web_access

Test if the BDC is working
.sits_ggplot_series

Plot one timeSeries using ggplot
.sits_pred_ref

Obtains the predicted value of a reference set
.sits_from_twdtw_matches

Transform patterns from TWDTW format to sits format
.sits_from_wtss

Obtain one timeSeries from WTSS server and load it on a sits tibble
.sits_config_aws_request_payer

Read the AWS end point from configuration file
.sits_raster_api_check_url

Check if the raster files are on the web
.sits_raster_api_check_brick

Check if file is a brick
.sits_config_cloud_band

Get the name of the band used for cloud information
sits_envelope

Envelope filter
.sits_normalize_matrix

Normalize the time series values in the case of a matrix
.sits_normalize_data

Normalize the time series in the given sits_tibble
.sits_raster_block_list

Calculate a list of blocks to be read from disk to memory
.sits_raster_data_filter

Filter the time series values in the case of a matrix
.sits_wtss_check

Check that the URL of WTSS service is working
.sits_raster_brick_cube

Create a raster brick data cube
.sits_raster_blocks_estimate

Estimate the number of blocks
.sits_raster_stack_info

Obtain the information about files that make up a stack cube
.sits_raster_brick_check

Check if the raster files are bricks
.sits_raster_api_filename

Define a filename associated to one classified raster layer
.sits_raster_api_params_cube

Determine the cube params to write in the metadata
.sits_raster_sub_image

Find the dimensions and location of a spatial ROI in a data cube
.sits_satveg_timeline_from_txt

Retrieve a timeline from the SATVEG service based on text expression
.sits_ggplot_series_na

Plot one timeSeries wih NAs using ggplot
.sits_som_paint_neurons

Paint neurons
.sits_wtss_cube

Provides information about one cube of the WTSS service
.sits_satveg_cube

Provides information about one cube of the SATVEG time series service
plot

Generic interface for ploting time series
.sits_stac_collection

Get information from collection
.sits_timeline_idx_from_dates

Create a list of time indexes from the dates index
.sits_timeline_dist_indexes

Indexes to extract data from a distance table for classification
.sits_shp_check_validity

Check the validity of the shape file
sits_bands.cube

Informs the names of the bands of a cube
sits_interp

Interpolation function of the time series of a sits_tibble
.sits_satveg_timeline

Retrieve a timeline for the SATVEG service
.sits_mem_used

Shows the memory used in GB
.sits_tibble_rename

Rename a tibble to use "cube" instead of "coverage"
.sits_timeline_check_cube

Check cube timeline against requested start and end dates
.sits_raster_data_get_ts

Extract a time series from raster
sits_to_xlsx

Saves the results of accuracy assessments as Excel files
.sits_probs_blocks_size_estimate

Estimate the number of blocks to run .sits_split_cluster
.sits_plot_rgb_brick

Assign RGB channels to into image layers with many time instance
.sits_prune

Checks that the timeline of all time series of a data set are equal
.sits_plot_rgb_stack

Assign RGB channels to for raster stack cubes
.sits_processing_task_time

Estimate the processing time of a task
.sits_raster_sub_image_default

Find the dimensions and location of a spatial ROI in a data cube
.sits_normalization_param

Normalize the time series in the given sits_tibble
.sits_som_label_neurons

Label neurons
.sits_plot_twdtw_alignments

Plot classification alignments using the dtwSat package
.sits_raster_api_extract

Given a band, return a set of values for chosen location
.sits_config_img_file_ext

Returns the file extensions known to SITS
sits_accuracy

Area-weighted classification accuracy assessment
.sits_config_maximum_values

Retrieve the maximum values for a given band
.sits_config_satveg_projection

Retrieve the projection for SATVEG service
.sits_config_satveg_bbox

Retrieve the bounding box for SATVEG
.sits_cube_clone

Clone a data cube
.sits_sub_image_from_bbox

Extract a sub_image from a bounding box and a cube
.sits_raster_api_file_info

Create a tibble with file information to include in the cube
samples_mt_6bands

Samples of nine classes for the state of Mato Grosso
.sits_cube_create

Creates the description of a data cube
.sits_ts_from_satveg

Retrieve a time series from the SATVEG service
.sits_raster_data_na_remove

Remove cloud pixels and NA values by imputation
sits_formula_logref

Define a loglinear formula for classification models
.sits_stac_items

Get information from items
sits_bbox.cube

Get the bounding box of a data cube
.sits_raster_data_preprocess

Preprocess a set of values retrieved from a raster brick
.sits_twdtw_breaks

Classify a sits tibble using the matches found by the TWDTW methods
.sits_to_twdtw

Export data to be used by the dtwSat package
.sits_raster_data_read

Read a block of values retrieved from a set of raster bricks
sits_config_satveg_cubes

Retrieve the cubes associated to SATVEG
.sits_roi_bbox.sf

Find the bounding box for a spatial ROI defined as an sf object
:=

Set by reference in data.table
sits_LSTM_FCN

Train a model using the a combination of LSTM and CNN
sits_cube.gdalcubes_cube

Create a composed data cube for a Sentinel-2 L2A AWS cube
.sits_timeline_match

Find dates in the input data cube that match those of the patterns
.sits_s2_l2a_aws_info_tiles

Get information on S2 level 2A tiles in AWS
sits_ResNet

Train a model using the ResNet model
sits_rename

Names of the bands of a time series
.sits_raster_sub_image_intersects

Informs if a spatial ROI intersects a data cube
plot.som_map

Generic interface for plotting a SOM map
.sits_stac_items_info

Format assets
.sits_roi_bbox.xy

Find the bounding box for a spatial ROI defined as a bounding box
.sits_som_bayes_est

Probability of a sample belongs to a cluster using bayesian filter
.sits_plot_twdtw_class

Plot classification results using the dtwSat package
plot.brick_cube

Generic interface for plotting brick cubes
.sits_cube_files

Return all file associated to a data cube
.sits_cube_file

Return a file associated to a data cube, given an index
sits_bbox.sits

Get the bounding box of a set of time series
.sits_timeline_match_indexes

Find indexes in a timeline that match the reference dates
sits_deeplearning

Train a deep learning model using multi-layer perceptron
.sits_stac_tile_cube

Get the STAC information corresponding to a tile.
sits_kfold_validate

Cross-validate temporal patterns
sits_TempCNN

Train a model using the Temporal Convolutional Neural Network
sits_labels.predicted

Returns the information about labels of a predicted tibble
%>%

Pipe
.sits_raster_api_params_file

Determine the file params to write in the metadata
.sits_s2_l2a_aws_tile_cube

Create a data cube for a Sentinel-2 AWS TILE
.sits_stac_toupper

Converts bands name to upper case
.sits_stac_group

Create a group of items
.sits_gc_cube

Create a cube_view object
sits_select.cube

Filter bands on a data cube
sits_config_satveg_bands

Retrieve the bands associated to SATVEG
.sits_raster_data_split

Split a data.table or a matrix for multicore processing
.sits_test_tibble

Tests if a sits tibble is valid
sits_config_show

Shows the contents of the sits configuration file
sits_from_zoo

Import time series in the zoo format to a sits tibble
sits_cube.raster_cube

Backward compatibility
sits_svm

Train a sits classification model using a support vector machine
sits_impute_stine

Imputation of NA values by Stineman interpolation
sits_xgboost

Train a model with an extreme gradient boosting machine
sits_som_map

Generate a Kohonen map for sample quality control
.sits_raster_blocks

Define a reasonable block size to process an image subset
plot.stack_cube

Generic interface for plotting stack cubes
.sits_gc_database

Create an image_collection object
.sits_transmute_bands

Add new sits bands and drops existing.
.sits_map_layer_cluster

parallel raster brick
sits_cube.brick_cube

Defines a cube from a set of image bricks
.sits_max_colors

Brewer color schemes
.sits_raster_api_check_access

Check if the raster files are accessible by GDAL
.sits_plot_allyears

Plot all intervals of one time series for the same lat/long together
plot.classified_image

Generic interface for ploting classified images
.sits_raster_api_area_freq

Given a labelled cube, return the band information
.sits_timeline_class_info

Define the information required for classifying time series
.sits_plot_classification

Plot classification results
.sits_raster_api_read_file

Read a raster file and return a matrix
.sits_roi_bbox

Find the bounding box for a spatial ROI in a data cube
.sits_timeline_date_format

Find if the date information is correct
sits_bands.sits

Informs the names of the bands of a set of timeseries
.sits_timeline_indexes

Given a start and end date, find the indexes in a timeline
.sits_timeline_index_blocks

Find the time index of the blocks to be extracted for classification
.sits_raster_api_write

Set the values of a raster object matrix
.sits_roi_bbox.ll

Find the bounding box for a spatial ROI defined as a lat/lon box
.sits_stac_get_bbox

Get the STAC information corresponding to a bbox extent
point_mt_6bands

A time series sample with data from 2000 to 2016
sits_values.cases_dates_bands

Return the values of a given sits tibble using "cases_dates_bands"
sits_db_read.raster_cube

Read cube information from an SQLite database
sits_apply

Apply a function over a time series.
.sits_stac_datetime

Datetime format
sits_cloud_cbers

Clean data cube to improve quality
plot.patterns

Generic interface for ploting patterns
point_ndvi

A time series sample for the NDVI band from 2000 to 2016
sits_config

Reads a configuration file and loads it in the main environment
sits_cube_copy

Creates the contents of a data cube
sits-package

sits
plot.keras_model

Generic interface for plotting a Keras model
sits_db_read

Read time series and data cubes information on an SQLite database
ts_zoo

A time series in the ZOO format
sits_classify

Classify time series or data cube using machine learning models
sits_classify.raster_cube

Classify a data cube using multicore machines
sits_impute_kalman

Imputation of NA values by Stineman interpolation
sits_som_clean_samples

Clean samples
sits_missing_values

Remove missing values
sits_label_classification

Post-process a classified data raster probs to obtain a labelled image
sits_smooth.gaussian

Post-process a classified data raster probs using gaussian smoothing
plot.som_evaluate_cluster

Plot information about confunsion between clusters
sits_FCN

Train a model using the a full Convolutional Neural Network
sits_bbox

Get the bounding box of the data
sits_label_majority

Post-process a classified data raster with a majority filter
sits_conf_matrix

Accuracy assessment of classification based on a confusion matrix
sits_twdtw_classify

Find matches between patterns and time series using TWDTW
.sits_satveg_check

Check that the SATVEG service is working
sits_keras_save

Save a Keras model for later processing in sits
sits_cluster_frequency

Cluster contigency table
sits_mlr

Train a sits classification model using multinomial log-linear
.sits_raster_stack_cube

Create a stack cube from a set of files
.sits_samples_bands_check

Check that the requested bands exist in the samples
sits_cloud_remove

Clean data cube to improve quality
sits_cube.wtss_cube

Defines a data cube for the WTSS service
sits_bands

Informs the names of the bands
.sits_stac_roi

Get bbox and intersects parameters
`sits_bands<-.cube`

Replaces the names of the bands of a cube
sits_relabel

Relabels a sits tibble
sits_savi

Builds soil-adjusted vegetation index
sits_select

Filter bands on a data set (tibble or cube)
sits_bands.patterns

Informs the names of the bands of a set of timeseries
sits_lda

Train a sits classification model using linear discriminant analysis
`sits_bands<-`

Replaces the names of the bands
sits_to_zoo

Export data to be used to the zoo format
sits_cluster_dendro

Clusters a set of time series using aglomerative hierarchical clustering
sits_config_color

Retrieve the color associated to a class in the configuration file
sits_config_colors

Retrieve the colors associated to classes
sits_cluster_clean

Cluster cleaner
wtss_cube

Description of a WTSS cube
sits_get_data.raster_cube

Obtain time series from raster cube
sits_keras_load

Load a Keras model for processing in sits
sits_get_data.shp_raster_cube

Obtain time series from brick based on SHP file
.sits_tibble_prediction

Create an empty tibble to store the results of predictions
.sits_timeline_raster_indexes

Provide a list of indexes to extract data from a raster-derived data table for classification
.sits_tibble

Create a sits tibble to store the time series information
sits_classify.sits

Classify a set of time series using machine learning models
sits_cube.stack_cube

Defines a cube from a set of single image files
samples_mt_4bands

Samples of nine classes for the state of Mato Grosso
sits_data_to_csv

Export a sits tibble data to the CSV format
sits_get_data.satveg_cube

Obtain time series from satveg
sits_config_info

Information about configuration file
plot.probs_cube

Generic interface for plotting probability cubes
sits_db_connect

Creates a connection to an RSQLite database
sits_filter

General function for filtering
sits_cube.s2_l2a_aws_cube

Defines a data cube for a Sentinel-2 L2A AWS cube
sits_timeline.cube

Obtains the timeline for a data cube
sits_cube.bdc_cube

Defines a data cube for a BDC STAC
sits_db_write.sits

Write time series on an SQLite database
sits_cube

Defines a data cube
sits_cube.satveg_cube

Defines a data cube for the SATVEG service
sits_get_data.csv_satveg_cube

Obtain time series from wtss based on SATVEG file
sits_get_data.shp_wtss_cube

Obtain time series from wtss based on SHP file
sits_merge.sits

Merge two satellite image time series
sits_whittaker

Filter the time series using Whittaker smoother
timeline_modis_392

The timeline for the sequence of images for MOD13Q1 collection 5
sits_ndwi

Builds normalized difference water index
sits_db_info

List the time series and data cubes stored in an SQLite database
sits_time_series_dates

Retrieve the dates of time series for a row of a sits tibble
sits_cube.default

Default methods for sits_cube
sits_db_read.sits

Read time series from an SQLite database
sits_qda

Train a classification model using quadratic discriminant analysis
sits_db_write

Write time series and data cubes information on an SQLite database
sits_formula_linear

Define a linear formula for classification models
sits_impute_linear

Linear imputation of NA values using C++ implementation
sits_merge.cube

Merge two data cubes
timeline_2000_2017

The timeline for the sequence of images for MOD13Q1 collection 6
sits_labels.sits

Returns the information about labels of a set of time series
sits_smooth.bayes

Post-process a classified data raster probs using bayesian smoothing
sits_ranger

Train a sits classifiction model using fast random forest algorithm
sits_smooth.bilinear

Post-process a classified data raster probs using bilinear smoothing
sits_timeline.sits

Obtains the timeline for a set of time series
sits_linear_interp

Interpolation function of the time series in a sits tibble
sits_smooth

Post-process a classified data raster probs using smoothing
sits_get_data.shp_satveg_cube

Obtain time series from SATVEG based on SHP file
sits_merge

Merge two data sets (time series or cubes)
sits_show_prediction

Shows the predicted labels for a classified tibble
sits_db_write.raster_cube

Write cube on an SQLite database
sits_timeline

Obtains the timeline
sits_get_data.csv_wtss_cube

Obtain time series from wtss based on CSV file
sits_metadata_to_csv

Export a sits tibble metadata to the CSV format
sits_labels.cube

Returns the information about labels of a data cube
timeline_2013_2014

The timeline for the sequence of images one year (2013 to 2014)
sits_values

Return the values of a given sits tibble as a list of matrices.
sits_time_series

Retrieve time series for a row of a sits tibble
sits_labels.patterns

Returns the information about labels of patterns tibble
sits_get_data.wtss_cube

Obtain time series from wtss
sits_rfor

Train a SITS classifiction model using random forest algorithm
sits_sample

Sample a percentage of a time series
sits_get_data.csv_raster_cube

Obtain time series from brick based on CSV file
sits_values.bands_cases_dates

Return the values of a given sits tibble using "bands_cases_dates"
sits_keras_diagnostics

Diagnostic information about a Keras deep learning model
sits_get_data

Obtain time series from different sources
sits_select.sits

Filter bands on a data set (tibble or cube)
sits_kalman

Kalman filter
sits_select.patterns

Filter bands on a data set (tibble or cube)
sits_ndvi_arima

NDVI filter with ARIMA model
sits_labels

Returns the information about labels of a data set (tibble or cube)
sits_mutate_bands

Add new sits bands.
sits_sgolay

Smooth the time series using Savitsky-Golay filter
sits_som_evaluate_cluster

Evaluate cluster
sits_train

Train sits classification models
sits_patterns

Create temporal patterns using a generalised additive model (gam)
sits_som_cluster

Clustering a set of satellite image time series using SOM
`sits_bands<-.sits`

Replaces the names of the bands of a set of timeseries
sits_values.bands_dates_cases

Return the values of a given sits tibble using "bands_dates_cases"