chan_vese_energy — SEGMENTATION contour op

• Datenarten: image2d × mask → table

• Aufruf: import fullseye as fs; fs.ledger.chan_vese_energy(image, phi, *, mu: 'float' = 0.1, nu: 'float' = 0.0, lambda1: 'float' = 1.0, lambda2: 'float' = 1.0, eps: 'float' = 1.0, eta: 'float' = 0.1) -> 'Dict[str, float]' (die Implementierung direkt: import segcontour; segcontour.chan_vese_energy(image, phi, *, mu: 'float' = 0.1, nu: 'float' = 0.0, lambda1: 'float' = 1.0, lambda2: 'float' = 1.0, eps: 'float' = 1.0, eta: 'float' = 0.1) -> 'Dict[str, float]'; aus dem Register: opssegmentation.get("chan_vese_energy"))

Verwendung

Chan–Vese-2001-Energie F = μ Length + ν Area(inside) + λ1 ∫_in |I − c1|² + λ2 ∫_out |I − c2|² (zweiphasig) (chan_vese_energy).

phi ist φ (innen φ < 0) oder eine bool-Maske (wird in einen vorzeichenbehafteten Abstand umgewandelt). Regularisierung: Innengewicht H_ε(−φ) (die arctan-Version des Papers), Länge = Σ δ_ε(φ) |Dφ|_η (Vorwärtsdifferenzen, |Dφ|_η = √(D_x² + D_y² + η²)). c1 / c2 = mit H_ε gewichtete Mittel innen / außen (Gl. (6)(7)). Eine "scharfe" Version derselben Maske (energy_sharp) wird ebenfalls zurückgegeben: Länge = Anzahl der Kanten der 4-Nachbarschaft, an denen innen/außen wechselt, innen/außen 0/1 nach φ < 0.

Rückgabewert: energy, length, area, fit_inside / fit_outside, c1 / c2 (mit H_ε gewichtete Mittel — der arctan mit ε = 1 hat lange Ausläufer, daher weichen sie selbst bei einem 2-wertigen Bild von 0/1 ab), energy_sharp, perimeter_sharp, c1_sharp / c2_sharp (Mittel innen/außen nach φ < 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)

• (noch keine)

Typkompatible Folge-Operatoren (nehmen table als Eingabe)

class_ndim_norm

Gleiche Kategorie (contour)

snake_evolve · gvf_field · 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.