How to saperate these overlapping objects ?

I want to detect concave points of overlapping objects so that I can fit a circle and an ellipse or combination of 2 circles over it.

2 Commenti

Can you elaborate more with the color symbol indicated by marker?
You can use paint?
I want to place green circle over circular objects and an ellipse over elliptical objects. But as some objects are overlapping I have to seperate them first by detecting their intersecting points.

Accedi per commentare.

Risposte (2)

Why not just use regionprops to look for blobs that have high solidity?
mask = imfill(mask, 'holes');
props = regionprops(mask, 'Solidity', 'MajorAxisLength', 'MinorAxisLength');
allSolidities = [props.Solidity]
allMajorAxesLengths = [props.MajorAxisLength]
allMinorAxesLengths = [props.MinorAxisLength]
nonConvexIndexes = allSolidities < 0.8; % or whatever.
circleIndexes = (allMajorAxesLengths ./ allMinorAxesLengths) < 1.5; % Or whatever.
Circles should have minor and major axes roughly the same.
Adapt as needed.
Image Analyst
Image Analyst il 22 Apr 2020

1 Commento

Thanks for helping. I am facing same error as Steve's code . Ellipse of same size doesn't fit if two cells are overlapped. For that I have to saperate them first.

Accedi per commentare.

Prodotti

Release

R2014a

Richiesto:

il 18 Nov 2019

Commentato:

il 22 Apr 2020

Community Treasure Hunt

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

Start Hunting!

Translated by