R 如何在光栅中查找对象的边界框?
我有一个由对象(1)和背景(0)组成的二进制光栅。如何找到对象的边界框?每个对象都应该有自己的花束盒 输入:R 如何在光栅中查找对象的边界框?,r,raster,R,Raster,我有一个由对象(1)和背景(0)组成的二进制光栅。如何找到对象的边界框?每个对象都应该有自己的花束盒 输入: 库(“光栅”) mat=矩阵( c(0,0,0,0,0,0,0,0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0), ncol=6,nrow=8,byrow=TRUE ) ras=光
库(“光栅”)
mat=矩阵(
c(0,0,0,0,0,0,0,0,
0, 1, 1, 1, 0, 0,
0, 0, 1, 1, 1, 0,
0, 0, 0, 0, 0, 0,
0, 0, 1, 1, 0, 0,
0, 1, 1, 1, 1, 0,
0, 0, 1, 1, 0, 0,
0, 0, 0, 0, 0, 0),
ncol=6,nrow=8,byrow=TRUE
)
ras=光栅(mat)
我期望这一结果:
result=光栅(矩阵(
c(0,0,0,0,0,0,0,0,
0, 1, 1, 1, 1, 0,
0, 1, 1, 1, 1, 0,
0, 0, 0, 0, 0, 0,
0, 1, 1, 1, 1, 0,
0, 1, 0, 0, 1, 0,
0, 1, 1, 1, 1, 0,
0, 0, 0, 0, 0, 0),
ncol=6,nrow=8,byrow=TRUE
))
这里是一种方法
示例数据
library(raster)
mat = matrix(
c(0, 0, 0, 0, 0, 0,
0, 1, 1, 1, 0, 0,
0, 0, 1, 1, 1, 0,
0, 0, 0, 0, 0, 0,
0, 0, 1, 1, 0, 0,
0, 1, 1, 1, 1, 0,
0, 0, 1, 1, 0, 0,
0, 0, 0, 0, 0, 0),
ncol = 6, nrow = 8, byrow = TRUE )
ras <- raster(mat)
库(光栅)
mat=矩阵(
c(0,0,0,0,0,0,0,0,
0, 1, 1, 1, 0, 0,
0, 0, 1, 1, 1, 0,
0, 0, 0, 0, 0, 0,
0, 0, 1, 1, 0, 0,
0, 1, 1, 1, 1, 0,
0, 0, 1, 1, 0, 0,
0, 0, 0, 0, 0, 0),
ncol=6,nrow=8,byrow=TRUE)
ras这里是一种方法
示例数据
library(raster)
mat = matrix(
c(0, 0, 0, 0, 0, 0,
0, 1, 1, 1, 0, 0,
0, 0, 1, 1, 1, 0,
0, 0, 0, 0, 0, 0,
0, 0, 1, 1, 0, 0,
0, 1, 1, 1, 1, 0,
0, 0, 1, 1, 0, 0,
0, 0, 0, 0, 0, 0),
ncol = 6, nrow = 8, byrow = TRUE )
ras <- raster(mat)
库(光栅)
mat=矩阵(
c(0,0,0,0,0,0,0,0,
0, 1, 1, 1, 0, 0,
0, 0, 1, 1, 1, 0,
0, 0, 0, 0, 0, 0,
0, 0, 1, 1, 0, 0,
0, 1, 1, 1, 1, 0,
0, 0, 1, 1, 0, 0,
0, 0, 0, 0, 0, 0),
ncol=6,nrow=8,byrow=TRUE)
这是一个很好的解决方案。在这种情况下,重叠边界框不是问题。非常感谢。很好的解决方案。在这种情况下,重叠边界框不是问题。非常感谢。