vol_rle_bbox — 3D rle_region op

• 数据种类:rle_region → primitive

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

用法

由 run 求出紧致包围盒 (z0, y0, x0, z1, y1, x1)(上界为开区间)。

无需 decode;实测比扫描密集掩模快约 1000 倍。与 decode 后掩模的 volops.vol_bounding_box 完全一致。空 region 抛出 ValueError(同样的 fail-closed 规则)。

计算: 还原 z = rows // H、y = rows % H,返回 (z.min, y.min, starts.min, z.max+1, y.max+1, ends.max)。是 6 元素的 int 元组,轴顺序为 (z, y, x) = (depth, row, col)。上限是排他的,因此 vol[z0:z1, y0:y1, x0:x1] 直接就是最小的外接子 volume。坐标为 voxel index(不乘 spacing)。

校验: 除 VolRLE 的一致性检查(_require_rle)外,连 1 个 run 都没有的 region 视为“无法定义框”而抛出 ValueError。没有 margin 参数(需要留白时,decode 后使用 vol_bounding_box)。

适用场景: 取 vol_rle_components 各成分的框,在不构建密集数组的情况下确定相当于 vol_crop_domain 的 ROI 裁剪。

参考(示例数据、文献)

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

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

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

• rle_region_efficiency — py -3.11 examples_3d/rle_region_efficiency.py

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

fuse_to_voxel · angle_between_lines · angle_between_planes · angle_line_plane · distance_point_plane · distance_point_line · distance_line_line · distance_segment_segment

同类别(rle_region)

vol_rle_encode · vol_rle_decode · vol_rle_volume · vol_rle_centroid · vol_rle_union · vol_rle_intersect · vol_rle_difference · vol_rle_components


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

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