加载中…
个人资料
张大老虎
张大老虎
  • 博客等级:
  • 博客积分:0
  • 博客访问:3,268
  • 关注人气:16
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

matlab计算灰度共生矩阵

(2015-12-10 18:20:32)
标签:

图像处理

matlab

分类: 图像处理
对于灰度图像常用计算纹理的方法之一是计算灰度共生矩阵,matlab为计算灰度共生矩阵提供了一个函数graycomatrix,这对于我们来说比较方便了,不用自己写代码了。
如:
>> I = [ 1 1 5 6 8 8; 2 3 5 7 0 2; 0 2 3 5 6 7];
>> [glcm,SI] = graycomatrix(I,'NumLevels',8,'G',[])
结果是:
glcm =

     0     0     2     0     0     0     0     0
     0     1     0     0     0     1     0     0
     0     0     0     2     0     0     0     0
     0     0     0     0     0     2     0     0
     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     2     1
     0     0     0     0     0     0     0     2
     1     0     0     0     0     0     0     1


SI =

     2     2     6     7     8     8
     3     4     6     8     1     3
     1     3     4     6     7     8
如果想计算不同方向的灰度共生矩阵,可以如下进行:
>> [glcm,SI] = graycomatrix(I,'Offset',[0,1;-1,1;-1,0;-1,-1],'NumLevels',9,'G',[])
结果是:
glcm(:,:,1) =

     0     0     2     0     0     0     0     0     0
     0     1     0     0     0     1     0     0     0
     0     0     0     2     0     0     0     0     0
     0     0     0     0     0     2     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     2     1     0
     0     0     0     0     0     0     0     1     1
     1     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     1


glcm(:,:,2) =

     0     0     0     1     0     0     0     0     1
     0     0     0     0     0     0     0     0     0
     0     1     0     0     0     1     0     0     0
     0     0     0     0     0     1     0     1     0
     0     0     0     0     0     0     0     0     0
     1     0     0     0     0     0     1     0     0
     0     0     1     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     1
     0     0     0     0     0     0     0     0     0


glcm(:,:,3) =

     0     0     1     0     0     0     0     0     1
     0     0     0     0     0     0     0     0     0
     0     1     0     1     0     0     0     0     1
     0     1     0     0     0     1     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     1     0     1     0
     1     0     0     0     0     0     0     0     0
     0     0     1     0     0     0     1     0     0
     0     0     0     0     0     0     0     0     0


glcm(:,:,4) =

     0     0     0     0     0     0     1     0     0
     0     0     0     0     0     0     0     0     0
     0     0     1     0     0     0     0     0     1
     0     1     0     1     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     0     1     0     0     0     1     0     0     0
     0     0     0     0     0     0     0     1     0
     1     0     0     0     0     1     0     0     0
     0     0     0     0     0     0     0     0     0


SI =

     2     2     6     7     9     9
     3     4     6     8     1     3
     1     3     4     6     7     8
其中'G'是参数'GrayLimits',如果不想出现的话,可以如下执行:
>> glcm = graycomatrix(I,'Offset',[0,1;-1,1;-1,0;-1,-1],'NumLevels',9)
结果如下:
glcm(:,:,1) =

     0     0     0     0     0     0     0     0     2
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     1     0     0     0     0     0     0     0    12


glcm(:,:,2) =

     0     0     0     0     0     0     0     0     2
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     1     0     0     0     0     0     0     0     7


glcm(:,:,3) =

     0     0     0     0     0     0     0     0     2
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     1     0     0     0     0     0     0     0     9


glcm(:,:,4) =

     0     0     0     0     0     0     0     0     1
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0     0
     1     0     0     0     0     0     0     0     8

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有