DE102021109845A1 - Verfahren und Vorrichtung zur Erzeugung von optimierten Fonts - Google Patents

Verfahren und Vorrichtung zur Erzeugung von optimierten Fonts Download PDF

Info

Publication number
DE102021109845A1
DE102021109845A1 DE102021109845.9A DE102021109845A DE102021109845A1 DE 102021109845 A1 DE102021109845 A1 DE 102021109845A1 DE 102021109845 A DE102021109845 A DE 102021109845A DE 102021109845 A1 DE102021109845 A1 DE 102021109845A1
Authority
DE
Germany
Prior art keywords
font
fonts
space
matrix
display
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102021109845.9A
Other languages
English (en)
Inventor
Constantin Rothkopf
Florian Kadner
Yannik Keller
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Technische Universitaet Darmstadt
Original Assignee
Technische Universitaet Darmstadt
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Technische Universitaet Darmstadt filed Critical Technische Universitaet Darmstadt
Priority to DE102021109845.9A priority Critical patent/DE102021109845A1/de
Priority to PCT/EP2022/060016 priority patent/WO2022223431A1/de
Publication of DE102021109845A1 publication Critical patent/DE102021109845A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/109Font handling; Temporal or kinetic typography

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

Es ist ein computerimplementiertes Verfahren zur Erzeugung von optimierten Fonts zur Darstellung auf einem Bildschirm (50) offenbart. Das Verfahren umfasst: Bilden (S110) eines Font-Raumes (110), in dem verschiedene Fonts durch Dimensionen des Font-Raumes (110) charakterisiert werden; Auswählen (S120) eines Startpunktes in dem Font-Raum (100), wobei zu dem Startpunkt ein zugehöriger Startfont gehört; fortlaufendes Ändern (S130) der Position im Font-Raum (110) und dadurch eine zur Darstellung genutzten Font zu ändern, um ein Optimum hinsichtlich zumindest eines Parameterwertes zu finden; und Bereitstellen (S140) der optimierten Fonts zur Darstellung auf dem Bildschirm (50).

Description

  • Die vorliegende Erfindung bezieht sich auf ein Verfahren und eine Vorrichtung zur Erzeugung von optimierten Fonts und insbesondere auf ein computerimplementiertes Verfahren und ein System zur Erzeugung von adaptierten Fonts.
  • HINTERGRUND
  • Digitaler Text ist zu einer der primären Möglichkeiten des Wissensaustauschs geworden, wobei der Text zum Lesen in der Regel auf einem Bildschirm über eine Druckschrift (Fonts) dargestellt wird. Traditionell folgt die Umwandlung von Text in die tatsächlich sichtbaren Buchstaben einem komplexen Prozess, der künstlerische und gestalterische Überlegungen bei der Erstellung von Schriftbildern, die Auswahl bestimmter Schriftarten und viele typografische Entscheidungen bezüglich der räumlichen Platzierung und Anordnung von Buchstaben und Wörtern umfasst.
  • Eine grundlegende Frage bei der Darstellung von Text ist, ob die Art und Weise, wie der Text dargestellt wird, einen Einfluss darauf hat, wie er gelesen, verarbeitet und verstanden wird. Zahlreiche empirische Untersuchungen haben gemessen, wie Eigenschaften von geschriebenem Text dessen Wahrnehmung beim Lesen sowohl auf Papier als auch auf elektronischen Geräten beeinflussen. Insgesamt sind die Ergebnisse dieser empirischen Untersuchungen zum Zusammenhang zwischen Lesegeschwindigkeit bzw. Leseverständnis und Schriftparametern jedoch gemischt und zum Teil widersprüchlich.
  • Einige dieser Fonts (konkrete Schriftarten) wurden entwickelt, um die Lesbarkeit für Menschen mit Sehschwäche zu verbessern. Wieder Andere wurden entwickelt, um die Lesbarkeit auf kleinen elektronischen Geräten zu erhöhen. Eine individuelle Optimierung ist damit jedoch nicht möglich.
  • Es besteht daher ein Bedarf nach einer Möglichkeit optimierte Fonts für Bildschirme bereitzustellen, die sich beliebig individuell anpassen lassen.
  • KURZBESCHREIBUNG DER ERFINDUNG
  • Zumindest ein Teil der obengenannten Probleme wird durch ein computerimplementiertes Verfahren zur Erzeugung von optimierten Fonts zur Darstellung auf einem Bildschirm nach Anspruch 1 und ein System nach Anspruch 9 gelöst. Die abhängigen Ansprüche beziehen sich auf vorteilhafte Weiterbildungen der Gegenstände der unabhängigen Ansprüche.
  • Die vorliegende Erfindung bezieht sich auf ein computerimplementiertes Verfahren zur Erzeugung von optimierten Fonts zur Darstellung auf einem Bildschirm. Das Verfahren umfasst die Schritte:
    • - Bilden eines Font-Raumes, in dem verschiedene Fonts durch Dimensionen des Font-Raumes charakterisiert werden;
    • - Auswählen eines Startpunktes in dem Font-Raum, wobei zu dem Startpunkt ein zugehöriger Startfont gehört;
    • - fortlaufendes Ändern der Position im Font-Raum, um dadurch eine zur Darstellung genutzten Font zu ändern und um ein Optimum hinsichtlich zumindest eines Parameterwertes zu finden; und
    • - Bereitstellen der optimierten Fonts zur Darstellung auf dem Bildschirm.
  • Optional wird für den zumindest einen Parameterwert eines oder mehr aus dem Folgenden verwendet:
    • - eine Speicherbelegung,
    • - eine Menge an Druckerschwärze bei einem Drucken von Texten,
    • - eine Scangeschwindigkeit,
    • - eine Geschwindigkeit bei automatischer Texterkennung,
    • - eine Lesegeschwindigkeit eines Nutzers.
  • Optional umfasst das Verfahren außerdem ein Erfassen einer Größe, die den zumindest einen Parameterwert bestimmt. Diese Größe kann beispielsweise von einem Sensor kommen, der den Parameterwert erfasst. Zum Beispiel kann die Speicherbelegung an einem Computer direkt erfasst werden. Gleiches trifft zu für einen verbrauchten Toner (Druckerschwärze) oder die Geschwindigkeit beim Scannen bzw. der Texterkennung. Die Lesegeschwindigkeit kann mit einem Augenscanner (der die Augenbewegung erfasst) oder über ein Benutzereingabe (z.B. beim Umblättern bei einem elektronischen Lesegerät) ermittelt werden.
  • Optional wird der Font-Raum als kontinuierlicher Raum mit einer Dimension N gebildet, der zwischen M bekannten Fonts interpoliert. Auf diese Weise werden die Fonts kontinuierlich geändert (d.h. nicht sprunghaft), wenn die Position im Font-Raum kontinuierlich geändert wird. Die Dimension N des Font-Raumes kann durch eine Kreuzvalidierung basierend auf den M bekannten Fonts bestimmt wird. Mögliche Werte sind z.B. N=2, 3, 4, 5, ... und M hat zumindest einen Wert von 10, 15, 20, 30. Im Prinzip können diese Werte aber beliebig sein.
  • Optional wird der Font-Raum wie durch folgende Schritte gebildet:
    • Aufstellen einer Daten-Matrix X, die in jeder Zeile oder jeder Spalte Einträge für jeweils einen bekannten Font umfasst;
    • Bilden einer Basis-Matrix W und einer Koeffizienten-Matrix H durch ein Minimieren einer Frobenius-Norm für eine Differenz aus der Daten-Matrix X und einem Produkt der Basis-Matrix W und der Koeffizienten-Matrix H:
    Min | X W × H | ,
    Figure DE102021109845A1_0001
    wobei die Basis-Matrix W eine M x N - Matrix ist. Das Produkt WxH ist das übliche Matrizenprodukt, bei dem die Werte der Zeilen und Spalten miteinander skalar multipliziert werden.
  • Optional umfasst das fortlaufende Ändern zum Finden des Optimums eine Anwendung zumindest eines der folgenden Verfahren:
    • eine Bayes'schen Optimierung, bei der sukzessiv Punkte im Font-Raum getestet werden, um Regionen im Font-Raum zu finden, in welchen der Parameterwert sich verbessert (z.B. Lesegeschwindigkeit steigt);
    • eine dichtebasierte Cluster-Analyse (z.B. das OPTICS-Verfahren), wobei der zu optimierende Parameterwert als vierte Dimension hinzugenommen wird und die Punkte eines Datensatzes linear geordnet werden, so dass räumlich nächste Nachbarn zusammen als Cluster angeordnet werden;
    • eine Varianzanalyse (z.B. ANOVA, MANOVA), um statistisch signifikante Unterschiede zwischen den Clustern zu ermitteln.
  • Es versteht sich, dass diese Schritte optional sind. Das System funktioniert prinzipiell auch ohne a) die dichtebasierte Cluster-Analyse und auch ohne b) eine Varianzanalyse. Diese beiden Methoden können verwendet werden, um a) die Schriftarten besser in ihrer Ähnlichkeit zu bewerten und b) zu untersuchen, ob die menschlichen Lesegeschwindigkeiten auch tatsächlich statistisch signifikant besser sind.
  • Dieses Verfahren oder zumindest Teile davon kann/können ebenfalls in Form von Anweisungen in Software oder auf einem Computerprogrammprodukt implementiert oder gespeichert sein, wobei gespeicherte Anweisungen in der Lage sind, die Schritte nach dem Verfahren auszuführen, wenn das Verfahren auf einem Prozessor läuft. Daher bezieht sich die vorliegende Erfindung ebenfalls auf Computerprogrammprodukt mit darauf gespeichertem Software-Code (Softwareanweisungen), der ausgebildet ist, um eines der zuvor beschriebenen Verfahren auszuführen, wenn der Software-Code durch eine Verarbeitungseinheit ausgeführt wird. Die Verarbeitungseinheit kann jede Form von Computer oder Steuereinheit sein, die einen entsprechenden Mikroprozessor aufweist, der einen Software-Code ausführen kann. Weitere Ausführungsbeispiele beziehen sich auch auf ein computerlesbares Speichermedium mit darauf gespeicherten Anweisungen, die bei Ausführung durch einen Computer diesen veranlassen, das Verfahren, wie es zuvor beschrieben wurde, auszuführen.
  • Weitere Ausführungsbeispiele beziehen sich auf ein System (Vorrichtung) zur Erzeugung von optimierten oder adaptierten Fonts zur Darstellung auf einem Bildschirm. Das System umfasst: ein Erzeugungsmodul, ein Optimierungsmodul und eine Ausgabeschnittstelle. Das Erzeugungsmodul ist ausgebildet, um einen Font-Raum zu bilden, in dem verschiedene Fonts durch Dimensionen des Font-Raumes charakterisiert werden. Das Optimierungsmodul ist ausgebildet, um einen Startpunktes in dem Font-Raum zu wählen, wobei zu dem Startpunkt ein zugehöriger Startfont gehört. Außerdem ist das Optimierungsmodul ausgebildet, um durch fortlaufendes Ändern der Position im Font-Raum einen zur Darstellung genutzten Font zu ändern, um ein Optimum hinsichtlich zumindest eines Parameterwertes zu finden. Die Ausgabeschnittstelle ist ausgebildet, für einen Bildschirm (Display) den optimierten Font zur Darstellung auf dem Bildschirm auszugeben.
  • Die bayessche Optimierung ist einem Fachmann als eine globale Optimierungsmethode für Black-Box-Funktionen bekannt, wobei iterativ Hyperparameterkonfigurationen ausprobiert werden, die nach einem aktuellen Modell vielversprechend erscheinen. Anschließend wird das Modell durch die neuen Erkenntnisse angepasst. Die bayessche Optimierung versucht so möglichst viele Beobachtungen über die Funktion zu sammeln, insbesondere über die Lage des Optimums. Sie berücksichtigt gleichzeitig die Erkundung von Bereichen, in denen wenig Wissen über die zu erwartende Performance vorliegt (Exploration) und die Ausnutzung von Wissen über Bereiche, in denen das Optimum erwartet wird (Exploitation).
  • Vorteile von Ausführungsbeispielen ergeben sich insbesondere daraus, dass adaptiv Schriften generiert und schrittweise optimiert werden können, um beispielsweise die individuelle Lesegeschwindigkeit zu erhöhen oder andere Parameter verbessern zu können. Das System basiert auf einem generativen Schriftraum, der datengesteuert durch nicht-negative Matrixfaktorisierung (NMF) von einem Satz von klassischen Schriften (z.B. 25) erlernt wird. Ausführungsbeispiele verwenden diesen Schriftraum, um neue Schriften zu generieren und messen, wie eine generierte Schrift die beispielhafte Lesegeschwindigkeit auf individueller Benutzerebene beeinflusst. Mittels Bayes'scher Optimierung wählen Ausführungsbeispiele aus dem generativen Fontmodell neue Fonts aus, um diejenigen Fonts zu finden, die zu einem optimalen Resultat führen (z.B. dem Leser ermöglichen, Texte schneller zu lesen).
  • Figurenliste
  • Die Ausführungsbeispiele der vorliegenden Erfindung werden besser verstanden anhand der folgenden detaillierten Beschreibung und den beiliegenden Zeichnungen der unterschiedlichen Ausführungsbeispiele, die jedoch nicht so verstanden werden sollten, dass sie die Offenbarung auf die spezifischen Ausführungsformen einschränken, sondern lediglich der Erklärung und dem Verständnis dienen.
    • 1 zeigt ein schematisches Flussdiagramm für ein Verfahren gemäß einem Ausführungsbeispiel der vorliegenden Erfindung.
    • 2 zeigt einen Verfahrensablauf der interaktiven Verbesserung der Lesbarkeit von Texten, die gemäß weiteren Ausführungsbeispielen auf einem Monitor dargestellt werden.
    • 3 zeigt ein Beispiel für Namen von 25 Schriften (Baseline-Schriften), die in ihrer jeweiligen Schriftart dargestellt sind.
    • 4 zeigt die Darstellung der 25 Schriften im Font-Raum.
    • 5A veranschaulicht den Einfluss der beispielhaften drei Dimensionen des Font-Raums für den Großbuchstaben K
    • 5B zeigt eine Interpolation gemäß Ausführungsbeispielen zwischen den Fonts Frutiger und Sabon.
    • 6A veranschaulicht die Cluster, die der höchsten Lesegeschwindigkeit entsprechen.
    • 6B zeigt die mittleren Lesegeschwindigkeiten für jedes der gefundenen Schriftcluster zusammen mit dem entsprechenden 95%-Konfidenzintervall (Glaubwürdigkeitsintervall) für jeden Probanden.
    • 7 zeigt Schriften, die aus den Zentroiden der besten Cluster für Probanden erzeugt wurden.
  • DETAILLIERTE BESCHREIBUNG
  • 1 zeigt ein schematisches Flussdiagramm für ein Verfahren zur Erzeugung von optimierten Fonts zur Darstellung auf einem Bildschirm.
  • Das Verfahren umfasst:
    • Bilden S110 eines Font-Raumes, in dem verschiedene Fonts durch Dimensionen des Font-Raumes charakterisiert werden;
    • Auswählen S120 eines Startpunktes in dem Font-Raum, wobei zu dem Startpunkt ein zugehöriger Startfont gehört;
    • Optimieren S130 zumindest eines Parameterwertes durch ein fortlaufendes Ändern der Position im Font-Raum, um dadurch eine zur Darstellung genutzten Font zu ändern; und
    • Bereitstellen S140 der optimierten Fonts zur Darstellung auf dem Bildschirm.
  • Es versteht sich, dass Ausführungsbeispiele verschiedenste Optimierungen durchführen können. Außerdem kann das Verfahren Computer-implementiert sein, d.h. es kann durch Anweisungen umgesetzt sein, die auf einem Speichermedium gespeichert sind und in der Lage sind, die Schritte des Verfahrens auszuführen, wenn die Anweisungen durch einen Prozessor ausgeführt werden. Die Anweisungen umfassen typischerweise eine oder mehrere Anweisungen, die auf unterschiedliche Art auf unterschiedlichen Medien in oder peripher zu einer Steuereinheit (mit einem Prozessor) gespeichert sein können, die, wenn sie gelesen und durch die Steuereinheit ausgeführt werden, die Steuereinheit dazu veranlassen, Funktionen, Funktionalitäten und Operationen auszuführen, die zum Ausführen eines Verfahrens gemäß der vorliegenden Erfindung notwendig sind.
  • Im Folgenden werden Ausführungsbeispiele vor allem in Bezug auf die Verbesserung der Lesegeschwindigkeit beschrieben. Es versteht sich aber, dass die in folgenden beschriebenen Ausführungsbeispiele in analoger oder gleicher Weise anwendbar sind auf andere Parameterwerte, die optimiert werden sollen (z.B. auf eine Speicherbelegung, eine Menge an Druckerschwärze bei einem Drucken von Texten, eine Scangeschwindigkeit, eine Geschwindigkeit bei automatischer Texterkennung etc.).
  • 2 zeigt eine Möglichkeit der interaktiven Verbesserung der beispielhaften Lesbarkeit von Texten, die auf einem Monitor (Bildschirm 50) dargestellt werden. Im unteren Teil (2) ist der Gesamtprozess veranschaulicht. Im oberen Teil (1) ist die iterative Optimierung genauer dargestellt.
  • Bezugnehmend auf den unteren Teil (2), werden nach einem Start (Schritt S10) eine Menge an klassischen Schriften bereitgestellt (Baseline 55). Dann wird zunächst ein generativer Schriftraum mit nicht-negativer Matrixfaktorisierung (NMF) aus einer Menge klassischer Schriftarten gebildet oder gelernt (Schritt S110). In diesem Raum generieren Ausführungsbeispiele durch aktives Lernen neue True-Type-Schriften (Schritt S120), rendern Texte (Schritt S130) mit der neuen Schrift und messen die beispielhafte Lesegeschwindigkeit (Schritt S135) der einzelnen Benutzer. Ob ein Optimum erreicht ist, wird im Schritt S137 festgestellt. Falls das der Fall ist, endet das Verfahren mit Schritt S140, wo die optimierte Schrift zur Darstellung bereitgestellt wird.
  • Der iterative Prozess der Schritte S120, S130, S135 und S137 ist im oberen Teil (1) genauer dargestellt. Dort ist zunächst der Schriftenraum 110 dargestellt, wobei der Prozess unter a) mit einem Startfont 105 beginnt. Als nächstes kann unter b) eine Frage gestellt werden, bei der Benutzer eine Wörter zu erkennen hat. Dann folgt unter c1) zunächst das Lesen eines Textes und unter c2) das Prüfen, ob der Benutzer aufmerksam gelesen hat (z.B. durch das Beantworten einer Frage). Mit den Schritten b), c1) und c2) kann somit die Lesegeschwindigkeit gemessen werden. Im Schritt d) erfolgt die Optimieren durch das Ändern der Position, d.h. es wird eine neue Position 106 im Font-Raum 110 gewählt (z.B. unter Nutzung einer Bayes'schen Optimierung). Der Vorgang wiederholt sich, bis bei dem Schritt S137, siehe unteren Teil (2), festgestellt wird, dass keine weiteren Fortschritte erreicht werden.
  • Die neuen Fonts (Schriften) werden im Schritt S130 (bzw. b), z.B. über die Bayes'sche Optimierung, sequentiell „on the fly“ generiert, um die beispielhafte Lesegeschwindigkeit der Benutzer progressiv zu erhöhen.
  • Durchgeführte Vergleichsexperimente zeigten, dass:
    • - dieses adaptive Schriftgenerierungssystem Regionen im Schriftraum 110 findet, die hohen Lesegeschwindigkeiten entsprechen,
    • - diese Schriften die beispielhafte Lesegeschwindigkeit der Teilnehmer signifikant erhöhen, und
    • - sich die gefundenen Schriften zwischen den einzelnen Lesern signifikant unterscheiden.
  • Es versteht sich, dass die Vorgehensweise auch auf andere Gebiete übertragen lässt. Die Optimierung kann hinsichtlich vieler Parameter durchgeführt werden, wozu u.a. Folgendes gehört: eine Speicherbelegung, eine Menge an Druckerschwärze bei einem Drucken von Texten, eine Scangeschwindigkeit, eine Geschwindigkeit bei automatischer Texterkennung.
  • Die einzelnen Schritte werden im Folgenden genauer beschrieben:
  • A. Lernen oder Erzeugen eines Schriftraums (Schritt S110)
  • Um neue Fonts auf Basis einer gegebenen Baseline 55 zu synthetisieren, nutzen Ausführungsbeispiele zunächst ein parametrisches generatives Fontmodell. Hier verwenden Ausführungsbeispiele ein sogenanntes „nicht-überwachtes Lernen“, um den kontinuierlichen Font-Raum 110 zu erhalten. Konkret nutzen Ausführungsbeispiele die nicht-negative Matrixfaktorisierung, NMF, als Methode zur Reduktion der Dimensionalität von Fonts. Um eine Grundmenge an Schriften, einschließlich Schriften mit Serifen und serifenlosen Schriften, abzudecken, kann eine Liste klassischer und populärer Schriften ausgewählt werden, die z.B. insgesamt 25 klassische Schriften enthält.
  • 3 zeigt ein Beispiel für Namen von 25 Schriften (Baseline-Schriften 55), die in ihrer jeweiligen Schriftart dargestellt sind. Zur Durchführung der NMF kann ein Graustufenbild erzeugt werden, das alle 26 Buchstaben in Groß- und Kleinschreibung, die Zahlen von null bis neun, die deutschen Umlaute, Klammern, Frage- und Ausrufezeichen, Punkt, Komma, Bindestrich, Doppelpunkt, Semikolon, Schrägstrich und Anführungszeichen aufweist. Die Buchstaben wurden nebeneinander angeordnet. Die Bilddaten wurden dann zusammen mit Informationen über die Ausrichtung jeder Glyphe im Font verkettet, die aus den entsprechenden Informationen in der TrueType-Datei gewonnen wurden.
  • Das NMF-Verfahren basiert auf der Idee, eine Matrix X mit dem Produkt zweier Matrizen W, H so zu approximieren, dass folgende Beziehung gilt: X W H .
    Figure DE102021109845A1_0002
  • Diese Faktorisierung erfolgt unter der Randbedingung, dass die Approximation die Frobenius-Norm | X W H |
    Figure DE102021109845A1_0003
    minimiert und dass alle Einträge von W, H nicht-negativ sind. Die Spalten von W repräsentieren dann die dimensionalen Merkmale und H enthält die Gewichte zur Kombination dieser Merkmale, um die Zeilen in X zu rekonstruieren.
  • Konkret können die Matrizen wie folgt gebildet werden. Die Matrix X ist die Datenmatrix. Diese umfasst alle Informationen der Baseline-Schriftarten 55 und soll jetzt in N Basisvektoren zerlegt werden, um den Schriftenraum aufzuspannen. Prinzipiell ist das ähnlich einer klassischen Hauptachsentransformation. Um die Datenmatrix X zu erhalten, können schwarz-weiß Bilder einer bestimmten Pixel-Größe (z.B. 2375 × 51) pro Schriftart erstellt werden, in der alle 26 Buchstaben des Alphabets in Klein- und Großbuchstaben, alle Ziffern von 0 bis 9, alle deutschen Umlaute, Klammern, Frage- und Ausrufezeichen, Komma, Anführungszeichen, Doppelpunkt, Semikolon, Slash und Satzpunkt zu sehen sind (insgesamt sind das 81 Zeichen). Alle diese Komponenten können nebeneinander ausgerichtet und dargestellt werden. Jeder dieser Pixel weist jetzt einen Grauwert auf, der z.B. eine Wert zwischen 0 und 255 darstellt (dabei ist 0 schwarz und 255 weiß und dazwischen interpolieren sich Graustufen).
  • Diese Bilder können „flach gemacht“ werden. Hierzu wird jede Reihe des Bildes einfach hintereinander angeordnet, wodurch eine eindimensionale Darstellung des Bildes erhalten wird. In unserem Fall ergibt sich dann also eine Liste von z.B. 2375 × 51=121125 Werten.
  • Zusätzlich wird für jede Baseline-Schriftart die Information über das Kerning, also den Abstand zwischen den Zeichen im Fließtext extrahiert. Die Information ist in *.ttf Schriftart-Dateien für jedes Zeichen gespeichert und umfasst ein Padding links, rechts und nach unten. Zusätzlich können Ausführungsbeispiele noch einen Wert, der die Zeilenhöhe angibt, und einen Wert für die Länge des Leerzeichens speichern. Bei 81 Zeichen ergibt sich auf diese Weise eine Liste für die Abstands-Informationen mit 81 × 3 + 2 = 245 Einträgen. Dieser wird an die Liste für das „flach gemachte“ Bild gehängt, sodass die Liste nun in dem Beispiel 121125 + 243 = 121370 Einträge umfasst.
  • Die Matrix X hat in jeder Reihe eine solche Liste, sodass ihre Dimension in dem gewählten Beispiel 25 × 121370 ist, da wir 25 Schriftarten in dieser eindimensionalen Darstellungsweise ausdrücken.
  • Als nächstes wird eine Repräsentation gesucht, um diese Matrix X zu rekonstruieren. Dazu werden zwei Matrizen W, H gesucht, die multipliziert wieder die Matrix X ergeben bzw. zumindest in guter Näherung. Die Gleichung (1) soll gelten, wobei W die Matrix der Basisvektoren und H die Matrix der Koeffizienten ist, die mit den Basisvektoren multipliziert die Schriftarten ergeben.
  • Das wird über die Minimierung der Frobenius-Norm umgesetzt, sodass der Rekonstruktionsfehler möglichst gering wird. Für die Umsetzung dieser Minimierung gibt es bereits bestehende Algorithmen (siehe https://en.wikipedia.org/wiki/Non-negative_matrix_factorization#Algorithms), die gemäß Ausführungsbeispielen hierzu genutzt werden können.
  • Für die 25 beispielhaften Baseline-Schriftarten 55 besitzt die Matrix W die Dimensionen 25 × N und die Matrix H die Dimension N × 121370, sodass bei einer Multiplikation beider Matrizen wieder die Dimension von Matrix X rekonstruiert wird. Der Größe N ist in diesem Fall ein freier Parameter und gibt in dem gewählten Fall die Dimensionen des aufzuspannenden Schriftraums 110 an. Beispielsweise kann N=3 gewählt werden, wobei die Erfindung nicht auf ein bestimmtes N eingeschränkt sein soll.
  • Um die Dimension sinnvoll zu wählen, kann ein Kompromiss zwischen möglichst guten Rekonstruktion und einer möglichst guter Generalisierung getroffen werden. Konkret heißt dies: Ist N sehr groß, können die originalen Schriftarten sehr gut approximiert werden, da sehr viele Merkmale genutzt werden, um die Schriften darzustellen. Gleichzeitig liegt hier aber das Problem, dass dann eventuell nur Merkmale gelernt werden, die bei den verwendeten Schriftarten vorliegen. Es entsteht dann die Schwierigkeit andere, neue Fonts zu rekonstruieren, die nicht in der Baseline 55 vorhanden sind und womöglich ganz andere Merkmale besitzen. Außerdem gibt es noch das Problem, dass die Optimierung der Lesegeschwindigkeit mittels Bayesian-Optimierung immer schwieriger wird, je mehr Dimensionen zusätzlich zu betrachten sind. Für eine kompakte Darstellung der Schriften ist es daher vorteilhaft ein N zu wählen, dass nicht zu groß und nicht zu klein ist. Zur technischen Umsetzung kann ein Verfahren aus dem maschinellen Lernen genutzt werden, welches dem Fachmann als Kreuzvalidierung (cross-validation) bekannt ist. Bei diesem Verfahren wird beurteilt, wie Ergebnisse einer statistischen Analyse auf einen unabhängigen Datensatz verallgemeinert werden können, wobei abgeschätzt wird, wie genau ein Vorhersagemodell in der Praxis funktionieren wird.
  • In den Spalten der Basis-Matrix W stehen jetzt die dimensionalen Merkmale, also die Basisvektoren. Die Koeffizienten-Matrix H gibt jetzt die Gewichte an, mit denen die Originalschriften rekonstruiert werden kann. Das konkrete Ausführungsbeispiel verwendet drei Komponenten (N=3), um eine ausreichend umfangreiche Schriftdarstellung zu gewährleisten und gleichzeitig eine Überanpassung an die Daten zu vermeiden.
  • Im Folgenden soll der Einfluss dieser drei Spalten beschrieben werden.
  • 4 zeigt die Darstellung der 25 Fonts im dreidimensionalen Font-Raum 110. Durch diese Darstellung ist es nun möglich, neue Fonts als Linearkombinationen der drei gelernten Font-Basisvektoren zu synthetisieren. Entsprechend kann eine Schrift durch einen Punkt in diesem dreidimensionalen Raum repräsentiert werden. Wenn beispielsweise zum Vergleich die zwei Schriftarten Clarendon und Dax genommen werden, dann hat Clarendon ausgeprägte Serifen, bei Dax jedoch nicht. Dies bedeutet, dass die Gewichte in der Koeffizienten-Matrix H für das Merkmal „Serife“, welches in den Spalten der Basis-Matrix W kodiert ist, deutlich größer für Clarendon ausfallen, um die Serifen wiederherzustellen. Das kann man sich wie „Tinte auf Papier drucken“ vorstellen. Dem Drucker wird die Anweisung gegeben, wie viel Tinte er bei den Serifen verwenden soll.
  • 5A zeigt beispielhaft den Einfluss der drei Dimensionen für den Großbuchstaben K. Die Betrachtung der Buchstabenwiedergabe zeigt, dass die erste und dritte Dimension mit der Skalierung der Buchstaben in vertikaler bzw. horizontaler Richtung zusammenhängen, während die zweite Dimension mit dem Vorhandensein und der Stärke der Serifen zusammenhängt. Dieses generative Modell ermöglicht eine Reduzierung des Speicherbedarfs für die Speicherung aller Schriften, die Erstellung neuer Schriften und auch die Interpolation zwischen den aktuellen Schriften.
  • 5B zeigt die Änderungen in drei Zeichen (Großbuchstabe K, Kleinbuchstabe y und Zahl 3), die sich aus der linearen Bewegung im euklidischen Raum 110 zwischen den Punkten ergeben, die den Schriftarten Frutiger und Sabon entsprechen, d.h. die Punkte (3.59, 0.7, 10.13) und (0.86, 11.77, 2.10) im Font-Raum 110. An den Rändern sind die Originalschriften, rechts daneben die NMF-Annäherungen und dazwischen die lineare Interpolation durch den Schriftraum. Die Koordinaten für beide Fonts in dem dreidimensionalen Raum sind angegeben. Es ist zu beachten, dass die Änderungen allmählich und gleichmäßig sind.
  • Ein Vorteil der streng positiven Komponenten des NMF-Verfahrens gemäß Ausführungsbeispielen gegenüber anderen Methoden wie der Hauptkomponentenanalyse oder Transformatorennetzen ist, dass die Basisfunktionen der Druckerschwärze auf Papier darstellen und damit als Elemente angesehen werden können, die tatsächlichen Glyphen ähneln. Im Gegensatz zu Ausführungsbeispielen leiden konventionelle Implementierungen unter Problemen bei der Ausrichtung und dem Kerning in Fließtexten. Qualitativ zufriedenstellende Texte können damit kaum generiert werden.
  • Wie bereits erwähnt, generieren Ausführungsbeispiele TrueType-Font (TTF)-Dateien on „the fly“, um Texte mit einer synthetisierten Schriftart erzeugen zu können. Eine lineare Kombination der durch NMF erhaltenen Basisvektoren ergibt einen Vektor, der ein neues Graustufen-Bitmap-Bild aller Glyphen im neuen synthetisierten Font sowie Ausrichtungsinformationen für jede einzelne Glyphe umfasst. Die Bitmap-Bilder der Glyphen können einzeln in Scalable Vector Graphics (SVG) umgewandelt und dann zu einem SVG-Font zusammengefügt werden. Der SVG-Font kann dann in das TTF-Format konvertiert werden. An dieser Stelle können auch die Ausrichtungsinformationen direkt in eine TTF-Datei eingefügt werden. Der gesamte Prozess der Schrifterzeugung funktioniert automatisch und in Echtzeit.
  • B. Optimierung (z.B. Bayes'sche Optimierungsverfahren: Schritt S130)
  • Gemäß Ausführungsbeispielen ist es möglich grundsätzlich neue Schriftarten zu generieren, die z.B. weder zu Baseline-Schriften 55 gehören noch anderweitig bekannt sind und die beispielweise die Lesegeschwindigkeit der Teilnehmer erhöhen oder einen anderen Parameter verbessern. Dazu wird ein Optimierungsverfahren gewählt, das entsprechende Regionen im dreidimensionalen Schriftraum 110 findet.
  • Als zugrundeliegende Annahme kann angenommen werden, dass sich die Schriftarten innerhalb des generativen Schriftraums (Font-Raum 110) gleichmäßig verändern und dass sich die beispielhafte Lesegeschwindigkeit der Teilnehmer entlang ähnlicher Schriftarten ebenfalls gleichmäßig verändert. Die zu optimierende Zielfunktion kann z.B. die Lesegeschwindigkeit eines Individuums in Abhängigkeit von einer bestimmten Schrift sein, die in diesem Fall durch einen Punkt in dem beispielhaften dreidimensionalen Schriftraum 110 (N=3) repräsentiert wird.
  • Da der Schriftraum 110 prinzipiell unendlich groß ist und nur eine begrenzte Anzahl von Texten dargestellt werden kann, nutzen Ausführungsbeispiele die Bayes'sche Optimierung, da es sich hierbei um ein bekanntes Optimierungsverfahren handelt, um Extrema komplexer Kostenfunktionen zu finden, wenn die Anzahl der Stichproben, die gezogen werden können, begrenzt ist.
  • Die Bayes'sche Optimierung beginnt mit einer apriori Unsicherheit über das dreidimensionale Schriftvolumen und wählt sukzessive Punkte innerhalb dieses Volumens aus, für die die beispielhafte Lesegeschwindigkeit durch ein Leseexperiment bewertet wird. Die Idee ist nun, mit einem dieser Punkte zu starten und anzunehmen, dass er einen Wert der zugrunde liegenden unbekannten Funktion darstellt. Indem die beispielhafte Lesegeschwindigkeit für diese Schriftart durch ein Experiment ermittelt wird, reduziert der Algorithmus die Unsicherheit an dieser Stelle im Schriftraum (siehe Schritte c1 und c2 aus der 2).
  • Um die nächste Schrift zum Testen auszuwählen, wird ein Kompromiss gesucht (siehe Schritt d) in 2), und zwar zwischen
    • (i) der Auswahl eines Bereichs im Schriftraum, für den die Unsicherheit über die beispielhafte Lesegeschwindigkeit groß ist, und
    • (ii) der Auswahl eines Bereichs im Schriftraum, in dem aufgrund früherer Leseexperimente eine hohe Lesegeschwindigkeit zu erwarten ist.
  • Dieser Selektionsprozess wird durch die sogenannte Akquisitionsfunktion und ihrer entsprechenden Parameter durchgeführt.
  • In der beispielhaften Bayes'sche Optimierung werden also Regionen, in denen die beispielhafte Lesegeschwindigkeit hoch ist, dichter und Regionen, in denen die Unsicherheit hoch ist, gleichmäßiger gesampelt (getestet).
  • C. Beispielhafter Versuchsaufbau und Daten
  • Zur Demonstration der Leistungsfähigkeit von Ausführungsbeispielen wird im Folgenden ein beispielhaftes Experiment beschrieben.
  • Der gesamte geschlossene Regelkreis des Experiments (siehe 2) bestand darin, durch den Bayes'schen Optimierungsalgorithmus eine Schrift im generativen Schriftraum 110 zu generieren und die beispielhafte Lesegeschwindigkeit einzelnen Teilnehmer zu nutzen, um neue Schriften zu generieren, für die die beispielhafte Lesegeschwindigkeit höher ist.
  • Hierzu nahmen 11 Probanden (5 Frauen, 6 Männer; Erwartungswert für Alter = 24 mit Standardabweichung = 2,64) an dem Experiment teil. Alle Teilnehmer waren deutsche Muttersprachler und hatten normales oder korrigiertes bis normales Sehvermögen. Die Teilnehmer wurden akquiriert von Diplomanden und Studenten der Forschungsgruppe und erhielten die erforderlichen Materialien zur Teilnahme. Alle Probanden erhielten eine detaillierte, mehrseitige Anleitung, um Einflüsse wie Sitzposition, Betrachtungsabstände, Raumbeleuchtung etc. möglichst ähnlich zu halten. Neben einer ausführlichen Anleitung und Informationen zum Experiment erhielten die Probanden auch eine ausführbare Datei mit dem Experiment. Die Probanden waren Laien in Bezug auf Verfahren der Schrifterzeugung und -auswahl.
  • Die Probanden lasen insgesamt 95 Texte, die einem deutschen Wiki für Kinder-Lexikontexte entnommen wurden. Diese Texte wurden ausgewählt, weil sie für erwachsene Muttersprachler leicht verständlich sind, so dass der Inhalt der Texte nur einen geringen Einfluss auf die beispielhafte Lesegeschwindigkeit hatte.
  • Außerdem wurden die Texte so ausgewählt, dass sie in ihrer Länge vergleichbar waren, d.h. die Wortanzahl der ersten 94 Texte lag im Durchschnitt bei 99,7 mit einem Minimum von 91 und einem Maximum von 109 Wörtern. Zusätzlich wurde ein einzelner Text mit nur 51 Wörtern ausgewählt, um zu überprüfen, ob die beispielhafte Lesegeschwindigkeit in Abhängigkeit von der Textlänge signifikant abweicht. Die Texte wurden für jeden Teilnehmer in einer zufälligen Reihenfolge präsentiert.
  • Um die beispielhafte Lesegeschwindigkeit eines Benutzers gemäß Ausführungsbeispiele zu messen, drückten die Probanden eine Taste, wenn sie mit dem Lesen eines Textes begannen und drückten die Taste erneut, wenn sie den Text zu Ende gelesen hatten. In einem Anwendungsszenario könnte die beispielhafte Lesegeschwindigkeit über die Seitenvorschubtaste auf einem E-Reader wie z. B. einem Kindle gemessen werden. Weitere Ausführungsbeispiele nutzen zur Messung der beispielhafte Lesegeschwindigkeit einen Eye-Tracker oder eine Standard-Webcam eines Computers.
  • Die Texte sollten aufmerksam und so schnell wie möglich, aber insgesamt nur einmal gelesen werden. Um zu überprüfen, ob die Texte gelesen und inhaltlich verarbeitet wurden, hatten die Probanden die Aufgabe, während des Lesens Wörter aus vorher festgelegten Kategorien zu erkennen. Jeder einzelne Versuch begann, gemäß Ausführungsbeispielen, mit der Vorstellung der Kategorie für den nächsten Text, z.B. wurde vor dem Lesen des Textes angegeben, dass anschließend Wörter aus der Kategorie Tiere erkannt werden sollten. Die Kategorie bezog sich nur auf den nächsten Text, und für jeden Versuch wurde eine neue Kategorie gewählt. Die Kategorie jedes Textes wurde zuvor unabhängig voneinander von zwei der Autoren dieser Studie benannt und jeder Proband erhielt die gleiche Kategorie für einen Text.
  • Für jeden Text gab es zwischen einem und zehn Wörtern, die zu den angewiesenen Kategorien gehörten (Mittelwert: 3,07, Standardabweichung: 2,05). Sobald eine Versuchsperson die Kategorie für den nächsten Versuch gelesen hatte, konnte sie die Leertaste benutzen, um den Text anzuzeigen und mit dem Lesen zu beginnen. Sobald der Text angezeigt wurde, begann auch die Zeitmessung für die beispielhafte Lesegeschwindigkeit. Um einen versehentlichen Start zu vermeiden, konnte die Aufgabe gemäß Ausführungsbeispiele erst einige Sekunden nach der Anzeige der Kategorie gestartet werden (dies wurde den Teilnehmern beispielhaft durch ein rot/grünes Signal angezeigt). Jedes Mal, wenn ein Begriff erkannt wurde, der zu der vorher festgelegten Kategorie passte, konnten die Teilnehmer die Leertaste drücken, um dies anzuzeigen. Z.B. sollte bei dem kurzen Satz: „Der schnelle braune Fuchs springt über den faulen Hund“ beim Lesen der Wörter Fuchs und Hund die Leertaste gedrückt werden, um anzuzeigen, dass die Objekte für die Kategorie Tiere erkannt wurden (siehe Schritt c1) aus 2). Sobald den Text zu Ende gelesen war, konnte die Enter-Taste gedrückt werden, um das Lesen und damit auch die Zeitmessung zu stoppen.
  • Zusätzlich wurde nach dem Lesen von elf Texten in zufälligen Versuchen während des Experiments eine Multiple-Choice-Frage gestellt (siehe Schritt c2) in 2), um zusätzlich das Textverständnis der Probanden zu testen. Die Frage bezog sich immer auf den zuletzt gelesenen Text und es wurden sechs mögliche Antworten vorgegeben, von denen genau eine richtig war. Nach dem Lösen einer der Multiple-Choice-Fragen erhielten die Teilnehmer ein Feedback zu ihrer Antwort. Dieses Feedback setzte sich aus der durchschnittlichen Lesegeschwindigkeit, der Anzahl der richtigen Erkennungen und der Korrektheit der Multiple-Choice-Frage zusammen. Diese drei Komponenten wurden zu einer Punktzahl zusammengefasst, um die Teilnehmer weiter zu motivieren, schnell, aber auch richtig und aufmerksam zu lesen.
  • Um zu untersuchen, ob es Regionen des generativen Schriftraums 110 gibt, die höhere Lesegeschwindigkeiten erlauben, lasen die Probanden die 95 Texte in verschiedenen synthetisierten Schriften. Da der dreidimensionale Raum unendlich groß ist und nur eine begrenzte Anzahl von Texten präsentiert werden kann, wurde die Bayessche globale Optimierung mit dem Gauß-Verfahren verwendet, um mit nur 95 Proben verschiedener Fonts auszukommen, wobei die zu optimierende Zielfunktion die beispielhafte Lesegeschwindigkeit ist, die durch die drei Dimensionen parametriert ist. Um Regionen im Schriftraum mit höheren Lesegeschwindigkeiten zu erkennen, verwenden Ausführungsbeispiele ein Clustering-Verfahren, das neben den drei Schriftdimensionen für jeden einzelnen Teilnehmer die Lesegeschwindigkeit als vierte Dimension einbezieht.
  • Zum Clustern der Datenpunkte kann der OPTICS-Algorithmus verwendet werden. Hierbei handelt es sich um ein dichtebasiertes Clusteringverfahren, das die Punkte eines Datensatzes linear ordnet, sodass räumlich nächste Nachbarn zusammen als Cluster angeordnet werden können. Dies hat gegenüber anderen Verfahren, wie z.B. k-Means, den Vorteil, dass die Anzahl der Cluster nicht im Voraus festgelegt werden muss und Ausreißer, die keinem Cluster zugeordnet werden, erkannt werden können. Letzteres ist bei der Analyse der Daten nützlich, da so Phasen mit Abweichungen in der Lesegeschwindigkeit aufgrund von Aufmerksamkeitsfehlern ausgeschlossen werden konnten.
  • Als freier Parameter des Algorithmus wird die Mindestanzahl der Datenpunkte definiert, die in einem Cluster vorhanden sein sollen. Dieser Parameter wurde auf n = 5 gesetzt (er sollte das Doppelte der Dimension minus 1 sein). 6A veranschaulicht die besten Cluster 601, 602, 603, ... , die der höchsten Lesegeschwindigkeit entsprechen. Ein erste Cluster 601 entspricht einem ersten Probanden, ein zweites Cluster 601 entspricht einem zweiten Probanden, ein drittes Cluster 601 entspricht einem dritten Probanden usw. Die Cluster 601, 602, ... werden durch ein Ellipsoid dargestellt, mit dem Zentrum aller zugehörigen Datenpunkte und dem Standardfehler in allen drei Dimensionen als Hauptachsen.
  • 6B zeigt gefundene Cluster 601, 602, 603, ... für jeden der 11 Probanden basierend auf den dichtebasierten Algorithmus zur Clusteranalyse (OPTICS) und die zugehörigen mittleren Lesegeschwindigkeiten zusammen mit ihren Standardfehlern. Die mittleren Lesegeschwindigkeiten aller Cluster 601, 602, 603, ... wurden für jeden Probanden in eine Rangfolge gebracht. Es hat sich gezeigt, dass die Standardfehler der beispielhafte Lesegeschwindigkeit im Vergleich zu den mittleren Lesegeschwindigkeiten für jedes Cluster 601, 602, 603, ... und jeden Probanden sehr klein waren
  • D. Verbesserung der beispielhaften Lesegeschwindigkeit
  • Um zu überprüfen, ob Schriftcluster signifikant unterschiedlichen Lesegeschwindigkeiten entsprechen, wird gemäß Ausführungsbeispielen eine Bayes'sche Varianzanalyse (ANOVA) berechnet. Als Nullhypothese kann die Annahme genommen werden, dass es keinen signifikanten Unterschied zwischen den Texten gab. Sogenannte Bayes-Faktoren geben dann entscheidende Hinweise gegen die Nullhypothese, sodass sich die Cluster signifikant in ihrer mittleren Lesegeschwindigkeit unterscheiden. Gemäß Ausführungsbeispielen ermittelte eine multivariate Varianzanalyse (MANOVA) statistisch signifikante Unterschiede in der Lesegeschwindigkeit zwischen den Clustern der höchsten Lesegeschwindigkeit der Probanden, F (10, 75) = 3,24, p < .001; Pillai Trace = 0,91. Die entsprechende ANOVA für jede einzelne Dimension wurde durchgeführt und ergab drei signifikante Unterschiede D1 : F (10, 75) = 2,01, p < .05; D2 : F(10, 75) = 3,63, p < .05; D3 : F(10,75) =4,02, p < .05 (F ist das Resultat des F-Testes bzw. das Verhältnis der Varianzen zwischen und innerhalb der Cluster und p gibt die Wahrscheinlichkeit der Glaubwürdigkeit der Nullhypothese). Diese Werte sind die genauen Angaben bzgl. des Ergebnisses des statistischen Tests ANOVA. Prinzipiell reichen die p-Werte, um die Signifikanz zu belegen. Sie sind darüber hinaus gehende, detaillierte Angaben über die Signifikanz der verbesserten Lesegeschwindigkeit aufgrund des Experiments mit den Probanden.
  • Daher sind die Unterschiede zwischen den Clustern aus der 6A der höchsten Lesegeschwindigkeit der Individuen statistisch signifikant. Die gemäß Ausführungsbeispielen erzeugte Verteilung ist aber nicht nur statistisch signifikant unterschiedlich, sondern gleichzeitig ist auch die Lesegeschwindigkeit im Durchschnitt statistisch signifikant schneller. Alle Probanden zeigten eine verbesserte Lesegeschwindigkeit.
  • 7 zeigt schließlich ein Pangramm für drei Beispiele (Probanden), geschrieben in der jeweiligen Schriftart des Zentrums des Clusters mit der höchsten Lesegeschwindigkeit. Die Fonts sind TrueType-Schriften und können als solche genutzt werden.
  • Wesentliche Aspekte von Ausführungsbeispiele können wir folgt zusammengefasst werden:
    • Ausführungsbeispiele beziehen sich auf ein System (Human-in-the-Loop) zur Verbesserung eines Parameters wie der Lesbarkeit von digital gerendertem Text. Das System verwendet einen gelernten generativen Schriftraum 110 und eine Bayes'sche Optimierung, um Schriften zu generieren, die im Hinblick auf die beispielhafte individuelle Lesegeschwindigkeit des Benutzers bewertet werden. Ausführungsbeispiele stellen Variation der Schriftmerkmale in einem spezifischen, durch NMF gelernten Schriftraum dar. Mit Hilfe dieser Darstellung untersuchen Ausführungsbeispiele die beispielhafte Lesegeschwindigkeit von einzelnen Benutzern mit Hilfe der Bayes'schen Optimierung.
  • Ergebnisse von Benutzerstudien haben die Machbarkeit des Ansatzes gezeigt, sowohl in Bezug auf die benötigten Daten, um Schriften zu finden, die die individuelle Lesegeschwindigkeit erhöhen, als auch in Bezug auf die statistisch signifikante Größenordnung der Verbesserung der individuellen Lesegeschwindigkeit. Schließlich bestehen signifikante Unterschiede zwischen den Probanden in den Schriftregionen, die Schriften enthalten, die mit hoher Lesbarkeit assoziiert sind. Die generierten Schriften können tatsächliche TrueType-Schriftdateien sein, die installiert und verwendet werden können.
  • Obwohl sich die in dem Experiment gefundenen, die beispielhafte Lesegeschwindigkeit maximierenden Schriften zwischen den einzelnen Probanden signifikant unterschieden, kann daraus nicht geschlossen werden, dass das System eine einzige Schrift findet, die die beispielhafte Lesegeschwindigkeit für einen einzelnen Probanden oder über alle Probanden hinweg unveränderlich maximiert. Vielmehr kann das System gemäß Ausführungsbeispiele dynamisch und kontinuierlich die Schriftarten für ein Individuum erstellen, die die beispielhafte Lesegeschwindigkeit zum Zeitpunkt der Nutzung maximiert. Dies kann vom Inhalt des Textes abhängen, davon, ob man erschöpft ist oder vielleicht unterschiedliche Anzeigegeräte verwendet. Die empirischen Daten, die Ausführungsbeispiele in den Experimenten erhalten haben, belegen eindeutig, dass das System gemäß Ausführungsbeispielen die beispielhafte Lesegeschwindigkeit aller Teilnehmer erhöht.
  • Während in der Vergangenheit konstante, variable und parametrische Schriften entworfen und entwickelt wurden, handelt es sich bei Ausführungsbeispiele um ein interaktives System, das neue Schriften (d.h. unbekannte Schriften) auf Basis der Interaktion des Benutzers mit dem Text generiert. Das System erstellt gemäß Ausführungsbeispiele dynamisch und kontinuierlich Fonts für eine Person, was in der Studie die beispielhafte Lesegeschwindigkeit zum Zeitpunkt der Nutzung maximierte. Die Bewertung des Systems in einer Nutzerstudie zeigte die Machbarkeit des Ansatzes. Das System kann zusammen mit einem Eye-Tracker oder mit einer Webcam eingesetzt werden, um die beispielhafte Lesegeschwindigkeit automatisch zu messen.
  • Die in der Beschreibung, den Ansprüchen und den Figuren offenbarten Merkmale der Erfindung können sowohl einzeln als auch in beliebiger Kombination für die Verwirklichung der Erfindung wesentlich sein.
  • Bezugszeichenliste
  • 50
    Bildschirm
    55
    Baseline-Fonts
    110
    Font-Raum (Schriftenraum)
    105
    Startpunkt
    106
    geänderte Position

Claims (9)

  1. Computerimplementiertes Verfahren zur Erzeugung von optimierten Fonts zur Darstellung auf einem Bildschirm (50), das Verfahren umfasst: Bilden (S110) eines Font-Raumes (110), in dem verschiedene Fonts durch Dimensionen des Font-Raumes charakterisiert werden; Auswählen (S120) eines Startpunktes (105) in dem Font-Raum (110), wobei zu dem Startpunkt ein zugehöriger Startfont gehört; fortlaufendes Ändern (S130) einer Position (106) im Font-Raum (110), um dadurch eine zur Darstellung genutzten Font zu ändern und um ein Optimum hinsichtlich zumindest eines Parameterwertes zu finden; und Bereitstellen (S140) der optimierten Fonts zur Darstellung auf dem Bildschirm (50).
  2. Verfahren nach Anspruch 1, wobei für den zumindest einen Parameterwert eines oder mehr aus dem Folgenden verwendet wird: - eine Speicherbelegung, - eine Menge an Druckerschwärze bei einem Drucken von Texten, - eine Scangeschwindigkeit, - eine Geschwindigkeit bei automatischer Texterkennung, - eine Lesegeschwindigkeit eines Nutzers.
  3. Verfahren nach Anspruch 1 oder Anspruch 2, das weiter ein Erfassen (S135) einer Größe umfasst, die den zumindest einen Parameterwert bestimmt.
  4. Verfahren nach einem der vorhergehenden Ansprüche, wobei der Font-Raum (110) als kontinuierlicher Raum mit einer Dimension N gebildet wird, der zwischen M bekannten Fonts interpoliert.
  5. Verfahren nach Anspruch 4, wobei die Dimension N des Font-Raumes (110) durch eine Kreuzvalidierung basierend auf den M bekannten Fonts bestimmt wird.
  6. Verfahren nach Anspruch 4 oder Anspruch 5, wobei der Font-Raum (110) wie folgt gebildet wird: Aufstellen einer Daten-Matrix (X), die in jeder Zeile oder Spalte Einträge für jeweils einen bekannten Font umfasst; Bilden einer Basis-Matrix (W) und einer Koeffizienten-Matrix (H) durch ein Minimieren einer Frobenius-Norm für eine Differenz aus der Daten-Matrix (X) und einem Produkt der Basis-Matrix (W) und der Koeffizienten-Matrix (H): Min | X W × H | ,
    Figure DE102021109845A1_0004
    wobei die Basis-Matrix (W) eine Dimension von M × N hat.
  7. Verfahren nach einem der Ansprüche 1 bis 6, wobei das fortlaufendes Ändern (S130) zum Finden des Optimums eine Anwendung zumindest eines der folgenden Verfahren umfasst: eine Bayes'schen Optimierung (S132), bei der sukzessiv Punkte im Font-Raum (110) getestet werden, um Regionen im Font-Raum (110) zu finden, in welchen der Parameterwert sich verbessert; eine dichtebasierte Cluster-Analyse (S134), wobei der zu optimierende Parameterwert als vierte Dimension hinzugenommen wird und die Punkte eines Datensatzes linear ordnet werden, um räumlich nächste Nachbarn zusammen als Cluster anzuordnen; eine Varianzanalyse (S136) zum Ermitteln von statistisch signifikante Unterschiede zwischen den Clustern.
  8. Computerlesbares Speichermedium mit darauf gespeicherten Anweisungen, die bei Ausführung durch einen Computer diesen veranlassen, das Verfahren nach einem der Ansprüche 1 bis 7 auszuführen.
  9. System zur Erzeugung von optimierten Fonts zur Darstellung auf einem Bildschirm (50), das System umfasst: ein Erzeugungsmodul, das ausgebildet ist, um einen Font-Raum (110) zu bilden, in dem verschiedene Fonts durch Dimensionen des Font-Raumes (110) charakterisiert werden; ein Optimierungsmodul, das ausgebildet ist, um einen Startpunktes (105) in dem Font-Raum (110) zu wählen, zu dem Startpunkt ein zugehöriger Startfont gehört, und durch fortlaufendes Ändern der Position (106) im Font-Raum (110) einen zur Darstellung genutzten Font zu ändern, um ein Optimum hinsichtlich zumindest eines Parameterwertes zu finden; und eine Ausgabeschnittstelle für einen Bildschirm (50), die ausgebildet ist, um den optimierten Font zur Darstellung auf dem Bildschirm (50) auszugeben.
DE102021109845.9A 2021-04-19 2021-04-19 Verfahren und Vorrichtung zur Erzeugung von optimierten Fonts Pending DE102021109845A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102021109845.9A DE102021109845A1 (de) 2021-04-19 2021-04-19 Verfahren und Vorrichtung zur Erzeugung von optimierten Fonts
PCT/EP2022/060016 WO2022223431A1 (de) 2021-04-19 2022-04-14 Verfahren und vorrichtung zur erzeugung von optimierten fonts

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102021109845.9A DE102021109845A1 (de) 2021-04-19 2021-04-19 Verfahren und Vorrichtung zur Erzeugung von optimierten Fonts

Publications (1)

Publication Number Publication Date
DE102021109845A1 true DE102021109845A1 (de) 2022-10-20

Family

ID=81346174

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021109845.9A Pending DE102021109845A1 (de) 2021-04-19 2021-04-19 Verfahren und Vorrichtung zur Erzeugung von optimierten Fonts

Country Status (2)

Country Link
DE (1) DE102021109845A1 (de)
WO (1) WO2022223431A1 (de)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160117977A1 (en) 2014-10-24 2016-04-28 Indian Institute Of Technology Kanpur Convergent monotonic matrix factorization based entire frame image processing
CN108804397A (zh) 2018-06-12 2018-11-13 华南理工大学 一种基于少量目标字体的汉字字体转换生成的方法
DE102018005611A1 (de) 2017-10-11 2019-04-18 Adobe Inc. Automatische Paarbildung von Fonts unter Verwendung des asymmetrischen Metriklernens

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004101937A (ja) * 2002-09-10 2004-04-02 Seiko Epson Corp フォント最適化方法およびフォント最適化装置ならびにフォント最適化処理プログラム
JP5733617B2 (ja) * 2011-04-27 2015-06-10 いすゞ自動車株式会社 可読性評価方法、可読性評価装置及び可読性評価プログラム
WO2020124455A1 (zh) * 2018-12-19 2020-06-25 深圳市欢太科技有限公司 一种优化字体的方法及相关设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160117977A1 (en) 2014-10-24 2016-04-28 Indian Institute Of Technology Kanpur Convergent monotonic matrix factorization based entire frame image processing
DE102018005611A1 (de) 2017-10-11 2019-04-18 Adobe Inc. Automatische Paarbildung von Fonts unter Verwendung des asymmetrischen Metriklernens
CN108804397A (zh) 2018-06-12 2018-11-13 华南理工大学 一种基于少量目标字体的汉字字体转换生成的方法

Also Published As

Publication number Publication date
WO2022223431A1 (de) 2022-10-27

Similar Documents

Publication Publication Date Title
DE112017002799B4 (de) Verfahren und system zum generieren multimodaler digitaler bilder
Pelli et al. Feature detection and letter identification
DE60204005T2 (de) Verfahren und einrichtung zur erkennung eines handschriftlichen musters
DE102019000171A1 (de) Digitalumgebung zur Verortung semantischer Klassen
DE102021209201A1 (de) Szenentext-Erkennungsverfahren und -System auf Basis sequenzieller Verformung
DE3716787C2 (de)
DE69932167T2 (de) Zeichenerkennung
DE69333431T2 (de) Verfahren zum Erkennen von handgeschriebenen Symbolen
DE102019001911A1 (de) Aufbauen von neuen Zeichensatz-Bildzeichen aus Teilbetrachtungen
DE102018007936A1 (de) Beantworten von Fragen für Datenvisualisierungen
DE69434405T2 (de) Verfahren zur Erzeugung eines visuellen Entwurfs
DE69133362T2 (de) Dokumentenverarbeitungs-verfahren und -gerät, entsprechende Program und Speichereinheit
DE102011079443A1 (de) Lerngewichtungen von Schriftarten für getippte Proben bei der Handschriftenschlüsselwortauffindung
DE19705757A1 (de) Verfahren und Gerät für das Design eines hoch-zuverlässigen Mustererkennungs-Systems
Pelli et al. Identifying letters
Kadner et al. Adaptifont: Increasing individuals’ reading speed with a generative font model and bayesian optimization
DE19530829A1 (de) Verfahren zum elektronischen Wiederauffinden von einem Dokument hinzugefügter Informationen
Srivatsan et al. A deep factorization of style and structure in fonts
DE19512185B4 (de) Verfahren und Vorrichtung zum Erzeugen von Fontdaten
DE4119091A1 (de) Verfahren und einrichtung zum erkennen von zeichen
DE102018108856A1 (de) Tiefes verstärktes Modell für abstrahierungsfähige Verdichtung
EP2679147B1 (de) Verfahren und Vorrichtung zur Kodierung von Augen- und Blickverlaufsdaten
DE3935558A1 (de) Vorrichtung zum konvertieren von bildumrissdarstellungsdaten in punktmusterdaten zum erzeugen von punkten
DE112017007247T5 (de) Bildverarbeitungsvorrichtung
DE102020002302A1 (de) Bildmodifikationsstile, die aus einem beschränkten Satz von modifizierten Bildern gelernt werden

Legal Events

Date Code Title Description
R163 Identified publications notified