我想创建一个具有四个波段的图像子集。因此我在R中使用crop函数。
A<-raster("L8_stacked.tif")
subset<-extent(c(639451, 660104, 5469254, 5489566))
B<-crop(A,subset)
结果,我在 .tif 文件中得到了一个只有一个波段的栅格。我是否必须定义其他选项才能获得具有 4 个波段的子集图像?
正如其他人已经在评论中指出的那样,该raster()
函数返回一个(单个) RasterLayer 对象。如果你想要一个多层光栅对象,你需要使用stack()
orbrick()
函数将图像加载到 Rie 中:
A <- stack("L8_stacked.tif")
如果您随后使用该函数应用范围crop()
,则结果应该是包含原始图像中所有波段的栅格堆栈。
要了解有关光栅包的更多信息,请阅读此文档。