纹理分割(二)GLMC学习

一、什么是GLCM?

GLCM,是Grey Level Co-occurence Matrix的缩写,也叫做Grey Tone Spatial Dependency Matrix,中文名是灰度共现矩阵。

定义 The GLCM is a tabulation of how often different combinations of pixel brightness valus(gray level) occur in an image.GLCM是用来描述一幅图像中,灰度值的不同结合的频度。

下文要用到的测试图像如下图,这是一个灰度图(GLs),这张图也会贯穿整个教程。

纹理分割(二)GLMC学习_第1张图片

定义 Order维数

这里描述的GLCM是用来表示纹理计算值的“二阶”序列。

First Order 一阶纹理特征是从原始图像值计算得到的统计结果,比如方差,但是不考虑相邻像素之间的关系。

Second Order 二阶纹理特征是考虑原始图像中,以两个像素(一般是相邻像素)构成的组之间的相互关系。

Third and Higer Order 三阶及更高维纹理(考虑三个甚至更多像素之间 的关系)是表示理论上的可能性,但是由于计算时间复杂度和解释复杂度,一般不应用。当然,这里有一种比较有效的方式去计算三维纹理的最新进展(200X):http://www.fp.ucalgary.ca/mhallbey/references.htm。

灰度直方图是一种描述单个像素灰度分布的一阶统计量;而灰度共现矩阵描述的则是具有某种空间位置关系的两个像素的联合分布,可以看成是两个像素灰度对的联合直方图,是一种二阶统计量。


GLCM的框架

两个像素之间的空间关系

GLCM特征表示在一个时间点上的两个像素之间的关系,一般称为reference参照和neighbor pixel相邻像素。在接下来的图示描述中,相邻像素是每一个参照像素的右侧像素。这可以简单的表示成(1,0)关系,像素1在x方向上,像素2在y方向上。

窗中的每一个像素都会依次成为参照像素,从左上角的像素开始,一直到右下角的像素结束。窗的右侧像素沿着边缘,没有右侧像素点,所以他们不在遵循此规则。

两个像素之间的分离度

本教程中所有的例子都是采用一个像素偏移量(一个参考像素和它的直接紧邻像素)。如果窗足够大,使用一个更大的偏移量可能更加完美。在计算理论上是没有任何区别的。应用GLCM建立的所有条目的总和(比如像素结合的次数)都将比给定的窗尺寸要小。

在测试图像中,灰度值的组合以及它们在矩阵中的位置。GLCM后续表征包含仅仅16个数据单元。

neighbor pixel value->
ref pixel value
0 1 2 3
0 0,0 0,1 0,2 0,3
1 1,0 1,1 1,2 1,3
2 2,0 2,1 2,2 2,3
3 3,0 3,1 3,2 3,3

如何解读矩阵框架?

左上角的单元格表示的是(0,0)组合的次数,比如,在图像某区域内,灰度值0(相邻像素)掉入到右侧其他灰度值为0的像素(参考像素)的的次数。

不同的空间关系有不同的共生矩阵出现(上面,相邻,斜对角线上)。

例如:右侧(1,0)空间关系的矩阵框架


2 2 1 0
0 2 0 0
0 0 3 1
0 0 0 1

如何解读右(east)矩阵框架?

(不好翻译,直接英文自己理解)Twice in the test image the reference pixel is 0 and its eastern neighbour is also 0. Twice the reference pixel is 0 and its eastern neighbour is 1.Three times the reference pixel is 2 and its neighbour is also 2.


二、置换:使矩阵对角对称

纹理计算需要一个对角矩阵,因此下一步就是归一化GLCM。

一个对角矩阵意味着出现在单元内的相同值对称出现在对角线上。例如,在(3,2)单元内的值也会同样的出现在对角线(2,3)中。上面计算得到的东矩阵(east matrix)是不对称的。

东矩阵使用与之右相邻的像素计算各自的参照矩阵。如果仅仅使用一个方向,且按照这种方法计算完成,(2,3)的结合出现的次数与(3,2)的结合的次数是不一样的。(比如,3 may be to the right of 2 three times, but to the left of 2 only once)。但是,如果计算每一个像素对,就能实现对称:一次前向(forward)和一次后向(backwards)(第二次计算交换参照和相邻像素)。

例如:a reference pixel of 3 and its eastern neighbour of 2 would contribute one count to the matrix (3,2) and one count to the matrix element (2,3).对称也意味着,当考虑东相关(1,0),西相关(-1,0)也会被计算。这就叫做“水平矩阵”。


三、归一化:GLCM表述成概率

使GLCM对称以后,在计算纹理方法之前,仍然需要一步。这个方法需要的是每一个GLCM单元不是简单的计算,更多的是一种概率

纹理分割(二)GLMC学习_第2张图片











你可能感兴趣的:(纹理分割,OpenCV学习笔记)