alpha_tree — SEGMENTATION graph op

• 数据种类:image2d → table

• 调用: import 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),仅用权重 ≤ α 的树边给出每个 α 的划分(alpha_tree)。

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(按 α 升序是否嵌套)。

详细使用指南

• halcon_segmentation 族使用指南

背景知识指南(该算子背后的物理与约定)

• graph_hierarchy_and_thresholds — 用图、层次与阈值定理做分割 —— 什么是严格的,分割在哪里失效

参考(示例数据、文献)

• 示例数据目录(下载 URL / 许可证) —— 2-D 用 skimage.data(BSD/公有领域)加合成图,3-D 给出真实数据源(Stanford/PDS 等)的下载 URL。

• 算子来历与参考文献 —— 该算子族所依据的研究/方法出处。

• 算法的正典(作者、年份)与用途见上面的族使用指南。

可运行的示例(实际调用该算子并已验证的样例)

• poc_graph_hierarchy_segmentation — py -3.11 examples/poc_graph_hierarchy_segmentation.py

类型可衔接的下一个算子(可接受 table 作为输入)

class_ndim_norm

同类别(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 算子登记表。本条目由 tools/opdocs.py md 自动生成(请勿手工编辑)。*

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