MyNixOS website logo
Description

Obtain and Visualize Spectral Reflectance Data for Earth Surface Polygons.

Tools for obtaining, processing, and visualizing spectral reflectance data for the user-defined land or water surface classes for visual exploring in which wavelength the classes differ. Input should be a shapefile with polygons of surface classes (it might be different habitat types, crops, vegetation, etc.). The Sentinel-2 L2A satellite mission optical bands pixel data are obtained through the Google Earth Engine service (<https://earthengine.google.com/>) and used as a source of spectral data.

CRAN R-CMD-check Codecov test coverage

spectralR

Spectral reflectance visualisations for user-defined areas

See our vignette for detailed usage examples.

Authors: Oleh Prylutskyi, Vladimir Mikryukov, Dariia Shyriaieva

Description

This package provides tools for obtaining, processing, and visualization of satellite-derived spectral reflectance data for the user-defined polygons of earth surface classes, allowing to explore visually in which wavelengths the classes differ. Input should be a shapefile with polygons of surface classes (it might be polygons of different habitat types, crops, or any other things). We use Sentinel2 L2A satellite mission (only optical bands) as a source of spectral reflectance data, obtained through the Google Earth Engine service.

The workflow depends on rgee R package, which provides a bridge between R and Python API for Google Earth Engine. All the operations with satellite images run in a cloud, and the obtained pixel data is visualized locally afterward. Therefore, the most resource-hungry operations do not overload your local machine despite the extent of input data. But that means that you need a stable Internet connection for using API.

The overall workflow is following:

  1. Load the user’s ESRI shapefile containing polygons for user-defined surface classes, as well as the text or numerical field with classes names (labels).

  2. Apply rgee functionality to retrieve multi-band pixel data for classes polygons from the Google Earth Engine service.

  3. Visualize retrieved pixel data locally, mainly using ggplot2 approach.

Overall workflow

Essential requirements:

  • stable Internet connection (for using API)

  • Installed and correctly pre-configured Python environment (v. 3.5 or above)

  • valid Google Earth Engine account

Installation

Install the released version from CRAN

install.packages("spectralR")

You can install the development version of spectralR like so:

library(remotes)
install_github("olehprylutskyi/spectralR")

spectralR is strongly depends on rgee and sf packages, so install and configure them before installing spectralR. More details in the vignette.

Output examples

Spectral reflectance curves for user-defined set of habitattypes

Reflectance per bands for user-defined set of habitattypes

Density of values (as violin plots) for selected habitat types perband

References

Shyriaieva, D., Prylutskyi, O. (2021). Exploratory analysis of the spectral reflectance curves of habitat types: a case study on Southern Bug River valley, Ukraine. In: 63rd IAVS Annual Symposium: Book of Abstracts, p. 153.

Metadata

Version

0.1.3

License

Unknown

Platforms (77)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-freebsd
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64-windows
  • aarch64_be-none
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-darwin
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-darwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-windows