alpha_expansion — SEGMENTATION graph op

• Datenarten: image2d → table

• Aufruf: import fullseye as fs; fs.ledger.alpha_expansion(image, means: 'Optional[Sequence[float]]' = None, *, lam: 'float' = 1.0, pairwise: 'str' = 'potts', truncation: 'float' = 2.0, connectivity: 'int' = 4, max_cycles: 'int' = 10, init=None) -> 'Dict[str, object]' (die Implementierung direkt: import seggraph; seggraph.alpha_expansion(image, means: 'Optional[Sequence[float]]' = None, *, lam: 'float' = 1.0, pairwise: 'str' = 'potts', truncation: 'float' = 2.0, connectivity: 'int' = 4, max_cycles: 'int' = 10, init=None) -> 'Dict[str, object]'; aus dem Register: opssegmentation.get("alpha_expansion"))

Verwendung

Mehrlabel-α-Expansion (Boykov–Veksler–Zabih 2001): E(f) = Σ (I_p − μ_(f_p))² + λ Σ w_pq V(f_p, f_q), wobei V eine Metrik ist (alpha_expansion).

means = Mittel jedes Labels μ_1..μ_L (L ≥ 2; weggelassen 3 Labels bei den 1/6-, 1/2- und 5/6-Quantilen der Pixelwerte). V ist "potts" ([α ≠ β], c = 1) oder "truncated_linear" (min(|α − β|, T); eine Metrik bei T ≥ 1, c = min(L − 1, T)). 1 Runde = expansion für α = 1..L der Reihe nach. Jeder Zug wird als 2-wertiger graph cut exakt gelöst und nur bei streng sinkender Energie angenommen. Wird in 1 Runde kein einziges Mal (1-mal) angenommen, wird angehalten (wie im Paper).

Rückgabe: labels (1..L), energy, energies (Folge der Annahmen, monoton fallend), move_minima (Minimum des 2-wertigen Problems jedes Zugs, ≤ aktueller Wert = Gate), c, bound_factor = 2c (Theorem 6.1: E(f̂) ≤ 2c E(f*)).

Ausführlicher Anwendungsleitfaden

• Leitfaden zur Familie halcon_segmentation

Hintergrundwissen (Physik und Konventionen hinter diesem Operator)

• graph_hierarchy_and_thresholds — Segmentierung aus Graph-, Hierarchie- und Schwellwertsätzen — was exakt ist und wo die Zerlegung kippt

Referenzen (Beispieldaten, Literatur)

• Katalog der Beispieldaten (Download-URLs / Lizenzen) — 2-D nutzt skimage.data (BSD/Public Domain) plus synthetische Bilder, 3-D nennt Download-URLs echter Datenquellen (Stanford, PDS, …).

• Herkunft und Literatur der Operatoren — die Quellen der Forschung/Verfahren, auf denen diese Operatorfamilie beruht.

• Der kanonische Algorithmus (Autor, Jahr) und seine Anwendungen stehen im Familienleitfaden oben.

Ausführbare Beispiele (verifizierte Samples, die diesen Operator wirklich aufrufen)

• poc_graph_hierarchy_segmentation — py -3.11 examples/poc_graph_hierarchy_segmentation.py

Typkompatible Folge-Operatoren (nehmen table als Eingabe)

class_ndim_norm

Gleiche Kategorie (graph)

graph_cut_binary · statistical_region_merging · max_tree · area_opening_attr · quasi_flat_zones · alpha_tree · hierarchical_watershed · ultrametric_contour_map


*Provenance: seggraph.py — SEGMENTATION Operator-Registry. Diese Notiz wird von tools/opdocs.py md erzeugt (nicht von Hand bearbeiten).*

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