Я пытаюсь спроецировать и повторно сэмплировать большой растр в R с 20 до 10 метров. Процесс был слишком медленным, затем я использовал пакет foreach для ускорения процесса.
Однако я не знаю, как использовать результирующий растр внутри цикла в следующих строках (например, в растровом стеке S2, поскольку изображение NIR_downscalled выглядит как несуществующее.)
path<-"D:/Multiscale"
r_S2<-list.files(path=path,pattern = glob2rx("*.jp2$"), ## nc es la extension de HDF
full.names = TRUE, recursive = TRUE)
ROI<-readOGR("E:/Mapa/ROI_5km.shp")
sr<-"+proj=utm +zone=19 +south +datum=WGS84 +units=m +no_defs +ellps=WGS84 +towgs84=0,0,0"
ROI<-spTransform(ROI,CRS=sr)
cores <- detectCores()-1
cl <- parallel::makeCluster(cores)
registerDoParallel(cl)
foreach(i=11, .packages = "raster") %dopar% {
NIR_downscalled<-projectRaster(raster(r_S2[i]),res=10,crs=sr,method="ngb")
}
stopCluster(cl)
S2<-stack(r_S2[2:4],r_S2[8],NIR_downscalled)