Creating training inputs and spectral signatures for image classification in QGIS

Moving forward in this mini-series on image processing with the Semi-automatic Classification (SCP) plugin in QGIS, we will see how to carry out the creation of training areas required for supervised image classification.

In addition we will see how to create and edit the spectral signatures and how to preview the result of the classification based on the algorithm and the signatures collected.

Six best Earth images from NASA’s ASTER project

The Advanced Spaceborne Thermal Emission and Reflection Radiometer (ASTER) has been taking stunning photos of the earth’s surface since 1999.

Aster is a joint project between NASA and Japan’s Ministry of Economy, Trade and Industry, and has been taking high resolution images of life on earth for 17 years.

For the first time, the 2.95 million satellite images are now available to the public via the ASTER Gallery Map.

The Role of Open Source Imagery in Monitoring Nuclear Activity

A recently released report by the European Commission’s Joint Research Centre focuses on analyzing how repositories of open source aerial and satellite imagery can be used to help monitor nuclear activity.  The report entitled, “Commercial Satellite Imagery as an Evolving Open-Source Verification Technology: Emerging Trends and Their Impact for Nuclear Nonproliferation Analysis” was written by Frank Pabian , the Senior Open-Source Information Research Analyst for Nonproliferation Monitoring and Verification at the European Commission’s Joint Research Center.

Access the report: Commercial Satellite Imagery as an Evolving Open-Source Verification Technology: Emerging Trends and Their Impact for Nuclear Nonproliferation Analysis

The report’s abstract:

One evolving and increasingly important means of verification of a State’s compliance with its international security obligations involves the application of publicly available commercial satellite imagery. The International Atomic Energy Agency (IAEA) views commercial satellite imagery as “a particularly valuable open source of information.” In 2001, the IAEA established an in-house Satellite Imagery Analysis Unit (SIAU) to provide an independent capability for “the exploitation of satellite imagery which involves imagery analysis, including correlation/fusion with other sources (open source, geospatial, and third party). Commercial satellite imagery not only supports onsite inspection planning and verification of declared activities,” but perhaps its most important role is that it also “increases the possibility of detecting proscribed nuclear activities.” Analysis of imagery derived from low-earth-orbiting observation satellites has a long history dating to the early 1906s in the midst of the Cold War era. That experience provides a sound basis for effectively exploiting the flood of now publicly available commercial satellite imagery data that is now within reach of anyone with Internet access. This paper provides insights on the process of imagery analysis, together with the use of modern geospatial tools like Google Earth, and highlights a few of the potential pitfalls that can lead to erroneous analytical conclusions. A number of illustrative exemplar cases are reviewed to illustrate how academic researchers (including those within the European Union’s Joint Research Centre) and others in Non-Governmental Organizations are now applying commercial satellite imagery in combination with other open source information in innovative and effective ways for various verification purposes. The international constellation of civil imaging satellites is rapidly growing larger, thereby improving the temporal resolution (reducing the time between image acquisitions), but the satellites are also significantly improving in capabilities with regard to both spatial and spectral resolutions. The significant increase, in both the volume and type of raw imagery data that these satellites can provide, and the ease of access to it, will likely lead to a concomitant increase in new non-proliferation relevant knowledge as well. Many of these new developments were previously unanticipated, and they have already had profound effects beyond what anyone would have thought possible just a few years ago. Among those include multi-satellite, multi-sensor synergies deriving from the diversity of sensors and satellites now available, which are exemplified in a few case studies. This paper also updates earlier work on the subject by this author and explains how the many recent significant developments in the commercial satellite imaging domain will play an ever increasingly valuable role for open source nuclear nonproliferation monitoring and verification in the future.


How to add imagery basemap data from arcgis online to ArcMap

A basemap provides a background of geographical context for the content you want to display on a map. When you create a new map, you can choose which basemap you want to use. You can change the basemap of the current map at any time by using the basemap gallery or using your own layer as the basemap. You can also create a basemap containing multiple layers from the Contents pane in the map viewer.

Semi-Automatic Classification Plugin v.5.0 “Kourou” Released: Supervised Classification Tutorial

Foarte interesant tutorialul pentru clasificarea supervizata a imaginilor satelitare.

Ca tot vorbeam mai devreme despre Sentinel. Ca tot e european. De la ESA.

Credits goes to:

I am very glad to announce the availability of the new Semi-Automatic Classification Plugin (SCP) version 5.0, code name “Kourou” (dedicated to the Europe’s Spaceport in French Guiana where Sentinel satellites are launched, see
I have also updated the user manual that is available here.

In case the plugin is still not available inside QGIS Plugin Manager, you can perform a manual installation, following this guide.
Following the first basic tutorial of this new version.
The following is very basic tutorials for land cover classification using the Semi-Automatic Classification Plugin (SCP). It is assumed that you have a basic knowledge of QGIS.
The purpose of the classification is to identify the following land cover classes:
  1. Water;
  2. Built-up;
  3. Vegetation;
  4. Bare soil.
Following the video of this tutorial.

1. Data

Download the image from this archive (data available from the U.S. Geological Survey) and unzip the downloaded file.
The downloaded file is actually a Landsat Satellite image (pan-sharpened) including the following bands:
  1. Blue;
  2. Green;
  3. Red;
  4. Near-Infrared;
  5. Short Wavelength Infrared 1;
  6. Short Wavelength Infrared 2.
In this tutorial we pretend this dataset is a generic multi-spectral raster in order to focus on the classification process (in the next tutorial we are going to use an image whose bands are single rasters).

2. Set the Input Image in SCP

Start QGIS. In the SCP input click the button open_file of the Input image, in order to select the file sample_image.tif. Once selected, sample_image.tif is set as Input image, the image is displayed in the map and bands are loaded in the Band set.
We can display a Color Composite of bands: Near-Infrared, Red, and Green: in the Working toolbar, click the list RGB= and select the item 4-3-2 (corresponding to the band numbers in Band set). You can see that image colors in the map change according to the selected bands, and vegetation is highlighted in red (if the item 3-2-1 was selected, natural colors would be displayed).
Color composite RGB=4-3-2

3. Create the Training Input File

Now we need to create the Training input in order to collect Training Areas (ROIs) and calculate the Spectral Signature thereof (which are used in classification).
In the SCP dock click the button new_file and define a name (e.g. training.scp ) in order to create the Training input. The path of the file is displayed in Training input. A vector is added to QGIS layers with the same name as the Training input (in order to prevent data loss, you should not edit this layer using QGIS functions).
Definition of Training input in SCP

4. Create the ROIs

We are going to create ROIs defining the Classes and Macroclasses. Each ROI identifies a land cover class through a Class ID. The Class ID codes used in this tutorial are illustrated in the following table (for now we assign the same code to Class ID and Macroclass ID).


Class name Class ID
Water 1
Built-up 2
Vegetation 3
Bare soil 4
ROIs can be created by manually drawing a polygon or with an automatic region growing algorithm.
Zoom in the map over the dark area (it is a lake) in the lower right region of the image. In order to create manually a ROI inside the dark area, click the button manual_ROI in the Working toolbar (you can ignore a message about wavelength unit not provided). Left click on the map to define the ROI vertices and right click to define the last vertex closing the polygon. An orange semi-transparent polygon is displayed over the image, which is a temporary polygon (i.e. it is not saved in the Training input).

TIP : You can draw temporary polygons (the previous one will be overridden) until the shape covers the intended area.

A temporary ROI created manually
If the shape of the temporary polygon is good we can save it to the Training input.
Open the Classification dock to define the Classes and Macroclasses . In the ROI creation set MC ID = 1 and MC Info = Water; also set C ID = 1 and C Info = Lake. Now click save_roi to save the ROI in the Training input.
After a few seconds, the ROI is listed in the ROI Signature list and the spectral signature is calculated (because checkbox Calculate sig. was checked).
The ROI saved in the Training input
As you can see, the C ID in ROI creation is automatically increased by 1. Saved ROI is displayed as a dark polygon in the map and the temporary ROI is removed. Also, in the ROI Signature list you can notice that theType is B, meaning that the ROI spectral signature was calculated and saved in the Training input.
Now we are going to create a second ROI for the built-up class using the automatic region growing algorithm. Zoom in the map over the blue area in the upper left region of the image.
In Working toolbar set the Dist value to 0.08 . Click the button roi_single in the Working toolbar and click over the blue area of the map. After a while the orange semi-transparent polygon is displayed over the image.

TIP : Dist value should be set according to the range of pixel values; in general, increasing this value creates larger ROIs.

A temporary ROI created with the automatic region growing algorithm
In the ROI creation set MC ID = 2 and MC Info = Built-up ; also set C ID = 2 (it should be already set) and C Info = Buildings.
The ROI saved in the Training input
Again, the C ID in ROI creation is automatically increased by 1.
Create a ROI for the class Vegetation (red pixels in color composite RGB=4-3-2) and a ROI for the class Bare soil (green pixels in color composite RGB=4-3-2) following the same steps described previously. The following images show a few examples of these classes identified in the map.
Bare soil

5. Create a Classification Preview

The classification process is based on collected ROIs (and spectral signatures thereof). It is useful to create a Classification preview in order to assess the results (influenced by spectral signatures) before the final classification. In case the results are not good, we can collect more ROIs to better classify land cover.
Before running a classification (or a preview), set the color of land cover classes that will be displayed in the classification raster. In the ROI Signature list, double click the color (in the column Color) of each ROI to choose a representative color of each class.
Definition of class colors
Now we need to select the classification algorithm. In this tutorial we are going to select the Spectral Angle Mapping.
In Classification algorithm select the Spectral Angle Mapping Algorithm. In Classification preview set Size = 500; click the button preview and then left click a point of the image in the map. The classification process should be rapid, and the result is a classified square centered in clicked point.
Classification preview displayed over the image
Previews are temporary rasters (deleted after QGIS is closed) placed in a group named Class_temp_group in the QGIS panel Layers.

TIP : When loading a previously saved QGIS project, a message could ask to handle missing layers, which are temporary layers that SCP creates during each session and are deleted afterwards; you can clickCancel and ignore these layers.

In general, it is good to perform a classification preview every time a ROI (or a spectral signature) is added to the ROI Signature list. Therefore, the phases Create the ROIs and Create a Classification Preview should be iterative and concurrent processes.

6. Create the Classification Output

Assuming that the results of classification previews were good (i.e. pixels are assigned to the correct class defined in the ROI Signature list), we can perform the actual land cover classification of the whole image.
In the Classification output click the button run and define the path of the classification output, which is a raster file (.tif). If checkbox Play sound when finished is checked in Classification process settings, a sound is played when the process is finished.
Result of the land cover classification

Well done! You have just performed your first land cover classification.
Water and vegetation are correctly identified. However, you can see that there are several classification errors (especially soil classified as built-up and vice versa), because the number of ROIs (spectral signatures) is insufficient.
Example of error: Bare soil classified as Built-up


“SASPlanet is a program designed for viewing and downloading satellite maps”

La recomandarea unui prieten, (thx Liviu) 🙂 pun pe blog link catre o mica platforma software care permite vizualizarea si descarcarea imaginilor satelitare din diverse surse.

Marturisesc ca m-am dus initial la linkul dat de google insa m-am lasat pagubas pentru ca tot ce am facut a fost sa descarc un “software informer”, adica un instrument cu ajutorul caruia imi descarc softul, etc. etc. etc. dar nu a produs decat un uninstall scurt. Asa ca am sapat si am gasit tool-ul aici: motiv pentru care va recomand acest link. In dreapta: download, si veti descarca o arhiva de vreo 12.5 mb, o chestie “portabila”, care dupa dezarhivare, va fi “ready to run”.

Cam asa arata:


SASPlanet is a program designed for viewing and downloading high-resolution satellite imagery and conventional maps submitted by such services as Google Maps, DigitalGlobe, Kosmosnimki, Yandex.Maps, Yahoo! Maps, VirtualEarth, Gurtam, OpenStreetMap, eAtlas, Genshtab maps, iPhone maps, Navitel maps, Bings Maps (Bird’s Eye) etc., but in contrast to all these services all downloaded images will remain on your computer and you will be able to view them, even without connecting to the internet. In addition to the satellite-based maps you can work with the political landscape, combined maps and maps of the Moon and Mars.

Cu alte cuvinte, putem vedea si descarca (offline), chiar si hartile de pe Luna sau Marte. Wow, am zis, interesant. Si culmea, chiar functioneaza.

Creditele, desigur, merg la gagiul asta, Viktor Demydov:

Un scurt tutorial, care va duce si la alte tutoriale, gasiti aici:

Nu ma intru in alte detalii, pentru ca treaba e destul de “self-explanatory”.