【问题标题】:Image texture GLCM (mean_Envi)图像纹理 GLCM (mean_Envi)
【发布时间】:2016-06-30 13:26:07
【问题描述】:

我正在使用 R 中的 glcm 包从 Landsat 波段上的灰度共现矩阵 (GLCM) 运行图像纹理测量,我想知道 mean' 和 'mean_ENVI' / 'variance 之间的区别' 和 'variance_ENVI'。

这似乎是一个基本问题,但我找不到很好的解释。

library(glcm)

Feb2014_B2 <-raster ("Feb2014_band2x.tif")

Feb2014.B2.textures3x3 <- glcm(Feb2014_B2, window = c(3, 3), shift = c(1, 1),   
statistics = c("mean", "mean_ENVI", "variance", "variance_ENVI",  
"homogeneity", "contrast", "dissimilarity", "entropy", "second_moment", 
"correlation"), na_opt="any", na_val=NA) 

【问题讨论】:

  • 你能提供一个小例子(数据和代码)来说明我们在说什么吗?
  • Roman Luštrik 我刚刚用一个例子更新了我的问题。谢谢
  • glcm 函数的参考部分引用了 4 个参考。您是否阅读了它们以查看它们是否列出了有用的内容?

标签: r textures glcm


【解决方案1】:

我是 R glcm 包的作者。 mean 和 mean_ENVI 之间以及 variance 和 variance_ENVI 之间的差异与平均值的计算方式有关。 glcm 包中的均值和方差在原始Haralick publication 中实现。 ENVI 中的均值和方差的实现方式不同。 ENVI 将平均值计算为给定窗口大小内像素值的简单平均值——因此 ENVI 平均值根本不是纹理测量,而只是原始图像的平滑版本。我在我的包中实现了它,以便可以在 R 中重现 ENVI 结果。

我使用的公式与 Haralick 中的一样。现在,查看它们的唯一方法是在 C++ 代码中 (https://github.com/azvoleff/glcm/blob/master/src/calc_texture.cpp)。我最终会将它们放入 R 文档中,但还没有时间将它们放入文档中。

【讨论】:

  • 非常感谢。现在两者之间的区别很明显。如果这些信息写在 R 文档中,那将非常有用。
  • 这是否也指ENVI中的其他共现措施?我发现 ENVI 结果和 GLCM 属性之间存在显着差异(计算自 scikit-image.org/docs/dev/api/…
  • 我的结果(使用 R GLCM 包中给出的参考文献中的公式)与 ENVI 的其他纹理测量结果相匹配 - 只是不是平均值。不知道他们如何与 scikit 进行比较 - 很想知道哪些措施会有所不同。
猜你喜欢
  • 2012-05-23
  • 1970-01-01
  • 2015-10-30
  • 2016-06-03
  • 1970-01-01
  • 2017-04-16
  • 1970-01-01
  • 2016-12-21
  • 1970-01-01
相关资源
最近更新 更多