- Add multicores processing support for active learning sampling methods
- Remove tapply from
.reg_cube_split_assets()for R 4.X compatibility - Fix
sits_merge()function that was not mergingSARandOPTICALcubes - Rename n_input_pixels back to input_pixels for compatibility with models trained in old versions of the package
- Fix torch usage in Apple M3 by turning off MPS technology
- Fix date parameter usage in
sits_view() - Improve
plot()performance using raster overviews - Include support for PLANET Mosaic product
- Support for SENTINEL-1-RTC and SENTINEL-2-L2A in CDSE
- Include support for DEA products SENTINEL-1-RTC, LS5-SR, LS7-SR, LS9-SR, ALOS-PALSAR-MOSAIC, NDVI ANOMALY, DAILY CHIRPS, MONTHLY CHIRPS and DEM-30
- Support for Sentinel-1 GRD and RTC collections from Planetary Computer
- Include parameter tile to select data from Sentinel-1 (MPC)
- Include parameter tile to select data from Sentinel-1 and Sentinel-2 (DEAFRICA)
- Include parameter tile to select data from HLS collections
- Improved support for GPU-based classification of deep learning models
- Support for non-normalized derived indexes
- Support for shapefiles as ROI in
sits_cube() - Fix inconsistencies in HLS scale factors
- New function to obtain ROI based on MGRS tiles
- Add support for uncertainty cubes in
sits_mosaic() - Improve performance of
sits_segment()using chunk parallelization - Include uncertainty measures for vector probability cubes
- New
sits_clean()function to improve classified maps - New functions
sits_sampling_design()andsits_stratified_sampling() - New
sits_reduce()function - Include
dtwdistance when building SOM maps
- Fix font download in package initialization
- Fix integer overflow bug in
sits_classify()segments
- Fix crs bug in
sits_apply() - Update file name in clean feature
- Fix time series extraction bug with segments
- Fix examples
- Support for vector data cubes, including visualisation
- Object-based time series analysis using spatio-temporal segmentation
- Improved support for GPU usage when running deep learning algorithms
- New function to clean values by modal filter in classified images
- Added experimental support for Sentinel-1 images available on MPC
- Summary function now includes cloud cover information
- General bug fixes
- Updated access to collections in Brazil Data Cube, HLS, and AWS
- Corrected errors in labelling of classified cubes
- Created a factory of functions for segmentation
- New function for image segmentation based on
supercellspackage - New version of
sits_get_data()to extract average values of time series based on segments - Support for Harmonized Landsat Sentinel (HLS) collections from NASA
- Support for probability cubes and uncertainty cubes in
sits_view() - New
summary()function to show details of data cubes and time series tibbles - General big fixes
- Remove NOTES and WARNINGS pointed out by CRAN
- New
sits_mosaic()function for improving visualization of large data sets - Add support to cubes with no cloud coverage information in
sits_regularize() - Improve
sits_cube_copy()for downloading data from the internet - Tested and validated GPU support for deep learning models in
sits - Added multithread support for deep learning models in
sits_train() - Improve
sits_combine_predictions() - Remove dependencies on
data.tablepackage - Organize and clean internal APIs
- General bug fixes
- Fix
.raster_file_blocksize.terra()bug (issue #918)
- Fix
starsproxy bug (issue #902) - Fix
purrrcross deprecation - Fix
ggplot2aes_string deprecation
- Fix
tibblesubsetting bug (issue #893)
- Fix
sits_som_clean_samples()bug (issue #890)
sits_get_data()can be used to retrieve samples in classified cube- Support for mixture models (
sits_mixture_model()) - Joining cubes in a mosaic (
sits_mosaic_cubes()) - Extract the trained ML model (
sits_model()) - Downloading and copying data cubes (
sits_cube_copy()) - Combine prediction by average and entropy (
sits_combine_predictions()) - Significant performance improvement when working with COG files
- Allow plot of confusion matrix (
sits_plot) - Support for operations on CLOUD band in
sits_apply() - Bug fixes and internal re-engineering for better code maintenance
- Fix support to BDC cubes in
sits_regularize()(issue #848) - Fix support to classified_image cubes in
sits_labels()<-(issue #846)
- Fix out of memory error in
sits_label_classification()andsits_smooth()(issue #850)
- Fix resume feature in
sits_classify()on BDC cubes (issue #844)
- Fix bound box issue in image blocks produced by
sits_apply()
- Fix MPC cube time expiration bug
- Fix bound box issue in image blocks produced by
sits_apply()
- Improve sits_values() function (issue #810)
- Fix sits_reduce_imbalance() function (issue #809)
- Fix sits_accuracy() function (issue #807)
- Introduced support to kernel functions in
sits_apply - Introduced new function
sits_mixture_modelfor spectral mixture analysis - Support for the Swiss Data Cube (swissdatacube.org)
- Support for mosaic visualization in
sits_view - Introduced new function
sits_as_sfto convert sits objects to sf - Export images as COG in
sits_regularize - Add
roiparameter insits_regularizefunction - Add
crsparameter insits_get_data - Change Microsoft Planetary Computer source name to
"MPC" - Fix several bugs and improve performance
- Available on CRAN.
- Hotfix to improve
sits_whittaker()function to process cube. - Update documentation to match CRAN standards
- Introduced new classifier model
sits_lighttae()(Lightweight Temporal Self-Attention) - Introduced
sits_uncertainty_sampling()for active learning - Introduced
sits_confidence_samples()for semi-supervised learning - Introduced
sits_geo_dist()to generate samples-samples and samples-predicted plot - Introduced
sits_tuning()for random search of machine learning parameters - Introduced
sits_reduce_imbalance()function to balance class samples - Introduced
sits_as_sf()to convert a sits tibble to a sf object - Support to
torchoptdeep learning optimizer package - New types of
sits_uncertainty():leastconfidence andmarginof confidence
- Implement parallel processing for
sits_kfold_validate() - Change
datatosamplesin sits machine learning classifiers (NOTE: models trained in previous versions is no longer supported) - Change deep learning functions to snake case
- Remove
fileparameter insits_get_data()function - Update documentation
- Improve several internal functions performances
- Fix several bugs
- reimplemented all deep learning functions using
torchpackage and removekerasdependence - Introduced
sits_TAE()classification model - Introduced
sits_lightgbm()classification model - Simplified
sits_regularize()parameters - Improve
sits_regularize()to reach production level quality - Improve
sits_regularize()to use C++ internal functions - Include improved version of gdalcubes
- Improve
sits_cube()to open results cube - Update
plot()parameters on raster cubes - Support multi-tile for classified cube in
sits_view()
- Improve
sits_get_data()to accept tibbles - Remove multiples progress bar from
sits_cube() - Improve
sits_regularize()to process in parallel by tiles, bands, and dates - Improve
sits_regularize()to check malformed files
- Update
AWS_NO_SIGN_REQUESTenvironment variable - Solved bug in
.gc_get_valid_interval()function. - Now
sits_regularizehas a fault tolerance system, so that if there is a processing error the function will delete the malformed files and create them again. sits_regularizefunction has a new parameter calledmultithreads.sits_cubefunction forlocal cubeshas a new parameter calledmulticores.- Print
F1 scoreinsits_kfold_validatewith more than 2 labels.
- hotfix
sits_cube()function to tolerate malformed paths from STAC service;
- Include
sits_apply()function to generate new bands from existing ones; - Improve
sits_accuracy()function to work with multiple cubes; - Add band parameter to
sits_view() - Introduce
sits_uncertainty()function to provide uncertainty measure to probability maps; - Improve
sits_regularize()by taking least cloud cover by default method to compose images - Bug fixes;
- Fix bug in
sits_regularizethat generated images with artifacts - Fix wrong bbox in
sits_cubefrom STAC AWS Sentinel-2
- Update README.Rmd
- Support
sits_timeline()to sits model objects - Update drone image
- Simplify
config_colors.ymlby removing palette names - Temporary python files are being generated in the check
- Organize color handling in SITS
- Organize configuration files
- Improve preconditions in
sits_regularize() - Compress external data with bzip2
- Update gdalcubes format files
- Update rstac version
- Check provided parameters in sits_regularize function
- Use default palette for SOM colors
- Remove
start_dateandend_datefrom validation csv file - Use a default brewer palette to plot classified cube
- Improve package help pages
- Remove unused data sets
- Remove rarely used functions
sits_regularize()is producing Float64 images as output- Full support for Microsoft Planetary Computing
- Change
gdalcubes_chunk_sizein "config.yml" to improvesits_regularize().
- Fix bug in
.source_collection_access_testto pass ellipsis torstac::post_requestfunction.
- Fix bug in
.source_collection_access_testto pass ellipsis torstac::post_requestfunction. - Update drone version
- Fix bug in
sits_plot - Fix bug in
sits_timelinefor cubes that do not have the same temporal extent.
- Support for regularization of collections in DEAFRICA and USGS improvement
- Collection
S2_10_16D_STK-1removed from BDC source in config file - Add a color for
NoClasslabel improvement - Change
mapviewtoleafletpackage - Standardize cube creation parameters
- Remove
CLASSIFIEDandPROBSsources from config file - Change minimal version requirement of
terrapackage to 1.4-11 - Update
sits_list_collections()to indicate open data collection - Geographical visualization of samples
- Remove dependencies on packages
ptw,signalandMASS - Add support to
open_datacollections in config file - Change default
output_dirparameter - Remove
sits_cube_clone()function - Plot RGB images from raster cubes
- Fixed error in
sits_select()for bands in raster cube - Update examples in demo
- Support open data collections of DEAFRICA and AWS
- Support USGS STAC Landsat 8 catalog
- User can provide resampling method to
sits_regularize()function - Add support to open data collections on 'AWS' source
- Remove
OPENDATAsource - Update documentation
- Resolve ambiguity in "bands" parameter for data cubes
- Remove "sits_bands" assignment function
- Include "labels" information only on probs and labelled data cubes
- Remove
S2_10-1BDC collection from config - Other bug fixes
- Bug in cube generated by sits_regularize() cannot have "CLOUD" band
- Implement new function
sits_list_collections() - Update gdalcubes parameters
- Implement
.source_bands_resampling() - Remove name from demo file
- Improve
sits_som_clean_samples()function - Improve
sits_bands<-()function - Improve
sits_select()function - Error in cloud band of CBERS4 data example
- Include a function to list collections available in cloud services
- sits_cube_copy() does not include information on the tile
- Get spatial resolution from config file
- Fix partial merge configuration file
- Change bbox to roi in sits
- fix
sits_bbox()function
- fix duplicate link in AWS STAC
- Now the plot of a classified cube requires a legend or a palette if the labels are not in the default sits palette.
- Support for
S2-SEN2COR_10_16D_STK-1BDC collection - Remove function name from msg in
checkfunction - Add
satelliteandsensorinfo in config file - Remove
imager,ranger,proto, andfuturepackages from sits - Support for different providers to LOCAL sources
- LOCAL source is dynamically built
- Remove
sits_cube.local_cube()function parameterssatelliteandsensor - Add parameters
originandcollectiontosits_cube.local_cube()function - Fix LOCAL source examples and tests
- Update and add more tests in CI
- Implement new check functions
- Change error and warning messages
- fix deprecated warnings in keras package
- bug fixes
- Update documentation in Machine Learning methods
- Hotfix bug in neuron labelling
- Bug fixes in BDC MODIS cube
- Bug fixes in check STAC bands
- Change Landsat-8 (LC8_30-1) product metadata for BDC source
- Create API for source cube
- Update auxiliary functions of the config file
- Update config file
- Add support to others bands values in config file
- Add support to bit mask in USGS cube
- Support to multiples directories in local cubes
- Support for MODIS cloud bands
- Dealing with invalid areas in SITS
- Support for WTSS
- Update README
- Change docker image to new sits build
- Adjust CMASK bands values in BDC cubes
- Support for sits_config_sensor_bands accept more than one sensor
- sits cube selection by shapefile
- Problem - sits classify
- Bugs fixed
- Documentation updated
- Support for multiple tile in local cubes
- Improve selection using
roiparameter insits_classify()function
- Added keras serialisation to TempCNN and ResNet models
- Removed LSTM and FCN deep learning models
- Important improvements in classification performance
- Updated version of deep learning methods
- Support for STAC access to Brazil Data Cube, AWS and DE Africa
- Improved sits validation
- Version update 0.10.0
- Continuous Integration (drone.io)
- Bayesian smoothing improvement
- Introduces Snow multiprocessing architecture
- cube plot allow region of interest (roi)
- Support for multiple tiles
- Update documentation
- Bugs fix
- Access to Sentinel-2 level-2A images in AWS
- Access to the Brazil Data Cube using STAC
- Improved raster API
- Code revision with lintr and good practices packages
- Improvement of assertions and code coverage
- Examples and tests generate output in tempdir()
- Image classification using region of interest (ROI)
- Access and processing of tiles of the Brazil Data Cube
- Plotting of data cube and probability images
- Examples of using SITS with SENTINEL-2 and CBERS-4 images
- Time series tibbles and data cube metadata can now be saved and read in SQLite
- Code coverage increased to 95%
- Vignettes have been moved to "sits-docs" to reduce building time
- Filtering can be applied to classified images
- Band suffix in filtering is now set to ""
- Improvement in code coverage: most of the code has more than 90% coverage
- Improvements in reading shapefiles: using sampling to retrieve time series inside polygons
- Improvement is plotting: uses overloading to the "plot" function
-
Raster classification results can now have versions: a new parameter "version" has been included in the
sits_classifyfunction. -
Corrections to
sits_kohonenand to the documentation.
-
New deep learning models for time series: 1D convolutional neural networks (
sits_FCN), combining 1D CNN and multi-layer perceptron networks (sits_TempCNN), 1D version of ResNet (sits_ResNet), and combination of long-short term memory (LSTM) and 1D CNN (sits_LSTM_FCN). -
New version of area accuracy measures that include Olofsson metrics ()
-
From version 0.8 onwards, the package has been designed to work with data cubes. All references to "coverage" have been replaced by references to "cubes".
-
The classification of raster images using
sits_classifynow produces images with the information on the probability of each class for each pixel. This allows more flexibility in the options for labeling the resulting probability raster files. -
The function
sits_label_classificationhas been introduced to generate a labelled image from the class probability files, with optional smoothing. The choices aresmoothing = none(default),smoothing = bayesian(for bayesian smoothing) andsmoothing = majority(for majority smoothing). -
To better define a cube, the metadata tibble associated to a cube requires four parameters to define the cube: (a) the web service that provides time series or cubes; (b) the URL of the web service; (c) the name of the satellite; (d) the name of the satellite sensor. If not provided, these parameters are inferred for the
sitsconfiguration file. -
The functions that do data transformations, such as
sits_tasseled_capandsits_savinow require asensorparameter ("MODIS" is the default) -
Functions
sits_bandsandsits_labelsnow work for both tibbles with time series and data cubes.
- The SITS configuration file has been improved to include information about web service providers, satellites and sensor parameters. Please use
sits_show_config()to see the default contents. Users can override these parameters or add their own by creating aconfig.ymlfile in their home directory.
-
Examples and demos that include classification of raster files now use the
inSituR package, available usingdevtools::install_github(e-sensing/inSitu). -
All examples have been tested and checked for correctness.
-
sits_coveragehas been replaced bysits_cube. -
sits_raster_classificationhas been removed. Please usesits_classify. -
In
sits_classify, the parameterout_prefixhas been changed tooutput_dir, to allow better control of the directory on which to write. -
sits_bayes_smoothhas been removed. Please usesits_label_classificationwithsmoothing = bayesian. -
To define a cube based on local files,
service = RASTERhas been replaced byservice = LOCALHOST.
-
For programmers only: The
sits_cube.Rfile now includes many convenience functions to avoid using cumbersome indexes to files and vector:.sits_raster_params,.sits_cube_all_robjs,.sits_class_band_name,.sits_cube_bands,.sits_cube_service,.sits_cube_file,.sits_cube_files,.sits_cube_labels,.sits_cube_timeline,.sits_cube_robj,.sits_cube_all_robjs,.sits_cube_missing_values,.sits_cube_minimum_values,.sits_cube_maximum_values,.sits_cube_scale_factors,.sits_files_robj. Please look at the documentation provided in thesits_cube.Rfile. -
For programmers only: The metadata that describes the data cube no longer stores the raster objects associated to the files associated with the cube.