curvature_flow — SEGMENTATION contour op

• 資料種類:mask → table

• 呼叫: import fullseye as fs; fs.ledger.curvature_flow(phi, *, t_end: 'float' = 50.0, dt: 'float' = 0.2, eta: 'float' = 1e-08, record_every: 'int' = 0) -> 'Dict[str, object]'(要直接呼叫實作,import segcontour; segcontour.curvature_flow(phi, *, t_end: 'float' = 50.0, dt: 'float' = 0.2, eta: 'float' = 1e-08, record_every: 'int' = 0) -> 'Dict[str, object]';從台帳取用則 opssegmentation.get("curvature_flow"))

用法

平均曲率流(曲線縮短流)的水平集形式 φ_t = |∇φ| div(∇φ/|∇φ|)(φ < 0 為內側,從凸處開始收縮)(curvature_flow)。

顯式中心差分: φ_t = (φ_xx φ_y² − 2 φ_x φ_y φ_xy + φ_yy φ_x²) / (φ_x² + φ_y² + η),步長 dt ≤ 0.25(穩定條件)。phi = φ 或 bool 遮罩(轉換為符號距離)。每一步的面積是 clip(0.5 − φ/|∇φ|, 0, 1) 的和。

門檻: 簡單閉曲線所圍面積滿足 dA/dt = −∮ κ ds = −2π(環繞數 1,即使不是凸的)。圓則 r(t)² = r0² − 2t。

回傳值: phi、mask、times、areas、area_rate(面積 vs 時間的最小平方斜率)、area_rate_theory = −2π、history(每 record_every 步的遮罩)、n_steps。

詳細使用指南

• halcon_segmentation 族使用指南

背景知識指南(該運算子背後的物理與規範)

• active_contours_and_level_sets — 變分、主動輪廓與水平集 —— 哪種輪廓停在哪裡、保證什麼

參考(範例資料、文獻)

• 範例資料目錄(下載 URL / 授權) —— 2-D 用 skimage.data(BSD/公有領域)加合成圖,3-D 給出真實資料源(Stanford/PDS 等)的下載 URL。

• 運算子來歷與參考文獻 —— 該運算子族所依據的研究/方法出處。

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

可執行的範例(實際呼叫該運算子並已驗證的樣例)

• poc_active_contours — py -3.11 examples/poc_active_contours.py

型別可銜接的下一個運算子(可接受 table 作為輸入)

class_ndim_norm

同類別(contour)

snake_evolve · gvf_field · chan_vese_energy · chan_vese_evolve · morph_chan_vese · morph_geodesic_ac · edge_stop_g · level_set_reinit


*Provenance: segcontour.py — SEGMENTATION 運算子登記表。本條目由 tools/opdocs.py md 自動產生(請勿手動編輯)。*

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