Semi-Automatic Classification Plugin version 9 officially released

I'm glad to announce the release of the Semi-Automatic Classification Plugin version 9 (codename "Foundation").

 

This new version is compatible with QGIS 4 (based on Qt 6 framework). 

Until QGIS 4 is officially released, in order to try the new Semi-Automatic Classification Plugin you can install the prerelease (QGIS 3.99 master).

 

The following is the changelog:
  • new version for QGIS 4
  • built on the new Remotior Sensus version 0.6
  • new simplified interface designed for new users
  • added automatic download of Remotior Sensus if library is not available or outdated
  • in the Working toolbar added button to open a Copernicus Browser link at QGIS map coordinates
  • in the Working toolbar added buttons to show or hide custom layers or groups by name also using keyboard shortcuts Z, X, and C
  • in Download products added option to create band set
  • various bug fixing

Remotior Sensus Update: Version 0.6

I'm glad to announce the update of Remotior Sensus to version 0.6.
This new version add several new features such as clustering, raster editing and raster zonal stats. Following the complete changelog:
  • Added optional dependency Pandas for performance improvement in tabular data.
  • In tool “Band classification” added option for using PyTorch pretrained model. In case a pretrained model is selected, and additional algorithm is selected for classification, using the same parameters of the named algorithm (e.g. random forest); after executing the pretrained model, the additional algorithm is executed on the embeddings for classification. Currently, it works with models pretrained by the Allen Institute for Artificial Intelligence (SatlasPretrain: https://satlas-pretrain.allen.ai) in particular, Sentinel-2 swin-v2-base single-image multispectral and swin-v2-tiny single-image multispectral models, and Landsat 8 Landsat 9 swin-v2-base single-image multispectral model. SatlasPretrain model weights are released under the Open Data Commons ‘Attribution License (ODC-BY). The repository code is licensed under the Apache License 2.0 (https://huggingface.co/allenai/satlas-pretrain). This tool downloads the official SatlasPretrain weights (Bastani et al., “SatlasPretrain: A Large-Scale Dataset for Remote Sensing Image Understanding”, ICCV 2023, arXiv:2211.15660, https://doi.org/10.48550/arXiv.2211.15660). All model weights remain the property of their respective authors.
  • In tool “Band classification” added PyTorch pretreained segmentation models for Sentinel-2 (swin-v2-base single-image multispectral model using 3 bands or 4 bands) pretrained by DPR Team as part of the DPR Zoo Segmentation Hub framework (https://github.com/DPR25/dpr-zoo-segmentation-hub) based on SatlasPretrain models. The model output classes: background, water, developed, tree, shrub, grass, crop, bare, snow, wetland, mangroves, moss. The repository code of DPR Zoo models are licensed under the MIT License (https://huggingface.co/martinkorelic/dpr-zoo-models). This tool downloads the model weights (DPR Team, 2025. Made as part of Arnes Hackathon 2025). All model weights remain the property of their respective authors.
  • In tool “Download products” included the download of Sentinel-2 L2A SCL band.
  • In tool “Preprocess products” included the Sentinel-2 L2A SCL band.
  • Improved progress monitoring for multiprocess.
  • Code optimization and bug fixing.

Many of these enhancements will also be implemented in the Semi-Automatic Classification Plugin for QGIS which will be released on the 20th of February 2026.
 

For any comment or question, join the Facebook group or GitHub discussions about the Semi-Automatic Classification Plugin.

Announcing the development of the Semi-Automatic Classification Plugin version 9

I'm glad to announce that the Semi-Automatic Classification Plugin version 9 (codename "Foundation") is under development.


Tutorial: Download Sentinel-2 data and calculate the NDVI in Python using Remotior Sensus

This post is about Remotior Sensus, a Python package that allows for the processing of remote sensing images and GIS data.
In this tutorial we'll see how to search and download Sentinel-2 images and calculate the Normalized Difference Vegetation Index (NDVI) using Remotior Sensus.
Following the video of this tutorial.

Tutorial: Create a Sentinel-2 high resolution jpg image Using Remotior Sensus

This is a tutorial about Remotior Sensus, a Python package that allows for the processing of remote sensing images and GIS data.
In particular, this tutorial illustrates how to create a high resolution jpg image from a Sentinel-2 image. Of course, this tutorial could be extended to other satellite images such as Landsat.
Following the video of this tutorial.

Random Forest Classification of Sentinel-2 image in Python using Remotior Sensus

This video tutorial illustrates how to perform Random Forest classification of a Copernicus Sentinel-2 image using Remotior Sensus, a Python package that allows for the processing of remote sensing images and GIS data.
The tutorial is available as Jupyter notebook in Google Colab, a free service by Google that allows for executing a Jupyter notebook in the cloud.
Following the video of this tutorial.

Remotior Sensus Video Tutorial: Quickstart

This video tutorial describes the basics of Remotior Sensus, a Python package that allows for the processing of remote sensing images and GIS data.
The tutorial is available as Jupyter notebook in Google Colab, a free service by Google that allows for executing a Jupyter notebook in the cloud.
Following the video of this tutorial.

Remotior Sensus Update: Version 0.4

I'm glad to announce the update of Remotior Sensus to version 0.4.
This new version add several new features such as clustering, raster editing and raster zonal stats. Following the complete changelog:
  • Added tool "Band clustering" for unsupervised K-means classification of bandset
  • Added tool "Raster edit" for direct editing of pixel values based on vector
  • Added tool "Raster zonal stats" for calculating statistics of a raster intersecting a vector.
  • Improved the NoData handling for multiprocess calculation
  • In "Band clip", "Band dilation", "Band erosion", "Band sieve", "Band neighbor", "Band resample" added the option multiple_resolution to keep original resolution of individual rasters, or use the resolution of the first raster for all the bands
  • In "Cross classification" fixed area based accuracy and added kappa hat metric
  • In "Band combination" added option no_raster_output to avoid the creation of output raster, producing only the table of combinations
  • In "Band calc" replaced nanpercentile with optimized calculation function
  • Improved extraction of ROIs in "Band classification"
  • Minor bug fixing and removed Requests dependency

Tutorial: Using the Semi-Automatic Classification Plugin Interface in the Cloud Through Jupyter and Remotior Sensus

This tutorial illustrates a proof of concept about using Remotior Sensus in Jupyter through an interface similar to the Semi-Automatic Classification Plugin.
Jupyter notebooks are interactive documents that can be edited in a web browser, which allow for coding in Python and interact with widgets. Several cloud services offer Jupyter notebooks to code, and for example Google Colab is a free service by Google that allows for executing a Jupyter notebook in the cloud.

In a recent Remotior Sensus update (v. 0.3), a new module allows for displaying an interface similar to the Semi-Automatic Classification Plugin in Jupyter notebooks, allowing for the interactive search and download of remote sensing images, the interactive creation of Band Sets, training input, and ROIs, and the classification of the bands (the interface is still in development and only a few tools are available).
For example the following command displays the interface for downloading products.
rs.jupyter().download_interface()

Remotior Sensus Update: Version 0.3

I'm glad to announce the update of Remotior Sensus to version 0.3.
The main new feature is a new module for displaying an interface similar to the Semi-Automatic Classification Plugin (which is based on Remotior Sensus) in Jupyter notebooks.
Jupyter notebooks are interactive documents that can be edited in a web browser, which allow for coding in Python and interact with widgets.

The Jupyter interface is still in development and only a few tools are available. For the moment, the available tools are:
  • search and download of remote sensing images;
  • creation and management of Band Sets;
  • the dock for creating a training input and saving ROIs created interactively through polygons or region growing;
  • the import of vectors in training input;
  • the plot of spectral signatures;
  • the classification of the Band Sets;
  • a file browser for selecting files or directories.
For example the following command displays the interface for downloading products.
import remotior_sensus
rs = remotior_sensus.Session(n_processes=2, available_ram=1000)
rs.jupyter().download_interface()



Of course this is a proof of concept, considering that this interface doesn't have all the functions of the Semi-Automatic Classification Plugin, and there are a few differences in the look and feel because of the characteristics of Jupyter notebooks.
A tutorial describing this new feature will be released soon.

For any comment or question, join the Facebook group or GitHub discussions about the Semi-Automatic Classification Plugin.


Tutorial: Using Remotior Sensus in Copernicus JupyterLab

This is a tutorial about Remotior Sensus, a Python package that allows for the processing of remote sensing images and GIS data.

In particular, this tutorial describes the use of Remotior Sensus in Copernicus JupyterLab, which is a Jupyter Notebook service in a web-based environment, offering several tools for working with the Copernicus Data Space.
This service can be accessed at this link https://jupyterhub.dataspace.copernicus.eu after a free registration to the Copernicus Data Space Ecosystem (CDSE).

The Jupyter Notebooks are available in 3 flavors: Small (2 CPU cores and 4GB RAM), Medium (2 CPU cores and 8GB RAM) and Large (4 CPU cores and 16GB RAM). As stated in the documentation, to ensure the fair use of resources by the CDSE users, it is recommended to start with the Small flavor and switch to a bigger only in case of issues with kernel crashing due to the lack of available memory.

Therefore, the Copernicus JupyterLab offers a great opportunity to use Copernicus data in a cloud environment. In this tutorial, we are going to see how to:
  • Download and preprocess Sentinel-2 images.
  • Create a BandSet and prepare a training input
  • Run a Random Forest classification
All the above steps are performed in the cloud. The classification output is saved in a persistent storage with 10GB of space and can be downloaded later.

Tutorial: Random Forest Classification Using Remotior Sensus

This is a tutorial about Remotior Sensus, a Python package that allows for the processing of remote sensing images and GIS data.
In the last few months Remotior Sensus was frequently update to fix and integrate new functions, in particular for the integration with the Semi-Automatic Classification Plugin for QGIS.

In this tutorial we are going to use Remotior Sensus to perform the Random Forest classification of a Copernicus Sentinel-2 image, which involves the following main steps:
  1. Create a BandSet using an image
  2. Load a training input
  3. Perform the random forest classification

Road to the Semi-Automatic Classification Plugin v.8: Landsat and Sentinel-2 images download and preprocessing, classification

This is the second post describing the main new features of the new version 8 (codename "Infinity") of the Semi-Automatic Classification Plugin (SCP) for QGIS, which will be released in October 2023.
The new version is based on Remotior Sensusa new Python processing framework.

The tool "Download products" has been updated to download Landsat and Sentinel-2 images from different services. In particular, through the service NASA Earthdata (registration required at https://urs.earthdata.nasa.gov) it will be possible to download the Harmonized Landsat and Sentinel-2 which are surface reflectance data product (generated with Landsat 8, Landsat 9, and Sentinel-2 data) with observations every two to three days at 30m spatial resolution (for more information read here). This is therefore a great source for frequent and homogeneous monitoring.
Moreover, Copernicus Sentinel-2 images will be searched through the Copernicus Data Space Ecosystem API, while the images are downloaded through the Google Cloud service that provides the free dataset as part of the Google Public Cloud Data program.
Other download services that were available in SCP 7 (e.g. Sentinel-1, ASTER images) will be available with future updates.


Road to the Semi-Automatic Classification Plugin v.8: Band sets, Band calc and Scripts

As already announced, the new version 8 (codename "Infinity") of the Semi-Automatic Classification Plugin (SCP) for QGIS will be released in October 2023.
This post describes a few main new features of the SCP, which is still under development, based on a completely new Python processing framework that is Remotior Sensus.

The Main interface will include all the tools, as in SCP version 7. The Band set tab will allow to manage more than one Band set; the interface has been restyled with a table on the left to manage the list of Band sets, and the larger table on the right to display the bands of the active band set.


Remotior Sensus: a Tutorial about Sentinel-2 Download and NDVI Calculation

This is a tutorial of Remotior Sensus, a Python package that allows for the processing of remote sensing images and GIS data.

This tutorial describes how to use Remotior Sensus in Google Colab and calculate NDVI from multiple Copernicus Sentinel-2 images. An average NDVI value is computed completely in the cloud, without the need to install software on your local device. 

Remotior Sensus: a Basic Tutorial

This is a very basic tutorial about Remotior Sensus, a Python package that allows for the processing of remote sensing images and GIS data.

It describes the main features of Remotior Sensus, such as the management of raster  bands.
Moreover, it includes the download of a Sentinel-2 image, the calculation of NDVI, and a tool to manage tables is presented.   
Also, the user manual is available at https://remotior-sensus.readthedocs.io.

Remotior Sensus: Released the User Manual

The first version of the user manual of Remotior Sensus (a Python package that allows for the processing of remote sensing images and GIS data) has been released.

The user manual is available at https://remotior-sensus.readthedocs.io.
This is of course still in early development, and not all the functions are completely described.
However, most descriptions of the tools are included, also with code examples.

At the moment, the available tools are:
  • band calc
  • band classification
  • band combination
  • band dilation
  • band erosion
  • band mosaic
  • band neighbor pixels
  • band pca
  • band sieve
  • cross classification
  • download products
  • preprocess products
  • raster reclassification
  • raster report
  • raster to vector
Also, the management of raster bands through band sets is available.

Remotior Sensus: Released a new Python package for image classification and GIS spatial analyses

I am very glad to announce the availability of a new Python package that I developed for image classification and GIS spatial analyses:

      Remotior Sensus 

Remotior Sensus (which is Latin for “a more remote sense”) is a Python package that allows for the processing of remote sensing images and GIS data, which has the main objective to simplify the processing of remote sensing data through practical and integrated APIs that span from the download and preprocessing of satellite images to the postprocessing of classifications and GIS data. 
Basic dependencies are NumPySciPy for calculations, and GDAL for managing spatial data.
Newer posts Older posts