问题标签 [glcm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1194 浏览

python - GLCM从图像中提取纹理特征

我正在使用 GLCM 从图像中获取纹理特征,以便在 knn 和决策树等分类算法中使用它们。当我运行该greycoprops函数时,它为每个功能返回一个由 4 个元素组成的数组,如下所示。我应该获得要在分类中使用的每个特征的平均值,还是应该如何处理它们?

0 投票
1 回答
1197 浏览

python - 使用 numpy 提取 glcm 矩阵

我想使用 python (numpy) 找到 GLCM 矩阵我已经编写了这段代码,它从四个角度给了我一个正确的结果,但是速度很慢,处理 1000 张带有恶魔 128x128 的图片大约需要 35 分钟

我需要帮助以使此代码更快谢谢。

0 投票
2 回答
1018 浏览

r - R:计算图像的灰度共现矩阵 (GLCM)

为了研究图像中像素值的分布,我想计算整个图像的灰度共现矩阵 (GLCM)(无滑动/移动窗口)。这个想法是为每个图像接收一个值(对于“均值”、“方差”、“同质性”、“对比度”、“不相似性”、“熵”、“秒时刻”、“相关性”),以比较图像彼此之间关于它们的像素值分布。

例如:

所有这 3 张图像都有相同的统计数据(平均值、最大值、最小值……),但是像素值的分布完全不同。为了找到一种度量来描述这种差异,我想为这些图像中的每一个计算 GLCM。

到目前为止,我正在使用包“glcm”,这是 Alex Zvoleff 的一个用于纹理分析的出色包。不幸的是,它只能与滑动/移动窗口一起使用......但由于我想为每个统计测量的每张图像接收一个值,所以它似乎对我没用......有没有人可以帮助 R-像我这样的菜鸟就这样出去了?:)

0 投票
1 回答
972 浏览

python - 使用 Python API 在 Google Earth Engine 中将 RGB 图像转换为单波段灰度图像

我希望使用灰度共生矩阵 (GLCM) 在 Google 地球引擎 (GEE) 中提取一组 RGB 卫星图像纹理的摘要统计信息。GEE 有一个内置的 image.glcm() 函数来执行此操作,但是此页面 ( https://developers.google.com/earth-engine/image_texture ) 中的示例代码表明它需要单个波段作为输入:

有没有办法在 GEE 中将 RGB 图像转换为单波段灰度图像?

我正在使用 Python API,因此 Python 中的答案将是理想的,但任何建议将不胜感激!

0 投票
1 回答
549 浏览

python-3.x - 使用 Python3 进行快速 GLCM 特征计算

** 我想要做的是使用 Python 3.0x 快速计算 GLCM 特征,并且应该在每个图像上绘制整个图像组的特征平均值以及图像的单个特征值。没有平均值的示例图像是这样的。并且特征值包括熵、对比度、角二阶矩等。任何加速这个过程的想法都值得赞赏。**

0 投票
1 回答
214 浏览

parallel-processing - 使用 doParallel 的栅格合并为每个合并步骤创建临时文件

我正在使用 raster 和 glcm 包来计算卫星图像上的 Haralick 纹理特征。我已经使用单核成功运行了 glcm() 函数,但正在并行运行它。这是我正在使用的代码:

当我检查创建的临时文件时,似乎合并的每个步骤都会创建一个临时文件,这会占用大量硬盘空间。这是整体图像(2GB):

全光栅

这里有两个临时文件:Merge Step 1 Merge Step 2

由于每个切片的 glcm 函数输出为 3 GB,因此为每个逐步合并操作创建一个临时文件会创建约 160 GB 的临时栅格文件。有没有更节省空间的方法来并行运行它?

0 投票
1 回答
123 浏览

python - 我们可以结合 open cv 和 scikit-image 中的代码吗?

我对如何从 open cv 和 scikit-image 编译代码组合感到很困惑。在我的程序中,我使用 open cv 进行预处理和分割步骤,但我想使用 GLCM 进行特征提取,这可用于使用 scikit-image 代码,而对于分类,我想使用 open cv 进行 SVM 方法。请指导我构建此代码。

0 投票
1 回答
103 浏览

computer-vision - skimage.feature.greycomatrix 只产生对角线值

我正在尝试在趋势减少的数字高程模型上生成 glcm。我目前的问题是 skimage.feature.greycomatrix(image) 的输出仅包含矩阵的对角线条目中的值。

使用以下代码先对图像进行量化:

graycomatrix() 的输出

我将如何让 glcm 计算对角矩阵之外的值(即只是值本身的频率),我的方法有什么根本错误吗?

0 投票
1 回答
107 浏览

python - 为什么在屏蔽图像和裁剪图像时会得到不同的 glcms

我正在尝试基于从 GLCM 中提取的特征构建图像分类模型。我想屏蔽一些图像以改进模型,当然我不希望 GLCM 考虑这些像素。基于以下帖子,我已经实施并进行了测试,以确保 GLCM 对蒙版图像正常工作

1)拍摄图像并创建裁剪版本和蒙版版本(在裁剪的相同像素中)。
2
3 4

2) 将图像转换为 int32 类型并执行以下操作:

所以在这个测试中,如果 GLCM 不受蒙版像素的影响,我预计蒙版和裁剪图像的矩阵将是相同的。但实际上矩阵是不同的。

我对 GLCM 工作原理的理解是否正确?从理论上讲,这两个矩阵应该相等是否有意义?

0 投票
1 回答
1024 浏览

python - ValueError 缓冲区源数组是只读的

我正在使用此代码为某个图像提取 GLCM 特征,但它给了我一个值错误

代码:

错误:

ValueError 缓冲区源数组是只读的

有谁知道这意味着什么,或者代码中可能存在什么问题?