纹理识别——GLCM空间灰度共生矩阵

1.概念

图像纹理是一个区域概念,反应的是一块图像区域中具有缓慢变化或周期性变化的结构排列属性。所以在对纹理识别时,要针对某一区域的图像进行分析,不能对单一像素进行纹理识别。
空间灰度共生矩阵(GLCM)是通过对图像像素进行特殊的统计计算,获得能够反映图像像素之间空间分布的关系矩阵,根据关系矩阵的其他统计值来表征图像的纹理特征。

2.空间灰度共生矩阵的物理意义

如图,左侧是目标灰度图像,数字表示像素的灰度级;右侧是GLCM空间灰度共生矩阵,它是一个L*L的矩阵(L为总灰度级数,就是图像中包含不同灰度的总数),矩阵中的数字是对不同灰度像素的空间位置组合的计数。

  1. 8个gray-level,构成8*8的GLCM,横轴依次8个gray-level,纵轴依次8个gray-level;
  2. GLCM矩阵内的数字是对应灰度空间位置组合的计数,GLCM(1, 1) = 1表示灰度级均为1,且像素水平分布的组合数为1;GLCM(1, 2) = 2表示灰度级分别1和2,且像素水平分布的组合数为2。该GLCM矩阵中,横轴的灰度级表示组合水平分布中右侧像素的灰度级,纵轴的灰度级表示组合水平分布中左侧像素的灰度级;
  3. 组合的空间分布方向除了水平分布(0度方向),还有45度方向,90度方向,135度方向,并用P0来表示水平0度方向;
  4. 组合的空间分布距离可以采用不同的距离间隔,示例采用的是一个像素间隔;
  5. 灰度共生矩阵实际上反映的是两个像素点的联合直方图,对于图像中细而规则的纹理,成对像素点的二维直方图倾向均匀分布;对于粗而规则的纹理,则倾向于对角分布

3.像素组合的空间位置关系

距离查分值(a, b)取不同的数值组合,可以获得不同的像素对空间分布组合,由此也可以得到不同的GLCM矩阵。(a, b)的取值要根据纹理周期分布的特征来选择,对于较细的纹理,选取较小的查分值。

  • 当 a=1,b=0 时,像素对是水平的,即0度扫描;
  • 当 a=0,b=1 时,像素对是垂直的,即90度扫描;
  • 当 a=1,b=1 时,像素对是右对角线的,即45度扫描;
  • 当 a=-1,b=-1时,像素对是左对角线,即135度扫描。
    因此,可以得到4张不同的GLCM来表征同一张图像的纹理。

4.GLCM的计算过程

  1. 设定像素组合空间分布的查分值为(a, b),对于图像M*N,遍历所有位置的像素(x, y)以及对应偏移像素(x+a, y+b),得到像素组合的灰度值为(g1, g2),得到所有灰度级组合的统计方阵;
  2. 对统计方阵进行归一化处理,得到每个灰度级组合的出现概率P(g1, g2),从而得到灰度共生举证;
  3. 采用不同的查分值组合,可以得到不同情况的联合概率矩阵;
  4. 图像的灰度共生矩阵能反映图像灰度关于方向、相邻间隔、变化幅度的综合信息,是分析图像的局部模式和排列规则的基础。

5.GLCM矩阵特征值

从灰度共生矩阵上可以简单看出,如果对角附近的元素有较大值,说明图像的像素具有相似的像素值;如果偏离对角线的元素比较大,说明像素灰度在局部有较大变化。从GLCM中可以导出一些特征值来反映矩阵的状况:

  1. 角二阶矩(angular second-moment):
    ASM用来描述图像的同质性(homogeneity),ASM越大表示图像的纹理同质性越强,同质性表现为图像的灰度过渡比较小,图像的灰度分布比较均匀,表明一种较均一和规则变化的纹理模式;

  2. 对比度(contrast)
    contrast用来描述图像中存在的局部变化,对比度阅读,纹理沟纹越深,视觉效果越清晰;反之,对比度小,则沟纹浅,效果模糊。灰度差即对比度大的象素对越多,这个值越大。灰度公生矩阵中远离对角线的元素值越大,contrast越大。所以contrast越大图像越清晰。

  1. 自相关度(correlation)
    correlation用于描述图像纹理的灰度线性相关性,反应了图像纹理的一致性。如果图像中有水平方向纹理,则水平方向矩阵的COR大于其余矩阵的COR值。

Reference

[1] R. M. Haralick, K. Shanmugam, and I. H. Dinstein, “Textural features for image classification,” IEEE Transactions on systems, man, and cybernetics, no. 6, pp. 610–621, 1973.
[2] https://blog.csdn.net/weixin_43415436/article/details/90676417

纹理识别——GLCM空间灰度共生矩阵相关推荐

  1. 二维特征分类的基础_纹理特征1:灰度共生矩阵(GLCM)

    GLCM复习备用: 纹理分析是对图像灰度(浓淡)空间分布模式的提取和分析.纹理分析在遥感图像.X射线照片.细胞图像判读和处理方面有广泛的应用.关于纹理,还没有一个统一的数学模型.它起源于表征纺织品表面 ...

  2. 纹理特征分析的灰度共生矩阵(GLCM)

    纹理分析是对图像灰度(浓淡)空间分布模式的提取和分析.纹理分析在遥感图像.X射线照片.细胞图像判读和处理方面有广泛的应用.关于纹理,还没有一个统一的数学模型.它起源于表征纺织品表面性质的纹理概念,可以 ...

  3. 对数据集使用GLCM(灰度共生矩阵)进行纹理提取

    对数据集使用GLCM(灰度共生矩阵)进行纹理提取 1.研究背景 2.方法原理 3.程序流程 4.结果结论 1.研究背景 图像的特征提取是图像的识别和分类.基于内容的图像检索.图像数据挖掘等研究内容的基 ...

  4. 【OpenCV 例程 300篇】231. 特征描述之灰度共生矩阵(GLCM)

    『youcans 的 OpenCV 例程200篇 - 总目录』 [youcans 的 OpenCV 例程 300篇]231. 特征描述之灰度共生矩阵(GLCM) 4.2.4 灰度共生矩阵(GLCM) ...

  5. 灰度共生矩阵(Gray-level Co-occurrence Matrix,GLCM)

    1.概念: (下面这些概念我也不懂,看着就头疼,自行了解,不过应该支持原创!) 1.灰度共生矩阵(GLDM)的统计方法是20世纪70年代初由R.Haralick等人提出的,它是在假定图像中各像素间的空 ...

  6. 灰度共生矩阵(GLCM)

    灰度共生矩阵(GLCM) 算法简介 灰度共生矩阵法(GLCM, Gray - level co - occurrence matrix),就是通过计算灰度图像得到它的共生矩阵,然后透过计算该共生矩阵得 ...

  7. MATLAB 在图像处理和机器视觉的应用举例01 - 官网培训视频笔记(下)分类/灰度共生矩阵/纹理分类学习

    前言: 本节继续讨论Matlab的机器视觉工具集举例,这次为分类的综合实现:该例子,用到了图像处理,统计,并行计算等方法. 1 分类的难度: [计算机视觉里面,分类的精髓在选取适当的数据集和算法,这一 ...

  8. 灰度共生矩阵-python

    本篇博客参考灰度共生矩阵(GLCM)附Python代码 ,对其进行了完善与修改. 非常感谢评论区 清慎Arthur.jy2lhz. 小小菜鸡升级ing 指出代码中的问题,目前已根据建议进行修改和优化. ...

  9. 灰度共生矩阵的原理及代码实现(python)

    灰度共生矩阵的原理及代码实现(python) 1原理: 灰度共生矩阵(Gray Level Co-occurrence Matrix,GLCM)统计了灰度图中像素间的灰度值分布规律以区分不同的纹理.灰 ...

  10. Python灰度共生矩阵OpenCV和scikit-image图像特征分析和K-最近邻算法

    我们可以通过观察在视觉上区分图像的纹理: 图案环 空间分布 颜色排列和强度 下图是一张图像上的纹理图,其分布为 50% 黑色和 50% 白色 平均值.中值.标准差等统计计算将无法区分上面的 3 张图像 ...

最新文章

  1. 神经网络七十年:回顾与展望
  2. 用c语言编程求主析取范式,求主析取范式.cpp · wangzhankun/C-Programming-Learn - Gitee.com...
  3. cfile read 最大读取限制_pandas读取表格后的常用数据处理操作
  4. 算法设计与分析——动态规划——矩阵连乘问题
  5. 正则表达式 re模块
  6. C语言之结构体(2)
  7. 写一个加密程序对文件加密
  8. 脉冲触发器和边沿触发器的理解(移位寄存器采用边沿触发)
  9. 机器学习算法工程师在做什么?
  10. 用html、css实现网页聊天页面
  11. Axure RP 9格式刷使用说明【教程三】
  12. 新建银行账户类,实现基本的属性和方法。
  13. Golang入门笔记(14)—— 错误处理
  14. 【JMeter】压测工具的使用
  15. [USACO09MAR]向右看齐Look Up(单调栈、在线处理)
  16. 第1阶段——关于u-boot目标文件start.o中.globl 和.balignl理解(3)
  17. 利用matlab M_Map工具制作GPS测站分布图
  18. Java 虚拟机(JVM)运行时内存结构
  19. i春秋 WEB fuzzing
  20. 决策树(三):CART算法

热门文章

  1. OpenCV-图像翻转函数cv::filp
  2. 微信企业号开发常用工具类总结(一)
  3. Proximal和ADMM
  4. Mac Xshell 下载 (FinallShell)
  5. The fundamentals of millimeter wave radar sensors——毫米波雷达传感器基本原理
  6. 中图分类法----Q 生物科学
  7. 【蓝桥杯练习--递归】费解的开关
  8. cadence软件打开报错“计算机中丢失cdsCommon.dll”的解决办法
  9. Activity的生命周期和启动模式
  10. 计算机毕业设计ssm青岛恒星科技学院机房管理系统0k0u9系统+程序+源码+lw+远程部署