How to remove weak edges in a binary photo?

1 view (last 30 days)
See attached photos for reference.
I tried watershedding, it breaks apart the main body and doesn't even touch the part I want disconnected!
morphology is no good, the holes in the main body easily break in two before the edges I want disconnected come off.
imfill doesn't solve this, it fills the hole between the two trouble areas as well as the holes in the main body.
I have thousands of similar photos, so I need to come up with something robust.
I'd appreciate any help I could get!

Accepted Answer

Image Analyst
Image Analyst on 11 Jul 2017
It's not exactly clear where to separate the blobs. There are many, many thin parts where a separation could possibly be made. You might try filling in black islands in a certain size range and then trying watershed again. So invert the image, call bwareafilt(), then invert again.
  3 Comments
Image Analyst
Image Analyst on 11 Jul 2017
There are ways to tweak the watershed. Try these links:
Otherwise you can come up with some ad hoc method, highly customized, but you'll have to create a very specific definition of where the separation should take place. I see generally where you want it but when you actually get down in there at the pixel level, there are lots of "paths" where the break could be made so you have to be specific if you really care where it's made super precisely.
Naim
Naim on 11 Jul 2017
good stuff Image Analyst, I'll check it out.

Sign in to comment.

More Answers (0)

Categories

Find more on Read, Write, and Modify Image in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!