如何拼接/合并两个相互重叠的 RasterStack 地图

How to Stitch/Merge two RasterStack map overlapping each other

提问人:Johnny 提问时间:6/3/2023 最后编辑:PhilJohnny 更新时间:6/4/2023 访问量:40

问:

我试图合并两个几乎位于彼此上方的 RastertStack 卫星数据。我想将它们都放在一个图中,并且我已经将它们的范围设置为 ESPG:3857。

我使用代码:

MergedMap<-merge(StackedBands1,StackedBands3,tolerance=0.05, filename="MergedMap",overlap=FALSE,ext=NULL,overwrite=TRUE)

StackBands1 - 来自 Sentinel 的 4 层不同频段,从位置 1 开始 StackBands2 - 来自位置 2 的 Sentinel 的 4 个不同频段的图层

这两个位置彼此相邻,我想将它们放在一个地块上。运行代码后,它们将变成光栅砖,并在绘制它们时显示错误。我的代码一定有问题,所以如果有人可以帮忙。谢谢你:)

MergedMap<-merge(StackedBands1,StackedBands3,tolerance=0.05,filename="MergedMap",overlap=FALSE,ext=NULL,overwrite=TRUE)
There were 50 or more warnings (use warnings() to see the first 50)

> plotRGB(MergedMap, r=4,g=3,b=2, axes = TRUE, stretch = "lin", main = "False Color Composite")
Error in if (x@file@nodatavalue < 0) { : 
  missing value where TRUE/FALSE needed

> warning(MergedMap)
Warning message:
brick(ncol=10980, nrow=10980, nl=4, xmn=0, xmx=10980, ymn=0, ymx=10980, crs='+proj=merc +a=6378137 +b=6378137 +lat_ts=0 +lon_0=0 +x_0=0 +y_0=0 +k=1 +units=m +nadgrids=@null +wktext +no_defs') 

我想也许没有其他方法可以拼接或合并两个光栅堆层,只需要在QGIS上进行。但我想找到一种方法来拥有它们。是否必须编辑这些对象的范围?

R 栅格 哨兵 卫星

评论


答:

0赞 Johnny 6/3/2023 #1

我意识到问题在于 R Raster 无法从一开始就读取哨兵数据的坐标,这搞砸了图层的合并或不同位置的拼接。