artificial-life op• Datenarten: image → image
• Aufruf: fullseye.apply(img, "alife_perona_malik", a=0.5, b=0.5) (das 2-D-Modell ist ein Bild plus zwei skalare Regler a,b∈[0,1])

*Die Abbildung ist die tatsächliche Ausgabe auf einer synthetischen 128×128-Eingabe. Links Eingabe, rechts Ausgabe. Punktwolken als Draufsicht-Streudiagramm (Helligkeit = z), 1-D-Reihen als Linie, Volumen als Maximum-Projektion entlang z, Videos als mittleres Bild, komplexe Bilder als Betrag; Rückgabewerte, die kein Bild ergeben, werden als Werte gezeigt.*
Regler a durchfahren (0,1 / 0,5 / 0,9, der andere Regler auf Standard):
▸ alife_perona_malik: knob a sweep (docs site)
Regler b durchfahren (0,1 / 0,5 / 0,9, der andere Regler auf Standard):
▸ alife_perona_malik: knob b sweep (docs site)
Auf anderen Bildern (synthetische Szene / Foto / Münzen. Obere Reihe: Eingaben, untere Reihe: deren Ausgaben. Regler auf Standard):
▸ alife_perona_malik: other inputs (docs site)
*Die 4. Spalte ist eine Farb-Eingabe (H,W,3). Dieser Op verarbeitet Farbe, ohne Kanäle zu vermischen (er faltet den Farbkanal nicht als dritte Raumachse).*
Perona-Malik-anisotrope (kantenerhaltende) Diffusion.
> Die ausführliche Beschreibung unten ist der Originaltext — Zusammenfassung und Überschriften sind übersetzt.
Explicit 4-neighbour update I <- I + lam * sum_dir g(|grad_dir I|) grad_dir I
with the Perona-Malik conductance g(s) = 1/(1 + (s/kappa)^2): inside a flat
region g -> 1 and the field diffuses like the heat equation, across a strong
edge g -> 0 and the edge is preserved. Unlike a bilateral filter the
conductance is recomputed from the *evolving* field at every iteration, which
is what makes the edges sharpen rather than merely survive. `a` sets the
edge scale kappa = 0.02 + 0.2a, `b` the iteration count 1 + int(15b);
lambda is fixed at 0.2 (<= 0.25, the explicit-scheme stability bound).
Randbehandlung: auf die gegenüberliegende Seite umlaufen (periodisch) (gemessen; tools/impl2/border_probe.py).
• Leitfaden zur Familie gallery2d_physics_alife_3d
• 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.
Das Programm unten ist nachweislich lauffähig (gleiche Eingabe wie die Abbildung). In der Studio-Hilfe wird dieser Block zu Schaltflächen, die es sofort laden und ausführen.
alife_perona_malik 0.50 0.50
▸ Load this pipeline · Load & run
• gallery2d_physics_alife_3d — py -3.11 examples/gallery2d_physics_alife_3d.py
image als Eingabe)identity · gaussian · mean_box · bilateral · unsharp · median · min_filter · max_filter
artificial-life)alife_gray_scott · alife_turing · alife_life_step · alife_cyclic_ca · alife_curvature_flow · alife_dla · alife_reaction_bz · alife_wolfram1d
*Provenance: ops.py — 2D 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.