DE69333431T2 - Verfahren zum Erkennen von handgeschriebenen Symbolen - Google Patents

Verfahren zum Erkennen von handgeschriebenen Symbolen Download PDF

Info

Publication number
DE69333431T2
DE69333431T2 DE69333431T DE69333431T DE69333431T2 DE 69333431 T2 DE69333431 T2 DE 69333431T2 DE 69333431 T DE69333431 T DE 69333431T DE 69333431 T DE69333431 T DE 69333431T DE 69333431 T2 DE69333431 T2 DE 69333431T2
Authority
DE
Germany
Prior art keywords
symbol
model
samples
symbols
unknown
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.)
Expired - Lifetime
Application number
DE69333431T
Other languages
English (en)
Other versions
DE69333431D1 (de
Inventor
Frank William Princeton Sinden
Gordon Thomas Gillette Wilfong
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.)
AT&T Corp
Original Assignee
AT&T Corp
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 AT&T Corp filed Critical AT&T Corp
Application granted granted Critical
Publication of DE69333431D1 publication Critical patent/DE69333431D1/de
Publication of DE69333431T2 publication Critical patent/DE69333431T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C9/00Individual registration on entry or exit
    • G07C9/30Individual registration on entry or exit not involving the use of a pass
    • G07C9/32Individual registration on entry or exit not involving the use of a pass in combination with an identity check
    • G07C9/35Individual registration on entry or exit not involving the use of a pass in combination with an identity check by means of a handwritten signature
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/32Digital ink
    • G06V30/333Preprocessing; Feature extraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/32Digital ink
    • G06V30/36Matching; Classification
    • G06V30/373Matching; Classification using a special pattern or subpattern alphabet

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Character Discrimination (AREA)
  • Character Input (AREA)

Description

  • TECHNISCHES GEBIET
  • Diese Erfindung betrifft die Symbolerkennung und insbesondere die Erkennung von Symbolen, die von Hand auf einem Digitalisiertablett geschrieben werden.
  • ALLGEMEINER STAND DER TECHNIK
  • Dank der immer schnelleren Computer und Geräte, wie zum Beispiel Digitalisierungstabletts oder Tabletts für die Eingabe handschriftlicher Informationen und/oder Symbole in Computer, wird es immer wünschenswerter, Methoden zu entwickeln, um Zeichen oder Symbole zur weiteren Verarbeitung zu erkennen und dieses Erkennen in Echtzeit online durchzuführen. Eine Anzahl von Verfahren des früheren Stands der Technik zum Erkennen handschriftlicher Symbole griffen auf das Erkennen von Features in den Symbolen zurück, zum Beispiel Oberlängen, Unterlängen, Schließen von Buchstaben, das Aufsetzen von Punkten auf i's und das Durchstreichen von t's. Viele Verfahren des früheren Stands der Technik sind in dem Artikel von Tappert et al. mit dem Titel „The State of the Art in On-Line Handwriting Recognition", veröffentlicht in IEEE Transactions on Pattern Analysis and Machine Intelligence, Band 12, Nr. 8 (August 1990) beschrieben. Andere Verfahren ziehen neurale Netze heran, wie zum Beispiel im USamerikanischen Patent Nr. 5 052 043 ausgestellt auf Gaborski. Weitere Verfahren analysieren Striche, wie in den US-Patenten Nr. 5 023 918 und 5 038 382 ausgestellt auf Lipscomb und in dem Artikel von Odaka et al. mit dem Titel „On-Line Recognition of Handwritten Characters by Approximating Each Stroke with Several Points", veröffentlicht in IEEE Transactions on Systems, Man, and Cybernetics, Band SMC-12, Nr. 6 (November/Dezember 1982) gezeigt.
  • Ein weiteres gebräuchliches Verfahren ist der Kurvenabgleich, bei dem man versucht, jedes geschriebene Symbol mit einer Bibliothek gespeicherter Kurven abzugleichen, um die beste Entsprechung zu finden. Der Kurvenabgleich ist in dem oben genannten Artikel von Tappert beschrieben. Kurvenabgleichtechniken verwenden im Allgemeinen eine Normalisierungsroutine, um die Unterschiede in Translation, Orientierung und Maßstab der Symbole, die zu erkennen sind, zu minimieren. Manchmal ist der Benutzer gezwungen, sich an das Schreiben an bestimmten Stellen auf einem Digitalisiertablett und/oder Schreiben mit einer spezifischen Orientierung zu halten. Offensichtlich ist es wünschenswert, dem Benutzer so wenige Zwänge aufzuerlegen wie möglich.
  • Die Fähigkeit, viele Arten von Symbolen zu erkennen, ist erforderlich, darunter Symbole wie alphanumerische Zeichen, Handschrift, chinesische oder Kanji-Zeichen, elektrische, chemische und architektonische Symbole und so weiter. Bei bestimmten Anwendungen ist es wünschenswert festzustellen, wer ein Symbol eingegeben hat, zum Beispiel beim Verifizieren von Unterschriften. Manchmal wird das Kräftemuster, das entsteht, wenn eine Unterschrift geschrieben wird, herangezogen, um eine Unterschrift zu identifizieren, wie zum Beispiel in der Patentschrift US Nr. 5 022 086 ausgestellt auf Crane et al. Bei anderen Anwendungen ist es wünschenswert, über ein vom Benutzer unabhängiges System zu verfügen, bei dem eine Anzahl von Benutzern ihre eigenen Versionen des gleichen Symbols eingeben, und das Symbol trotzdem richtig zu identifizieren.
  • Eine Anzahl von Ansätzen zum Erkennen handschriftlicher Symbole, die Drehungen und ähnliche Transformationen anpassen, befindet sich in IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH AND SIGNAL PROCESSING 23. März 1992, SAN FRANCISCO, CA US, Seiten 111-145 – 111-148, Li-Xin Wang & Jerry M. Mendel: „A FUZZY APPROACH TO HAND-WRITTEN ROTATION-INVARIANT CHARACTER RECOGNITION", IBM TECHNICAL ,DISCLOSURE BULLETIN, Band 24, Nr. 6, November 1981, Seiten 2897-2909, J.M. Kurtzberg und C. C. Tappert: „SYMBOL RECOGNITION SYSTEM BY ELASTIC MATCHING";
  • IBM TECHNICAL DISCLOSURE BULLETIN, Band 24, Nr. 11A, April 1982, Seiten 5404-5409, C. C. Tappert: „CURSIVE SCRIPT RECOGNITION SYSTEM BY ELASTIC MATCHING";
  • SYSTEMS AND COMPUTERS IN JAPAN, Band 20, Nr. 7, 1989, Seiten 10-19, T. Wakahara: „On-Line Handwritten Character Recognition Using Local Affine Transformation"; und
  • IMAGE UNDERSTANDING & MACHINE VISION, TECHNICAL DIGEST, 12.-14. Juni 1989, North Falmouth, US, Seiten 2-5, M. Lee: „Recovering the Affine Transformation of Images by Using Moments and Invariant Axes".
  • Unterschiedliche Formen von Geräten sind derzeit zur Eingabe handschriftlicher Information in Echtzeit direkt in einen Computer verfügbar, wie zum Beispiel Digitalisiertabletts und Lichtstifte. Lesegeräte für optische Zeichen können für zuvor geschriebene Information verwendet werden, wie wir jedoch sehen werden, kann nützliche Information verloren gehen, wenn die tatsächliche Sequenz des Schreibens nicht erfasst wird.
  • KURZDARSTELLUNG DER ERFINDUNG
  • Ein unbekanntes handschriftliches Symbol, das auf ein Digitalisiertablett geschrieben wird, wird mit Symbolen in einem voraus festgelegten „Alphabet" oder in einer Bibliothek von Modellsymbolen verglichen, und die nächste Übereinstimmung wird ausgewählt. Das Erkennen ist unabhängig von der Größe, Position oder Orientierung der Symbole. Das Alphabet kann jede beliebige Sammlung von Symbolen sein, wie zum Beispiel alphanumerische, chinesische oder Kanji-Zeichen oder Wörter in Handschrift, und wird durch Schreiben mindestens eines Beispiels jedes Symbols auf dem Tablett angelegt. Eine Sequenz von Abtastwerten der Stiftstellung wird aufgezeichnet, während ein Symbol geschrieben wird. Die Abtastwerte bilden einen Vektor, der dann translatiert wird, sodass der Schwerpunkt des Symbols an einem Ursprung liegt. Der Vergleich, der leicht in Echtzeit erfolgen kann, umfasst das Berechnen eines Korrelationsfaktors aus skalaren Produkten des Vektors für das unbekannte Symbol mit zwei Versionen des Vektors für jedes Modellsymbol und Auswählen des Modellsymbols, das den höchsten Korrelationsfaktor hat. Wenn zwischen Modellsymbolen mit ähnlichen Korrelationsfaktoren unterschieden werden soll, kann der Vergleich auch das Berechnen eines Drehungsfaktors aus solchen Vektoren zum Durchführen dieser Auswahl umfassen. Ausführungsformen der Erfindung, die entweder vom Benutzer unabhängig, vom Benutzer abhängig sind oder von sich von einer solchen Form zur anderen entwickeln, können konfiguriert werden.
  • KURZE BESCHREIBUNG DER ZEICHNUNG
  • 1 ist ein Blockdiagramm eines Systems zum Durchführen der Erfindung.
  • 2 ist ein Flussdiagramm, das zeigt, wie Abtastwerte eines handschriftlichen Symbols abgenommen werden.
  • 3 ist ein Diagramm, das handschriftliche Symbole und Punkte zeigt, die Abtastwerte darstellen, die für solche Symbole abgenommen werden.
  • 4 ist ein Flussdiagramm, das das erfindungsgemäße Verfahren zum Vergleichen von Abtastwerten für ein unbekanntes Symbol mit Abtastwerten von Modellsymbolen zum Identifizieren des unbekannten Symbols zeigt.
  • 5 ist ein Diagramm, das darstellt, wie die Anzahl von Abtastwerten für jeden Strich in einem Symbol zwischen einem unbekannten Symbol und einem Modellsymbol angeglichen wird.
  • 6 ist ein Diagramm, das darstellt, wie Symbole, die Drehungen voneinander sind, unterschieden werden.
  • 7 ist ähnlich wie das Flussdiagramm der 4, zeigt jedoch zusätzliche Schritte zum Vergleichen der Drehung eines unbekannten Symbols mit Modellsymbolen.
  • 8 ist ein Flussdiagramm, das ein Verfahren zeigt, das von dem erfindungsgemäßen System verwendet werden kann, um seine Fähigkeit zu verstärken, verschiedene Versionen des gleichen Symbols zu erkennen.
  • DETAILLIERTE BESCHREIBUNG
  • 1 ist ein Blockdiagramm eines Systems zum Durchführen der Erfindung. Die Symbole werden mit der Schreibspitze oder dem Stift 10 auf das Digitalisiertablett oder das Tablett 11 geschrieben. Das Tablett 11 ist fähig, die Position der Spitze des Stifts 10 auf der Oberfläche des Tabletts 11 sowie die Gegenwart des Stifts 10 auf dem Tablett zu erfassen.
  • Das Tablett 11 ist an den Prozessor 12 angeschlossen. Bei bestimmten Tabletttypen kann der Stift 10 auch an den Prozessor 12 wie durch die Linie 17 angezeigt angeschlossen sein. Der Symbolspeicher 13 wird verwendet, um Darstellungen von Modellsymbolen zu speichern. Die Register 14 und ,15 werden zum Speichern jeweils der Anzahl der Striche in jedem Symbol und der Anzahl der Abtastwerte, die für jeden Strich abgenommen werden, verwendet. Typisch wären der Speicher 13 und die Register 14 und 15 Teil des Direktzugriffsspeichers des Prozessors 12. Ein Beispiel für einen Prozessor, der zur Durchführung der Erfindung geeignet ist, ist ein Sun SPARCstationTM.
  • Beim Betrieb wird ein Symbol auf das Tablett 11 geschrieben, der Prozessor 12 sammelt eine Zeitsequenz von Abtastwerten der Position der Spitze des Stifts 10 auf der Oberfläche des Tabletts 11. Jeder Abtastwert besteht aus einem Satz x-y-Koordinaten der Position der Spitze des Stifts 10. Typisch werden solche Abtastwerte mit einer Rate von etwa 250 Abtastwerten pro Sekunde abgenommen, und die x-y-Koordinaten und die Stellung des Stifts 10 können mit einer Auflösung von etwa 0,1 mm erfasst werden. Ein typisches handgeschriebenes Zeichen hat 100-250 Abtastwerte.
  • Die Symbole können in beliebiger Größe, Orientierung und an jeder Stelle auf das Tablett 11 geschrieben werden. Die Symbole können Buchstaben, Wörter, chinesische oder Kanji-Zeichen, Handschrift, Engineering- oder chemische Symbole sein: Kurz gesagt, es kann alles geschrieben werden. Die einzigen Einschränkungen sind die Größe des Tabletts und die Größe des Speichers, der zum Aufzeichnen der abgenommenen Abtastwerte erforderlich ist.
  • 2 ist ein Flussdiagramm, das zeigt, wie Abtastwerte eines handschriftlichen Symbols vom System der 1 aufgezeichnet werden. Wie für den Fachmann klar ist, würden die in 2 (und 3) gezeigten Aktivitäten typisch von einem Computerprogramm gesteuert, das im Speicher im Prozessor 12 gespeichert ist.
  • Wie von den Blöcken 20 und 21 angezeigt, wartet der Prozessor 12, bis der Stift 10 das Tablett 11 berührt, initialisiert dann das Strichregister 14 und das Abtastwertregister 15. Während des Schreibens jedes Strichs des Symbols, nimmt der Prozessor 12 Abtastwerte mit seiner Abtastrate für die Position der Spitze des Stifts 10 auf dem Tablett 11 ab, speichert diese Abtastwerte in seinen Speicher und inkrementiert den Abtastzähler, wie von den Blöcken 22 und 23 angegeben. Die Abtastwerte werden abgenommen, bis der Stift 10 vom Tablett 11 abgehoben wird, wie von Block 24 angegeben.
  • Wenn der Stift 10 vom Tablett 11 abgehoben wird, muss bestimmt werden, ob das Symbol komplett ist. Dieses Bestimmen kann zum Beispiel durch die Zeitmessung des Intervalls zwischen der Zeit, zu der der Stift 10 abgehoben wird, und der Zeit, zu der er das Tablett 11 wieder berührt, durchgeführt werden. Ist das Intervall kurz, zum Beispiel weniger als 0,5 Sekunde, kann angenommen werden, dass ein zusätzlicher Strich folgen wird. Ist das Intervall länger, kann angenommen werden, dass das Symbol komplett ist. Block 25 stellt einen solchen Beschluss dar. Wenn ein zusätzlicher Strich folgt, wird die Anzahl der Abtastwerte, die für den Strich abgenommen werden, gespeichert, und das Abtastwertregister wird neu initialisiert, wie von Block 28 angegeben, und das Strichregister wird inkrementiert, wie von Block 29 angegeben, bevor der nächste Abtastwert abgenommen wird.
  • Sowohl die Modellsymbole als auch die unbekannten Symbole werden mittels des Stifts 10 und des Blocks 11 in das System geschrieben. Das System wird im Wesentlichen durch Hineinschreiben mindestens eines Modells für jedes Symbol, das das System erkennen soll, und Zuordnen der für dieses Modellsymbol aufgenommenen Abtastwerte zu einem entsprechenden Label „trainiert". Wenn das System daher in der Lage sein soll, alphanumerische Zeichen zu erkennen, werden auch für jedes Zeichen Modelle geschrieben und dem entsprechenden Buchstaben oder der Ziffer zugeordnet.
  • Wenn die Modelle stark stilisiert oder individualistisch sind, kann nur der Schreiber der Modelle in der Lage sein, Zeichen zu schreiben, die korrekt erkannt werden können. Es kann jedoch eine Anzahl verschiedener Beispiele für jeden Buchstaben als Modelle eingegeben werden, um die Variation zu berücksichtigen, die möglich ist, oder das System kann sich wie weiter unten beschrieben selbst anpassen.
  • Der Prozessor 12 kann sich entweder im Modus des Akzeptierens von Modellsymbolen oder im Modus des Akzeptierens unbekannter Symbole befinden. Unter erneuter Bezugnahme auf 2, und wenn das Symbol, das geschrieben wird, ein Modellsymbol ist, werden die Abtastwerte, wie von den Blöcken 26 und 27 angegeben, für ein solches Symbol im Symbolspeicher 13 des Prozessors 12 gespeichert. Bevor solche Abtastwerte gespeichert werden, werden sie jedoch translatiert, sodass der „Schwerpunkt" oder das Zentroid des Symbols an einem Ursprung ist. Wie wir weiter unten sehen werden, ist diese Translation, die an den Modellsymbolen und den unbekannten Symbolen durchgeführt wird, ein anfänglicher Schritt beim Vergleichen eines unbekannten Symbols mit den Modellsymbolen und positioniert das unbekannte und die Modellsymbole zueinander, sodass die Lage des unbekannten Symbols auf dem Tablett 11 irrelevant ist, und sodass Drehungen folgerichtig berücksichtigt werden können. Eine solche Translation ist an anderer Stelle beschrieben, wie zum Beispiel im Artikel von Tappert, der weiter oben erwähnt wurde. Das zum Durchführen der Translation verwendete Verfahren wird weiter unten in Verbindung mit der Beschreibung von 4 beschrieben.
  • Es ist günstig, die Translation auf einem Modellsymbol durchzuführen, bevor die Abtastwerte für das Modellsymbol gespeichert werden, sodass die Translation nicht jedes Mal durchgeführt werden muss, wenn ein Vergleich mit dem Modellsymbol erfolgt. Eine solche Translation kann jedoch nach Wunsch im Zeitpunkt des Vergleichs durchgeführt werden. Die Abtastwerte werden im Modellspeicher gemeinsam mit der Anzahl der Striche gespeichert und zwar so, dass die Abtastwerte für jeden Strich identifiziert werden können. Zugeordnet zu den Abtastwerten wird auch eine Identifikation des Modellsymbols, das die Abtastwerte darstellen, gespeichert.
  • Die Abtastwerte für ein Symbol können in einem mathematischen Sinn als ein Vektor betrachtet werden. Die Abtastwerte für ein Symbol vor der Translation, die oben beschrieben wurde, können zum Beispiel als ein Vektor n ausgedrückt werden:
    Figure 00090001
    und nach der Translation als Vektor v:
    Figure 00090002
  • Wenn das geschriebene Symbol ein unbekanntes Symbol ist, setzt der Prozessor 12, wie in Block 26 in 2 angegeben, mit den Schritten fort, die im Flussdiagramm der 4 gezeigt sind.
  • 3 ist ein Diagramm, das typische handschriftliche Symbole und Reihen von Punkten zeigt, die Abtastbeispiele darstellen, die für solche Symbole abgenommen werden. Der Blockbuchstabe „A", der links gezeigt wird, kann mit zwei Strichen 30 und 31 geschrieben werden, wobei sich die Striche in die von den Pfeilen gezeigten Richtungen bewegen. Die gepunktete Version des Buchstabens „A" zeigt Abtastwerte, die aufgenommen wurden, als der Buchstabe geschrieben wurde, wobei die Geschwindigkeit der Stiftspitze relativ konstant war. Der erste und der letzte Abtastwert des ersten Strichs liegen in 32 und 33; der erste und der letzte Abtastwert des zweiten Strichs liegen in 34 und 35. Der Handschriftbuchstabe „a", der rechts gezeigt ist, würde gewöhnlich mit einem Strich 36 geschrieben, der in Punkt 37 umkehrt, der jedoch typisch ohne Abheben des Stifts vom Tablett geschrieben würde. Der erste und der letzte Abtastwert des Strichs 36 sind in 38 und 39 gezeigt.
  • Wie ersichtlich, hängen die tatsächlichen Werte der Abtastwerte, die aufgezeichnet werden, während ein Symbol geschrieben wird, von der Geschwindigkeit ab, mit der die Stiftspitze bewegt wird, und die Sequenz der Abtastwerte in dem Vektor, der das Symbol darstellt, hängt von den Richtungen ab, die den verschiedenen Strichen in dem Symbol zugeordnet sind. Daher können Abtastwerte für Symbole, die identisch zu sein scheinen, recht unterschiedlich sein, je nach dem, wie die Symbole tatsächlich geschrieben wurden. Dieser Unterschied kann reichen, damit das erfindungsgemäße Verfahren die Symbole nicht als identisch erkennt. Diese Eigenschaft der Erfindung kann jedoch vorteilhaft verwendet werden, wie weiter unten in Verbindung mit der Verifizierung von Unterschriften beschrieben wird.
  • 4 ist ein Flussdiagramm, das zeigt, wie die Abtastwerte für ein unbekanntes Symbol mit den Modellsymbolen verglichen werden, um das unbekannte Symbol zu identifizieren. Nachdem ein unbekanntes Symbol eingegeben wurde, wird der Vektor vk für ein Modellsymbol abgerufen, das die gleiche Anzahl von Strichen hat wie das unbekannte, wie es die Blöcke 42 und 43 angeben. Der Vektor vα für das unbekannte Symbol und der Vektor vk für das Modellsymbol müssen dann verglichen werden, um zu bestimmen, wie gut sie übereinstimmen. Zur Durchführung der Korrelation ist es jedoch erforderlich, dass vα und vk, die gleiche Anzahl von Abtastwerten enthalten, und, wenn das Symbol mehr als einen Strich enthält, ist es vorzuziehen, dass die Anzahl der Abtastwerte in jedem Strich übereinstimmt. Dies erzielt man durch Angleichen der Anzahl von Abtastwerten in vα und vk, Strich für Strich.
  • Dieses Angleichen kann in einer Anzahl verschiedener Methoden erfolgen. Eine Methode, die sich als zufrieden stellend herausgestellt hat, besteht darin, nur jeden zehnten Abtastwert in jedem Strich von vα zu verwenden und dann die gleiche Anzahl von Abtastwerten von jedem Strich von vk zu verwenden. Ein Beispiel für ein solches Angleichen ist in 5 beschrieben, in der eine Anzahl von Abtastwerten entlang dem Strich 50 gezeigt werden. Gepunktete Linien, wie zum Beispiel 51, führen zur gleichen Anzahl von Abtastwerten, die aus vielen mehr entlang dem Strich 52 auszuwählen sind. Die Abtastwerte entlang dem Strich 50 stellen jeden zehnten Abtastwert in einem Strich von vα dar. Dieses Verfahren geht davon aus, dass der Original-vα niemals mehr als zehnmal die Anzahl von Abtastwerten hat als er Original- vk.
  • Eine andere Methode zum Durchführen des Angleichens besteht darin, zusätzliche Abtastwerte in vk zu interpolieren, sodass ein solcher Vektor viel mehr Abtastwerte enthält als vα, dann nur die Anzahl der Abtastwerte des erhöhten vk wie in vα vorhanden sind, auszuwählen. Die Interpolation und Auswahl sollten gleichmäßig entlang vk verteilt sein.
  • Nach dem Angleichen wird vα dann wie durch Block 45 angegeben translatiert, sodass der Schwerpunkt des unbekannten Symbols an dem Ursprung liegt, wie das auch für die Modellsymbole geschah, als diese gespeichert wurden (Block 27 in 2). Zum Durchführen dieser Translation auf einem Vektor wird der Schwerpunkt z gefunden durch
    Figure 00120001
    und die Translation wird durchgeführt durch Bewerten
  • Figure 00120002
  • Die Gleichung 4 liefert die Bedingungen, die in Gleichung 2 weiter oben gezeigt werden.
  • Wie von Block 46 angegeben, wird die Korrelation C zwischen dem unbekannten Symbol und dem Modellsymbol, mit dem es verglichen wird, berechnet aus
    Figure 00120003
    der der Vektor ist, der von vk durch eine Drehung gegen den Uhrzeigersinn um π/2 Radiant abgeleitet wird, und wobei vα·vk und vα·vk skalare Punktprodukte der jeweiligen Vektoren sind.
  • Die Korrelation C stellt den Grad der Nähe des Vektors vα für das unbekannte Symbol mit dem Vektor vk für das Modellsymbol dar. Je größer der Wert von C ist, desto näher sind die Vektoren. Wie von den Blöcken 47, 48 und 49 angegeben, wird das Modellsymbol, das dem höchsten Wert von C zugeordnet ist, als, das unbekannte Symbol erkannt.
  • Eine detaillierte Besprechung der Ableitung der Gleichung 5 ist im Anhang gegeben. Eine kurze Besprechung der Theorie, auf der die Ableitung der Gleichung 5 aufbaut, wird hier präsentiert.
  • Da der Vektor vα das unbekannte Symbol darstellt und der Vektor vk das Modellsymbol, enthält jeder n Abtastwerte und 2n unterschiedliche Mengen. Jeder solche Vektor kann als ein Punkt in einem 2n-dimensionalen Raum betrachtet werden. Man beachte, dass vα und vk angeglichen wurden, sodass beide die gleiche Anzahl von Abtastwerten haben, und dass sie translatiert wurden, sodass die Schwerpunkte ihrer jeweiligen Symbole an einem Ursprung liegen. Solche translatierte und angeglichene Vektoren für alle möglichen Drehungen und Größen eines Symbols fallen in eine zweidimensionale Ebene, die durch den Ursprung eines solchen 2n-dimensionalen Raums verläuft. Daher werden alle möglichen Drehungen und Größen des unbekannten Symbols durch eine solche 2-dimensionale Ebene dargestellt, und alle möglichen Drehungen und Größen des Modellsymbols werden durch eine andere solche 2-dimensionale Ebene dargestellt. Beide Ebenen treffen sich nur am Ursprung eines solchen 2n-dimensionalen Raums, und ein Winkel θ kann zwischen den Ebenen definiert werden. Winkel sind eindimensionale Größen, die leicht verglichen werden können. Je kleiner der Winkel zwischen solchen Ebenen, desto höher die Korrelation zwischen den Symbolen, die sie darstellen, ungeachtet der Stelle auf den Ebenen, auf welchen die Punkte, die die tatsächlichen Größen und Drehungen der Symbole definieren, liegen. Die Menge C, die in Gleichung 5 berechnet wird, hängt vom Kosinus eines solchen Winkels θ ab. Da sich der Kosinus eines Winkels 1 nähert, wenn sich der Winkel Null nähert, stellt das größte C die nächste Korrelation dar.
  • Einige Beispiele der tatsächlichen Werte, die für C berechnet werden, können gegeben werden, um den erfindungsgemäßen Vorgang darzustellen. Die Modelle der 36 alphanumerischen Zeichen wurden als Blockbuchstaben über ein Digitalisiertablett wie oben beschrieben eingegeben. Zwanzig Zeichen (zum Beispiel L, W, 1, 6), wurden als 1-Strich-Zeichen eingegeben; 14 (zum Beispiel A, X, 4, 5) als 2-Strich-Zeichen und zwei (H, I) als 3-Strich-Zeichen. Die Modellzeichen und unbekannten Zeichen wurden auf einem Digitalisiertablett ohne besondere Beachtung der Größe, Orientierung oder Lage auf dem Tablett eingegeben. Die Korrelationen, die sich ergaben, sind in Tabelle I aufgelistet. Wie aus Tabelle I ersichtlich ist, war das Modell, das die höchste Korrelation hatte, zum Beispiel wenn der Buchstabe W als ein unbekanntes Symbol eingegeben wurde, der Buchstabe „W", das mit der nächsthöchsten war die Ziffer „9", und das mit dem niedrigsten war der Buchstabe „M".
  • Bestimmte Zeichen sind den Drehungen anderer ähnlich, zum Beispiel „M"-„W" und „6"-„9". Aufgrund der üblichen Zeitsequenz des Schreibens dieser Zeichen, können solche Drehungen jedoch unterschieden werden. Diese Unterscheidung ist in 6 dargestellt. Die Buchstaben „W" und „M", die in 60 und 61 gezeigt sind, wurden typisch als einfache Striche geschrieben, die sich in die Richtungen der Pfeile bewegen. Daher folgt die Zeitsequenz der Abtastwerte jedes dieser Buchstaben den Pfeilen. Wenn der Buchstabe „M" in 61 gedreht wird, um das „W" in 62 zu bilden, zeigen die Pfeile jedoch in die entgegengesetzte Richtung. Daher sind die Abtastwerte für ein „W", das ein gedrehtes „M" ist, in umgekehrter Reihenfolge zu dem eines „W", das als solches geschrieben wird, und die oben berechnete Korrelation wird niedrig., Wie aus Tabelle I ersichtlich, stellte sich die, Korrelation' mit dem Modell für „M", wenn ein „W" als ein unbekanntes Symbol in das System eingegeben wurde, als das niedrigste aller anderen 1-Strich-Symbole heraus.
  • Es kann Drehungen geben, zum Beispiel „N"-„Z" und „E"„W", bei welchen die Formen der Symbole ähnlich sind, und die Zeitsequenzen der Abtastwerte im Wesentlichen die gleichen sind. In solchen Fällen könnten die Korrelationen für ein unbekanntes Zeichen in Bezug auf jedes der Modelle für die verschiedenen Drehungen nahe sein, und eine Auswahl, die allein auf dem höchsten Wert von C beruht, könnte unzuverlässig sein. Um solche Fälle zu unterscheiden, ist es nutzbringend, auch die tatsächliche Drehung zwischen dem unbekannten Symbol und den Modellsymbolen zu vergleichen. Das kann durchgeführt werden, indem auch
    Figure 00150001
    für das unbekannte Symbol in Bezug zu jedem Modellsymbol bewertet wird. R stellt den Kosinus des Winkels der Drehung zwischen dem unbekannten Symbol und dem Modellsymbol, mit welchem es verglichen wird, dar. Da sich der Kosinus eines Winkels 1 nähert, wenn sich der Winkel Null nähert, wird dem Modellsymbol der Wert von R zugeordnet, der 1 am nächsten ist.
  • 7 zeigt das Flussdiagramm der 4 modifiziert, um die Berechnung und die Verwendung von R bei der Auswahl des nächsten Modellsymbols für das unbekannte Symbol einzugliedern. Die Bezugszeichen für Blöcke, die gleiche Funktionen haben, sind gleich wie in 4.
  • Unter Bezugnahme auf 7, zeigt Block 70 die Berechnung und das Speichern von C und R für jedes Modellsymbol an, das mit dem unbekannten Symbol verglichen wird. Nach der Durchführung solcher Berechnungen für alle relevanten Modelle, wird ein Schwellenwert wie von Block 72 angegeben bestimmt. Dieser Schwellenwert kann ein Prozentsatz sein, zum Beispiel 90 % des höchsten C. Wenn das nur einem Modellsymbol zugeordnete C über dem Schwellenwert liegt, wird das unbekannte Symbol als solches Modellsymbol erkannt, wie die Blöcke 73 und 49 angeben. Liegt jedoch mehr als ein C über dem Schwellenwert, wird das unbekannte Symbol als das Modellsymbol erkannt, das sowohl C über dem Schwellenwert und R 1 am nächsten hat, wie die Blöcke 73 und 74 angeben.
  • Wie Block 70 angibt, wird R gleichzeitig mit C für jedes verglichene Modellsymbol berechnet. Es kann jedoch günstiger sein, bis kurz vor dem Erkennungsschritt, der in Block 74 angegeben ist, zu warten, und R nur für die kleinere Anzahl von Modellsymbolen zu berechnen, die Werte für C über dem Schwellenwert haben.
  • Tabelle II zeigt Beispiele, die die Auflösung von Drehungen wie soeben beschrieben darstellen. Die eingegebenen Symbole waren einstrichige alphanumerische Blockbuchstaben, wobei jedoch die Modell- und unbekannten Zeichen im Wesentlichen mit der gleichen Orientierung eingegeben wurden. In Beispiel 1 wurde der Buchstabe „N" als das unbekannte Symbol eingegeben, das Modellsymbol „N" hatte sowohl das höchste C, als auch den Wert R, der 1 am nächsten war, und das Modell „Z" hatte ebenfalls C über dem Schwellenwert. In Beispiel 2 wurde der Buchstabe „N" wieder als das unbekannte Symbol eingegeben, das Modellsymbol „Z" hatte jedoch das höchste C, und das Modell „N" hatte C über dem Schwellenwert und den Wert für R am nächsten von 1. In beiden Fällen wurde das Modellsymbol „N" als das unbekannte Symbol auf der Grundlage seines Werts für R erkannt.
  • Beispiel 3 zeigt „Z" als das unbekannte Symbol und das Modellsymbol „N" mit dem höchsten C, wobei jedoch „Z" auf der Grundlage des R, das 1 am nächsten liegt, als das unbekannte Symbol erkannt wird.
  • Bei der oben beschriebenen Ausführungsform der Erfindung wird ein unbekanntes Symbol mit Modellsymbolen verglichen, um eine Übereinstimmung zu finden. Für jedes Symbol kann falls wünschenswert mehr als ein Modell gespeichert werden, um Variationen in der Art, wie Symbole von einem bestimmten Benutzer geschrieben werden, zu berücksichtigen, oder um sogar ein vom Benutzer unabhängiges System zu schaffen. Bei einem benutzerunabhängigen System kann die Bibliothek der Modellsymbole alle wahrscheinlichen Variationen und Kombinationen der Anzahl von Strichen, der Strichreihenfolge und Strichrichtung für jedes Symbol umfassen. Solche Variationen steigern die Wahrscheinlichkeit der korrekten Identifikation unbekannter Symbole, die von irgendjemandem geschrieben werden. Eine solche Bibliothek kann vorgespeichert und vorteilhaft in Systemen genutzt werden, die den Benutzern „handelsüblich" geliefert werden.
  • Ausführungsformen der Erfindung können strukturiert werden, um zusätzliche Modelle zu erfassen, wenn die Originale nicht ausreichen, oder um die Modelle durch Erfahrung zu ändern. Ein Beispiel für ein Verfahren zum Erfassen zusätzlicher Symbole ist im Flussdiagramm der 8 dargestellt, die einen Übungsmodus darstellt. Bei diesem Modus wird ein unbekanntes Symbol eingegeben, und das nächste Modellsymbol zum unbekannten Symbol wird unter Verwendung des erfindungsgemäßen oben beschriebenen Verfahrens ausgewählt, und die Auswahl wird der Person, die das System übt, angezeigt. Wie von Block 80 dargestellt, gibt" der Trainer dann an, ob die Auswahl richtig war oder nicht, und, wenn sie falsch war, was die richtige Auswahl ist. Dann speichert das System wie durch Block 81 angegeben den Abtastwertvektor für das unbekannte eingegebene Symbol als ein zusätzliches Modell für die richtige Auswahl. Ein solcher Übungsmodus kann fortgesetzt werden, bis die Leistung des Systems zufrieden stellend ist.
  • Eine andere Methode, das System zum Anpassen zu bringen, besteht darin, den Vektor für ein Modellsystem jedes Mal zu ändern, wenn ein unbekanntes System eingegeben wird, von dem sich herausstellt, dass es dem Modell entspricht. Ein Ansatz besteht einfach darin, das Modell durch das, unbekannte Symbol unter der Annahme zu ersetzen, dass die jüngste Instanz eines Symbols die beste ist. Ein weiteres Verfahren bestünde darin zu bewirken, dass sich das Modell leicht in die Richtung jedes unbekannten Symbols, dessen Übereinstimmung festgestellt wird, „verschiebt". Eine solche Verschiebung würde jedoch die Berechnung neuer Werte für die Abtastwerte im Modellvektor erforderlich machen, was aufgrund der Unterschiede, die eventuell in der Anzahl der Abtastwerte und der Werte solcher Abtastwerte zwischen einem übereinstimmenden unbekannten Symbol und dem Modellsymbol existieren können, nicht unbedingt eine geringfügige Aufgabe ist.
  • Ein bevorzugtes Verfahren zum Anpassen besteht darin, eine Anzahl der jüngsten Instanzen für jedes Modell zu speichern, und die ältesten Instanzen jedes Ma1, wenn eine neue eintrifft, zu eliminieren. Dadurch ist der Satz der Modelle immer „aktualisiert", und gibt alle langfristigen Änderungen wieder, die eventuell an den Symbolen des Satzes auftreten.
  • Für Anwendungen, bei welchen die Erfindung von einer Person oder einer kleinen Anzahl von Benutzern verwendet wird, kann eine Ausführungsform konfiguriert werden, die sich an den Benutzer oder die Benutzer anpasst und im Laufe der Anpassungen schneller funktioniert. Bei einer solchen Ausführungsform wird das System ursprünglich als benutzerunabhängig konfiguriert, indem alle wahrscheinlichen Variationen von Symbolen in die Modellbibliothek wie oben beschrieben aufgenommen werden. Dann werden Instanzen von Symbolen, die von Benutzern eingegeben werden, zu der Bibliothek hinzugefügt, und, nachdem eine entsprechende Anzahl solcher Benutzerinstanzen hinzugefügt wurde, werden die Originalmodelle eliminiert. Die Anzahl der Benutzerinstanzen, die für jedes Symbol behalten werden, kann ziemlich klein sein, sogar so klein wie ein Modell pro Symbol. Da daher die Anzahl der Modelle für jedes Symbol reduziert wird, was die Berechnungszeit verringert, die erforderlich ist, um das nächste Modell zu bestimmen, und die Symbole für den Benutzer oder die Benutzer spezifisch sind, entwickelt sich das System von einem benutzerunabhängigen System zu einem benutzerunabhängigen System, das schneller und genauer ist, weiter.
  • Umgekehrt kann für ein benutzerunabhängiges System, das von einer großen Anzahl von Benutzern verwendet werden soll, eine Ausführungsform konfiguriert werden, die sich anpasst, indem Modelle zum Beispiel wie in der Beschreibung der 8 weiter oben beschrieben hinzufügt werden. Weil das Anheben der Anzahl der Modelle jedoch dazu tendiert, die Berechnungszeit zu steigern, die erforderlich ist, um das nächste Modell zu bestimmen, tendiert ein solches System dazu, langsamer zu sein als ein benutzerabhängiges System.
  • Wie aus der oben beschriebenen Beschreibung ersichtlich, hängt das erfindungsgemäße Verfahren stark von der Richtung und der Sequenz ab, in' der die verschiedenen Striche eines Symbols geschrieben werden. Kann ein Symbol bei einem praktischen System zur Symbolerkennung, auf mehr 'als eine Art geschrieben werden, muss wahrscheinlich mindestens ein Modell für jede Möglichkeit enthalten sein. Diese Eigenschaft der Erfindung kann jedoch zu Anwendungen wie zum Beispiel zur Verifizierung von Unterschriften verwendet werden.
  • Das erfindungsgemäße System kann zur Verifizierung von Unterschriften verwendet werden, indem potenzielle Unterschriften als Modellsymbole eingegeben werden. Wenn dann eine Unterschrift zum Verifizieren eingegeben wird, wird sie mit den Modellen verglichen, um eine Übereinstimmung zu finden. Wenn das richtige Modell ausgewählt wird, wird die Unterschrift als verifiziert betrachtet. Auch wenn ein Fälscher eine annehmbare Kopie einer Unterschrift schreiben könnte, ist es viel weniger wahrscheinlich, dass der Fälscher die Strichsequenz und die Schreibdynamiken des Eigentümers der Unterschrift duplizieren könnte, sodass eine gute Übereinstimmung erzielt wird. Bei dieser Art von Anwendung kann es wünschenswert sein, wenn die höchste Korrelation C gefunden wird, auch die höchste Korrelation C mit der nächsthöchsten zu vergleichen, um ein Maß für das Vertrauen zu erstellen, dass die richtige Unterschrift gefunden wurde. Wenn die nächsthöchste Korrelation C zum Beispiel mehr als einen bestimmten Prozentsatz beträgt, zum Beispiel 80 % der höchsten, könnte die präsentierte Unterschrift als nicht zuverlässig übereingestimmt zurückgewiesen werden. Eine Alternative bestünde darin, die höchste Korrelation C mit einem Schwellenwert zu vergleichen, und jede präsentierte Unterschrift zurückzuweisen, bei der C den Schwellenwert für eine beliebige Modellunterschrift erreicht.
  • ANHANG
  • In Gleichung 5 ist C ein Maß für die Ähnlichkeit oder Nähe zwischen einem unbekannten Symbol und einem Modellsymbol oder, genauer, genommen, die Ähnlichkeit oder Nähe zwischen dem Vektor, vα, der das unbekannte Symbol darstellt, und dem Vektor vk, der das Modellsymbol darstellt. Von jedem Vektor wird angenommen, dass er n Abtastwerte umfasst, von welchen jeder eine x-Koordinate und eine y-Koordinate umfasst. Daher gibt es in, jedem Vektor 2n Mengen oder Dimensionen. Wie in der Beschreibung erklärt, wird die Anzahl der Abtastwerte für das unbekannte Symbol und das Modellsymbol, mit dem es verglichen wird, angeglichen, um gleich zu sein. Da jeder Vektor 2n Dimensionen hat, stellt er einen einzigen Punkt in einem 2n-dimensionalen Raum (2n-Raum) dar.
  • Man muss ein unbekanntes Symbol mit den Modellsymbolen ungeachtet der Orientierung oder Größe des unbekannten Symbols in Bezug auf die Modelle vergleichen können. Das kann durch Vergleichen des Satzes Sa aller Größen und Orientierungen eines unbekannten Symbols mit dem Satz Sk aller Größen und Orientierungen jedes Modellsymbols erfolgen. Die Vektoren für einen solchen Satz fallen alle auf die gleiche zwei-dimensionale Ebene im 2n-Raum. Solche Ebenen treffen sich am Ursprung des 2n-Raums. Die „Entfernung" zwischen solchen Ebenen kann als der Winkel zwischen ihnen definiert werden, und die Ähnlichkeit oder Nähe von zwei Symbolen hängt von den Winkeln zwischen ihren repräsentativen Ebenen ab. Die Aufgabe besteht daher darin, einen solchen Winkel zu berechnen.
  • Zum Definieren des Satzes S aller Größen und Orientierungen für ein Symbol müssen wir zuerst einen Vektor w wie folgt definieren:
    Figure 00230001
    wobei u eine Drehung gegen den Uhrzeigersinn um π/2 Radiant darstellt. Ausgehend von Gleichung 7 ist ersichtlich, dass der Vektor w von einem Vektor v durch eine r-malige Vergrößerung oder Ausdehnung und eine Drehung gegen den Uhrzeigersinn um y Radiant abgeleitet wird. Die Sätze aller Größen und Orientierungen eines vom Vektor v dargestellten Symbols lauten dann:
    Figure 00230002
  • Der Winkel zwischen zwei Vektoren z1 und z2 im 2n-Raum kann von der Definition des skalaren Produkts solcher Vektoren abgeleitet werden:
    Figure 00230003
  • Das Lösen ergibt für θ:
    Figure 00230004
  • Für zwei beliebige Vektoren ergibt Gleichung 13 einen Winkel zwischen 0 und π Radiant.
  • Der Winkel zwischen den Ebenen Sα und Sk wird als der kleinste Winkel zwischen einem beliebigen Paar von Vektoren wαα rα) (wk γk, rk) jeweils in Sα und Sk definiert. Daher:
    Figure 00240001
  • Unter Heranziehungen der Gleichungen 8 und 10, kann die Gleichung 14 umgeschrieben werden, was die gegebenen Vektoren vα und vk betrifft. Um jedoch das Vereinfachen des Ergebnisses zu erleichtern, sollten die folgenden Beziehungen beachtet werden:,.
  • Figure 00240002
  • Die Gleichungen 16 und 17 definieren neue Symbole pk und qk. Ohne Verlust der Allgemeingültigkeit, können die Vektoren vα, vk, uα und uk auf 1 normalisiert werden, sodass:
    Figure 00240003
  • Ersetzt man in Gleichung 14 die Ausdrücke für wα und wk, die von der Gleichung 8 gegeben werden, und vereinfacht man durch Verwenden der Gleichungen 15-18, ergibt sich:
    Figure 00240004
    wobei γ=γk–γα ist, und das Minimum wird nun über dem alleinigen Parameter y genommen. Man beachte, dass die Ausdehnungsfaktoren rα, rk aufgrund der Normalisierung verschwunden sind. Da der Arkuskosinus eine über den Bereich 0, π sinkende Funktion ist, kann Gleichung 19 wie folgt umgeschrieben werden:
    Figure 00240005
  • Die rechnerische Bestimmung des Maximums ergibt:
    Figure 00250001
  • In der Praxis braucht der tatsächliche Winkel selbst nicht berechnet zu werden, denn man sucht nach der Identität des Modellsymbols, das dem kleinsten Winkel θ zugeordnet ist; die erforderlichen Vergleiche können durch Vergleichen der Werte des folgenden Ausdrucks ausgeführt werden:
    Figure 00250002
    der den Symbolen zugeordnet ist, die verglichen werden. Gleichung 22 kann, was die Vektoren vα, vk, uα und uk betrifft, wie folgt umgeschrieben werden, indem die Gleichungen 15-17 verwendet werden:
    Figure 00250003
  • Um die oben stehende Ableitung zu vereinfachen, wurde der Normalisierungsschritt wie in Gleichung 18 gezeigt durchgeführt. Ohne eine solche Normalisierung würde aus der Gleichung 23 Folgendes:
    Figure 00250004
  • Da Sonderzeichen vα beim Vergleichen der Korrelationen eines unbekannten Vektors vα mit den verschiedenen Modellvektoren vk gleich bleibt, reicht es, die Werte zu berechnen und vergleichen, die für jeden Modellvektor vk gegeben werden von:
    Figure 00250005
  • Gleichung 25 ist gleich wie Gleichung 5.
  • Figure 00270001
  • Figure 00280001

Claims (17)

  1. Prozessorimplementiertes Verfahren zum automatischen Finden der besten Übereinstimmung für ein unbekanntes 'Symbol in einer Menge gespeicherter Modellsymbole, wobei das unbekannte Symbol und die Modellsymbole jeweils als eine geordnete Menge von Koordinatenabtastwerten, die einen Vektor bilden, dargestellt werden, wobei sich die Schwerpunkte des unbekannten Symbols und der Modellsymbole durch Translation von Abtastwerten an einem gemeinsamen Ursprung befinden, wobei die Abtastwerte für das unbekannte Symbol der Reihe nach mit den Abtastwerten für jedes der Modellsymbole verglichen werden, vor jedem Vergleich die Anzahl von translatierten Abtastwerten für das unbekannte Symbol an die Anzahl der Abtastwerte für das Modellsymbol angeglichen (44) und während jedes Vergleichs die Korrelation des 'unbekannten Symbols mit dem Modellsymbol aus den angeglichenen und translatierten Abtastwerten berechnet (46, 70) und das Modellsymbol, das der höchsten Korrelation zugeordnet ist, als die beste Übereinstimmung identifiziert (49) wird, dadurch gekennzeichnet, daß der Korrelationsberechnungsschritt weiterhin folgendes umfaßt: Berechnen der Korrelation als eine Größe, die die Nähe einer Vektordarstellung aller möglichen Drehungen und Größen des unbekannten Symbols an einer Vektordarstellung aller möglichen Drehungen und Größen des Modellsymbols angibt, wodurch das Ergebnis des Korrelationsberechnungsschritts von der Größe, Position und Orientierung des unbekannten Symbols in Bezug auf die Modellsymbole unabhängig ist.
  2. Verfahren nach Anspruch 1, weiterhin dadurch gekennzeichnet, daß der Berechnungsschritt weiterhin das Berechnender Korrelation folgendermaßen umfaßt:
    Figure 00300001
    wobei der Vektor vα die angeglichene geordnete Menge von translatierten Abtastwerten für das unbekannte Symbol und der Vektor vk die angeglichene geordnete Menge von translatierten Abtastwerten für den Modellvektor ist, der Vektor uk durch Drehung entgegen dem Uhrzeigersinn um ein Bogenmaß von π/2 aus dem Vektor vk abgeleitet wird und das der höchsten Korrelation zugeordnete, Symbol das Symbol ist, das dem höchsten Wert von C zugeordnet ist.
  3. Verfahren nach Anspruch 1, weiterhin dadurch gekennzeichnet, daß das Verfahren weiterhin folgendes umfaßt: Speichern der geordneten Mengen von Koordinatenabtastwerten für die Modellsymbole, während die Modellsymbole per Hand auf einem Digitalisierungstablett geschrieben werden.
  4. Verfahren nach Anspruch 3, weiterhin dadurch gekennzeichnet, daß das Verfahren weiterhin fohgendes umfaßt: Speichern der Anzahl von Stiftstrichen, die zum Schreiben , jedes Modellsymbols und jedes unbekannten Symbols benützt werden, und wobei der Vergleichsschritt folgendes umfaßt: Begrenzen des Vergleichsschritts auf diejenigen der Modellsymbole, die dieselbe Anzahl von Stiftstrichen wie das unbekannte Symbol aufweisen.
  5. Verfahren nach Anspruch 4, weiterhin dadurch gekennzeichnet, daß der Angleichungsschritt weiterhin das strichweise Angleichen der Abtastwerte umfaßt.
  6. Verfahren nach Anspruch 5, weiterhin dadurch gekennzeichnet, daß der Angleichungsschritt weiterhin folgendes umfaßt: Begrenzen des Vektors vk auf eine Teilmenge im wesentlichen gleichförmig beabstandeter Abtastwerte aus der geordneten Menge für das unbekannte Symbol, und Begrenzen des Vektors vk, so daß er strichweise dieselbe Anzahl von im wesentlichen gleichförmig beabstandeten Abtastwerten aus der geordneten Menge für das Modellsymbol wie in dem begrenzten Vektor vα enthält.
  7. Verfahren nach Anspruch 1, weiterhin dadurch gekennzeichnet, daß wenn ein unbekanntes Symbol falsch erkannt wird, die Menge von Modellsymbolen angepaßt wird, indem die geordnete Sequenz von Abtastwerten für das falsch erkannte Symbol als ein zusätzliches repräsentatives Beispiel für das korrekte Symbol zu der Menge von Modellsymbolen hinzugefügt wird, um dem falsch erkannten Symbol zugeordnet zu werden.
  8. Verfahren nach Anspruch 1, weiterhin dadurch gekennzeichnet, daß das Verfahren weiterhin folgendes umfaßt: kontinuierliches Anpassen der Menge von Modellsymbolen durch Speichern der geordneten Sequenzen von Abtastwerten für jede einer spezifizierten Anzahl der zuletzt eingegebenen Instanzen jedes Modellsymbols.
  9. Verfahren nach Anspruch 2, weiterhin dadurch gekennzeichnet, daß das Verfahren weiterhin folgendes umfaßt: Einrichten eines mit dem höchsten Wert von C zusammenhängenden Schwellenwerts, wenn der Wert von C für mehr als ein Modellsymbol den Schwellenwert überschreitet, für jedes Modellsymbol mit einem Wert von C über dem Schtaellenwert, Berechnen der Drehung des Modellsymbols in Bezug auf das unbekannte Symbol, und wobei der Erkennungsschritt weiterhin das Erkennen des unbekannten Symbols als das Modellsymbol mit der kleinsten Drehung umfaßt.
  10. Modell nach Anspruch 9, weiterhin dadurch gekennzeichnet, daß der Drehungsberechnungsschritt weiterhin folgendes umfaßt Berechnen der Drehung als:
    Figure 00330001
    wobei das Modellsymbol mit der kleinsten Drehung das Symbol ist, dessen R am nächsten bei 1 liegt.
  11. Verfahren nach Anspruch 10, weiterhin dadurch gekennzeichnet, daß der Einrichtschritt weiterhin das Einrichten des Schwellenwerts als fester Prozentsatz des höchsten Werts von C umfaßt.
  12. Verfahren nach Anspruch 3, weiterhin dadurch gekennzeichnet, daß das Verfahren zum Verifizieren von Unterschriften verwendet wird, wobei die gespeicherten Modellsymbole zuvor geschriebene Unterschriften sind und das unbekannte Symbol eine zu verifizierende Unterschrift ist.
  13. Verfahren nach Anspruch 12, weiterhin dadurch gekennzeichnet, daß das Verfahren weiterhin folgendes umfaßt: Vergleichen des höchsten Werts von C mit dem nächstniedrigeren Wert von C und Zurückweisen der zu verifizierenden Unterschrift, wenn der nächstniedrigere Wert einen bestimmten Prozentsatz des höchsten Werts überschreitet.
  14. Verfahren nach Anspruch 1, weiterhin dadurch gekennzeichnet, daß das Verfahren weiterhin folgendes umfaßt: Speichern von Mengen voraufgezeichneter Koordinatenabtastwerte für mehrere Versionen jedes Modellsymbols in der Menge gespeicherter Modellsymbole.
  15. Verfahren nach Anspruch 14, weiterhin dadurch gekennzeichnet, daß das Verfahren weiterhin folgendes umfaßt: während unbekannte Symbole erkannt werden, Ersetzen mindestens eines Teils der voraufgezeichneten Abtastwerte für jedes Modellsymbol mit mindestens einer Menge von Abtastwerten für ein als das Modellsymbol erkanntes unbekanntes Symbol.
  16. Verfahren nach Anspruch 15, weiterhin dadurch gekennzeichnet, daß der Ersetzungsschritt weiterhin folgendes umfaßt: Ersetzen der Mengen voraufgezeichneter Abtastwerte für jedes Modellsymbol mit einer kleineren Anzahl von Mengen von Abtastwerten für als das Modellsymbol erkannte unbekannte Symbole.
  17. Verfahren nach Anspruch 14, weiterhin dadurch gekennzeichnet, daß das Verfahren weiterhin folgendes umfaßt: während unbekannte Symbole erkannt werden, Ergänzen der Mengen der Mengen voraufgezeichneter Abtastwerte für jedes Modellsymbol mit mindestens einer Menge von Abtastwerten für ein als das Modellsymbol erkanntes unbekanntes Symbol.
DE69333431T 1992-03-24 1993-03-18 Verfahren zum Erkennen von handgeschriebenen Symbolen Expired - Lifetime DE69333431T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/857,198 US5333209A (en) 1992-03-24 1992-03-24 Method of recognizing handwritten symbols
US857198 1992-03-24

Publications (2)

Publication Number Publication Date
DE69333431D1 DE69333431D1 (de) 2004-04-08
DE69333431T2 true DE69333431T2 (de) 2005-03-03

Family

ID=25325428

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69333431T Expired - Lifetime DE69333431T2 (de) 1992-03-24 1993-03-18 Verfahren zum Erkennen von handgeschriebenen Symbolen

Country Status (7)

Country Link
US (1) US5333209A (de)
EP (1) EP0562767B1 (de)
JP (1) JP3004495B2 (de)
CA (1) CA2091617C (de)
DE (1) DE69333431T2 (de)
FI (1) FI931283A (de)
SG (1) SG52220A1 (de)

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2678407A1 (fr) * 1991-06-28 1992-12-31 Philips Electronique Lab Procede et dispositif avec un reseau neuronal pour classer des donnees, et appareil d'authentification de signature.
US5825921A (en) * 1993-03-19 1998-10-20 Intel Corporation Memory transfer apparatus and method useful within a pattern recognition system
US5546565A (en) * 1993-06-21 1996-08-13 Casio Computer Co., Ltd. Input/output apparatus having a pen, and method of associating and processing handwritten image data and voice data
US5583946A (en) * 1993-09-30 1996-12-10 Apple Computer, Inc. Method and apparatus for recognizing gestures on a computer system
US6366697B1 (en) 1993-10-06 2002-04-02 Xerox Corporation Rotationally desensitized unistroke handwriting recognition
JP3466689B2 (ja) * 1994-01-26 2003-11-17 キヤノン株式会社 手書き文字認識方法及びその装置
IL108566A0 (en) * 1994-02-04 1994-05-30 Baron Research & Dev Company L Handwriting input apparatus using more than one sensing technique
US5687254A (en) * 1994-06-06 1997-11-11 Xerox Corporation Searching and Matching unrecognized handwriting
US5644656A (en) * 1994-06-07 1997-07-01 Massachusetts Institute Of Technology Method and apparatus for automated text recognition
US5640492A (en) * 1994-06-30 1997-06-17 Lucent Technologies Inc. Soft margin classifier
EP0769175B9 (de) 1994-07-01 2005-01-12 Palm Computing, Inc. Zeichensatz mit zeichen aus mehreren strichen und handschrifterkennungssystem
JPH0896129A (ja) * 1994-09-21 1996-04-12 Omron Corp モデル画像登録方法
JPH08249422A (ja) * 1995-03-08 1996-09-27 Canon Inc 文字処理装置及び方法
JPH08286807A (ja) * 1995-04-18 1996-11-01 Canon Inc データ処理装置及びそのジェスチャ認識方法
US6044165A (en) * 1995-06-15 2000-03-28 California Institute Of Technology Apparatus and method for tracking handwriting from visual input
US5959260A (en) * 1995-07-20 1999-09-28 Motorola, Inc. Method for entering handwritten information in cellular telephones
JP3535624B2 (ja) * 1995-09-21 2004-06-07 キヤノン株式会社 検索装置及び方法
EP0768617A3 (de) 1995-10-16 1997-07-23 At & T Corp Verschachteltes segmentbasiertes Handschrifterkennungsverfahren
US5838819A (en) * 1995-11-14 1998-11-17 Lucent Technologies Inc. System and method for processing and managing electronic copies of handwritten notes
US6044174A (en) * 1996-10-11 2000-03-28 Lucent Technologies Inc. Method and apparatus for parametric representation of handwritten symbols
JP3969775B2 (ja) 1996-12-17 2007-09-05 キヤノン株式会社 手書き情報入力装置および手書き情報入力方法
JP3006545B2 (ja) * 1997-06-09 2000-02-07 日本電気株式会社 オンライン文字認識装置
US6144764A (en) * 1997-07-02 2000-11-07 Mitsui High-Tec, Inc. Method and apparatus for on-line handwritten input character recognition and recording medium for executing the method
WO1999030280A1 (en) * 1997-12-05 1999-06-17 Dynamic Digital Depth Research Pty. Ltd. Improved image conversion and encoding techniques
EP1376449B1 (de) 1997-12-29 2005-03-02 SAMSUNG ELECTRONICS Co. Ltd. Mobilkommunikationsendgerät mit der Anzeige überlagertem flächigem Berührungssensor
US6898315B2 (en) 1998-03-23 2005-05-24 Microsoft Corporation Feature extraction for real-time pattern recognition using single curve per pattern analysis
US6320985B1 (en) * 1998-07-31 2001-11-20 International Business Machines Corporation Apparatus and method for augmenting data in handwriting recognition system
SE514377C2 (sv) * 1998-08-26 2001-02-19 Gunnar Sparr Teckenigenkänning
US6826306B1 (en) * 1999-01-29 2004-11-30 International Business Machines Corporation System and method for automatic quality assurance of user enrollment in a recognition system
US20010033293A1 (en) * 2000-02-16 2001-10-25 Magnus Hollstrom Electronic pen help feedback and information retrieval
US6839623B1 (en) 2000-02-16 2005-01-04 Telefonaktiebolaget Lm Ericsson (Publ) Positioning applications for an electronic reading device
US6952497B1 (en) * 2000-02-16 2005-10-04 Telefonaktiebolaget L M Ericsson (Publ) Method and system for electronically recording transactions and performing security function
EP1264270B1 (de) * 2000-02-16 2004-04-28 Telefonaktiebolaget LM Ericsson (publ) Stiftdrucker
US6832116B1 (en) 2000-02-16 2004-12-14 Telefonaktiebolaget L M Ericsson (Publ) Method and system for controlling an electronic utility device using an electronic reading device
US6885878B1 (en) 2000-02-16 2005-04-26 Telefonaktiebolaget L M Ericsson (Publ) Method and system for using an electronic reading device as a general application input and navigation interface
US6681044B1 (en) * 2000-03-29 2004-01-20 Matsushita Electric Industrial Co., Ltd. Retrieval of cursive Chinese handwritten annotations based on radical model
US6724936B1 (en) * 2000-08-23 2004-04-20 Art-Advanced Recognition Technologies, Ltd. Handwriting input device and method using a single character set
US6867765B2 (en) * 2000-10-06 2005-03-15 International Business Machines Corporation Use of a paper pad with uniquely identified pages in a digitizer system
US6721452B2 (en) 2001-09-12 2004-04-13 Auburn University System and method of handwritten character recognition
AU2003273397A1 (en) 2002-09-04 2004-03-29 Fachhochschule Regensburg Biometric acoustic writing system and method for identifying individuals and recognizing handwriting by using biometric data
US7203384B2 (en) * 2003-02-24 2007-04-10 Electronic Scripting Products, Inc. Implement for optically inferring information from a planar jotting surface
US7088440B2 (en) * 2003-12-22 2006-08-08 Electronic Scripting Products, Inc. Method and apparatus for determining absolute position of a tip of an elongate object on a plane surface with invariant features
US9229540B2 (en) 2004-01-30 2016-01-05 Electronic Scripting Products, Inc. Deriving input from six degrees of freedom interfaces
US7961909B2 (en) 2006-03-08 2011-06-14 Electronic Scripting Products, Inc. Computer interface employing a manipulated object with absolute pose detection component and a display
US7826641B2 (en) * 2004-01-30 2010-11-02 Electronic Scripting Products, Inc. Apparatus and method for determining an absolute pose of a manipulated object in a real three-dimensional environment with invariant features
US8542219B2 (en) * 2004-01-30 2013-09-24 Electronic Scripting Products, Inc. Processing pose data derived from the pose of an elongate object
US7496232B2 (en) * 2004-06-23 2009-02-24 Microsoft Corporation Distinguishing text from non-text in digital ink
US7372993B2 (en) * 2004-07-21 2008-05-13 Hewlett-Packard Development Company, L.P. Gesture recognition
GB2447073B (en) * 2007-02-28 2012-02-22 Adrian Lynley Ashley Matrix pattern recognition decision making and adaptive learning process
US20100163316A1 (en) * 2008-12-30 2010-07-01 Microsoft Corporation Handwriting Recognition System Using Multiple Path Recognition Framework
US8341558B2 (en) * 2009-09-16 2012-12-25 Google Inc. Gesture recognition on computing device correlating input to a template
JP5284523B1 (ja) * 2012-09-05 2013-09-11 株式会社東芝 情報処理システム、プログラムおよび情報処理システムの処理方法
CA2964511C (en) 2014-10-17 2023-06-27 Ekornes Asa Balance joint for furniture
TWI569176B (zh) * 2015-01-16 2017-02-01 新普科技股份有限公司 手寫軌跡識別方法與系統
US11577159B2 (en) 2016-05-26 2023-02-14 Electronic Scripting Products Inc. Realistic virtual/augmented/mixed reality viewing and interactions
US10455115B2 (en) 2017-05-19 2019-10-22 Microsoft Technology Licensing, Llc Adaptive stylus position interpolation
CN111950542B (zh) * 2020-08-17 2021-07-09 湖南纽思曼存储科技有限公司 基于ocr识别算法的学习扫描笔

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55138180A (en) * 1979-04-16 1980-10-28 Fujitsu Ltd Real-time character recognition unit with additional registering function
JPS59165190A (ja) * 1983-03-10 1984-09-18 Fujitsu Ltd 手書き文字認識用辞書作成装置
JPS59180784A (ja) * 1983-03-31 1984-10-13 Fujitsu Ltd オンライン手書文字認識方式
US4672677A (en) * 1984-11-19 1987-06-09 Canon Kabushiki Kaisha Character and figure processing apparatus
JPH01169588A (ja) * 1987-12-24 1989-07-04 Oki Electric Ind Co Ltd オンライン文字認識装置
US5022086A (en) * 1988-12-20 1991-06-04 Sri International, Inc. Handwriting apparatus for information collection based on force and position
JP2886881B2 (ja) * 1989-03-24 1999-04-26 株式会社日立製作所 手書文字認識装置
JPH0362186A (ja) * 1989-07-29 1991-03-18 Fujitsu Ltd オンライン手書き文字認識辞書作成方式
US5023918A (en) * 1989-10-03 1991-06-11 International Business Machines Corporation Cross-product filter
US5038382A (en) * 1989-10-13 1991-08-06 International Business Machines Corporation Multi-scale recognizer for hand drawn strokes
JPH045231A (ja) * 1990-04-20 1992-01-09 Morishita Pharmaceut Co Ltd 慢性痛用鎮痛剤
JPH0443316A (ja) * 1990-06-11 1992-02-13 Nippon Telegr & Teleph Corp <Ntt> 磁気光学薄膜材料

Also Published As

Publication number Publication date
EP0562767A2 (de) 1993-09-29
US5333209A (en) 1994-07-26
CA2091617A1 (en) 1993-09-25
SG52220A1 (en) 1998-09-28
DE69333431D1 (de) 2004-04-08
FI931283A0 (fi) 1993-03-23
EP0562767B1 (de) 2004-03-03
JPH0644408A (ja) 1994-02-18
CA2091617C (en) 1996-10-01
JP3004495B2 (ja) 2000-01-31
EP0562767A3 (en) 1994-07-20
FI931283A (fi) 1993-09-25

Similar Documents

Publication Publication Date Title
DE69333431T2 (de) Verfahren zum Erkennen von handgeschriebenen Symbolen
DE69417105T2 (de) Vorrichtung und Verfahren zum Erkennen handgeschriebener Symbole
DE69428590T2 (de) Auf kombiniertem lexikon und zeichenreihenwahrscheinlichkeit basierte handschrifterkennung
DE3485953T2 (de) Verfahren und anlage zur on-line-erkennung handgeschriebener muster.
DE69325204T2 (de) Verfahren und Vorrichtung zum Weiterentwickeln einer Anfangssammlung von Handschriftprototypen zu einer anwender-spezifischen Sammlung
DE60204005T2 (de) Verfahren und einrichtung zur erkennung eines handschriftlichen musters
DE69231309T2 (de) Methode und System zur Handschrifterkennung
DE69230632T2 (de) Optische Worterkennung durch Wortgestaltuntersuchung
DE69424196T2 (de) Automatische Zeichenerkennung mit Verwendung statischer und dynamischer Parameter
Munson Experiments in the recognition of hand-printed text, part I: character recognition
DE102017220307B4 (de) Vorrichtung und Verfahren zum Erkennen von Verkehrszeichen
DE69527487T2 (de) Verfahren zum erlemmem von handgeschriebenen eingaben
DE69515371T2 (de) Suche und Vergleich von nicht-erkannter Handschrift
DE69610478T2 (de) Zeichenerkennungssystembestimmung von abgetasteten und &#34;echtzeit&#34;-handgeschriebenen zeichen
DE69606029T2 (de) Ermittlung der lage und der ausrichtung einer steuermarkierung
DE69428527T2 (de) Kritzlervergleich
DE68924669T2 (de) System zum Lesen des Ziffernbetrages und zum Uebertragen der Kontoabrechnung.
DE69230631T2 (de) Verfahren zum Vergleichen von Wortgestalten
DE69523567T2 (de) Verfahren zur handschrift-eingangsaufteilung
DE69027519T2 (de) Handschrifterkennung mit Verwendung von jeweils zwischen zwei Klassen unterscheidenden Massnahmen
DE69616246T2 (de) Automatisches Verfahren zum Identifizieren von Wegfallwörtern in der Abbildung eines Dokumentes ohne Verwendung vom OCR
DE19705757A1 (de) Verfahren und Gerät für das Design eines hoch-zuverlässigen Mustererkennungs-Systems
DE2640537A1 (de) Verfahren und vorrichtung zum unterscheiden zwischen n groesser als 2 alphabeten angehoerenden zeichen
DE112010001796T5 (de) Eingabevorrichtung
Dara et al. Telugu handwritten isolated characters recognition using two dimensional fast Fourier transform and support vector machine

Legal Events

Date Code Title Description
8364 No opposition during term of opposition