Obtaining the largest object in an image

4 views (last 30 days)
Say that I have an image with a big object, and then small objects spread apart.
How can I retrieve only that big object?
I think we can use "bwconncomp"?
But, how exactly can we do that here?
Thanks.

Accepted Answer

Image Analyst
Image Analyst on 28 Nov 2014
I thought I've given this to you before. Oh well, maybe it was someone else. I've posted it lots and lots of times. Here it is again. The function inside the attached demo will let you extract the N largest or smallest blobs in a binary image.
  2 Comments
med-sweng
med-sweng on 1 Dec 2014
Edited: med-sweng on 1 Dec 2014
Thanks for the nice answer. For the final result, if I want to imwrite it, would it be doing the following?
imwrite(binaryImage, 'FinalResult.png');
after:
binaryImage = biggestBlob > 0;
Image Analyst
Image Analyst on 1 Dec 2014
Yes. But you might want to multiply it by 255 first so you can see it without scaling, like if you want a nice thumbnail image in your operating system
imwrite(uint8(255*binaryImage), filename);

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!