MATLAB: Texture analysis for a large image size

glcmImage Processing Toolboxtexturetexture frame glcm classification

Hello, I am trying to perform texture analysis on a large grayscale images (with high resolution) trying to find statistics derived from GLCM and other histogram properties(e.g skewness) which I intend to use as an input for classification solver e.g (ANN/SVM) to find small features properties in the texture in the image (e.g . grain size distribution). the question is do I use greycomatrix() for the whole image or shall I using a moving window frame to find GLCM properties for each pixel and then compute the mean/std/var/min/max for the GLCM statistics (contrast/energy ..etc) matrices matrix.
If I need to use a moving frame how do determine the optimum size for example shall I use 5*5 or 15*15 window size.
Thanks.

Best Answer

If you're trying to find regions of the image that have a certain texture, then you can't just compute the GLCM of the whole image because that won't give you any local information. So you'll have to have a scanning window. Take a look at nlfilter() or blockproc(). Experiment with different window sizes that are a percentage of the image to find the percentage that works well for most of the images you expect to encounter.