0

我想在 Matlab 中显示图像的 GLCM。到目前为止,我已经尝试过并且只能获得统计数据。

I = imread('cameraman.tif');
glcm1 = graycomatrix(I);
Stats = graycoprops(glcm1);

它会产生统计数据。

统计 =

   Contrast: 0.5006
Correlation: 0.9269
     Energy: 0.1636
Homogeneity: 0.8925

我想要的是在这里展示这 4 个 GLCM 的图像。

图片 输出该图像应该很简单,但我对这件事很陌生,不知道我错过了什么。

4

2 回答 2

0

GLCM 不是图像矩阵,它显示了矩阵中的像素对,如下图所示 在此处输入图像描述

于 2017-02-17T19:27:35.093 回答
0

您可以通过以下方式显示图像的灰度共生矩阵imagesc

I = imread('https://raw.github.com/antimatter15/cameraman/master/cameraman.png');
imshow(I)
M = graycomatrix(I, 'GrayLimits', [0, 255], 'NumLevels', 256, 'Offset', [0 1], 'Symmetric', true);
figure
imagesc(M)
colormap(gray)
graycoprops(M)

显示的 GLCM 对应于“向右一个像素”的偏移量。这个矩阵很大程度上是对角的,这意味着像素的强度是高度相关的。

格力厘米

从上面的GLCM中提取的特征如下:

       Contrast: 518.6036
    Correlation: 0.9335
         Energy: 0.0015
    Homogeneity: 0.3772
于 2017-03-26T23:18:37.740 回答