MATLAB: What does this means

feature selectionglcmimage processingImage Processing Toolbox

Dear all,
I picked up a window of 5X5 from a given image im1=im(1:5,1:5)
ans =
41 40 38 38 37
42 40 38 37 35
43 41 38 37 34
43 41 37 35 33
42 40 36 33 31
then I used graycomatrix to calculate the glcm matrix as following: glcm=graycomatrix(im1) glcm =
0 0 0 0 0 0 0 0
1 19 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
My questions are: why the result matrix is 8*8 ? how can we get the number of gray levels of an image ? How can i interpret the values 1 and 19 in the glcm matrix ?

Best Answer

The range between 0 and 255 is divided into 8 ranges by default. They are 0-31, 32- 63, 64-95, etc. As you can see all of your elements are in the second range, except for the one with the value 31. The count is the number of times a number in one range occurs horizontally adjacent to another in another range. You have 19 pairs where the side-by-side pixels are both in range 2, and only one pairing, when it's looking at the very lower right, where there is a pairing between a number in range 2 (33) and a number in range 1 (31). I know it can be kind of tricky, so do you understand that explanation?
You can adjust the window size and the range size. You can have a 256 by 256 array if you want. See my attached demo.