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

> Für diesen Operator gibt es noch keine Übersetzung. Es folgt der Originaltext unverändert.

線を引いた結果の濃淡が目標とどれだけ違うか。→ `table`

★これが一筆書きの本当の目的関数。「絵として似ている」を人の目に任せず、

ペン幅で描いて目の尺度にぼかし、目標の暗さと比べて数で返す。

返り値: dict

"rms" / "max_abs" / "bias" —— 暗さの差(`[0, 1]` の尺度)

"corr" —— 目標の暗さと描いた暗さの相関(1 に近いほど濃淡を追えている)

"ink_fraction" —— 紙に乗ったインクの面積率

"target_darkness" —— 目標の平均暗さ(インク率と釣り合うべき量)

"length_px" —— 線の長さ[px]

★ペン幅は連続なノブ(被覆率で塗る)。線が重ならない範囲では

`インク率 ≈ 線長 × ペン幅 / 画像の面積` が成り立つので、目標の濃さに合う

ペン幅を 閉形式で解いてから確かめられる:

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