3d skeleton branchpoints

7 次查看(过去 30 天)
Hi all,
I have a 3d skeleton of which I want to calculate the number of branchpoints. Is it ok to use this code?
bp = bwmorph3(skel, 'branchpoints');
cc = bwconncomp(skel,18);
numberOfBranches = cc.NumObjects; % 1object = 1 branchpoint??
I attach an image of my 3d skeleton and of the branchpoints
Thanks in advance for any help!
sk.png
bp.png

回答(2 个)

Constantino Carlos Reyes-Aldasoro
Something does not look right. Specifically, the skeleton should be a line, and you do not seem to have any lines, just disconnected points.
Why don't you first detect the skeleton and display it, then manually count your branching points and then you can validate that the result of the branching points obtained with matlab is correct.
  1 个评论
Marco Festugato
Marco Festugato 2019-5-9
编辑:Marco Festugato 2019-5-9
Hi Constantino and thank u for your answer. I don't know why the skeleton looks like that (maybe it's because of the bad quality of the original images?), I just used the MATLAB function (for what I know, it's the only 3D skeletonization function in MATLAB, is that correct?) and I dont know how to improve the skeletonization!
Any suggestions?
Best Regards

请先登录,再进行评论。


Constantino Carlos Reyes-Aldasoro
I would suggest that you do a maximum intensity projection into 2D, i.e.
data_2D = max(data_3D, [ ] ,3);
and then check the skeleton. In 2D you should have something standard like the ones shown here
Then you know if it is the data or the code that you are using

产品


版本

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by