Remove larger connected components based on pixels

4 views (last 30 days)
bwareaopen(bw,p) can delete pixels of connected components below p pixels. I want to delete the connected components above p pixel.
Say, if a connected component has 19 pixel, & we set p =20, bwareaopen() can delete that component. But, I need to delete connected component that has ,say 51 pixels in it. A function to remove larger connected components (above the threshold "p").

Accepted Answer

Image Analyst
Image Analyst on 15 Jun 2015
You can use the bwareafilt() function.

More Answers (1)

Eric Lin
Eric Lin on 15 Jun 2015
This answer provides a nice solution to your question.
Basically, to delete components greater than a threshold, use a logical complement and AND operation to mask out the larger components.

Tags

Community Treasure Hunt

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

Start Hunting!