编者按:此文件被选为MATLAB Central本周精选
Skeleton3D:平行中轴线的三维二进制体变薄
这段代码计算任意3D二进制体的3D中轴骨架。它是[1]中描述的同伦细化算法的优化MATLAB实现。我们开发了它来量化[2]骨中的细胞过程网络,但它应该适用于任何管状或丝状结构的图像。包括一个示例卷(testvol.mat),以及一个示例脚本(test_skeletal 3d .m)。欢迎任何评论、更正或建议。
用法:
skel = Skeleton3D(bin)
其中“bin”是3D二值图像,“skel”是只包含骨架体素的结果图像,或者
skel = Skeleton3D(bin,mask)
为了在“mask”中掩盖所有前景体素,以防止骨骼化,例如在图像体积中保留某些结构。
对于额外的清理,例如修剪短分支,请使用我的Skel2Graph3D包在MATLAB文件交换。
这段代码的灵感来自Hanno Homann[3]的ITK实现和Ignacio Arganda-Carreras[4]的Fiji/ImageJ插件。如果您在自己的工作中包括这一点,请引用我们的原始出版物[2]。
Philip Kollmannsberger 2013年9月
philipk@gmx.net
引用:
[1]李大智,兰加美·l·卡什亚普,朱忠南
“通过三维内侧表面/轴细化算法构建骨架模型。”
计算机视觉,图形学与图像处理,56(6):462-478,1994。
[2] Kollmannsberger, Kerschnitzki等人,
“骨细胞的小世界:骨陷窝-管状网络的连接组学。”
物理学报19:073019,2017。
引用作为
Kollmannsberger, Kerschnitzki等人,“骨细胞的小世界:骨中窝管网络的连接组学。”物理学报19:073019,2017。