stipple_points_from_image — PRINTPATH stroke op

• Datenarten: image2d → pairs

• Aufruf: import fullseye as fs; fs.ledger.stipple_points_from_image(image, n_points, iterations=30, gamma=1.0, floor=0.02, seed=0, metric='euclidean') (die Implementierung direkt: import printpath; printpath.stipple_points_from_image(image, n_points, iterations=30, gamma=1.0, floor=0.02, seed=0, metric='euclidean'); aus dem Register: opsprintpath.get("stipple_points_from_image"))

Verwendung

Bildet Grauwerte auf die Punktdichte ab (gewichtetes Lloyd-Verfahren = zentroidale Voronoi-Zerlegung). → pairs

Punkte sammeln sich dicht, wo es dunkel ist. Zurückgegeben wird (n_points, 2) als (row, col).

Args:

image: 2-D-Helligkeit in [0, 1] (oder Farbe; auf Leuchtdichte reduziert).

n_points: Anzahl der Punkte.

iterations: Anzahl der Iterationen von Lloyd.

gamma: setzt das Gewicht auf darkness ** gamma (1 = Dunkelheit unverändert).

floor: Untergrenze des Gewichts. Nicht auf 0 setzen -- ist das Gewicht einer reinweißen Region exakt 0,

können Punkte, die hineingeraten, sich nicht bewegen (Schwerpunkt 0/0), und ihre Position hängt nicht mehr von der Eingabe ab.

seed: Zufallszahlen für die Anfangsplatzierung.

metric: derzeit nur "euclidean".

Neben dem Rückgabewert lässt sich die Konvergenz messen, indem man stipple_points_from_image mit unterschiedlichen iterations aufruft und vergleicht (Lloyds Energie nimmt monoton ab).

★Selbst auf einem reinweißen Bild verteilen sich die Punkte gleichmäßig (bei konstanter Dichte ist das zentroidale Voronoi gleichmäßig). Das dient als Kontrollgruppe dafür, dass "es den Tonwert tatsächlich lesen kann".

Ausführlicher Anwendungsleitfaden

• Leitfaden zur Familie printpath

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_one_stroke_epicycles — py -3.11 examples/poc_one_stroke_epicycles.py

Typkompatible Folge-Operatoren (nehmen pairs als Eingabe)

stipple_energy · stroke_tour_closed · mst_length · stroke_resample_closed · stroke_tone_error · mosaic_tiles_render

Gleiche Kategorie (stroke)

stipple_energy · stroke_tour_closed · mst_length · stroke_resample_closed · stroke_tone_error


*Provenance: printpath.py — PRINTPATH 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.