Find branches in a skeleton?

20 views (last 30 days)
Ronan
Ronan on 15 Sep 2015
Commented: karishma singh on 8 Aug 2017
When you make a skeleton from a binary image you can extract branch points. However I m trying to find out which branch points are connected to which. I can find the index of the branch points. So I have a skeleton with labeled branch points and I can physically view the nodes that are connected to one another but I cannot seem to generate these connections in code? eg branch point 3 is connected to branch point 5.
  6 Comments
Walter Roberson
Walter Roberson on 6 Aug 2017
karishma singh: which code was it that you ran? None of the code that is posted in this Question calls Preprocess or defines a variable named the_out ?
karishma singh
karishma singh on 8 Aug 2017
Preprocess.m is just my file name. I ran the code posted by Ronan using my skeleton image.

Sign in to comment.

Answers (1)

Image Analyst
Image Analyst on 15 Sep 2015
I think you'll need to get an image of just the branch points. Then an image of just the branches with the branchpoints removed. Then pick two branchpoints to test and make an image with just those two. Then put in each branch one at a time and call bwdistgeodesic() to see if they're connected by that branch.
  1 Comment
Ronan
Ronan on 15 Sep 2015
I was hoping to do it without the bwdistgeodesic function because my version of matlab doesn't have that function. I was thinking of trying to traverse the skeleton path and while traversing keep checking if the skeleton pixel is one of the nodes. It would probably involve a mask for checking if adjacent pixels are the skeleton however this solution is tricky and maybe computationally expensive. also it seems like reinventing the wheel because thats how some of the bwmorph operations work. Do you know is there an open source or alternative version to bwdistgeodesic?

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!