graph op• 데이터 종류: image2d → table
• 호출: 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]'(구현을 직접 호출하려면 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]', 원장에서 가져오려면 opssegmentation.get("alpha_expansion"))
다중 레이블 α-expansion(Boykov–Veksler–Zabih 2001): E(f) = Σ (I_p − μ_(f_p))² + λ Σ w_pq V(f_p, f_q), V는 거리 함수(metric)(alpha_expansion).
> 아래 상세 설명은 원문입니다 —— 요약과 제목은 번역되어 있습니다.
`means = 各ラベルの平均 μ_1..μ_L(L ≥ 2。省くと画素の値の 1/6・1/2・5/6 分位の 3 ラベル)。V は "potts"([α ≠ β]、c = 1)か "truncated_linear"`
(min(|α − β|, T)、T ≥ 1 なら計量、c = min(L − 1, T))。1 周 = α = 1..L の expansion を順に。各移動は 2 値の graph cut で
厳密に解き、エネルギーが厳密に下がる時だけ 受け入れる。1 周で 1 度も受け入れなければ止まる(論文と同じ)。
返す: `labels(1..L)、energy、energies(受け入れの列、単調減少)、move_minima`(各移動の 2 値問題の最小、
今の値以下 = 門)、`c、bound_factor` = 2c(Theorem 6.1: E(f̂) ≤ 2c E(f*))。
• graph_hierarchy_and_thresholds — グラフ・階層・閾値の定理でつくる分割 — 何が厳密で、どこで割れ方が倒れるか
• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.
• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.
• 알고리즘의 정전(저자·연도)과 용도는 위의 패밀리 사용 가이드에 적혀 있습니다.
• poc_graph_hierarchy_segmentation — py -3.11 examples/poc_graph_hierarchy_segmentation.py
table 를 입력으로 받는 것)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 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.