regionprops op• 데이터 종류: voxel → primitive
• 호출: import fullseye as fs; fs.ledger.inner_box3(vol) -> 'dict'(구현을 직접 호출하려면 import regionprops3d; regionprops3d.inner_box3(vol) -> 'dict', 원장에서 가져오려면 ops3d.get("inner_box3"))
이진 복셀 영역에 완전히 내접하는 최대 축 평행 상자(2-D `inner_rectangle1` 의 3-D 판).
> 아래 상세 설명은 원문입니다 —— 요약과 제목은 번역되어 있습니다.
3-D 版)。
厳密解: どの深さ区間 [z0, z1] についても、ボックスはスライス z0..z1 の 論理積
(全スライスで前景のボクセル)の内側に無ければならない。その積の中の最大内接 2-D 長方形
(ヒストグラム法 = `inner_rectangle1` と同じコア)× 区間長 が候補ボックスで、全区間に
ついての最大が厳密な最大内接ボックスになる。O(D^2 * H * W)。
Returns
-------
dict
(depth,row,col) 軸順で `min / max 隅、center (+ cd/cr/cc`)、
全幅 `size、ボクセル数の volume`。
Raises
------
ValueError
非 3-D 入力、または前景ゼロの領域(内接ボックス無し)。
補足:
• `min / max は **両端を含む** ボクセル添字(float 配列)。size = max - min + 1、volume = prod(size)。center は (min + max) / 2 で .5 が付き得る。2-D 側の登録名は r2_inner_rectangle1`。
• 深さ区間ごとに Python ループで最大長方形を探す O(D²·H·W)。積が空になった時点でその z0 の探索は打ち切る。大きなボリュームでは遅い。
• 同体積の候補が複数あるときは先に見つかったもの(z0 が小さく、その中で z1 が小さい)を返す。
• 入力は 0 以外を前景として bool 化する(NaN も前景)。軸順は (depth, row, col)。
• 典型: `largest_component` で対象を 1 つに絞ってから呼ぶ(複数成分が混ざると最大成分のボックスとは限らない)。
• measurement_uncertainty — 計測の不確かさと校正の知識 — 「測れている」を主張するために
• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.
• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.
• inner_box_inspection — py -3.11 examples_3d/inner_box_inspection.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
regionprops)label_components · region_props · largest_component · filter_by_volume · vol_label · vol_region_props
*Provenance: regionprops3d.py — 3D 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.