Removing unwanted components in a binary image?
Show older comments
Heloo... am working on pothole images. Below is the binary image of pothole attached and i wanted to remove the unwanted components sorrounding the pothole and i want only the pothole image as the output without any unwanted areas, could anyone help me?
thanks in advance...:)

2 Comments
KALYAN ACHARJYA
on 16 Feb 2020
Can you point out pothole in the image? Use paint or any
Srinidhi Gorityala
on 16 Feb 2020
Answers (2)
KALYAN ACHARJYA
on 16 Feb 2020
Edited: KALYAN ACHARJYA
on 16 Feb 2020
BW=bwareafilt(bw_im,1);
result=bw_im-BW;
imshow(result);
If you are more interested to control the small area objects use this function

2 Comments
Srinidhi Gorityala
on 16 Feb 2020
KALYAN ACHARJYA
on 17 Feb 2020
Apply imclose on the resultant binary image with proper structuring element objects
Image Analyst
on 16 Feb 2020
0 votes
You need to define what you want. For example, do you want just the largest blob with bwareafilt(bw, 1)? Or blobs larger than a certain area with bwareaopen(bw, someArea)? Do you want to fill holes with imfill(bw, 'holes')? Also you should make sure your initial segmentation gives the pothole(s) as white, not black, since binary operations are done on true/white/1 valued pixels, not false/black/0 valued objects.
Categories
Find more on Image Category Classification 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!

