Utilizar la apertura morfológica para extraer características de imágenes grandes
La apertura morfológica se puede usar para eliminar objetos pequeños de una imagen a la vez que se conservan la forma y el tamaño de los objetos más grandes de la imagen.
En este ejemplo, se utiliza la apertura morfológica en una imagen de una placa de circuito para eliminar todas las líneas de circuito de la imagen. La imagen de salida solamente contiene formas rectangulares de los microchips.
Abrir una imagen en un solo paso
Puede utilizar la función imopen
para llevar a cabo erosión y dilatación en un paso.
Lea la imagen en el área de trabajo y muéstrela en pantalla.
BW1 = imread('circbw.tif');
figure
imshow(BW1)
Cree un elemento estructurante. El elemento estructurante debe ser lo suficientemente grande como para eliminar las líneas cuando se erosiona la imagen, pero no lo suficientemente grande como para eliminar los rectángulos. Debe constar únicamente de valores 1
, de modo que se elimine todo excepto las zonas grandes contiguas de los píxeles de primer plano.
SE = strel('rectangle',[40 30]);
Abra la imagen.
BW2 = imopen(BW1, SE); imshow(BW2);
Abrir una imagen realizando erosión y luego dilatación
También puede llevar a cabo erosión y dilatación secuencialmente.
Erosione la imagen con el elemento estructurante. De esta forma se eliminan todas las líneas y se reducen los rectángulos.
BW3 = imerode(BW1,SE); imshow(BW3)
Para restaurar los rectángulos a su tamaño original, dilate la imagen erosionada utilizando el mismo elemento estructurante, SE
.
BW4 = imdilate(BW3,SE); imshow(BW4)
Al realizar las operaciones secuencialmente, tiene la flexibilidad de cambiar el elemento estructurante. Cree un elemento estructurante diferente y dilate la imagen erosionada usando el nuevo elemento estructurante.
SE = strel('diamond',15);
BW5 = imdilate(BW3,SE);
imshow(BW5)
Consulte también
strel
| imopen
| imerode
| imdilate
| imclose