我试图将多个多波段数据集镶嵌到R中的一个大型多波段栅格中。我试图使用此代码进行此操作,但它返回一个单波段图像。
library(sp)
library(raster)
library(rgdal)
setwd("C:\\Projects\\Rice-fallow_4_states\\Bihar\\S1")
x <- list.files(".\\", pattern='tif$',
full.names = TRUE) # list all the rasters
X1<- as.list(x)
allrasters1 <- lapply(X1, raster)
x.mosaic <- do.call(merge,allrasters1)
names(x.mosaic)
x.mosaic
plot(x.mosaic)
3条答案
按热度按时间qltillow1#
我建议你应该使用
terra
代替raster
包。terra
比raster
快得多。可以使用以下代码jjjwad0x2#
这就是如何使用Terra(“栅格”的替换)来实现这一点
dfuffjeb3#
在R中使用
raster()
加载光栅时,它只加载图像的一个层。如果要加载整个多波段图像,请使用stack()
或brick()
。我相信brick()
是最适合多波段图像的,但我不经常处理这些,所以我还没有找到stack()
之间有意义的区别。