Learn R Programming

rgee (version 0.2.0)

ee_download_drive: Move Earth Engine (EE) results from Google Drive to a local directory

Description

Move results of an EE saved in Google Drive to a local directory.

Usage

ee_download_drive(task, filename, overwrite = FALSE, st = TRUE,
  quiet = FALSE)

Arguments

task

List generated after finished correctly a EE task. See details.

filename

Character. Output filename. If missing, a temporary file is created.

overwrite

A boolean argument which indicates indicating whether "filename" should be overwritten.

st

logical. By default it is TRUE, returning a sf (stars) object for EE tables (images). If FALSE, the output filename is returned.

quiet

logical. Suppress info message

Value

An sf, stars or character depending on the retunclass argument.

Details

The task argument needs a status as task "COMPLETED" to work, since the parameters necessary to locate the file into google drive are obtained from ee$batch$Export$*$toDrive(...)$start()$status().

Examples

Run this code
# NOT RUN {
library(rgee)
library(stars)
library(sf)

ee_reattach()  # reattach ee as a reserved word
ee_Initialize()
ee_user_info()

# Example 1 -- Download an Image
# Communal Reserve Amarakaeri - Peru
xmin <- -71.132591318
xmax <- -70.953664315
ymin <- -12.892451233
ymax <- -12.731116372
ROI <- c(xmin, ymin, xmax, ymin, xmax, ymax, xmin, ymax, xmin, ymin)
ROI_polygon <- matrix(ROI, ncol = 2, byrow = TRUE) %>%
  list() %>%
  st_polygon() %>%
  st_sfc() %>%
  st_set_crs(4326)
ee_geom <- sf_as_ee(ROI_polygon)

# Get the mean annual NDVI for 2011
cloudMaskL457 <- function(image) {
  qa <- image$select("pixel_qa")
  cloud <- qa$bitwiseAnd(32L)$
    And(qa$bitwiseAnd(128L))$
    Or(qa$bitwiseAnd(8L))
  mask2 <- image$mask()$reduce(ee$Reducer$min())
  image <- image$updateMask(cloud$Not())$updateMask(mask2)
  image$normalizedDifference(list("B4", "B3"))
}

ic_l5 <- ee$ImageCollection("LANDSAT/LT05/C01/T1_SR")$
  filterBounds(ee_geom)$
  filterDate("2011-01-01", "2011-12-31")$
  map(cloudMaskL457)

mean_l5 <- ic_l5$mean()$rename("NDVI")
mean_l5 <- mean_l5$reproject(crs = "EPSG:4326", scale = 500)
mean_l5_Amarakaeri <- mean_l5$clip(ee_geom)

task_img <- ee$batch$Export$image$toDrive(
  image = mean_l5_Amarakaeri,
  folder = "Amarakaeri",
  fileFormat = "GEO_TIFF",
  fileNamePrefix = "my_image"
)

task_img$start()
ee_monitoring(task_img)

img <- ee_download_drive(task = task_img)

# Example 2 -- Download a Table
amk_fc <- ee$FeatureCollection(
  list(ee$Feature(ee_geom, list(name = "Amarakaeri")))
)

task_vector <- ee$batch$Export$table$toDrive(
  collection = amk_fc,
  folder = "Amarakaeri",
  fileFormat = "GEO_JSON",
  fileNamePrefix = "geom_Amarakaeri"
)
task_vector$start()
ee_monitoring(task_vector) # optional
amk_geom <- ee_download_drive(task = task_vector)
plot(amk_geom$geometry, border = "red", lwd = 10)
# }

Run the code above in your browser using DataLab