graycomatrix
Crear una matriz de coocurrencia de nivel de gris a partir de una imagen
Descripción
crea una matriz de coocurrencia de nivel de gris (GLCM) a partir de la imagen glcm
= graycomatrix(I
)I
.
graycomatrix
crea la GLCM calculando la frecuencia con la que un píxel con valor de nivel de gris (intensidad de la escala de grises) i aparece horizontalmente adyacente a un píxel con valor j. Cada elemento (i, j) de glcm
especifica el número de veces que el píxel con valor i ocurrió horizontalmente adyacente a un píxel con valor j.
ajusta aspectos del cálculo de la GLCM en función de los valores de los argumentos nombre-valor. Por ejemplo, puede crear varias GLCM para una imagen utilizando el argumento nombre-valor glcm
= graycomatrix(I
,Name=Value
)Offsets
.
Ejemplos
Argumentos de entrada
Argumentos de par nombre-valor
Argumentos de salida
Algoritmos
graycomatrix
calcula la GLCM a partir de una versión escalada de la imagen. De forma predeterminada, si I
es una imagen binaria, graycomatrix
escala la imagen a dos niveles de gris. Si I
es una imagen en escala de grises, graycomatrix
escala la imagen a ocho niveles de gris. Puede especificar el número de niveles de gris que utiliza graycomatrix
para escalar la imagen con el argumento nombre-valor NumLevels
. Puede ajustar la forma en que graycomatrix
escala los valores con el argumento nombre-valor GrayLimits
.
La figura muestra cómo graycomatrix
calcula los tres primeros valores de una GLCM con el desplazamiento predeterminado de [0 1]
. En la GLCM, el elemento (1, 1) contiene el valor 1
porque solo hay un caso en la imagen de entrada en el que dos píxeles adyacentes horizontalmente tienen los valores 1
y 1
, respectivamente. El elemento (1, 2) de la GLCM contiene el valor 2
porque hay dos casos en los que dos píxeles adyacentes horizontalmente tienen los valores 1
y 2
. El elemento (1, 3) de la GLCM tiene el valor 0 porque no hay casos de dos píxeles adyacentes horizontalmente con los valores 1
y 3
. graycomatrix
continúa procesando la imagen de entrada, escaneándola en busca de otros pares de píxeles (i, j) y registrando los recuentos en los elementos correspondientes de la GLCM.
graycomatrix
ignora los pares de píxeles si alguno de ellos contiene un valor NaN
, y sustituye los valores Infs
positivos por el valor NumLevels
y los valores Infs
negativos por el valor 1
. graycomatrix
ignora los píxeles del borde si el píxel vecino correspondiente queda fuera de los límites de la imagen.
La GLCM que se crea cuando se establece Symmetric
en true
es simétrica en toda su diagonal y es equivalente a la GLCM descrita por Haralick (1973). La GLCM obtenida mediante la siguiente sintaxis, con Symmetric
en true
graycomatrix(I,Offset=[0 1],Symmetric=true)
es equivalente a la suma de las dos GLCM producidas por las siguientes instrucciones, donde Symmetric
se establece en false
.
graycomatrix(I,Offset=[0 1],Symmetric=false) graycomatrix(I,Offset=[0 -1],Symmetric=false)
Referencias
[1] Haralick, R. M., K. Shanmugan, and I. Dinstein, "Textural Features for Image Classification", IEEE Transactions on Systems, Man, and Cybernetics, Vol. SMC-3, 1973, pp. 610-621.
[2] Haralick, R. M., and L. G. Shapiro. Computer and Robot Vision: Vol. 1, Addison-Wesley, 1992, p. 459.
Historial de versiones
Introducido antes de R2006a