Features

rgeeExtra serves as a wrapper for the Python package named eeExtra. The creation of eeExtra was driven by a need to consolidate various third-party GEE Javascript and Python packages and projects found on GitHub in the same programming language and style, avoiding dependencies. rgeeExtra ensures a seamless integration of eeExtra within the R ecosystem

Key features of rgeeExtra include:

  1. Automatic Scaling and Offsetting: Simplifying the adaptation and visualization of images and datasets.

  2. Spectral Indices Computation: Harnessing the capabilities of Awesome Spectral Indices, it allows for the calculation of a wide range of spectral indices from satellite imagery.

  3. Clouds and Shadows Masking: An essential tool for processing satellite images, it identifies and masks areas impacted by clouds and their shadows.

  4. STAC-related Functions: Streamlining interactions with the SpatioTemporal Asset Catalog (STAC), standardizing the description of spatiotemporal datasets.

  5. Operator Overloading: Provides a more direct and simplified interaction with data, enhancing code clarity and efficiency.

library(rgeeExtra)
library(rgee)

ee_Initialize()        # Initialize the Google Earth Engine API connection
extra_Initialize()     # Initialize the extended functionalities of rgeeExtra

1. Features for ee$Feature and ee$FeatureCollection

Subsetting

todo

length

todo

names

todo

2. Features for ee$Image

Subsetting

todo

length

todo

names

todo

getCitation

todo

getCitation

todo

getDOI

todo

getOffsetParams

todo

getScaleParams

todo

getSTAC

todo

getSTAC

todo

spectralIndex

todo

preprocess

todo

panSharpen

todo

maskClouds

todo

matchHistogram

todo

tasseledCap

todo

scaleAndOffset

todo

2. Features for ee$ImageCollection

todo

Subsetting

todo

length

todo

names

todo

closest

todo

getCitation

todo

getDOI

todo

getOffsetParams

todo

getScaleParams

todo

getSTAC

todo

spectralIndex

todo

preprocess

todo

scaleAndOffset

todo

tasseledCap

todo

panSharpen

todo

3. Third-party repositories

1. Automatic Scaling and Offsetting

  • [Image or ImageCollection]$getOffsetParams: Apply offset parameters for each bands.

  • [Image or ImageCollection]$getScaleParams: Apply scale parameters for each bands.

ee$ImageCollection("NASA/GPM_L3/IMERG_V06") %>%
  ee$ImageCollection$first() %>%
  ee$ImageCollection$getOffsetParams()

ee$ImageCollection("NASA/GPM_L3/IMERG_V06") %>%
  ee$ImageCollection$first() %>%
  ee$Image$getScaleParams()

2. Spectral Indices Computation

Computes one or more spectral indices for an ee$Image or an ee$ImageCollection object.

s2_indices <- ee$ImageCollection("COPERNICUS/S2_SR") %>%
  ee$ImageCollection$first() %>%
  ee$Image$preprocess()%>%
  ee$Image$spectralIndex(c("NDVI", "SAVI"))

names(s2_indices)

3. Clouds and Shadows Masking

Masks clouds and shadows in an ee$Image. Valid just for Surface Reflectance products. This function may mask water as well as clouds for the Sentinel-3 Radiance product.

img <- ee$ImageCollection("COPERNICUS/S2_SR") %>%
  ee$ImageCollection$first() %>%
  ee$Image$maskClouds(prob = 75,buffer = 300,cdi = -0.5)

names(img)

5. Third-party repositories

5.1 Apply pansharpening

Apply panchromatic sharpening to an ee$Image or an ee$ImageCollection. Optionally, run quality assessments between the original and sharpened Image to measure spectral distortion and set results as properties of the sharpened Image.

img <- ee$Image("LANDSAT/LC08/C01/T1_TOA/LC08_047027_20160819")
img_sharp <- ee$Image$panSharpen(img, method="HPFA", qa=c("MSE", "RMSE"), maxPixels=1e13)

Map$centerObject(img)
Map$addLayer(img_sharp, list(bands=c("B4", "B3", "B2"))) |
Map$addLayer(img, list(bands=c("B4", "B3", "B2")))