vol_rle_volume — 3D rle_region op

データ種: rle_regionmeasurement

呼び出し: import fullseye as fs; fs.ledger.vol_rle_volume(region) -> 'int' (実装を直接呼ぶなら import volregion; volregion.vol_rle_volume(region) -> 'int'、台帳から引くなら ops3d.get("vol_rle_volume"))

使い方

領域のボクセル数を run 上で数える(復号しない)。

~300x faster than summing the dense mask.

計算: `sum(ends - starts)`(差は int64 で取るので run 数が多くても溢れない)。

返り値は Python の `int`(voxel 個数、単位は voxel。物理体積 mm^3 が欲しければ

`spacing の積 sz*sy*sx` を自分で掛ける — この op は spacing を受けない)。

入力は `_require_rle で検証してから使う(VolRLE` 以外、shape・run 配列の

不整合、範囲外の run は `ValueError)。空の region は 0` を返す(エラーに

しない)。`vol_rle_decode してから sum()` するのと同じ値を、密配列を作らずに

返すのが目的。`vol_rle_components` の各成分にかければ成分ごとの体積になる。

参考(サンプルデータ・文献)

• サンプルデータ カタログ(DL URL / ライセンス) — 2-D は skimage.data(BSD/public)+ 合成、3-D は実データ源(Stanford/PDS 等)の DL URL。

• 演算子の来歴・参考文献 — この op 族の元になった研究/手法の出典。

実行できる例(この op を実際に呼ぶ検証済みサンプル)

rle_region_efficiencypy -3.11 examples_3d/rle_region_efficiency.py

型が繋がる次の op(measurement を入力に取れる)

vol_gaussian_psf · fuse_to_voxel · fresnel_reflectance · snell_angle

同カテゴリ(rle_region)

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


*Provenance: volregion.py — 3D operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。*

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