【问题标题】:Extraction of land cover data in two rasters with different resolution and extent提取两个不同分辨率和范围的栅格中的土地覆盖数据
【发布时间】:2020-07-27 13:53:30
【问题描述】:

我有三个栅格。 Raster1 是土地覆盖类型的土地覆盖文件。 Raster2 和 raster3 是显示变量“NPP”的栅格。如您所见,每个栅格都有不同的范围和分辨率。根据 raster1 的土地覆盖,我想知道 raster 2 和 3 中的 NPP 有多少。但是,为了使所有栅格达到相同的范围和分辨率并根据 raster1 中的土地覆盖类别在 raster2 和 raster3 中找到 NPP,可以做些什么呢?

(我如何知道应该为所有栅格选择哪种分辨率?)

> raster1
    class      : RasterLayer 
    dimensions : 2803, 5303, 14864309  (nrow, ncol, ncell)
    resolution : 0.008333333, 0.008333333  (x, y)
    extent     : 60.85, 105.0417, 15.95833, 39.31667  (xmin, xmax, ymin, ymax)
    crs        : +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0 
    source     :XXXXX
    names      : landusemaskedme 
    values     : 1, 12  (min, max)

    raster2
    class      : RasterLayer 
    dimensions : 2336, 4419, 10322784  (nrow, ncol, ncell)
    resolution : 0.01, 0.01  (x, y)
    extent     : 60.85, 105.04, 15.96, 39.32  (xmin, xmax, ymin, ymax)
    crs        : +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0 
    source     : memory
    names      : NPP
    values     : 0, 31.78096  (min, max)

    > raster3
    class      : RasterLayer 
    dimensions : 47, 89, 4183  (nrow, ncol, ncell)
    resolution : 0.5, 0.5  (x, y)
    extent     : 60.75, 105.25, 15.75, 39.25  (xmin, xmax, ymin, ymax)
    crs        : NA 
    source     : memory
    names      : NPP 
    values     : 0, 21.141  (min, max)

【问题讨论】:

    标签: r raster tiff


    【解决方案1】:

    我可以看到您的栅格具有几乎相同的范围和坐标系,除了没有任何参考系统的 raster3 (crs: NA)。首先,您需要具有相同范围和坐标参考系的栅格,然后您可以使用raster 包中的resample 函数,如

    library(raster)
    
    #To have the same projection for raster3 as that of your base landcover class in raster1
    newproj <- projection(raster1)
    praster3 <- projectRaster(raster3, crs=newproj)
      
    #Conversion of rasters into same extent
    raster2_resampled <- resample(raster2, raster1, method='bilinear')
    raster3_resampled <- resample(praster3, raster1, method='bilinear')
    

    将更精细的分辨率栅格重新采样到更粗糙的分辨率总是更好,反之亦然,尽管可以按照您在问题中提出的要求来完成。在您的情况下,raster1 具有更精细的分辨率 (0.008333333 x 0.008333333),然后是 raster2 (0.01 x 0.01)。 raster3 具有最粗略的分辨率 (0.5 x 0.5)。因此,最好将所有栅格转换为raster3 的分辨率和范围。希望对您有所帮助。

    【讨论】:

      猜你喜欢
      • 2018-09-17
      • 1970-01-01
      • 1970-01-01
      • 2017-09-23
      • 2016-11-03
      • 2021-08-14
      • 2022-08-03
      • 1970-01-01
      • 2020-05-06
      相关资源
      最近更新 更多