使用R将geoTIF转换为ASCII /文本?

gen*_*ser 4 r image-processing geospatial

我正在尝试从此处获取全球净初级生产力的时间序列估计值,将其下载到基于美国的远程计算机上(我在肯尼亚,手机上网速度很慢),并将其从当前格式转换为ascii,使用如下函数粗化它们:

coarsen = function(input,size_out){
    if (dim(input)[1] != dim(input)[2]) {print("Matrix not square.")} else {    
    dimsize = dim(input)[1]
    fac = dimsize/size_out
    x = suppressWarnings(matrix(c(rep(1, fac), rep(0, dimsize)), dimsize, dimsize/fac))
    t(x) %*% input %*% x}
    }
Run Code Online (Sandbox Code Playgroud)

然后下载它们,以便我可以与他们合作。使用R而不是专用的GIS程序可以做到吗?如果是这样,我该怎么办?首选R解决方案-我将使用无法在其上安装程序的群集,但可以安装R软件包。

Jos*_*ien 5

光栅包有一个用于读取,在许多不同的格式写栅格数据,并执行一个巨大的各种这样的数据操纵优良的设施。

使用它,您的情况下(针对单个文件)的基本工作流程可能是这样的:

library(raster)
f <- "path/to/downloaded/file.tif"
r <- raster(f)
ra <- aggregate(r, fact=2)  ## By default aggregates using mean, but see fun=
writeRaster(ra, "path/to/outfile.asc", format="ascii")
Run Code Online (Sandbox Code Playgroud)

该程序包有据可查。我建议从?"raster-package"和开始vignette(Raster)(以及中列出的所有帮助文件help(package="raster")),然后在遇到严重障碍的情况下再回到这里。