R中Raster对象中坐标参考系的转换

时间:2018-08-22 10:09:39

标签: r

我正在使用Sentinel 2图像数据进行NDVI监视。

对于在R中导入为SpatialPolygonsDataFrame的区域,我具有村庄级别的边界。当我尝试裁剪感兴趣的区域时,进入NDVI栅格图层后,显示范围不重叠。

我发现我的区域变量的CRS来自我的NDVI different(longlat)中的layer(utm)

> crs(ndvi)
CRS arguments:
 +proj=utm +zone=42 +datum=WGS84 +units=m +no_defs +ellps=WGS84 +towgs84=0,0,0

> crs(region)
CRS arguments:
 +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0

> r <- crop(ndvi,extent(region))
Error in .local(x, y, ...) : extents do not overlap`

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

您可以在“区域”上使用rgdal::spTranform来创建与“ ndvi”具有相同crs的对象

library(rgdal)
reg <- spTransform(region, crs(ndvi))

现在

r <- crop(ndvi, reg)

也许之后

m <- mask(r, reg)