我正在R中运行一个Focal函数来计算移动窗口内的模式。该程序正在像元大小为56m的大型栅格上运行(请参见下面的详细信息)。
class : RasterLayer
dimensions : 63091, 52410, 3306599310 (nrow, ncol, ncell)
resolution : 56, 56 (x, y)
extent : -1575288, 1359672, -1486356, 2046740 (xmin, xmax, ymin, ymax)
coord. ref. : +proj=aea +lat_1=44.75 +lat_2=55.75 +lat_0=40 +lon_0=-96 +x_0=0 +y_0=0 +datum=WGS84 +units=m +no_defs +ellps=WGS84 +towgs84=0,0,0
data source : D:dataPath\rasterFile.tif
names : int17_5001
values : 0, 500 (min, max)
当使用较小的窗口大小(例如29或15倍)时,此方法效果很好,请参见下文。这些大约在48小时后完成。
29xFocal <- focal(
myRasterInput,
w=matrix(1,nrow=29,ncol=29),
fun=modal
)
15xFocal <- focal(
myRasterInput,
w=matrix(1,nrow=15,ncol=15),
fun=modal
)
问题是当我尝试在较大的窗口上运行此窗口时。特别是,我需要使用〜180x和300x的窗口大小。这些已经运行了将近一个星期,还没有完成。
对于在这些数据集上使用更大窗口运行焦点函数的更好方法有何建议?