Segment Dumbbell Structure into Two Circles and One Rectangle

2 次查看(过去 30 天)
I'm trying to analyze three shapes from this image--two circles and one rectangle. I would like each to be a separate object detected by bwconncomp so that I can analyze with various region props. All three are touching. Using bwconncomp unfortunately gives a single object. I tried various bwmorph operations but they are altering the objects too much. For example, I used the thin operation with n=20, followed by the open operation and then finally the thicken operation with n=20. My strategy was to isolate the circles first, then subtract from the original image to get the rectangle isolated. Unfortunately the bwmorph operations make the circles into more of a square shape afterwards. I have also tried using the watershed function to the image after it was transformed via bwdist--this also did not work, i.e. there were way too many watershed lines when I would only want two.
There is no contrast between the circles and the rectangle.
Any suggestions would be most welcome!Dumbell.JPG

采纳的回答

Image Analyst
Image Analyst 2019-12-9
Try imfindcircles() to find the centers and radii of the circles.
Then create a circular mask to mask them out -- see The FAQ for code to create a circle, then use poly2mask() to make a mask.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Image Segmentation and Analysis 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by