我有一个精细的光栅(比方说30米)和一个粗尺度的光栅(比如说100米)。我想使用R重新采样精细光栅,在100米处生成一个新的,较粗糙的光栅,其中网格与我现有的100米光栅(相同的原点和分辨率)完美对齐。我希望新的100米栅格中的值能够反映其中所有30米栅格单元的平均值,但是每个30米单元格对100米单元格平均值的贡献是按每个30米单元格的比例加权的。落在100米的细胞内。 R中是否有可用于此的函数(和包)?
我知道GDAL的gdalwarp
,但它似乎认为更精细分辨率的像素对更粗糙的像素“贡献”或“没有贡献”,而没有根据更精细的百分比部分贡献的可能性属于较粗像素的像素。
另一个近似是使用aggregate
包中的raster
函数尽可能接近目标分辨率(在这种情况下,聚合因子为3,产生90米栅格)然后使用spatial_sync_raster
包中的spatial.tools
函数同步生成的网格以与我现有的100米网格对齐。但是,相对于光栅聚合并在一个步骤中同步的方法,这种方法会导致过度平滑和数据丢失。
非常感谢任何帮助!
答案 0 :(得分:1)
您需要projectRaster
包
raster
功能
答案 1 :(得分:1)
在@ jgadoury的建议的基础上,我发现了一种更接近我期望结果的方法:
projectRaster
aggregate
在步骤#1中制作光栅的效果越精细,在局部高点和低点上平滑的越少(即,从该像素外的区域对给定的100米像素贡献的数据越少),但过程效率越低变。