嗨R世界专家, 假设我有一个生成强度贴图的点图案,并且该贴图在像素图像中的3个区域中进行颜色编码....我怎样才能得到颜色编码区域?
这是一个使用spatstat的例子:
library(spatstat)
japanesepines
Z<-density(japanesepines); plot(dens) # ---> I create a density map
b <- quantile(Z, probs = (0:3)/3) # ---> I "reduce it" to 3 color-ceded zones
Zcut <- cut(Z, breaks = b, labels = 1:3); plot(Zcut)
class(Zcut) # ---> and Zcut is my resultant image ("im")
提前谢谢你 孢菌
答案 0 :(得分:0)
我不确定您之后的情况,但您可以使用table()
功能计算每种颜色的像素数。
table(Zcut[[1]])
答案 1 :(得分:0)
在您的具体示例中,计算区域非常容易,因为您使用quantile
来剪切图像:这有效地将图像划分为相同大小的区域,因此应该有三个区域大小为1/3因为窗口是一个单位正方形。一般来说,要计算因子值图像中的区域,您可以使用as.tess
和tile.areas
(继续您的示例):
Ztess <- as.tess(Zcut)
tile.areas(Ztess)
在这种情况下,面积为0.333313,这必须归因于离散化。