The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

Donwload multi-band data from Greenspace Seasonality Data Cube with specified area/point of inerest

Downloading data may take more than 5 minutes.

By bounding box

gs <- greenSD::get_gsdc(bbox = c(-83.272828,42.343950,-83.218926,42.379719), year = 2022, mask = TRUE)

By place name

gs <- greenSD::get_gsdc(place = 'Detroit', year = 2022)

By coordinates (point)

gs <- greenSD::get_gsdc(location = c(-83.10215, 42.38342), year = 2022)

By UID and time range

# check UID 
greenSD::check_available_urban()
gs <- greenSD::get_gsdc(UID = 1825, year = 2022, time = c("03-01", "09-01"))

Download ESA WorldCover 10m Annual Dataset

Get NDVI data by place name

ndvi <- greenSD::get_esa_wc(place = 'Detroit', datatype = "ndvi")

Get land cover data from ESA WorldCover 10m dataset

lc <- greenSD::get_esa_wc(place = 'Detroit', datatype = "landcover")

Download Sentinel-2 10m Land Use/Land Cover Time Series

The datatype = "lulc" option retrieves annual 9-class land use/land cover maps from the Impact Observatory Sentinel-2 10m LULC Time Series, hosted on a public AWS S3 bucket (no authentication required). Annual maps are available from 2017 to 2025, with a new year added each January.

The 9 land cover classes are: Water (1), Trees (2), Flooded Vegetation (4), Crops (5), Built Area (7), Bare Ground (8), Snow/Ice (9), Clouds (10), Rangeland (11).

Get LULC data by place name

lulc <- greenSD::get_esa_wc(place = 'Detroit', datatype = "lulc", year = 2023)

Get LULC data by bounding box

lulc <- greenSD::get_esa_wc(
  bbox = c(-83.272828, 42.343950, -83.218926, 42.379719),
  datatype = "lulc",
  year = 2023
)

Compare land cover change across years

lulc_2017 <- greenSD::get_esa_wc(place = 'Detroit', datatype = "lulc", year = 2017)
lulc_2023 <- greenSD::get_esa_wc(place = 'Detroit', datatype = "lulc", year = 2023)

# Stack and compare
lulc_change <- c(lulc_2017, lulc_2023)
names(lulc_change) <- c("LULC_2017", "LULC_2023")

# Simple pixel-level change map
change_map <- lulc_2023 - lulc_2017

Retrieve Sentinel-2-l2a images and compute NDVI

ndvi <- greenSD::get_s2a_ndvi(bbox = c(-83.087174,42.333373,-83.042542,42.358748), 
                              datetime = c("2022-08-01", "2022-09-01"), 
                              cloud_cover = 5,
                              output_bands = NULL)

Get the greenspace segmentation from map tiles

# from Esri.WorldImagery map tiles 
green <- greenSD::get_tile_green(bbox = c(-83.087174,42.333373,-83.042542,42.358748), 
                                 provider = "esri",
                                 zoom = 16)

# from Sentinel-2 cloudless mosaic tiles
greenspace2 <- greenSD::get_tile_green(bbox = c(-83.087174,42.333373,-83.042542,42.358748), 
                                      zoom = 17, 
                                      provider = "eox",
                                      year = 2022)

Extract values from Greenspace Seasonality Data Cube with samples

You can extract seasonal greenspace values at multiple point locations within a city boundary.

boundary <- greenSD::check_urban_boundary(uid = 1825, plot = FALSE)
samples <- sf::st_sample(boundary, size = 50)
gs_samples <- greenSD::sample_values(samples, time = 2022)

Visualize Seasonal Greenspace Dynamics as an Animated GIF

The to_gif() function converts a multi-band raster (e.g., greenspace bands across the growing season) into an animated GIF for quick visual exploration.

# Load example data (or use `gs` from previous step)
sample_data <- terra::rast(system.file("extdata", "detroit_gs.tif", package = "greenSD"))

# Generate GIF
gif <- greenSD::to_gif(
  r = sample_data,
  fps = 5,
  width = 600,
  height = 600,
  axes = FALSE,
  title_prefix = paste("greenspace - Day", 1:terra::nlyr(sample_data) * 10)
)

# Display in RStudio Viewer or save
print(gif)

# To save the GIF manually:
magick::image_write(gif, "greenspace_animation.gif")

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.