How to fill holes in binary image
43 views (last 30 days)
Show older comments
Hello buddy,
I know that some posts already exist regarding this problem, but I'm still struggling in a similar issue. I have a .avi file from which I extract, frame by frame, the animal pupil, but are present in the image these three reflecting blobs of light that makes the binary conversion weird. I don't know how to get rid off them.
Someone, could help me, pls?
Ps: just to let you know I had this code within a for loop
image_frame = read (video,cnt);
piel_1 = ~im2bw(image_frame,0.15);
piel_2 = bwmorph(piel_1,'open');
piel_3 = bwmorph(piel_2,'close');
piel_4 = bwareaopen(piel_3,2000);
piel = imfill(piel_4,'holes');
0 Comments
Answers (2)
KALYAN ACHARJYA
on 13 Jun 2019
Edited: KALYAN ACHARJYA
on 13 Jun 2019
"How to fill holes in binary image"
J = imerode( binary_image_name , SE ) ;
% chosse the structuring elment as per your requiremnet
For detail see here
Image Analyst
on 15 Jun 2019
To fill holes in a binary image:
bw = imfill(bw, 'holes');
2 Comments
Muhammad Zeeshan Ahmed Khan
on 9 Apr 2020
This is not filling the hole in a binary image please guide
Image Analyst
on 9 Apr 2020
OK, sure. Where is your image? You forgot to attach it. ?♂️
Are you sure your image is just larger than the display and there is a small path to the background that gets subsampled away when it goes to display it so that you don't see that path to the background and you think it's a hole when it's really not? So I can check for that you must attach your binary image in a PNG format file or a .mat file, NOT as a JPG image.
See Also
Categories
Find more on Matrox Hardware in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!