stroke_tone_error — PRINTPATH stroke op

• Datenarten: image2d × pairs → table

• Aufruf: import fullseye as fs; fs.ledger.stroke_tone_error(image, points, pen_width=1.0, blur_sigma=3.0, gamma=1.0) (die Implementierung direkt: import printpath; printpath.stroke_tone_error(image, points, pen_width=1.0, blur_sigma=3.0, gamma=1.0); aus dem Register: opsprintpath.get("stroke_tone_error"))

Verwendung

Wie stark der aus dem Zeichnen der Linien resultierende Tonwert vom Ziel abweicht. → table

★Dies ist die eigentliche Zielfunktion des Zeichnens in einem durchgehenden Zug. Statt "es ähnelt dem Bild" dem menschlichen Auge zu überlassen, wird mit der Stiftbreite gezeichnet, auf den Maßstab des Auges weichgezeichnet, mit der Zieldunkelheit verglichen und als Zahl zurückgegeben.

Rückgabewert: dict

"rms" / "max_abs" / "bias" -- Differenz der Dunkelheit (auf der [0, 1]-Skala)

"corr" -- Korrelation zwischen Zieldunkelheit und gezeichneter Dunkelheit (je näher an 1, desto besser wird der Tonwert verfolgt)

"ink_fraction" -- Flächenanteil der Tinte auf dem Papier

"target_darkness" -- mittlere Dunkelheit des Ziels (die Größe, mit der der Tintenanteil im Gleichgewicht sein sollte)

"length_px" -- Länge der Linie [px]

★Die Stiftbreite ist ein stetiger Regler (gemalt nach Bedeckungsgrad). Wo sich Linien nicht überlappen, gilt Tintenanteil ≈ Linienlänge × Stiftbreite / Bildfläche, daher lässt sich die zur Zieldunkelheit passende Stiftbreite zuerst in geschlossener Form lösen und dann prüfen:

pen_width ≈ target_darkness × area / length_px.

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 table als Eingabe)

gcode_write · gcode_extrusion_volume · gcode_time_estimate · gcode_layer_image · contours_to_gcode

Gleiche Kategorie (stroke)

stipple_points_from_image · stipple_energy · stroke_tour_closed · mst_length · stroke_resample_closed


*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.