Main Content

Eliminar líneas finas usando la erosión

En este ejemplo se muestra cómo eliminar las líneas finas de una imagen binaria usando la erosión morfológica con un entorno más grande que la anchura de las líneas.

Lea y muestre una imagen binaria. Las líneas blancas que representan las conexiones tienen una anchura de unos 4 o 5 píxeles. En algunos lugares, las conexiones se tocan y la anchura total está más próxima a 10 u 11 píxeles.

BW1 = imread('circbw.tif');
imshow(BW1)

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

Defina un entorno más grande que la anchura de las líneas. En este ejemplo se usa un elemento estructurante en forma de disco con un radio de 7 píxeles, de manera que el tamaño del entorno total es de 13 por 13 píxeles.

SE = strel("disk",7)
SE = 
strel is a disk shaped structuring element with properties:

      Neighborhood: [13x13 logical]
    Dimensionality: 2

Erosione la imagen, especificando la imagen de entrada y el elemento estructurante como argumentos de la función imerode.

BW2 = imerode(BW1,SE);

Muestre la imagen erosionada.

imshow(BW2)

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