二者详细说明

灰度共生矩阵


图的左侧是原始图像矩阵,右侧是计算出的GLCM。所谓“灰度共生”,顾名思义是研究两个灰阶同时出现的情况。那么这里就产生了两个问题:1. 要考虑哪两个灰阶;2. 在图上怎么考虑两个灰度。

第一个问题的答案很简单,所有的灰阶组合我们都考虑。GLCM是一个方阵,矩阵的维度是原始图像的灰阶数。上面例子中原图一共有8个灰度值,因此GLCM的维度是8。要考虑的两个灰度分别作为行和列,比如灰度1和2的共生次数是2,这个值就保存在GLCM(1,2)中。

第二个问题需要我们设定“共生灰度”对应像素的距离 (像素个数)和方向
(0~360度)。在上面的例子中显然距离为1,方向为0度(向右),相当于对于灰度1和2的共生,我们仅考虑1在2的左侧,且对应像素之间的距离为1个像素的情况。

所以GLCM其实是一个计数矩阵,它保存了图像中所有灰度组合在我们定义的距离和方向条件下“共生”的频数。直观上来说,当GLCM中数值集中在主对角线上时,原图的纹理更为粗糙。这是因为GLCM主对角线附近保存了两个相差不大的灰度值“共生”的频数,主对角线附近元素的值越大,说明原图中存在很多相邻像素灰度值相差不大的情况,肉眼看上去影像中就会存在若干个面积较大的子区域。

实际计算GLCM时候一般距离都设为1,同时会尝试所有的角度(每45度计算一次)并取平均。因此得到的GLCM一般是一个对称的矩阵。

根据GLCM计算图像对比度(contrast)的公式如下:

灰度游程矩阵


灰度游程矩阵(GLRLM)的计算过程与GLSZM十分相似,如上图所示(底图来自Xu et al., Applied Sciences, 2019)。左侧是原始图像,右侧是计算出的GLRLM矩阵。GLRLM矩阵的每行代表一个灰阶,每列代表Run-Length大小。这里的Run-Length表示沿着某个方向的连通域(称为一个“Run”)长度。对于每个灰阶(这里有1-4共4个不同的灰阶),我们逐个考察它在图像上的Run-Length情况。比如对于灰阶2,如果设定方向为向右,图像中它有3个连通域,其中两个的Run-Length为1,一个的Run-Length为2,于是我们在GLRLM(2,1)的位置填入2,同时在GLRLM(2,2)填入2。

GLRLM同样是一个计数矩阵,它保存了图像中所有灰阶的“Run”的长度和个数信息。直观上来说,当GLRLM较宽,非零元素集中在右侧的时候,原图的纹理更为粗糙。这是因为GLRLM的宽度是由最长的Run的长度决定的,同时GLRLM右侧的元素对应较的Run的个数。GLRLM越宽,说明原图中存在较长的Run;GLRLM右侧非零元素越多,说明原图中的Run都比较长,肉眼看上去影像中就会存在若干个面积较大的长条状子区域。

实际计算GLRLM时候一般会尝试所有的角度(每45度计算一次)并取平均,以考虑所有方向上的连通信息。


图像处理中的基本步骤:
1.分析是否需要划分灰阶。(划分灰阶是由于灰度值跨度较大,0-255的灰阶跨度若是放在基本的灰度游程矩阵中会使得灰度游程矩阵计算量非常大,所以一般会使用灰阶划分来减少相应的计算量)合理的灰阶划分会使得灰度游程矩阵的计算量大大减少。
2.分析灰度游程矩阵方向。
3.获取灰度游程矩阵。
4.计算灰度游程矩阵参数。

灰度共生矩阵和灰度游程矩阵相关推荐

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

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

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

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

  3. 灰度共生矩阵:Gray-Level Co-occurrence Matrix

    定义 灰度共生矩阵一开始是为了解决图像处理中的问题的.具体定义如下:用图片上两个位置的像素的联合概率分布进行定义,不仅能反应亮度的分布特征,也反应具有同样亮度或者接近亮度像素之间的位置分布特性,是有关 ...

  4. 基于灰度共生矩阵(GLCM)的图像纹理分析与提取

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 灰度共生矩阵 灰度共生矩阵(Gray Level CO-Occur ...

  5. 灰度共生矩阵GLCM及其matlab实现

    Prerequisites 概念 计算方式 对于精度要求高且纹理细密的纹理分布,我们取像素间距为d=1d = 1,以下是方向的说明: 我们来看,matlab内置工具箱中的灰度共生矩阵的生成函数gray ...

  6. 图像处理 - GLCM灰度共生矩阵如何计算

    因为最近要在OpenCV上试试各种图像分割算法的效果,其中灰度共生算法没有办法直接调用库函数实现,看了很多文章,其中有一篇博文讲的很清楚.博主有提供原理和源码,大家可以直接看原博. 原文地址:纹理特征 ...

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

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

  8. Python计算图像纹理-灰度共生矩阵

    基于Python探究灰度共生矩阵(GLCM)那点事儿 - 知乎一.什么是灰度共生矩阵? 灰度共生矩阵(Gray-level co-occurrence matrix:GLCM)和相关的纹理特征计算是图 ...

  9. 图像纹理特征(灰度共生矩阵等)解析和编程调用

    图像纹理特征  本文主要介绍医学影像领域常用到的基于图像灰度值变化所衍生出的各项纹理特征,理论部分主要参考了文献1,同时介绍了相关函数调用方式. 灰度共生矩阵  灰度共生矩阵2,Gray-Level ...

最新文章

  1. 干货合集 | 带你深入浅出理解深度学习(附资源打包下载)
  2. gdb debug memory address
  3. 超详细的 Bert 文本分类源码解读 | 附源码
  4. 唐敏豪:我给MSU评测打9分
  5. 递推与储存,是动态规划的关键
  6. 中文(英译) 爱情一句话哲理
  7. spring aop示例_Spring批处理示例
  8. 前端面试题及答案(持续更新)
  9. 如何批量将 Word 文档转为 Svg 格式
  10. ⽬标⾏动及稠密环境未知情况下,⽆⼈机跟踪的系统解决⽅案
  11. 动画设计基础(第三节)-3d max2014 裙摆(单向摆动)
  12. js vue汉字转拼音或拼音首字母
  13. weblogic修改密码
  14. e5运行Linux系统,CPU-Z 1.96更新介绍,可用Wine及deepin-wine5在Linux中运行
  15. 什么是cookie?什么是session?cookie与session有什么区别
  16. 博通Broadcom SDK源码学习与开发11——Cable Modem DHCP管理
  17. 【Matlab】评估网络节点重要性
  18. 蓝眼睛、绿眼睛...漂亮的眼睛颜色是由什么决定的?
  19. 银行卡数据标签及其应用
  20. 点击网页上的手机号码直接拨打电话

热门文章

  1. python中wx是啥_设置wx.框架大小(wxPython wxWidgets)
  2. User Experience Design and Information Architecture
  3. python echarts 多图联动,创建echart多个联动的示例代码
  4. 大坝安全监测系统:水库“守坝人”!
  5. BUI 框架使用指南
  6. python实战===一键刷屏
  7. 《Communication-Efficient Learning of Deep Networks from Decentralized Data》论文阅读
  8. mysql数据表出现Table is marked as crashed and should be repaired 解决办法
  9. 使用Python matplotlib库绘制漏斗图
  10. Probe安装、配置以及监控