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 가 필요 없다; 밀집 마스크를 스캔하는 것보다 ~1000x 빠르게실측됨. 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)에 더해, run이 1개도 없는 region은 "박스를 정의할 수 없다"로 ValueError. margin 인자는 없다(여백이 필요하면 decode 후 vol_bounding_box를 사용한다).

사용처: vol_rle_components의 각 성분의 박스를 구해, vol_crop_domain에 해당하는 ROI 잘라내기를 밀집 배열을 만들지 않고 정한다.

참고(샘플 데이터·문헌)

• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL 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 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*

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