velox 包点提取失败

Posted

技术标签:

【中文标题】velox 包点提取失败【英文标题】:velox package point extraction failure 【发布时间】:2018-06-24 02:12:59 【问题描述】:

我正在尝试使用当前 (0.2.0) velox 包版本在 R 3.4.1 中使用 velox 包。我想使用 VeloxRaster_extract_points 功能提取光栅像素值,并且在我自己的数据失败后,我运行了当前参考手册第 19 页提供的确切代码。这返回了显示的错误(如下)。我一直无法在网上找到任何与此错误相关的参考资料。有什么建议么? 谢谢

> ## Make VeloxRaster with two bands
> set.seed(0)
> mat1 <- matrix(rnorm(100), 10, 10)
> mat2 <- matrix(rnorm(100), 10, 10)
> vx <- velox(list(mat1, mat2), extent=c(0,1,0,1), res=c(0.1,0.1),crs="+proj=longlat +datum=WGS84 +no_defs")
> ## Make SpatialPoints
> library(sp)
> library(rgeos)
> coord <- cbind(runif(10), runif(10))
> spoint <- SpatialPoints(coords=coord)
> ## Extract
> vx$extract_points(sp=spoint)
Error in envRefInferField(x, what, getClass(class(x)), selfEnv) : 
  ‘extract_points’ is not a valid field or method name for reference class “VeloxRaster”

【问题讨论】:

【参考方案1】:

尝试时,它适用于我的情况:

library('velox')
## Make VeloxRaster with two bands
set.seed(0)
mat1 <- matrix(rnorm(100), 10, 10)
mat2 <- matrix(rnorm(100), 10, 10)
vx <- velox(list(mat1, mat2), extent=c(0,1,0,1), res=c(0.1,0.1),
            crs="+proj=longlat +datum=WGS84 +no_defs")
## Make SpatialPoints
library(sp)
library(rgeos)
coord <- cbind(runif(10), runif(10))
spoint <- SpatialPoints(coords=coord)
## Extract
vx$extract_points(sp=spoint)
        [,1]       [,2]
 [1,] 0.76359346 -0.4125199
 [2,] 0.35872890  0.3178857
 [3,] 0.25222345 -1.1195991
 [4,] 0.00837096  2.0247614
 [5,] 0.77214219 -0.5922254
 [6,] 0.00837096  2.0247614
 [7,] 1.10096910  0.5989751
 [8,] 1.15191175 -0.9558391
 [9,] 0.14377148 -1.5236149
[10,] 1.27242932  0.0465803

我认为您可能需要重新安装该软件包。

【讨论】:

以上是关于velox 包点提取失败的主要内容,如果未能解决你的问题,请参考以下文章

查询以仅提取失败的记录

如果目标目录不存在,如何强制提取失败?

WPF游览器程序为啥启动时候打开一个world文件而不运行程序?

为啥qq提取文字识别失败

AKS 无法提取图像 - 大小验证失败

无法提取机密或注册表身份验证:拉命令失败::信号:已杀死