This repository contains materials for the "Unsupervised classification (clustering) of satellite images" workshop on OpenGeoHub Summer School 2023.
Unsupervised classification of satellite images is the process of grouping similar pixels on an image into homogeneous clusters based primarily on their spectral characteristics. This approach does not require reference (labeled) data, unlike supervised classification, therefore it can be used as a method of first choice. Satellite image classification is commonly used in a variety of fields, including environmental monitoring, land cover mapping, and disaster management. The thematic maps generated can be used to identify and monitor changes in land use, and assess the impact of natural disasters.
Skills
The workshop is aimed at beginners, but basic knowledge of R programming, GIS and satellite remote sensing is required. If you want to expand your knowledge, I highly recommend the following materials:
- Article "What is Remote Sensing?" by National Aeronautics and Space Administration
- Book "Geocomputation with R" by Robin Lovelace, Jakub Nowosad and Jannes Muenchow (in particular chapters 2.3 and 4.3)
- Book "Spatial Data Science with R and “terra”" by Robert Hijmans et at.
Software
You need to install R, RStudio and required packages in this way:
install.packages(c("terra", "tidyr", "ggplot2"))
The documentation for the terra
package can be found here: https://rspatial.github.io/terra/reference/terra-package.html
Hardware
Your computer should have a minimum of 8 GB of RAM.
You will find the necessary data on Google Drive or Zenodo. Alternatively, you can download the data from the original EarthExplotter source (scene ID: LC08_L2SP_191023_20230605_20230613_02_T1). After downloading, the data should be unpacked.
You can download interactive notebooks (.Rmd) and static documents (.html) from this repository:
The description of spectral bands can be found here.
If you have any questions or need help, please let me know at Mattermost or email me ([email protected]).