swt_map — TEXT stroke op

• Datenarten: image2d → table

• Aufruf: import fullseye as fs; fs.ledger.swt_map(img, dark_on_light: 'bool' = True, sigma: 'float' = 1.0, max_width: 'int' = 64, angle_tol: 'float' = 0.5235987755982988) (die Implementierung direkt: import textregion; textregion.swt_map(img, dark_on_light: 'bool' = True, sigma: 'float' = 1.0, max_width: 'int' = 64, angle_tol: 'float' = 0.5235987755982988); aus dem Register: opstext.get("swt_map"))

Verwendung

Stroke Width Transform — schreibt in jedes Pixel die Breite des Strichs, der es enthält.

Von den Randpixeln auf der Strichseite werden Strahlen entlang der Gradientenrichtung ins Innere des Zeichens geschickt; trifft einer auf ein gegenüberliegendes Randpixel (Gradient annähernd entgegengesetzt), wird auf alle Pixel des Strahls die Breite (Abstand der Mittelpunkte der Randpixel + 1) geschrieben (ist schon ein kleinerer Wert da, bleibt der kleinere). Nach dem Verfahren von Epshtein 2010 §3 ersetzt ein 2. Durchlauf die Werte auf dem Strahl, die größer als der Median des Strahls sind, durch den Median (unterdrückt Überschätzung an Ecken). Die Kantenkonvention ist

in _edges_and_gradient beschrieben (bei einem rechteckigen Strich ist die Breite exakt ganzzahlig).

Rückgabe dict: swt (Array der Breiten, außerhalb der Striche 0) / edges / n_rays / n_hits (Anzahl der Strahlen, die eine gegenüberliegende Kante getroffen haben).

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_text_region_truth — py -3.11 examples/poc_text_region_truth.py

Typkompatible Folge-Operatoren (nehmen table als Eingabe)

text_lines

Gleiche Kategorie (stroke)

—


*Provenance: textregion.py — TEXT 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.