topology_signature — 3D medial op

• 数据种类:voxel → table

• 调用: import fullseye as fs; fs.ledger.topology_signature(skeleton)(要直接调用实现,import medial; medial.topology_signature(skeleton);从台账取用则 ops3d.get("topology_signature"))

用法

由骨架的 26 邻域度数构造拓扑描述子。返回端点/分叉点/普通点/孤立点的个数。

对每个骨架 voxel 统计其 26 邻域内的骨架 voxel 数(度),并

度 1 = 端点(endpoint)

度 2 = 普通点(骨架中途)

度>=3 = 分支点(branch)

度 0 = 孤立点(isolated)

进行分类。各计数对平移、旋转(90 度)不变,成为粗略概括形状拓扑的描述子。

注意(honest): 26 邻域的度在分支附近可能因对角邻接而被多计(离散骨架的已知性质)。端点数在各分支末端是精确的,但分支点数可能略偏大。

Args:

skeleton: 骨架 voxel(bool / 0-1 的 3D)。

Returns:

dict: endpoints, branches, normal, isolated, total(骨架 voxel 总数),

degree_hist(度 -> 个数)。

参考(示例数据、文献)

• 示例数据目录(下载 URL / 许可证) —— 2-D 用 skimage.data(BSD/公有领域)加合成图,3-D 给出真实数据源(Stanford/PDS 等)的下载 URL。

• 算子来历与参考文献 —— 该算子族所依据的研究/方法出处。

可运行的示例(实际调用该算子并已验证的样例)

• medial_topology — py -3.11 examples_3d/medial_topology.py

类型可衔接的下一个算子(可接受 table 作为输入)

fuse_to_voxel · mesh_select_lod

同类别(medial)

distance_ridge · skeletonize_vol · medial_axis_points · medial_match · skeleton_junctions3d · skeleton_endpoints3d · skeleton_prune3d · skeleton_branches3d


*Provenance: medial.py — 3D 算子登记表。本条目由 tools/opdocs.py md 自动生成(请勿手工编辑)。*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.