library(sf)
library(terra)
library(cptcity)
library(reticulate)
library(rgee)
ee_Initialize("cmcarbajal", drive = TRUE)
# Definiendo ámbito de trabajo
ambito <- st_read("data/chancay_huaral.shp") %>% sf_as_ee()
ambito2 <- vect("data/chancay_huaral.shp")Uso de rgee para obtener datos de elevación
Uso de RGEE
Con la finalidad de lograr descargar algunos de los datos raster requeridos para nuestro ámbito de estudio usaremos el paquete rgee (Aybar 2022), a través del cual podemos aprovechar las ventajas de usar el Google Earth Engine (GEE) dentro de un ambiente de R.
Antes de instalar el paquete rgee con install.packages("rgee") se recomienda registrarse Google Earth Engine para tener un usuario, solo es necesario tener una cuenta GMAIL. Mayores detalles para su configuración lo pueden encontrar aquí.
Descarga del modelo de elevación digital: NASADEM
Dentro del catálogo de GEE está disponible NASADEM (NASA JPL 2020). Es un reprocesamiento de datos STRM, con precisión mejorada al incorporar datos auxiliares de conjuntos de datos ASTER GDEM, ICESat GLAS y PRISM. El detalle de este conjunto de datos lo puedes encontrar aquí.
nasadem <- ee$Image('NASA/NASADEM_HGT/001')$select('elevation')$clip(ambito)
viz_param <- list(min= 10,
max= 4800,
palette = cpt(pal= 'gmt_GMT_dem1', n=10))
Map$setCenter(-76.8, -11.3, 9)
Map$addLayer(eeObject = nasadem, viz_param, 'nasadem-Chancay')Generar la capa de pendiente y aspecto
Una vez obtenido el objeto gee nasadem, podemos generar otros como la pendiente (slope) , el aspecto o también el sombreado (hillshade). Para mayor detalle de los productos que podemos generar consultar aquí.
slope <- ee$Terrain$slope(nasadem)
aspect <- ee$Terrain$aspect(nasadem)
Map$addLayer(slope, list(min=0, max=89.99,
palette= cpt(pal = 'esdb_slopese', n=10)), "slope_chancay") +
Map$addLayer(aspect, list(min=0, max=359.99,
palette= cpt(pal = 'grass_aspect', n=10)), "aspect_chancay")Guardando nuestros resultados
Una vez que logramos generar nuestros productos, es posible que lo necesitamos tener en nuestra carpeta local.
# Generación de un rectángulo que cubre nuestro ámbito
box <- ee$Geometry$Rectangle(
coords = c(-77.249, -11.66236,-76.45693, -11.01355),
proj = "EPSG:4326",geodesic = FALSE)
# Descarga de los resultados a un archivo local
img1 <- ee_as_raster(aspect, region = box, scale = 30,
dsn = "output/aspect_chancay", via = "drive")