Main Content

Derive Statistics from GLCM and Plot Correlation

Este ejemplo muestra cómo crear un conjunto de GLCM y derivar estadísticas de ellos. El ejemplo también ilustra cómo las estadísticas devueltas por graycoprops tienen una relación directa con la imagen de entrada original.

Lea una imagen en el espacio de trabajo y muéstrala. El ejemplo convierte la imagen truecolor en una imagen en escala de grises y, a continuación, en este ejemplo, la gira 90 grados.

circuitBoard = rot90(rgb2gray(imread('board.tif'))); imshow(circuitBoard)

Defina desfases de dirección y distancia variables. Dado que la imagen contiene objetos de una variedad de formas y tamaños que están dispuestos en direcciones horizontales y verticales, el ejemplo especifica un conjunto de desfases horizontales que solo varían en distancia.

offsets0 = [zeros(40,1) (1:40)'];

Cree los GLM. Llame a la función especificando los desplazamientos.graycomatrix

glcms = graycomatrix(circuitBoard,'Offset',offsets0);

Derive estadísticas de los GLM utilizando la función.graycoprops En el ejemplo se calcula el contraste y la correlación.

stats = graycoprops(glcms,'Contrast Correlation');

Correlación de trazado como función de desplazamiento.

figure, plot([stats.Correlation]); title('Texture Correlation as a function of offset'); xlabel('Horizontal Offset') ylabel('Correlation')

La gráfica contiene picos en los desplazamientos 7, 15, 23 y 30. Si examina la imagen de entrada detenidamente, puede ver que ciertos elementos verticales de la imagen tienen un patrón periódico que se repite cada siete píxeles.