【问题标题】:R: RasterToPolygon works slow, then stop workingR:RasterToPolygon 工作缓慢,然后停止工作
【发布时间】:2016-05-23 03:29:50
【问题描述】:

我在处理 R 中的栅格时遇到了问题,即使我以前做过。我可以读取数据并绘制它们:

但是,当我尝试将栅格转换为多边形时,R 停止工作

我尝试在 OSX 和 Windows 7 上更新软件包、重新安装 R,但结果始终相同。

此外,我尝试将我的投影设置为 NA,但这都没有帮助。你有没有遇到过这样的问题?你对如何解决这个问题有一些建议吗?我非常感谢任何建议!

我的数据在这里:https://ulozto.sk/x4pHuyra/data-to-stack-zip

还有我的代码:

library(sp)
library(raster)
library(rgeos)
library(spatstat)
library(rgdal)     
library(maptools)
require(spdep)


# read final GFW raster - in JTSK

gfw_13<-raster("H:/.../gfw_ext_forest_03.tif")

projection(gfw_13)<-NA

# read shp
manag<-readOGR(dsn = "H:/...",
                layer = "cleared_management_by_NP")
projection(manag)<-NA

# convert raster GFW to shp       # !!!!! here it stops to work
pol.gfw<-rasterToPolygons(gfw_13, dissolve = T)

【问题讨论】:

  • 我建议使用 gdal_polygonize:gdal.org/gdal_polygonize.html R rasterToPolygons 函数非常慢,并且通常无法在较大的数据集上正常工作。如果您需要有关 gdal 功能的帮助,请告诉我。

标签: r crash polygons r-raster


【解决方案1】:

我还没有 50 个代表,所以我不能添加评论,但是看看这个web-page。它处理rasterToPolygons 函数,我一直发现它非常慢,作者(John Baumgartner)提供了他的一个函数来加速这个过程。根据他的测试,大约需要 1/7000 的时间。

【讨论】:

  • 这看起来很有希望,但不可能成功 - 尝试了很多次。
【解决方案2】:

这并不能解决速度问题,但至少我的进程运行并且 R 不会崩溃...我需要为 rasterToPolygon 函数定义所有参数:

pol.gfw <- rasterToPolygons(gfw_13, fun=NULL, n=4, na.rm=TRUE, digits=12, dissolve=TRUE) 

也许问题是由于原始栅格中的大量 NA 值..

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-08-22
    • 2021-02-01
    • 2016-12-29
    • 2018-05-09
    • 2015-12-07
    • 2015-08-23
    相关资源
    最近更新 更多