graph opimage2d → tableimport fullseye as fs; fs.ledger.alpha_tree(image, alphas: 'Sequence[float]' = (0.0,), *, connectivity: 'int' = 4) -> 'Dict[str, object]' (実装を直接呼ぶなら import seggraph; seggraph.alpha_tree(image, alphas: 'Sequence[float]' = (0.0,), *, connectivity: 'int' = 4) -> 'Dict[str, object]'、台帳から引くなら opssegmentation.get("alpha_tree"))α-tree: 隣の差を重みにした格子の最小全域木(scipy の Kruskal)を作り、重み ≤ α の木の辺だけで α ごとの分割を出す。
scipy は重み 0 の辺を「辺が無い」と読むので、重み 0 の辺だけを「正の重みの最小の半分」に置き換えてから木を作る
(辺の順序は変わらない = 最小全域木は同じ)。全辺に 1 を足す手は使わない: 0.3 の差が浮動小数で 0.29999999999999993 と
0.30000000000000004 に割れている時、+1 の丸めで 2 つが同点になり、木が重い方を選んで α = 0.3 の切断がずれた(実測、
テスト test_quasi_flat_zones_equal_mst_cut)。木の辺の重みは添字から |f_p − f_q| を計算し直す。
返す: labels(α ごとの (H, W) を積んだ (A, H, W))、n_zones、mst_i / mst_j / mst_w、merge_levels
(木の辺の重みの昇順 = 併合の高さ)、nested(α の昇順で入れ子か)。
py -3.11 examples/poc_graph_hierarchy_segmentation.pytable を入力に取れる)class_ndim_norm · fisher_lda_score
graph)graph_cut_binary · alpha_expansion · statistical_region_merging · max_tree · area_opening_attr · quasi_flat_zones · hierarchical_watershed · ultrametric_contour_map
Provenance: seggraph.py — SEGMENTATION operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.