Mahotas - Haralick

2024 年 8 月 29 日 | 4 分钟阅读

Mahotas 是一个用于 Python 的开源计算机视觉库,它提供了广泛的图像处理功能。Mahotas 提供的功能之一是从图像中提取 Haralick 特征的能力。Haralick 特征是基于灰度共生矩阵 (GLCM) 的纹理特征。

Mahotas 库中的 mahotas.features.haralick() 函数可用于从图像中提取 Haralick 特征。该函数以图像作为输入,并返回图像中每个像素的 14 个特征矩阵。这些特征包括图像纹理的对比度、差异性、同质性和能量等信息。

Haralick 特征是通过计算 GLCM 的统计数据来计算的。它们是旋转不变的,并且可以为不同的距离和角度计算。它们在纹理分类、分割和特征提取方面很有用。

Haralick 特征的一些应用包括目标识别、医学成像和遥感。Haralick 特征已在许多研究中用于基于纹理的图像分类,例如识别不同类型的土壤、在医学图像中检测癌症以及识别航空图像中的物体。

Mahotas 库中一个名为“mahotas.features.haralick()”的函数可以从图像中检索一组 14 个 Haralick 特征。图像灰度共生矩阵 (GLCM) 的统计数据构成了这些特征的基础。该函数提供的 14 个 Haralick 特征如下所示:

  1. 角度二次矩 (ASM)
  2. 对比度
  3. 相关性
  4. 平方和:方差
  5. 逆差矩 (IDM)
  6. 平均和
  7. 和方差
  8. 和熵
  9. 差方差
  10. 差熵
  11. 相关性度量 1 (IMC1)
  12. 相关性度量 2 (IMC2)
  13. 最大相关系数 (MAXC)

统计度量:这些特征提供了关于图像中灰度分布的信息。示例包括角度二次矩 (ASM)、平方和:方差和平均和。

对比度度量:这些特征提供了关于像素之间灰度值的对比度或差异的信息。示例包括对比度、逆差矩 (IDM) 和和方差。

熵度量:这些特征提供了关于图像中灰度值的随机性或无序性的信息。示例包括和熵、熵和差熵。

相关性度量:这些特征提供了关于像素对灰度值之间关系的信息。示例包括相关性、相关性度量 1 (IMC1) 和相关性度量 2 (IMC2)。

最大相关性:此特征提供了所有计算角度中的最大相关系数。

每个特征都是基于 GLCM 的统计数据,使用特定的数学公式计算得出的。每个特征的确切公式可以在纹理分析和图像处理的文献中找到。

Mahotas-Haralick 的应用

Mahotas 库提供的 Haralick 特征已广泛应用于图像分析和计算机视觉领域,其中一些示例包括:

  1. 目标识别:Haralick 特征已被用于根据纹理对不同物体图像进行分类。例如,它们已被用于区分不同类型的土壤或根据叶子纹理识别叶子的种类。
  2. 医学成像:Haralick 特征已被用于检测医学图像中的癌症。例如,它们已被用于根据组织纹理对乳房 X 线照片进行正常或异常分类。
  3. 遥感:Haralick 特征已被用于分类从卫星或飞机拍摄的地球表面图像。例如,它们已被用于识别不同类型的地表覆盖,如森林、草地和城市区域。
  4. 工业检测:Haralick 特征已被用于分类工业检测中的缺陷。例如,它们已被用于分类印刷电路板、纺织品和金属中的缺陷。
  5. 食品工业质量控制:Haralick 特征已被用于根据食品的纹理对食品质量进行分类。
  6. 纹理分类:Haralick 特征已被用于对图像中的不同纹理进行分类,例如木材、石头和织物。
  7. 分割:Haralick 特征已被用作图像分割的特征描述符,这是通过从图像的不同区域提取特征并对它们进行聚类以识别图像的不同段来实现的。

其他应用包括文本识别、人脸识别、指纹识别和手写识别。

总而言之,Mahotas 库是图像分析的强大工具,而 Haralick 特征是基于灰度共生矩阵 (GLCM) 从图像中提取的纹理特征,这些特征是旋转不变的,并且可以为不同的距离和角度计算。它们在纹理分类、分割和特征提取方面很有用。


下一主题Pandas 复制行