Connecting missing boundary segments of particles in image

3 views (last 30 days)
I have to segment each particle seapartely given in the image. I am trying to find its boundary edges. I have attached original image and obtained boundary image, I have to connect the missing boundary segments in the given image. Please help.

Answers (1)

Image Analyst
Image Analyst on 28 Jun 2020
Fixing the image capture problem can make the image processing so much easier. Why don't you just simply separate the rocks before you image them? Then just threshold, fill, and call bwboundaries.
mask = grayImage < someValue;
mask = imfill(mask, 'holes');
boundaries = bwboundaries(mask);
If you want to do it the hard way, which I strongly advise against, see Steve's blog:
  4 Comments
Vikrant Pratap
Vikrant Pratap on 29 Jun 2020
I can't use imfreehand() function as the model should not require human intervention.
I can't separate the particles before taking the image as it is real problem where rocks counting & size estimation has to be done. The rocks are close to each other and overlapping. Hence, I have to solve it in this way only.
It will be really helpful if you can help me in finding concave point in binary image. Then I cannect the missing boundary segments.
Image Analyst
Image Analyst on 29 Jun 2020
Who is dictating all of these disabling requirements upon you? Do they want to get the job done or not? Who cares how it gets done as long as it gets done?

Sign in to comment.

Categories

Find more on Get Started with MATLAB 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!