I am trying to find the the largest object in an image and remove any other objects in the image that are smaller than it.
This is what I have but I cannot get it to
If you would like to continue with the bwlabel
approach, you may use this -
Code
BW = im2bw(imread('coins.png')); %%// Coins photo from MATLAB Library
[L, num] = bwlabel(BW, 8);
count_pixels_per_obj = sum(bsxfun(@eq,L(:),1:num));
[~,ind] = max(count_pixels_per_obj);
biggest_blob = (L==ind);
%%// Display the images
figure,
subplot(211),imshow(BW)
subplot(212),imshow(biggest_blob)
Output