split opmask → image2dimport fullseye as fs; fs.ledger.blob_distance(region: 'Any', spacing: 'float' = 1.0) -> 'np.ndarray' (実装を直接呼ぶなら import blob2d; blob2d.blob_distance(region: 'Any', spacing: 'float' = 1.0) -> 'np.ndarray'、台帳から引くなら opsblob.get("blob_distance"))前景の各画素からいちばん近い背景までの距離。単位は spacing 倍。
scipy.ndimage.distance_transform_edt そのもの。わざわざ口を作った
理由は、進化 op の distance_transform が最大値で正規化して返すため
(poc_cell_counting の実測: 出力の最大が常に 1.0)、画素単位の距離が
取れないこと。分水嶺の種を作るには絶対値が要る。
import numpy as np m = np.zeros((21, 21), bool); m[5:16, 5:16] = True float(blob_distance(m).max()) # 11x11 の正方形の中心まで 6.0
py -3.11 examples/blob_split_tour.pypy -3.11 examples/poc_bone_trabecular_thickness.pyimage2d を入力に取れる)blob_seeds · blob_split · blob_overlay
split)Provenance: blob2d.py — BLOB operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.