pl_groove_visibility — GENERATIVE pl op

• Datenarten: keine → table (ein Operator, der allein durch seine Argumente bestimmt ist — er nimmt kein Bild und keine Daten entgegen)

• Aufruf: import fullseye as fs; fs.ledger.pl_groove_visibility(width_px: 'float' = 3.0, diffusion_length_px: 'float' = 8.0, *, sink_velocity: 'float' = 0.0, noise_rel: 'float' = 0.01, cnr_min: 'float' = 1.0) -> 'dict' (die Implementierung direkt: import pl; pl.pl_groove_visibility(width_px: 'float' = 3.0, diffusion_length_px: 'float' = 8.0, *, sink_velocity: 'float' = 0.0, noise_rel: 'float' = 0.01, cnr_min: 'float' = 1.0) -> 'dict'; aus dem Register: opsgenerative.get("pl_groove_visibility"))

Verwendung

Kontrast und CNR einer Schatten- und einer Senken-Rille in geschlossener Form aus Rillenbreite, Diffusionslänge und Rauschen (table).

> Die ausführliche Beschreibung unten ist der Originaltext — Zusammenfassung und Überschriften sind übersetzt.

Parameters

width_px : float

溝の幅 w[px]。

diffusion_length_px : float

拡散長 L[px]。

sink_velocity : float

沈みの溝の再結合速度 s = S·px/D(無次元、1 画素あたり)。0 なら沈みの項は 0。

noise_rel : float

像の雑音 σ(地 1 に対する相対値)。CNR = コントラスト / σ。

cnr_min : float

「見える」とする CNR の下限(既定 1 = 雑音と同じ深さ)。

Returns

dict

contrast_shadow(連続 1 − e^{−w/2L})/ contrast_shadow_grid(w が奇数の

整数なら格子の厳密値、そうでなければ None)/ contrast_sink(sL/(sL+2))/

fwhm_shadow_px / fwhm_sink_px(2L·ln2)/ cnr_shadow / cnr_sink /

visible_shadow / visible_sink / L_star_shadow_px(この L より長いと

影は CNR < cnr_min で消える)/ L_star_sink_px(この L より短いと沈みは

消える。sink_velocity = 0 か cnr_min·noise_rel ≥ 1 なら境界が無いので

None = どの L でも見えない)/ deficit_shadow_px(影の欠け量の積分 = w、

L によらない)。

Notes

影は w ≪ L で ≈ w/2L と消え、沈みは L と共に深く広くなる。欠陥の種類で向きが逆なので、「拡散長が長いほど欠陥が隠れる」は影にだけ当てはまる。

Examples

>>> t = pl_groove_visibility(2.0, 20.0, sink_velocity=0.5, noise_rel=0.02)

>>> round(t["contrast_shadow"], 4)

0.0488

>>> round(t["contrast_sink"], 4)

0.8333

>>> t["visible_shadow"], t["visible_sink"]

(True, True)

Ausführlicher Anwendungsleitfaden

• Leitfaden zur Familie generative_art

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_si_wafer_pl_defect_visibility — py -3.11 examples/poc_si_wafer_pl_defect_visibility.py

Typkompatible Folge-Operatoren (nehmen table als Eingabe)

perpetual_step · perpetual_render

Gleiche Kategorie (pl)

pl_diffusion_psf · pl_image_simulate


*Provenance: pl.py — GENERATIVE 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.