How to morphologically open a binary image ?
Ältere Kommentare anzeigen
Hello , i am trying to morphologically open(to decrease the retrieved area) a binary image . However i am getting a black image (all pixels are 0) .What is wrong ?
se=strel('disk',3);
Im_open=imopen(original_binary,se);
figure;
imshow(Im_open);
1 Kommentar
KALYAN ACHARJYA
am 21 Nov. 2020
Please attach original_binary image.
Antworten (2)
Image Analyst
am 21 Nov. 2020
This works just fine:
grayImage = imread('moon.tif');
subplot(2, 2, 1);
imshow(grayImage);
title('Original Gray Scale Image', 'FontSize', 15);
original_binary = imbinarize(grayImage);
subplot(2, 2, 2);
imshow(original_binary);
title('Binarized Image', 'FontSize', 15);
se=strel('disk',3, 0);
Im_open=imopen(original_binary,se);
subplot(2, 2, 3:4);
imshow(Im_open);
title('Opened Image', 'FontSize', 15);

If it doesn't for you then it's possible all your white blobs in your original image are less than 7 pixels in diameter (3 in radius). Or else your image is so big that the small things just get subsampled away for display (zoom in, in that case to see them).
6 Kommentare
Gn Gnk
am 22 Nov. 2020
Gn Gnk
am 22 Nov. 2020
Image Analyst
am 22 Nov. 2020
Then don't call imopen() of course. What imopen() does is an erosion of the given radius, followed by a dilation of the given radius. But after the erosion, all your blobs are gone. There is nothing left to dilate. What made you think you should do an opening anyway? Did someone tell you to do that?
In my experience, the usual use of imopen() is to get rid of little tendrils and spurious/random hairs that are sticking out of a blob. You certainly don't have that if all your blobs are so tiny that they're only a few pixels big.
Gn Gnk
am 22 Nov. 2020
Image Analyst
am 23 Nov. 2020
OK, but then what that will do is to remove any blobs smaller than 3 pixels in radius, or 7 pixels in diameter.
Gn Gnk
am 24 Nov. 2020
Kategorien
Mehr zu Morphological Operations finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!