gvf_field — SEGMENTATION contour op

• Datenarten: image2d → table

• Aufruf: import fullseye as fs; fs.ledger.gvf_field(image, *, mu: 'float' = 0.2, sigma: 'float' = 1.0, method: 'str' = 'direct', n_iter: 'int' = 2000, dt: 'Optional[float]' = None, edge_map=None) -> 'Dict[str, object]' (die Implementierung direkt: import segcontour; segcontour.gvf_field(image, *, mu: 'float' = 0.2, sigma: 'float' = 1.0, method: 'str' = 'direct', n_iter: 'int' = 2000, dt: 'Optional[float]' = None, edge_map=None) -> 'Dict[str, object]'; aus dem Register: opssegmentation.get("gvf_field"))

Verwendung

Gradient Vector Flow (Xu–Prince 1998): das Feld (u, v), das den Gradienten der Kantenkarte f glatt von den Kanten weg diffundiert (gvf_field).

Minimierung von E = ∬ μ(u_x² + u_y² + v_x² + v_y²) + |∇f|² |(u, v) − ∇f|². Euler-Gleichungen μ∇²u − (u − f_x)(f_x² + f_y²) = 0, μ∇²v − (v − f_y)(f_x² + f_y²) = 0 (linear). method="iterate" = die Zeitentwicklung des Papers u ← u + Δt(μ∇²u − b(u − f_x)), b = |∇f|² (explizit, Δt ≤ 1/(4μ + max b)). method="direct" = löst dieselbe diskrete Gleichung (μL − diag b) u = −b f_x direkt mit einer dünnbesetzten Matrix (die stationäre Lösung selbst). Die Kantenkarte f ist standardmäßig |∇(G_σ * I)|, auf Maximum 1 normiert (kann auch direkt über edge_map übergeben werden). Rand: Neumann. u = Komponente in Spaltenrichtung (x), v = Komponente in Zeilenrichtung (y).

Rückgabewert: u / v, edge_map, fx / fy, residual_max (maximales Residuum der Euler-Gleichungen), residual_rel (Residuum / max(b |∇f|)), n_iter, method, mu. Ist f flach, ist das Feld 0 (Residuum 0).

Ausführlicher Anwendungsleitfaden

• Leitfaden zur Familie halcon_segmentation

Hintergrundwissen (Physik und Konventionen hinter diesem Operator)

• active_contours_and_level_sets — Variationelle und aktive Konturen, Level-Sets — welche Kontur wo stoppt und was sie garantiert

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_active_contours — py -3.11 examples/poc_active_contours.py

Typkompatible Folge-Operatoren (nehmen table als Eingabe)

class_ndim_norm

Gleiche Kategorie (contour)

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


*Provenance: segcontour.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.