Contenido principal

imerode

Erosionar una imagen

Descripción

J = imerode(I,SE) erosiona la imagen en escala de grises, binaria o binaria empaquetada I utilizando el elemento estructurante SE.

ejemplo

J = imerode(I,nhood) erosiona la imagen I, en la que nhood es una matriz con valores 0 y 1 que especifica el entorno del elemento estructurante.

Esta sintaxis es equivalente a imerode(I,strel(nhood)).

J = imerode(___,packopt,m) especifica si la imagen de entrada I es una imagen binaria empaquetada. m especifica la dimensión de filas de la imagen original desempaquetada.

J = imerode(___,shape) especifica el tamaño de la imagen de salida.

Ejemplos

contraer todo

Lea una imagen binaria en el área de trabajo.

originalBW = imread("text.png");

Cree un elemento estructurante plano en forma de línea.

se = strel("line",11,90);

Erosione la imagen con el elemento estructurante.

erodedBW = imerode(originalBW,se);

Vea la imagen original y la imagen erosionada.

imshow(originalBW)
title("Original")

Figure contains an axes object. The hidden axes object with title Original contains an object of type image.

imshow(erodedBW)
title("Eroded")

Figure contains an axes object. The hidden axes object with title Eroded contains an object of type image.

Lea una imagen en escala de grises en el área de trabajo.

originalI = imread("cameraman.tif");

Cree un objeto offsetstrel no plano.

se = offsetstrel("ball",5,5);

Erosione la imagen.

erodedI = imerode(originalI,se);

Muestre la imagen original y la imagen erosionada.

imshowpair(originalI,erodedI,"montage")

Figure contains an axes object. The hidden axes object contains an object of type image.

Cree un volumen binario.

load mristack
BW = mristack < 100;

Cree un elemento estructurante cúbico.

se = strel('cube',3)
se = 
strel is a cube shaped structuring element with properties:

      Neighborhood: [3×3×3 logical]
    Dimensionality: 3

Erosione el volumen con un elemento estructurante cúbico.

erodedBW = imerode(BW, se);

Argumentos de entrada

contraer todo

Imagen de entrada, especificada como imagen en escala de grises o imagen binaria empaquetada de cualquier dimensión.

Tipos de datos: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | logical

Elemento estructurante, especificado como un objeto escalar strel o un objeto offsetstrel. SE también puede ser un arreglo de objeto strel u objetos offsetstrel, en cuyo caso imerode realiza múltiples erosiones de la imagen de entrada, utilizando cada elemento estructurante sucesivamente.

imerode realiza la erosión en escala de grises para todas las imágenes, excepto las de tipo logical. En este caso, el elemento estructurante debe ser plano y imerode realiza la erosión binaria.

Entorno del elemento estructurante, especificado como matriz con valores 0 y 1.

Ejemplo: [0 1 0; 1 1 1; 0 1 0]

Indicador de imagen binaria empaquetada, especificado como uno de los siguientes:

Valor

Descripción

"notpacked"

I se trata como un arreglo normal.

"ispacked"

I se trata como una imagen binaria empaquetada como la producida por bwpack. I debe ser un arreglo 2D de uint32 y SE debe ser un elemento estructurante 2D plano. El valor de shape debe ser "same".

Tipos de datos: char | string

Dimensión de filas de la imagen original desempaquetada, especificada como entero positivo.

Tipos de datos: double

Tamaño de la imagen de salida, especificado como uno de los siguientes.

Valor

Descripción

"same"

La imagen de salida tiene el mismo tamaño que la imagen de entrada. Si el valor de packopt es "ispacked", shape debe ser "same".

"full"

Calcule la erosión completa.

Tipos de datos: char | string

Argumentos de salida

contraer todo

Imagen erosionada, devuelta como imagen en escala de grises, imagen binaria o imagen binaria empaquetada. Si la imagen de entrada I es binaria empaquetada, entonces J también es binaria empaquetada. J tiene el mismo tipo de datos que I.

Más acerca de

contraer todo

Sugerencias

  • Si la dimensionalidad de la imagen I es mayor que la dimensionalidad del elemento estructurante, la función imerode aplica la misma erosión morfológica a todos los planos en las dimensiones más altas.

    Puede utilizar este comportamiento para realizar la erosión morfológica de imágenes RGB. Especifique un elemento estructurante 2D en el caso de las imágenes RGB para que el cierre se ejecute en cada canal de color por separado.

  • Cuando se especifica un entorno del elemento estructurante, imerode determina el elemento central de nhood por floor((size(nhood)+1)/2).

  • imerode aprovecha automáticamente la descomposición de un objeto de elemento estructurante (si existe). Además, al realizar la erosión binaria con un objeto de elemento estructurante que tenga una descomposición, imerode utiliza automáticamente el empaquetamiento de imágenes binarias para acelerar la erosión [3].

Referencias

[1] Gonzalez, Rafael C., Richard E. Woods, and Steven L. Eddins. Digital Image Processing Using MATLAB. Third edition. Knoxville: Gatesmark Publishing, 2020.

[2] Haralick, Robert M., and Linda G. Shapiro. Computer and Robot Vision. 1st ed. USA: Addison-Wesley Longman Publishing Co., Inc., 1992, pp. 158-205.

[3] Boomgaard, Rein van den, and Richard van Balen. “Methods for Fast Morphological Image Transforms Using Bitmapped Binary Images.” CVGIP: Graphical Models and Image Processing 54, no. 3 (May 1, 1992): 252–58. https://doi.org/10.1016/1049-9652(92)90055-3.

Capacidades ampliadas

expandir todo

Historial de versiones

Introducido antes de R2006a

expandir todo