boundary op• 数据种类:voxel → voxel
• 调用: import fullseye as fs; fs.ledger.vol_boundary(vol_binary, connectivity=6, side='inner')(要直接调用实现,import volops; volops.vol_boundary(vol_binary, connectivity=6, side='inner');从台账取用则 ops3d.get("vol_boundary"))
二值体的边界壳(3-D 版 `region_boundary`)。
> 以下的详细说明为原文 —— 摘要与标题已翻译。
`side='inner'` keeps the foreground voxels that touch background:
`mask & ~erode(mask). side='outer'` keeps the background voxels that
touch foreground: `dilate(mask) & ~mask`. *connectivity* (6/18/26) decides
which neighbours count as "touching" — 6 uses face neighbours only (the
thinnest shell); 26 also counts a diagonal background contact, so shells at
convex corners come out thicker. The volume border counts as background
for the *inner* shell (a mask reaching the border has a boundary there —
the same convention as the surface-area estimate in
:func:vol_region_props); the *outer* shell can only occupy voxels that
exist, so a mask filling the whole volume has an empty outer boundary.
A solid region's interior drops out entirely: the shell of a solid ball of
radius `r voxels is roughly a 3/r` fraction of it (surface over
volume), so the saving grows with size — which is exactly why boundary
representations (and :func:vol_boundary_points) are the memory-frugal way
to hand a shape to the point-cloud / metrology operators.
Returns a `(D, H, W) float64 {0, 1}` volume (chainable into
:func:vol_label, :func:vol_boundary_points, ...).
• 示例数据目录(下载 URL / 许可证) —— 2-D 用 skimage.data(BSD/公有领域)加合成图,3-D 给出真实数据源(Stanford/PDS 等)的下载 URL。
• 算子来历与参考文献 —— 该算子族所依据的研究/方法出处。
• roi_domain_boundary — py -3.11 examples_3d/roi_domain_boundary.py
voxel 作为输入)voxel_to_mips · voxel_to_mesh · signed_distance_field · to_points · sobel3d · hessian3d · curvature_maps · edt_jfa
boundary)*Provenance: volops.py — 3D 算子登记表。本条目由 tools/opdocs.py md 自动生成(请勿手工编辑)。*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.