DE2540101A1 - Automatisches zeichenerkennungs- system - Google Patents
Automatisches zeichenerkennungs- systemInfo
- Publication number
- DE2540101A1 DE2540101A1 DE19752540101 DE2540101A DE2540101A1 DE 2540101 A1 DE2540101 A1 DE 2540101A1 DE 19752540101 DE19752540101 DE 19752540101 DE 2540101 A DE2540101 A DE 2540101A DE 2540101 A1 DE2540101 A1 DE 2540101A1
- Authority
- DE
- Germany
- Prior art keywords
- character
- line
- state
- decision
- arrangement
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/98—Detection or correction of errors, e.g. by rescanning the pattern or by human intervention; Evaluation of the quality of the acquired patterns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/42—Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation
- G06V10/421—Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation by analysing segments intersecting the pattern
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Quality & Reliability (AREA)
- Character Discrimination (AREA)
- Image Analysis (AREA)
- Character Input (AREA)
Description
Automatisches Zeichenerkennungs-System
Die Erfindung betrifft ein automatisches Zeichenerkennungs-System mit einer in einer bestimmten Folge abtastbaren,
zweidimensionalen, aus Zeilen und Spalten bestehenden Anordnung von Photosensoren zur Zeilenabtastung eines im Sichtfeld
der Anordnung liegenden Schriftstücks und zur Erzeugung •einer Folge von binären Datenworten im Rhythmus der Zeilenabtastung,
welche schwarze Abschnitte und freie Zonen eines im Sichtfeld liegenden Zeichens enthalten.
Die bekannten automatischen Zeichenerkennungsgeräte sind
entweder optische Zeichenerkennungsgeräte (OCR), Zeichenerkennungsgeräte für magnetische Tinte (MICR), oder eine
Kombination der beiden.
609813/0757
Beide Gerätearten arbeiten bei den industriell geforderten Lesegeschwindigkeiten nur sehr unzuverlässig- Außerdem gibt
es verschiedene Zeichenmißbildungen oder Uiagebungsdefekte,
beispielsweise Randdruck, welche ein optisches Zeichenerkennungsgerät (OCR) beim Identifizieren eines Zeichens versagen
lassen. Ähnliche Probleme treten bei dem MICR-System auf.
Bei den bekannten OCR-Systemen wurde eine einem Zeichenfeld entsprechende X-Y-Signalmatcix wiederholt aufgenommen und
mit einem Satz von Masken zur Entscheidungshilfe verglichen. Strichanalysen sowie Merkmalsanalysen wurden ebenfalls angewendet.
Der Erfindung liegt die Aufgabe zugrunde, ein schneller und zuverlässiger arbeitendes Zeichenerkennungs-System vorzuschlagen,
das in der Lage ist, die heutzutage in der industriellen Datenverarbeitung gestellten Anforderungen zu erfüllen.
Zur Lösung dieser Aufgabe dient ein System der eingangs erwähnten Art, welches gekennzeichnet ist durch eine Einrichtung
zur Erzeugung eines eine zuvor festgelegte Beziehung zwischen den schwarzen Abschnitten in einer Zeile bezeichnenden
Merkmalkodes im Rhythmus der Zeilenabtastung, durch eine Erkennungseinrichtung zur Aufnahme der Merkmalkodes
im Rhythmus der Zeilenabtastung für die Bildung eines
6098 13/0757
Zeichensignalkodes während jedes Abtastvorgangs aus einer eindeutigen Folge der Merkmalkodes, und durch eine Entscheidungseinrichtung
zur Erzeugung eines Zeichenerkennungssignals aus den aufeinanderfolgenden Zeichensignalkodes
der Erkennungseinrichtung während der Anwesenheit eines Zeichens im Sichtfeld.
Dadurch wird eine gesteigerte Zuverlässigkeit bei der Zeichenerkennung
erreicht, wobei die Zeichenerkennung mit einer den industriellen Anforderungen genügenden Lesegeschwindigkeit
erfolgt und die durch Zeilenabtastung kontinuierlich aufgenommenen Videodaten zur Identifizierung eines im Sichtfeld
der Anordnung liegenden Zeichens einer sequentiellen Entscheidungskette
unterworfen werden. Die Zeichenabtastgeschwindigkeit ist im Verhältnis zur Relativbewegung zwischen der
Anordnung und dem zu lesenden Zeichen äußerst hoch, so daß ein Zeichen während seiner Bewegung durch das Sichtfeld der
\nordnung mehrmals abgetastet werden kann. Die endgültige Zeichenentscheidung liefert dann das am häufigsten erkannte
Zeichen.
Die Anordnung der Photosensoren wird vorzugsweise in einer bestimmten Reihenfolge abgetastet, und zwar zeilenweise von
oben nach unten, um eine kontinuierliche Folge von schwarzen Zeichenbereichen und weißen Zwischenräumen entsprechenden
binären Daten zu erzeugen. Das während jeder Zeilenabtastung erzeugte binäre Datenwort wird von einem Merkmalgenerator
zur Erzeugung eines Merkmalkodes dekodiert, der
609813/0757
eine eindeutige Beziehung von Linienabschnitten innerhalb der Zeile angibt. Eine sequentielle Entscheidungskette mit
einem Speicher für die Zeichenkodes nimmt eine kontinuierliche Folge von Merkmalkodes entsprechend einer Abtastung
der gesamten Anordnung auf. Nach der Abtastung der Anordnung von oben nach unten werden sowohl die Folge der Zeichenkodes,
als auch die einzelnen Merkmalkodes zur Zeichenerkennung herangezogen.
Die Daten eines bestimmten Zeichens werden beim Durchlaufen des Sichtfeldes der Anordnung wiederholt verarbeitet. Die
während jeder vollständigen Abtastung der Anordnung der fhotosensoren erzeugten Zeichenkodes werden gespeichert.
Nachdem das Zeichen das Sichtfeld verlassen hat, wird eine abschließende Zeichenidentifizierung auf der Basis der am
häufigsten vorkommenden identifizierten Zeichen vorgenommen.
In einer Ausführung der Erfindung ist die sequentielle Entscheidungskette
durch einen mit der Zeilenabtastfrequenz durchlaufenden Datenfluß ohne Zwischenspeicherung gesteuert,
um ein im Sichtfeld der Anordnung liegendes Zeichen zu identifizieren.
Vorzugsweise wird eine Zeichenanwesenheit-Logikschaltung zur Entscheidung verwendet, ob ein Zeichen oder ein Zwischenraum
zwischen benachbarten Zeichen im Mittelbereich der Anordnung liegt.
6098 13/0757
25401QI
Insbesondere werden einem bestimmten Druckbuchstaben leicht angepaßte Kriterien an die Videodaten gelegt und zur Steigerung
der Zuverlässigkeit des Erkennungssystems mit der erzeugten Zeichenidentifizierung verglichen.
Vorzugsweise erfolgt ein quadrantweises Abtasten zum Schutz vor Zeichenzerstörung, die durch Abtastung zwischen den die
Informationen tragenden Zeilen auftreten kann.
Insbesondere wird ein Zwischenraum zwischen einer Folge von Zeichenidentifizierungen gebildet, die ein Wort, eine Phrase
oder einen Satz bedeuten.
Vorzugsweise dient eine Abtastrichtungslogik zur Bestimmung der Abtastrichtung im Sichtfeld der Photosensoren-Anordnung.
Im folgenden wird die Erfindung anhand der Figuren näher erläutert;
es zeigen:
Figur 1 ein Blockschaltbild einer Photodiodenanordnung einer Ausführung der Erfindung;
Figur 2A ein Blockschaltbild der Ausführung gemäß Figur 1 in und 2B Einzelheiten;
Figur 3 ein im Sichtfeld der Photodiodenanordnung liegendes alphanumerisches Zeichen;
6098 1 3/0757
Figur 4 ein Flußdiagramm einer im Zeichenanwesenheitsprozessor aus Figur 1 und 2 verwendeten Suchkette;
Figur 5 ein Flußdiagramm der logischen Entscheidungskette der Entscheidungseingangssteuerung aus Figur 2;
Figur 6 ein Flußdiagramm der logischen Entscheidungskette der Entscheidungsdurchführungssteuerung aus Figur 2;
und
Figur 7 ein Flußdiagrairan der Abtastrichtungslogik aus Figur 2.
Das erfindungsgemäße Zeichenerkennungsgerät enthält eine Anordnung
von Photosensoren, die vorzugsweise zur Erzeugung von binären Daten zeilenweise abgetastet werden. Die Abtastgeschwindigkeit
ist im Vergleich zur Transportgeschwindigkeit des zu lesenden Schriftstückes sehr hoch. Dadurch wird
die Anordnung während der Anwesenheit eines Zeichens viele Male rastermäßig abgetastet. Die von der Anordnung erhaltenen
Ausgangssignale bilden eine Folge von O oder 1-Impulsen/
je nachdem, ob das abgetastete Gebiet weiß oder schwarz ist.
In dem erfindungsgemäßen Zeichenerkennungsgerät sind die Photosensoren zu einer 12 χ 38-Anordnung zusammengefaßt, die
von oben nach unten und von links nach rechts, jeweils eine Zeile zur Zeit, abgetastet wird. Eine abgetastete Zeile
6098 13/075 7
liefert somit ein 12-bit-Wort, aus dem ein 4-bit-Kode entsprechend
den in der Zeile vorgefundenen Zeichenanteilen erzeugt wird. Die folgende Tabelle gibt den in einer Ausführung
der Erfindung verwendeten Kode an:
Tabelle I
Merkmalkode
Merkmalkode
0 = vollständig weiß
1 = lange Linie - 7 oder mehrere schwarze Zellen
2 = mittlere Linie im linken Drittel der Anordnung
3 = mittlere Linie in der Mitte der Anordnung
4 = mittlere Linie im rechten Drittel der Anordnung
5 = vertikaler Linienabschnitt im linken Drittel der Anordnung
6 = vertikaler Linienabschnitt zwischen den Sensoren 5 und
7 = vertikaler Linienabschnitt in der Mitte der Anordnung
8 = vertikaler Linienabschnitt zwischen den Sensoren 7 und
9 = vertikaler Linienabschnitt im rechten Drittel der Anordnung 10 = weites Paar von Linienabschnitten
11= enges Paar im linken Drittel der Anordnung
12 = enges Paar in der Mitte der Anordnung
13 = enges Paar im rechten Drittel der Anordnung
14 = keine Entscheidung zwischen Kode 1 und Kode 15
15 = dreifache Linienabschnitte.
Diese 16 Merkmale müssen durch einen Viel-bit-Kode dargestellt
werden, wobei die während jedes Abtastvorganges festgestellten Merkmale mit der Zeilenabtastfrequenz einer Zeichenerkennungseinheit
hintereinander zugeführt werden, die die kodierten Merkmale und ihre Folge zur Erzeugung eines dem zu lesenden
Zeichen entsprechenden Ausgangskodes auswertet.
6098 13/0757
■" ft
Das Ausgangssignal der Erkennungseinheit wird an eine Entscheidungseinheit
übertragen, die aus der Fülle der von der Erkennungseinheit erzeugten kodierten Daten für ein zu lesendes Zeichen
ein einziges Ausgangssignal erzeugt.
Figur 1 zeigt eine über einen Vorprozessor 51 mit einen Merkmalkodegenerator
52 verbundene Anordnung von Photosensoren 50, einen Zeichenanwesenheitsprozessor 55 und eine Abtastrichtungseinheit
56. Der Vorprozessor 51 enthält einen Verstärker mit automatischer Verstärkungssteuerung sowie einen
Analog/Digitalwandler. Der Ausgang des Merkmalkodegenerators liegt an einem Zeichenerkennungsprozessor 53, dessen Ausgang
wiederum mit einem Zeichenentscheidungsprozessor 54 verbunden ist. Der Ausgang des Zeichenanwesenheitsprozessors 55 liegt
sowohl am Zeichenerkennungsprozessor 53, als auch am Zeichenentscheidungsprozessor
54. Die Ausgänge der Abtastrichtungseinheit 56 und des Zeichenentscheidungsprozessors 54 sind
mit einer nicht dargestellten Ausgabeeinheit verbunden, die durch ein vom Zeichenentscheidungsprozessor 54 stammendes
und einen abgeschlossenen Entscheidungsvorgang anzeigendes Signal aktiviert wird. Die Ausgabeeinheit erhält Zeichenerkennungs-
und Abtastrichtungssignale zur Erzeugung eines Symbols, einer Phrase oder eines Satzes.
Figur 2 zeigt das Blockschaltbild aus Figur 1 in Einzelheiten. Die Anordnung 50 der Photosensoren ist wie in Figur 1 über
einen Vorprozessor 51 mit dem Eingang eines Merkmalkodegene-
6098 13/0757
rators 52 verbunden. Die Anordnung 50 besteht aus selbst abgetasteten
Photosensoren, beispielsweise aus Photodioden der Firma Redicon Corporation, Mountain View, Kalifornien,
in einer Anordnung von 12 χ 38 Zellen.
Der Vorprozessor 51 erhält ein binäres Videoeingangssignal entsprechend der schwarz/weißen Signale einer Zellenreihe
der Anordnung 50 und erzeugt ein 12-bit-Wort.
Die linken 6 bits des 12-bit-Wortes werden über die Leitung
100 an eine Abtastrichtungseinheit 56 übertragen. Die mittleren 10 bits des 12-bit-Wortes werden über eine Leitung 101
an eine Dekodiereinheit 102 für schwarze Zeilen und die drei mittleren bits über eine Leitung 103 an einen 256 χ 8 bit-ZeichenanwesenheitNur-Lese-Speicher
ROM 104 übertragen. Die Dekodiereinheit 102 und der ROM 1Ο4 gehören zum Zeichenanwesenheitsprozessor
55.
Alle 12 bits eines Wortes werden in einen 4 096 χ 4 bit ROM 105 übertragen. Jede Kombination von bits aus dem 12-bit-Wort
wird durch einen 4-bit-Kode im ROM 105 gespeichert.
Der ROM 105 nimmt somit zu einer Zeit jeweils die Daten einer Zeile vom Vorprozessor 51 in Form eines 12-bit-Wortes auf und
bildet einen der 16 in Tabelle I gezeigten Merkmalkodes aus jedem der 12-bit-Worte. Die so erhaltenen Merkmalkodes werden
zur Erzeugung eines Zeichenerkennungs-Signals an einen allgemein durch eine gestrichelte ümrißlinie angedeuteten Zeichenerkennungsprozessor
53 übertragen.
609813/0757
- ΊΟ -
25Α0101
Es wird darauf hingewiesen, daß die Erfindung sich nicht auf einen 12-bit-Videokode oder den erwähnten 16 Merkmale Kode
beschränkt. Der Videokode kann mehr oder weniger bits besitzen und die Anzahl der Merkmale kann ebenfalls größer
oder kleiner sein.
Die im ROM 105 gespeicherten Merkmalkodes erscheinen hintereinander
auf einer mit einem Dekodierer 106 und mit einem zweiten ROM 108 des Zeichenerkennungsprozessors 53 verbundenen
Hauptleitung 107. Der Zeichenerkennungsprozessor 53 wird beim Auftreten eines Ladebefehls CDLD auf einer Leitung 138 von
einer Entscheidungseingangssteuerung 111 aktiviert. Ein derartiger Ladebefehl wird zuerst auf ein Signal vom Zeichenanwesenheitsprozessor
55 erzeugt, der die vertikale Lage eines Zeichens durch Aufsuchen einer Videodatenzeile feststellt,
die keine "schwarze" Zelle enthält, und auf die eine Zeile mit mindestens einer "schwarzen" Zelle folgt.
Der Entscheidungs-ROM 108 ist ein 2560 χ 8 bit ROM mit einer sequentiellen Entscheidungskette mit einer großen Anzahl von
logischen Zuständen oder Verknüpfungen, wobei für jeden Zustand durch einen Zustandstransfer Zugriff für jeden anderen
Zustand besteht. Obgleich der ROM 108 als Einheit dargestellt ist, besteht er aus einer Gruppe von Nur-Lese-Speichern, deren
Anzahl zur Bildung einer sequentiellen Entscheidungskette ausreicht. Die Kette weist eine Vielzahl von logischen Verknüpfun-
6 0 9813/0757
gen oder Zuständen auf, die untereinander verbunden sind. Der jeweils durchlaufene Pfad hängt von der Folge des jeweils
auftretenden und des jeweils vorhergehenden Merkmalkodes ab.
Der ROM 108 weist 160 Speicherplätze oder Knoten für jeweils
16 Worte je Speicherplatz mit 1O bits je Wort auf. Jeder
Speicherplatz ist über 16 Pfade oder Verzweigungen mit einem nächsten Speicherplatz verbindbar. Dies können 16 Verzweigungen
zu 16 verschiedenen Speicherplätzen oder 16 Verzweigungen zu einem anderen Speicherplatz oder eine Kombination davon
sein.
Die Tabellen III A bis D zeigen in der in Tabelle II angegebenen Zusammenstellung ein Beispiel für eine sequentielle
Entscheidungskette, wobei eine Kette von logischen Verknüpfungen oder Zuständen durch Verzweigungen oder logische Pfade
untereinander verbunden sind. Alle logischen Zustände sind durch vier numerische Zeichen dargestellt, alle Verbindungen
durch eine Merkmalkodeziffer, und eine Entscheidung ist durch eine Merkmalkodeziffer gefolgt von einem Zwischenraum und
einem Symbol oder Zeichen in derselben horizontalen Zeile bezeichnet. Die in den Tabellen angegebenen Zeichen oder
Symbole entsprechen einer OCR-A-Schrift mit den Ziffern 0 bis 9, den Zeichen N, D, M, A, Ur P, X und Y und den Symbolen
$, ",/,. und > .
6098 1 3/0757
Die Tabellen III A bis D zeigen, daß jede Bearbeitung mit dem Zustand OOOO beginnt. Der ROM 108 enthält eine Zustandssteuerung
mit einem nicht gezeigten 12-bit-Eingangssignal-Dekodierer.
Die Zustandssteuerung stellt Zustandstransfers aus der jeweiligen Information im Zwischenspeicher 113 und
aus dem einlaufenden Merkmalkode fest. Wird durch den gerade vorhandenen Merkmalkode kein Zweig zu einem anderen Zustand
angegeben, dann beginnt die Zustandssteuerung mit dem Zustand 0000. Tritt, wie in Tabelle III A, der Merkmalkode 1
auf, dann erfolgt ein Transfer über den Zweig 1 in den Zustand 0101. Andererseits kann der Prozeß sowohl über den
Zweig 2 vom Zustand 0000, als auch über die Zweige 3 bis verlaufen. Vom Zustand 0101 kann der Prozeß in Abhängigkeit
vom nächst angetroffenen Merkmalkode über die Zweige 5, 6 bis 10 oder 12 bis 15 laufen.
6098 13/0757
TABELLE TII A
TABELLE III B TABELLE HT C TABELLE TII C
609813/0 757
OSOO 1 01(11 5
05<ll 0 .
ι 0402 ι
0501 | 10 | 0602 | • | • | |
Oitvl | 12 | 0602 | |||
0)05 | 0602 | ||||
ί | |||||
i | O | ||||
5 | 1 | ||||
Ϊ | 0501 | ||||
0502 | |||||
6 O402
03(15
0)ηβ
0502 0502 4 060T 0406 1
12
io
!(loo η
> iono
Of>oT ι
25A0101
TABELLE ; III Λ
0402 0 1 1
12 1)
IS
060T
050? 0502 060T 060T O5Q2
0502 0502
0«02 05O2 060T 051T
0T05 0 * A lono T 0*09 0 S
T 1000
0T02 1 S i lono
T 011(13 0 1 S
» s
14 S
4
PTO?
1 OJl* 0 1
io ions ο
J 1
4 ητθ4 1 1
4 CT02 12 050T
1} 05OT
14
IJ 0406 0*10 0 » 1 OTOO 0
050T
oeoo r> ο
s Q«no ς
i 0900
4 OAOt 0
OKOl
©901. 0
T
0901
m02 ο
1002 1002
J onno | 0503 S | 0609 | 5 | OTO) |
I
* |
2 | 06O9 |
6 ORQO | S | C 2 |
0*06 | ||||
t OiOl- | t | 0703 | |||||
4 OSOl | i | 0ΑΠ9 | |||||
1 OTOO | ■ | 060» | I | OTOV | 1 | 3 | |
• 0306 1 | 14 | 1 | |||||
% | ατοί | ||||||
4 | 0ÄOS | • | |||||
040) 1 | 0503 · | ||||||
1 | 05(19 | 1 | 0503 | ||||
S | 0609 | ||||||
4 | 0609 | ||||||
7 | 0)1) | O | T | ||||
• | t | 050ί | 1 | J | |||
S | |||||||
13 | |||||||
OSOS | |||||||
S | 0609 | ||||||
4 | 0214 | 0 | 7 | ||||
1 | 0503 | ||||||
7 | 0214 | ||||||
12 | 0509 | ||||||
13 | 0509 | ||||||
040)
0*03
4 | 04O» | O | OTQO | O | OTOO |
io | OSOO | 1 | 0600 | 1 | OTOO |
to | 14 | ||||
0600 | |||||
12 | OTOO | ||||
14 | |||||
1* | OTOO | ||||
* | 02OT | 0 | 0*02 |
T | 0212 | t | O)QA |
t | OTOO | ||
0»O(l | |||
I | OiO* | ■ | W* |
4. | 0*10 | ||
$0* | |||
02ΛΤ | |||
t | 050» | * | O2OT |
10 | (Mti | ft | |
0 9 8 13/0757
« OJdil
1,2 | 0401 | 0 | OSOA | 0 | 0 | 0715 | 0 | # | • |
12 | 10 | 1 | • | ||||||
IZ 0204 S | e?n7 | « | 10 | * -^T^ * | • | ||||
* | 02OT | ■ | |||||||
T | 0212 | ||||||||
• | 02Ρλ | ||||||||
* | 02Rt | ||||||||
10 | 0410 | m | |||||||
12 | 0307 | 0 | 040S | • | |||||
\ | 0410 1 | ||||||||
^ * | |||||||||
t4 | |||||||||
15 | |||||||||
TABELLE III B
0405
* 0609
0404
0715
0405
t
040S
040S
to osos
0 « » 0405
2 0405
3 0405
10 0604 0 « 1 · S ·
12 0413 1 ■
12 060) 1 2
1
13 0413
14 ■
S3 0204
0205
0307
0404
0404
020S
0102 0
'1 0101
0212
0204
0209
3207
L
020?
■ 0201
020»
0303
0204
0«14 10 0411
0405
0100
οίοι
1015
020T
0203
0114
0502 0502 0402 0305
OtOT 0404
0402 0115
0704 0
« OSlO
3 0502
12 040«
13 0406
5 OAlS 1 MIl
4 0104 | 0101 | ■t | 0212 | 11 | 0204 | |
5 0105 1 | 0100 | % | 0306 | 12 | 02P4 | |
2 | 0104 | 10 | 020» | 13 | 0204 | |
12 | 0313 | |||||
13 | 031)7 | |||||
0203 | 0307 | |||||
0114 | ||||||
0302 | 1 | |||||
020* | T | olnl | ||||
1 0103 1 | 0204 | ti | 0212 | |||
3 | 0204 | Ο2Λ9 | ||||
s | 0209 | |||||
I | ||||||
0101 | ||||||
t | 0310 | |||||
7 | ||||||
g | ||||||
4 | ||||||
11 | ||||||
12 | 1 | |||||
13 | 3 | olnv | ||||
0411 | ||||||
Ο31Ο | 4 | |||||
0311 | T | 0411 | T | 03011 | ||
Il | 0411 | • | 0510 | |||
ti | OSlO | 12 | 0204 | |||
12 | (Ι2Π4 | |||||
02r<4 | ||||||
1 | ||||||
2 | 0101 | |||||
3 | OSlO | |||||
5 | OSlO | |||||
0412 | ||||||
1 | 0»07 |
O
S
4
12
60981 3/0757
OSOl OSOl 05VO OSlQ
OTlO
1 0404
12 1Π7 1? 1004 t 0404
0904 .
OXO« 1 OAlO 0 A
10 OAOl 0 A 10 0402 0
,
OM)T
S O)IS 0 ,
ash to OTnA ι nmn
14 OHIO
15 * 12 07OA
14 OT O6 ί OSIl
OtIl
II 0411 1 OSIl
1» 0S12 1 OSIl A 1
10 OAl? O
TABELLE III C
Ii Olli
14 OSIl
14
0312 | 4 | 031S | 1 0?0S | |
0312 | 7 | 0611 | m 0910 ι | |
OfIO | I | OStD | ||
0708 | 12 | 0710 | ||
t | ||||
T | ||||
t | ||||
VO | 10 | 0R02 | ||
12
OBlO
IS 0412
OKQ?
1} 091?
0400 I)
OTiIT
P90.4
0713
7 040S 10 0713
ft?ll
IS M14
«41S 10 0411
11 0911
IS 0904
1 o?ns
7 1006
IO 0T13
IS 040»
O7U4 1 OMS
040T
4 C40T
la mot
1» A407
? OMS
1 01114
* 04OT
12 OAlS
14 I)AlS λ ΑΤ04
Λ704
0S04 .S 0TO4
6 01O4
12 ATlO
0707 1 0»0S 7
*
10 0402
n«os *
iod f>n ic
It (190« in
1006 Λ
12
10.1)6
0411 0914
2 1014
7 04Of 10 0201
12 0201
13 0201 IS 1014 12 1004 4 090S
• 0606 10 1010
090S
1014
loon
IZ 1005 1 ItMVR
e«ns
040S
. inol
J loni
1OOV
ioo4
IQOT
Olli 06OS
Il 0112
1012 11 1Ϊ OTU
JO 0911 1« OKI?
15 OKI?
1012
0606.
OAOf. 04D6
OAOA OAOS
OAOA Of1Ot OAOA 0AO6 OAOS
1014
n<»04 0904
0404
T 0"J04
• (V404
* A404
10 OAIl
IS 1*40»
0914 09O4 09114
1? OTlO 13/0757
13 OkI* * 0*1?
10 07η* 1? 041»
0200 ι »mi
3 DUCT ·.
S 0*12 t 0*1?
1 0312 10 OTOB 12 071* 1 0101
10 ΟβΟ* 1 0903 * 090* 11 0?0S
I? <l2ftS 1* 0709
IS 02OS
TABELLE III D
11 12
0(104 0806
10 0910
12 031* ι mo*
s mo«
« lnlo
T 090*
ι* mo*
IS 090* IS 0912
10 | OTO« | 1 | OMi | 1 | 0101 |
11 | OTl* | > | ©ln3 | IO | 0R06 |
12 | OTl* | S | 0*12 | 12 | 0*06 |
1 | 01Ul | t | 0*12 | IS | 0912 |
2 | 0102 | T | 0*12 | ||
3 | 0103 | • | OSlO | ||
5 | 0311 | 10 | OT(I* | ||
t | 0909 | 12 | 6210 | ||
0909 07OB 0210 0912 0101 0102 0103 010*
02» 3
061*
01(U 0103 0*12
0300
0*00
0*00
0*09 β /
« 0T12 O /
12 OTM 12 0710
OSlS O .
i OBOT
1 1011 2 0906 O
12
13
ft 0*0«
12 0413
13 0*13
OSlS
0*0? ι οηητ
12 0317
061*
12 0*11
S MIS
OJlS 021S
Oil*
OtOl 0103 Q21S •20»
10 11
12 1*
03OO
07ns
OV)O
0300 Oil*
1 03«!
10 ciio
t> Olli I
12
0110
IO
U 12
IS
0101 OXO* 0*13 »
0701
PlOl RlOl (1102 0103
OHO* 02112
moi out ι
ι>2ί>2
turn
OiUi
6 6
08η* ο
12
Ml*
Olfil
OSO*
02ft? 1
ίο ι?
13
IS
091S
0(0«
mi*
«301 CITlO
nini
0103 0*0»
η«η* 0912 091?
609813/0757
Angenommen, die Zustandssteuerung läßt den Prozeß über den
Zweig 5 ablaufen, dann erfolgt der Entscheidungsfluß vom Zustand 0101 zum Zustand 0207. Im Zustand 0207 tritt ein
anderer Merkmalkode ein und wird von der Zustandssteuerung verarbeitet, die den Entscheidungsfluß über die Zweige 1
bis 3, 5 bis 7 oder 10 weiterleitet. Läuft der Prozeß über den Zweig 1, dann erfolgt ein Zustandstransfer vom Zustand
0207 in den Zustand 0501. An dieser Verzweigung trifft wiederum
ein Merkmalkode vom ROM 105 ein, der den Entscheidungsfluß über den Zweig 0, die Zweige 8 bis 10 oder den
Zweig 12 leitet. Wird der Zweig 0 als nächster Entscheidungszweig gewählt, dann erfolgt eine Zeichenentscheidung.
Diese Entscheidung liefert das Symbol ".". Wird der Zweig gewählt, dann läuft der Entscheidungsfluß weiter vom Zustand
0501 über den Zweig 8 in den Zustand 0602.
Es wird darauf hingewiesen, daß bei der Wahl der Zweige 9,
10 oder 12 der unmittelbar der Angabe des Zustandes 0602 auftretende freie Raum darauf hinweist, daß der benötigte
Zustandstransferzweig in einem anderen Erkennungspfad verwendet wird, und daß die Zustandsinformation bereits ausgedruckt
wurde. Die Tabellen werden somit senkrecht nach oben nach einem Zustandsausdruck 0602 mit Zustandsinformation
abgefragt. Ein solcher Ausdruck wird beim Zweig 8 gefunden, von dem zwei Zweige vom Zustand 0602 in den Zustand
1000 führen. Es wird darauf hingewiesen, daß bei der ROMr Anordnung gemäß Figur 2 die Abfrage von unten nach oben in
einem einzigen Zustandstransfer erfolgt.
609813/0757
Wird der Zweig 1 als der nächste logische Zweig vom Zustand
0602 gewählt, dann läuft der Entscheidungsfluß über den Zweig 1 vom Zustand 0602 zum Zustand 1000. Beim Eintreffen des
nächsten Merkmalkodes kann der Entscheidungsfluß von der Zustandssteuerung über den Zweig 0, den Zweig 6 oder den
Zweig 7 geleitet werden. Wird der Zweig 0 gewählt, dann erfolgt eine Zeichenentscheidung, wobei die das Zeichen "5"
liefert. Werden entweder der Zweig 6 oder der Zweig 7 gewählt, dann erfolgt der Entscheidungsfluß vom Zustand 10OO in den
Zustand 1OO1. Hier zeigt sich, daß unabhängig von der Wahl des Zweiges, nämlich O, 6, 7 oder 8, dieselbe Entscheidung
"011 erfolgt.
Figur 3 zeigt in Verbindung mit dem Merkmalkode aus Tabelle I als weiteres Beispiel das Zeichen "A" auf einer 12 χ 38-Zellenanordnung
von Photosensoren. Eine zeilenweise Abtastung liefert die nachstehende Folge von Merkmalkodes:
0, 5, 5, 5, 3, 12, 12, 1, 10, 10. Eine derartige Folge von Merkmalkodes bewirkt für den ROM 108 die Durchführung der
folgenden Zustandstransfers:
0105, 0311, 0412, 0807, 0710, 0804, 0810, 0601, 0902. Nach dem Eintreffen eines Merkmalskodes 0 im Zustand 0902
erfolgt eine Entscheidung, und das Zeichen wird als "A" identifiziert. Da die Folge der angegebenen Merkmalkodes
von einer zeilenweisen Abtastung von oben nach unten stammt, entdeckt die Abtasteinheit zuerst einen vertikalen Linienab-
609813/0 757
schnitt im linken Drittel der Anordnung während der ersten drei Abtastungen des Zeichens, anschließend eine mittlere
Linie und ein enges Linienpaar in der Mitte der Anordnung sowie eine lange, den Mittelbalken des Buchstabens "A" andeutende
Linie, worauf schließlich ein weites, durch den Merkmalkode 10 bezeichnetes Linienpaar und danach ein Merkmalkode
0 folgen. Während der Bewegung des Zeichens "A" über die Anordnung 50 ändert sich der Merkmalkode 5 aufeinanderfolgend in 6, 7, 8, und schließlich in den Merkmalkode 9.
Weitere Lageänderungen des Zeichens, Veränderungen der Merkmale oder Zeichenvergrößerungen liefern eine unterschiedliche
Merkmalsfolge, die für eine korrekte Entscheidung durch Einfügen von neuen Zweigen zwischen die logischen Verknüpfungen
der Entscheidungskette verarbeitet wird.
Falls Rauschen den Entscheidungsfluß auf einem falschen Zweig
ablaufen läßt, auf dem die Zustandssteuerung keinen freien Zweig aus eintreffenden Merkmalkodes auswählen kann, dann
wartet der Entscheidungsprozeß auf einen anderen Merkmalkode oder auf einen Transfer zu anderen Verzweigungen, in
denen die bereits aufgenommenen Zeichenabschnitte Merkmale aufweisen, die einen Zweig zum transferierten Zustand aufzeigen.
Wenn nur geringe Unterschiede zwischen der aufgenommenen Merkmalsinformation und einer Zeichenentscheidung verbleiben,
8098 13/0757
dann erfolgt eine Entscheidung vor der Aufnahme weiterer Merkmale.
Der Zeichenerkennungsprozessor 53 fügt auf diese Weise sozusagen Zweige zwischen den Verzweigungen zur Ableitung eines
bekannten Zeichens hinzu, anstatt eine Zurückweisung zu melden, wenn zusätzliche Information benötigt wird.
Tabelle IV | Zustand | |
Merkmalkode | 0101 | |
1 | 0101 | |
1 | O1O1 | |
3 | 0208 | |
9 | 0306 | |
9 | 0403 | |
9 | 0509 | |
12 | 0503 | |
1 | 0503 | |
1 | 0608 | |
9 | 0701 | |
9 | 0701 | |
9 | 0701 | |
9 | ||
1 | ||
1 | ||
O | ||
O | ||
6098 13/0757
In Verbindung mit der Merkmalkodefolge aus Tabelle IV werden
die beschriebenen zusätzlichen Eigenschaften der sequentiellen Entscheidungskette anhand des Prozesses zur Erkennung der Ziffer
"3" aus einer Folge von Merkmalkodes erläutert, zu welcher auch Rauschen gehört.
Die Tabellen IV und III A bis D zeigen, daß der Merkmalkode "1" einen Transfer vom Zustand OOOO in den Zustand 0101 bewirkt.
Ein nachfolgender "1" oder "3"-Kode bewirkt für den Entscheidungsprozeß einen Haltezustand bis zum Eintreffen
eines Merkmalkodes, der einen Transfer zu den freien Zweigen 5 bis 10 oder 12 bis 15 durchführt.
Die drei folgenden "9"-Kodes rufen Transfers zu den Zuständen
0208, 0306 bzw. 0403 hervor. In dem beschriebenen Prozeß erzeugt der ROM 105 aufgrund von Rauschen einen "12"-Kode, der
ebenfalls dekodiert wird und einen Zustandstransfer in den Zustand 0509 bewirkt.
Nach dem Eintreffen des nächsten Merkmalkodes "1" wird der Entscheidungsprozeß zum Zustand 0503 transferiert. Dieser
Zustandstransfer zeigt auf deutlichste Weise den beträchtlichen Unterschied zwischen der erfindungsgemäßen Entscheidungskette
und dem bekannten Entscheidungsbaum. Ein Entscheidungsbaum wird immer nach unten auf einem verbundenen Pfad
durchlaufen, während erfindungsgemäß ein Zustandstransfer in einen Zustand erfolgt, der nicht auf dem durchlaufenen Pfad
liegt. Außerdem liegt dieser Zustand eher auf einem höheren,
6098 13/0757
als auf einem niedereren Niveau. Die erfindungsgemäße Entscheidungskette
wird demnach in einem einzigen Zustandstransfer entweder nach oben, nach unten oder zwischen den
Verknüpfungen durchlaufen.
Unter weiterer Fortsetzung des in Tabelle IV angegebenen Prozesses bewirkt ein zweiter '"!"-Kode das Eintreten in
einen Haltezustand beim Zustand 0503, während ein folgender "9"-Kode einen Transfer zum Zustand 0608 bewirkt.
Bei der Aufnahme der nächsten drei "9"-Kodes transferiert
der Entscheidungsprozeß in den Zustand 0701 und verbleibt dort. Wird ein "1"-Kode empfangen, dann erfolgt eine Entscheidung
vor der Aufnahme der beiden "0"-Kodes, die das Ende der Zeichenabtastung angeben. Somit verbleiben keine
wesentlichen Unterschiede zwischen der erhaltenen Merkmalsinformation und der erkannten Ziffer "3". Wären nach dem
Erscheinen des ersten "1"-Kodes wesentliche Unterschiede verblieben oder noch andere Entscheidungen möglich gewesen,
dann wäre der Entscheidungsprozeß ohne Entscheidung im Zustand 0701 verblieben, bis eine weitere Merkmalsinformation
angekommen wäre. Daraus folgt, daß der durch die sequentielle Entscheidungskette im Zeichenerkennungsprozessor
53 auftretende Algorithmus einen verteilten Ablauf durch untereinander verbundene logische Verknüpfungen
enthält, die nicht so wie bei bekannten Baumnetzwerken
609813/0757
geordnet sind. Bei den bekannten Entscheidungsbäumen kann ein Ablauf entlang eines Zweiges nicht zurückverfolgt werden,
wenn ein höherer Zweig ausgewählt worden ist. D.h. der Entscheidungsfluß erfolgt immer nach unten. Er erfolgt niemals
quer über die Zweige und geht nie zu einem vorhergehenden Zweig zurück, wie es bei dem erfindungsgemäßen Algorithmus
der Fall ist. Dieser wurde aus einem Entscheidungsbaum für ein einziges Zeichen durch anschließendes Hinzufügen von
Zeichen entwickelt, indem soviele Zweige wie möglich verwendet und nur nicht-redundante Entscheidungspfade hinzugefügt
wurden. Nach Abschluß des Prozesses waren die Redundanzen ausgeschieden worden und ein Algorithmus gebildet,
der nicht langer mit dem bekannten Entscheidungsbaum vergleichbar war.
Der in Figur 2 dargestellte Zeichenerkennungsprozessor 53 enthält eine Entscheidungskette mit einem ROM 108, einen
Entscheidungsverzögerungs-Zwischenspeicher 113, ein Entscheidungsregister 115, einen Zeichenkode-Dekodierer 124
und einen Entscheidungs-Zwischenspeicher 122. Im normalen Entscheidungsgang nimmt der ROM 108 4 bit Eingangssignale
vom ROM 1O5 in einem Rhythmus auf, der der Zeilenabtastung der Anordnung 50 entspricht, prüft den jeweiligen durch den
Inhalt des Zwischenspeichers 113 ausgewiesenen Zustand und
gibt einen Zustandstransferbefehl an die sequentielle Entscheidungskette im ROM 108.
6098 13/0757
Die Merkmalkodes O vom ROM 105 sind zur Erzeugung eines Zustandsbefehls
im Zwischenspeicher 113 solange nicht gegatet, bis die Entscheidungseingangssteueurung 115 zwei den Zeichenfuß
bezeichnende leere oder weiße Zeilen erkannt hat. Ist die den Zeichenfuß bezeichnende weiße Zeile gleichzeitig die
unterste Zeile 38 der Anordnung 50, dann wird nur eine weiße Zeile benötigt. In diesem Fall werden die Merkmalkodes 0 zur
Erwirkung einer Entscheidung gemäß den Tabellen III A bis D verarbeitet.
Vor der Freigabe des Zeichenerkennungsprozessors 53 überprüft der Zeichenanwesenheitsprozessor 55 die vom Vorprozessor
51 zeilenweise aufgenommenen Videodaten, um das Vorhandensein eines Zeichens auf der Anordnung zu bestimmen.
Ein Zeichen wird zuerst durch vertikale Abtastung aufgesucht, indem Zeilen mit nur leeren Zellen gesucht werden, gefolgt
von Zeilen, die schwarze Informationen enthalten. Ein Dekodierer 102 für schwarze Zeilen erzeugt in Abhängigkeit
von den über eine Leitung 101 vom Vorprozessor 51 erhaltenen Videodaten der einzelnen Zeilen ein entweder eine weiße
Zeile oder eine Zeile mit schwarzen Zellen bezeichnendes Signal, das über die Leitungen 109 und 110 in die Entscheidungseingangssteuerung
111 bzw. in einen 256 χ 8 bit-Zeichenanwesenheits-ROM
104 geführt wird.
6098 13/0757
Erhält die Entscheidungseingangssteuerung 111 ein weißes
Zeilensignal gefolgt von einem schwarzen Zeilensignal, dann wird der Zeichenerkennungsprozessor 53 durch ein Signal
CDLD auf der Leitung 138 zum Zwischenspeicher 113 freigegeben. Daten vom ROM 108 werden dann mittels Taktimpulsen
CLK1 auf der Leitung 112 mit der Zeilenabtastfrequenz
in den Zwischenspeicher 113 übertragen.
Während der Zeichenerkennungsprozessor 53 freigegeben ist, empfängt eine Suchschaltung mit einem ROM 104, einem Zeichenanwesenheits-Verzögerungsspeicher
114 und einer Rückkopplungsschieife 136 3 bits der Videodaten über die Leitung 103 im Rhythmus der Zeilenabtastung und sucht die
mittleren drei Spalten einer von oben nach unten durchgeführten Abtastung sperrende schwarze Videosignale.
Sind keine derartigen Signale vorhanden, so deutet dies darauf
hin, daß eher ein Zwischenraum zwischen benachbarten Zeichen, als ein Zeichen selbst über den mittleren drei Spalten der
Anordnung 5O liegt.
Der ROM 104 ist zum Ansprechen von auf Leitungen 103, 110
und 136 auftretenden Daten programmiert. Ein nicht dargestellter 8-bit-Eingangsdekodierer wählt die im ROM gespeicherten
4-bit-Worte als Ausgangssignal für eine Folge von Zuständen
auf der Leitung 137 aus. Die Daten auf der Leitung 137 werden mittels eines Taktsignals CLK1 in den Zwischen-
609813/0757
speicher 114 getaktet, wobei ein Impuls auf der Leitung entsprechend der Zeilenabtastfrequenz erzeugt wird.
Die Suchschaltung wird gemäß Figur 4 freigegeben, wenn ein eine vollständig weiße Zeile bezeichnendes Signal von einem
Signal einer schwarzen Zeile auf der Leitung 110 vom Dekodierer 102 erhalten wird. Bis das eine weiße Zeile bezeichnende
Signal im Zustand 301 erkannt wird, läuft der Prozeß lediglich mit der Abtastfreguenz in einer Schleife entlang
des Pfades 400 über den Zustand 312, der die Suchkette in ihren Anfangszustand 3OO zurückstellt und das ROM bit 1
zur Erzeugung eines Signals DTRES auf der Leitung 141 aktiviert, um die Entscheidungskette des Zeichenerkennungsprozessors
53 zurückzustellen. Wird ein weißes Zeilensignal aufgenommen, dann läuft die Entscheidung in den Zustand 302,
in der wiederum ROM bit 1 für die Dauer einer Zeilenabtastung der Anordnung 50 aktiviert wird.
Tritt das DTRES-Signal vom ROM 104 auf der Leitung 141 zur
Entscheidungseingangssteuerung 111 gemäß Figur 2 auf, dann stellt diese durch ein Signal CHDECRES auf der Leitung 119
zum Zwischenspeicher 113 den Zeichenerkennungsprozessor 53
zurück. Ein Zurückstellen des Zwischenspeichers 113 führt
die sequentielle Entscheidungskette des ROM 108 in den Zustand 00OO auf die beschriebene Weise zurück. Da die Steuerung
111 die ROM 108 Entscheidungen vor der Rückstellung des Zwischenspeichers 113 in das Register 115 takten muß, wird das
609813/0757
Signal DTRES an die Steuerung 111 und nicht direkt an den
Zwischenspeicher 113 gelegt.
Das Signal CHDECRES wird ebenfalls von der Steuerung 111
in Abhängigkeit von zwei weißen vom Dekodierer 102 erzeugten Zeilensignalen gebildet, nachdem die unterste Zeile
eines Zeichens abgetastet wurde; es wird außerdem nach einem weißen Zeilensignal unter einer letzten Zeichenzeile
gebildet, wenn diese weiße Zeile die 38-ste Zeile der Anordnung 50 ist und wenn weniger als drei schwarze Zeilensignale
dem weißen Zeilensignal vorhergehen. Darüber hinaus wird das Signal bis nach dem Erkennen des ersten weißen
Zeilensignals mit der Abtastfrequenz erzeugt; es wird außerdem erzeugt, wenn ein Zwischenraum oder ein weißer
Streifen zwischen benachbarten Zeichen über den mittleren drei Spalten der Anordnung 50 liegt.
Aus dem logischen Zustand 302 der Figur 4 läuft der Prozeß weiter zum Zustand 303, in dem nach einem schwarzen Zeilensignal
vom Dekodierer 102 gefragt wird. Wurde kein schwarzes Zeilensignal aufgenommen, dann läuft der Prozeß zum
Zustand 311, in dem eine Zeile-38 Abfrage erfolgt. War die
letzte abgetastete Zeile die Zeile 38 der Anordnung 50, wie. es durch ein Zeile-38-Signal von einem Zeilenzähler
über eine Leitung 180 zum Zwischenspeicher 140 angegeben wird, dann verläuft der Prozeß zum Zustand 312, in dem die
Suchkette und die Entscheidungskette des ROM 108 zurückge-
60Ö8 1 3/0757
stellt und die Suche nach einer weißen, von einem schwarzen Zeilensignal gefolgten Zeile wiederum im Zustand 301 begonnen
werden. Ist die zuletzt abgetastete Zeile nicht die Zeile 38, dann wird der Zweig 401 zum Stellen des ROM bit 1 im Zustand
302 und zur Abfrage nach einem schwarzen Zeilensignal vom Dekodierer 102 im Zustand 303 durchlaufen.
Wurde ein schwarzes Zeilensignal aufgenommen, dann wird das
Suchnetzwerk im Zustand 304 freigegeben und die mittleren drei Spalten der vom Vorprozessor aufgenommenen Videodaten
werden nach einem über die Mitte der Anordnung 50 laufenden Zeichen oder nach einem weißen Zwischenraum abgefragt.
Während des Suchprozesses erfolgt eine Reihe von zeilenweisen Abfragen, die mit einem Zustand 305 beginnen, in dem
nach drei aufeinanderfolgenden schwarzen Zeilen gefragt wird, um zwischen einer Zeichenspitze und zwischen außerhalb des
Zeichens liegenden schwarzen Signalen zu unterscheiden. Werden weniger als drei Zeilen mit schwarzen Informationen
erkannt, dann erfolgt ein Transfer in den Zustand 306 zur Bestimmung, ob die letzte Zeile einer Anordnung, nämlich
die Zeile 38, abgetastet wurde. Ein Zeile-38-Signal vom
Zähler 123 läßt den Prozeß über die Verzweigung A zum Zustand 312 weiterlaufen. Ein Transfer in den Zustand 307
wird jedoch durchgeführt, wenn weniger als 38 Zeilen in einem Abtastvorgang durchlaufen wurden.
6098 13/0757
Gehen einer weißen Zeile weniger als drei schwarze Zeilen voraus/ dann folgt ein Transfer in den Zustand 303 und die
Suchkette des Züstands 304 wird in einen Zustand gebracht, der einer bekannten weißen Zeile entspricht.
Wird keine weiße Zeile während des Erkennens von drei aufeinanderfolgenden
schwarzen Zeilen im Zustand 305 gefunden, dann wird jede Zeile der einlaufenden Videodaten im Zustand
309 überprüft. Bis eine vollständig weiße Zeile auftritt oder die letzte Zeile eines Durchlaufs abgetastet wird,
durchläuft der Prozeß eine geschlossene Schleife mit den Zuständen 309 und 310 sowie den Zweigen 402 und 403 im
Rhythmus der Zeilenabtastung. Wird ein Zeile-38-Signal von
der Steuerung 111 vor dem Entdecken einer weißen Zeile im Zustand 309 aufgenommen, dann erfolgt ein Transfer über die
Verzweigung A in den Zustand 312. Wird jedoch eine weiße Zeile vor dem Abtasten der letzten Zeile der Anordnung 50
gefunden, dann wird die Suchkette im Zustand 313 nach einer Sperre abgefragt, die auf die Anwesenheit eines Zeichens
im Abtastbereich hinweist.
Es sei beispielsweise eine bit-Anordnung XXXX betrachtet,
die vom ROM 104 gemäß Figur 2 mit der Zeilenabtastfrequenz aufgenommen wird. Das erste bit stellt ein vollständig weißes
Zeilensignal vom Dekodierer 102 und die drei dahinter angeordneten bits stellen ein 3-bit-Datenwort dar, das den
mittleren drei Datenspalten entspricht, die vom Vorprozessor
6098 13/0757
erhalten wurden. Der im Zustand 304 verkörperte Suchprozeß fragt nach einem vertikal über die mittleren drei Spalten
der Videodaten verlaufenden weißen Streifen. Der Suchprozeß führt nur senkrechte oder rechtwinklige Transfers, jedoch
keine diagonalen Transfers außerhalb der drei Spalten durch.
Die Tabelle V zeigt in der Kette A einen blockierten Zweig, während die Kette B einen offenen oder weißen Zweig darstellt.
Tabelle V | B | |
A | 0001 | |
0001 | 0011 | |
OO1O | 0001 | |
0100 | 0100 | |
1000 | 1000 | |
10OO | 1000 | |
1OOO | ||
Ist der Zustand 313 in Figur 4 nicht gesperrt, dann erfolgt ein Transfer in den Zustand 310, in dem, wie zuvor beschrieben,
nach der Zeile 38 gefragt wird. Wird jedoch im Zustand 313 eine Sperre entdeckt, dann wird im Zustand 314 das ROM
bit 0 zur Erzeugung einer einzigen Zeilenabtastung für ein CHPS14-Signal auf der Leitung 140 zur Steuerung 111 gestellt.
Das Signal CHPS14 weist darauf hin, daß eine Sperre vorliegt,
6098 13/0757
daß eine weiße Zeile entdeckt wurde und daß eine Zeichenentscheidung
bevorstehen könnte. Der Prozeß läuft weiter zum Zustand 315, indem eine Zeile-38-Abfragung vor der Abfrage
nach einer zweiten vollständig weißen Zeile im Zustand 316
durchgeführt wird. Wurde eine weiße Zeile erkannt und kein Ende-der-Abtastung- oder Zeile-38-Signal erhalten, dann erfolgt
im Zustand 316 eine Abfrage nach einer zweiten weißen Zeile. Wurde jedoch eine weiße Zeile in Zeile 38 entdeckt,
dann wird das ROM bit 2 im Zustand 317 gesetzt, um ein Zeichenanwesenheitssignal
CHPRES auf der Leitung 120 zur Steuerung 111 zu erzeugen.
Das Signal CHPRES, bezeichnet die Sperre der mittleren drei Videodatenspalten durch schwarze Zellen, und es wird eine
Zeichenanwesenheit im Abtastbereich ausgewiesen.
Wird eine zweite weiße Zeile vor dem Abtasten der Zeile 38 gefunden, dann erfolgt ein Transfer vom Zustand 316 in den
Zustand 317, um ein Zeichenanwesenheitssignal auf die zuvor beschriebene Weise zu erzeugen. Wird keine weiße Zeile entdeckt,
dann läuft der Prozeß auf dem Zweig 404 zum Zustand 309 zurück und beginnt einen neuen Suchvorgang nach zwei
weißen Zeilen.
Liegt daher eine Zeichenendebedingung vor, nämlich eine weiße Zeile in der Zeile 38 oder zwei weiße Zeilen, dann wird
ein Zeichenariwesenheitssignal erzeugt und die Entscheidungs-
6098 1 3/0757
25A0101
kette des ROM 108 im Zustand 318 zurückgestellt. Wurde die Zeile 38 abgetastet, dann erfolgt ein Transfer vom Zustand
319 zur Verzweigung A. Falls jedoch zwischen der ein Zeichenende bezeichnenden weißen Zeile und der Zeile 38 noch abzutastende
Zeilen übrig sind, dann wird die Suchkette im logischen Zustand 320 in den Zustand "eine weiße Zeile" gebracht,
und der Prozeß verläuft über den Zweig 405 zum Zustand 303.
Wird ein Zeichen während der Freigabe des Zeichenerkennungsprozessors
53 erkannt, dann wird vom ROM 108 gemäß Figur 2 ein 2-bit-Zeichenerkennungssignal CHARDEC auf der Leitung
128 an die Steuerung 111 übertragen, die ihrerseits das Ladesignal CDLD auf der Leitung 138 zum Zwischenspeicher
113 sperrt. Für den Transfer von Daten vom ROM 108 auf
einer Leitung 144 zu einem Entscheidungsregister 115 gemäß Figur 2 werden sowohl ein Zeichenanwesenheitssignal vom
Zeichenanwesenheitsprozessor 55 und ein Zeichenentscheidungssignal vom Zeichenerkennungsprozessor 53 benötigt.
Somit wird während der Freigabe des Zeichenerkennungsprozessors 53 selbst dann keine Information an das Register
115 übertragen, wenn der Zeichenerkennungsprozessor 53 zwar eine Entscheidung gefällt hat, jedoch bis zur Abtastung
des Zeichenfußes kein Zeichenanwesenheitssignal von der Steuerung 111 aufgenommen wurde. Die Steuerung 111
stellt in diesem Fall lediglich mittels der Signale CHDECRES auf der Leitung 119 und CPRES auf einer Leitung 118 den
Zeichenerkennungsprozessor 53 und den Zeichenanwesenheits-
609813/07 57
prozessor 55 zurück. Treffen die oben erwähnten Bedingungen zu, dann gibt die Steuerung 111 über ein Signal DRLD auf der
Leitung 145 das Register 115 frei. Das Register wird dann
mit den jeweiligen Ausgangssignalen des ROM 108 beim Eintreffen der Vorderflanke des nächstfolgenden Taktimpulses
CLK1 auf der Leitung 146 beladen.
Die Hauptsteuerung für das Zexchenerkennungsgerät ist die Steuerung 111, die einen schwarzen Zeilenzähler, einen weißen
Zeilenzähler, einen weißen Zwischenraumzähler, einen Zeilenzähler zum Zeichenhöhenvergleich, einen Zeichenanwesenheitszähler
und einen Abtastvorgangszähler enthält, der durch ein Zeile-38-Signal auf der Leitung 142 vom Zähler
am Ende jedes Abtastvorganges erhöht und bei der Feststellung eines weißen Zwischenraumes zurückgestellt wird.
Zur Steigerung der Zuverlässigkeit für eine Zeichenerkennung führt die Steuerung 111 eine Folge von Abfragen des Speicherinhalts
des Registers 115 vor dem Takten der Daten zum Entscheidungszwischenspeicher
122 durch. Der Speicherinhalt des Registers 115, beispielsweise ein Zeichen- oder Symbolkode
wird über eine Leitung 147 zu einem Zeichenkode-Dekodierer 124 übertragen. Das Ausgangssignal des Dekodierers
124 wird über die Leitung 148 an die Steuerung 111 gelegt, die die Zeichen- oder Symboldaten mit dem Inhalt eines nicht
dargestellten internen Zeichenhöhen-Zeilenzählers vergleicht. Dieser Zeilenzähler wird von dem ersten auf ein weißes Zeilen-
6Q9813/07B7
signal vom Dekodierer 102 auf einer Leitung 109 auftretenden
schwarzen Zeilensignal aktiviert und durch das Signal CHPRES vom ROM 104 auf der Leitung 120 deaktiviert, welches den
Zeichenfuß repräsentiert. Der Inhalt des Zeilenzählers ist somit ein Maß für die Höhe des vom Ausgangssignal des Dekodierers
124 dargestellten Zeichens.
Zählt der Zeilenzähler 3 bis 5 schwarze Zeilen, dann wird auf der Leitung 121 ein "."-Signal erzeugt, das einen "."-Kode
in den Zwischenspeicher 122 eingibt. Werden 6 bis 9 schwarze Zeilen gezählt, dann müssen die Zeichendaten Anführungszeichen
oder ein ">"-Zeichen darstellen, oder aber unterdrückt werden. Bei 1O bis 19 schwarzen Zeilen können die Zeichendaten
irgendein Zeichen oder Symbol mit Ausnahme eines Anführungszeichens
oder eines Punktes darstellen.
Wird eine Zeichenhöhe von 20 oder mehr schwarzen Zeilen erkannt, dann werden alle Eingänge zwischen weißen Zweigen
unberücksichtigt gelassen, und es wird ein Signal auf der Leitung 174 zur Sperrung des Ausgangs 134 einer Entscheidungsauf
lösungssteuerung 131 erzeugt. Auf diese Weise werden alle Entscheidungen zwischen den weißen Zweigen ignoriert.
Treten während einer einzigen Abtastung Entscheidungen über verschiedene Zeichenhöhen auf, dann wird nur das der größten
Höhe entsprechende Signal vom Zwischenspeicher 122 zum Zeichenentscheidungsprozessor
54 übertragen. Während eines Abtastvorganges werden Mehrfachentscheidungen über dieselbe
Höhe unterdrückt. 6 0 9813/0757
Die Steuerung 111 verwirft auch eine Zeichenerkennung durch
Sperren des Ladevorganges des Zwischenspeichers 122, wenn zwei aufeinander folgende unerkannte schwarze Zeilensignale,
nämlich der Merkmalkode = O, während eines einzigen Abtastvorganges
auf der Leitung 139 vom Dekodierer 106 erscheinen. Erhält die Steuerung 111 zwei weiße Zeilensignale vom Dekodierer
102 gefolgt von einem CHPRES-Signal auf der Leitung 120 vom ROM 104, der das Abtasten eines Zeichenfußes anzeigt,
dann sucht die Steuerung nach einem Zeichenentscheidungssignal auf der Leitung 128 vom ROM 108. Wurde eine Zeichenentscheidung
getroffen, dann überprüft die Steuerung den Entscheidungskode in bezug auf die erwähnten möglichen Abweisungskriterien.
Erfolgt keine Abweisung, dann liefert die Steuerung 111 einen Ladebefehl DBLD auf den Leitungen
153, 154 und 157, um die Zwischenspeicher 122 und 126 sowie das Register 156 zu laden. Die Zwischenspeicher und das Register
werden dann mit der nächstfolgenden Vorderflanke ihrer jeweiligen Taktimpulse CLK1 geladen. Als nächstes gibt
die Steuerung einen Speicherentscheidungsbefehl 129 zur Steuerung 131 und einen Ladebefehl BBLD auf einer Leitung
158 zu einem Zwischenspeicher 159, der den Inhalt des Registers 156 mit der Vorderflanke des nächstfolgenden, auf
der Leitung 160 auftretenden Taktimpulses CLK1 einliest.
Wird kein Zeichenentscheidungssignal gefunden oder wird die Zeichenentscheidung verworfen, dann liefert die Steuerung
Rückstellsignale CHDECRES und CPRES auf den Leitungen 119 und
6098 1 3/0757
118/ um jeweils die Speicher 113 und 114 zu leeren und die
Entscheidungskette sowie die Suchkette zurückzustellen.
Außerdem unterstützt die Steuerung 111 die Ausgabevorrichtung
durch die Verhinderung von unkorrekten Zeichenentscheidungen während eines Abtastvorganges, welche von Zeichenbestandteilen
stammen, die an Stellen des Sichtfeldes auftreten, an denen ein Zeichen normalerweise auftreten
würde. Es wird außerdem ein Suchsystem verwendet, bei dem die Ausgangssignale der Anordnung 50 in vier vertikal angeordnete
Quadranten aufgeteilt wird, wobei jeder Quadrant 12 Photosensoren breit ist. In einer Ausführung werden nur
die unteren 32 Zeilen mit einer jeweiligen Quadrantenhöhe von 8 Zeilen verwendet. Wird ein Zeichenbestandteil im Quadranten
1 gelesen und erscheint im Quadranten 2 kein Signal, folgt aber während desselben Abtastvorganges ein Zeichenbestandteil
im Quadranten 3, dann erfolgt die Entscheidung, nur den Quadranten 3 zu lesen.
Insbesondere zählt der Zeilenzähler 123 die Taktimpulse
CLK1 auf der Leitung 143 ununterbrochen und überträgt nach dem Abtasten jeweils einer Zeile einen Impuls zur Inhaltsbestimmung
auf der Leitung 151 an einen Dekodierer 125. Der Dekodierer 125 gibt seinerseits ein Signal auf der Leitung
152 an einen Flächenzwischenspeicher, um den Quadranten,
in dem die bestimmte Zeile liegt, zu kennzeichnen. Bei Erhalt eines Ladesignals DBLD auf den Leitungen 153 und 154
60981 3/0757
von der Steuerung 111, liest der Zwischenspeicher 126 das Ausgangssignal des Dekodierers 125 ein, wenn die nächste
Vorderflanke eines Taktimpulses CLK1 auf der Leitung 155 auftritt. Die Quadranteninformation verbleibt solange im
Zwischenspeicher 126, bis die Steuerung einen Entscheidungsordnungs-RAM
132 veranlaßt, den Inhalt des Zwischenspeichers 126 einzulesen. Bei Erhalt eines Entscheidungabgeschlossen-Signals
auf der Leitung 135 von der Steuerung 131 verwendet die Ausgabeeinrichtung die in einem
Ausgangsregister 175 gespeicherte Quadranteninformation als Sicherheit gegen unkorrekte Zeichenentscheidungen,
die auftreten würden, wenn ein Bereich eines Zeichens in einer höheren, Information tragenden Zeile zur gleichen
Zeit wie ein Zeichenbestandteil in einer tieferen Zeile abgetastet wird.
In Figur 5 ist der Steuerungsprozeß der Entscheidungseingangssteuerung
111 als logisches Flußdiagramm beginnend mit dem Auslösen eines internen Zeilenzählers im Zustand
500 dargestellt. Der Zeilenzähler wird um eins in den logischen Zustand 501 erhöht, und es wird im Zustand 502
nach einem weißen Zeilensignal vom Dekodierer 102 abgefragt. Wurde kein weißes Zeilensignal aufgenommen, dann läuft
der Prozeß entlang des Zweiges 600 zurück und erhöht den Zeilenzählerstand um eins. Dann wird im Zustand 502 wiederum
nach einem weißen Zeilensignal in der nächstfolgenden Zeile abgefragt. Wird ein weißes Zeilensignal gefunden, dann
8098 13/0757
erfolgt ein Transfer in den Zustand 503, in dem das Zeichenentscheidungsrückstellsignal
CHDECRES auf der Leitung und das Lösche-Entscheidung-Zwischenspeichersignal CLDB
auf den Leitungen 167 und 168 ausgegeben werden. Zusätzlich
werden ein weißes Zeilenkennzeichen, ein Merkmalkode-16-Kennzeichen
und ein Abbruchkennzeichen zurückgestellt.
Im Zustand 504 wird der Zeilenzähler abgefragt, ob das Ende eines Abtastvorganges erreicht ist. Zeigt der Zähler
die Zeile 38 an, dann erfolgt der logische Fluß entlang des Zweiges 6O1 zum Zustand 500, bei dem der Zähler wieder
rückgestellt und der Prozeß neuerlich begonnen wird. Ist die letzte gezählte Zeile nicht die Zeile 38, dann
verläuft der Prozeß entlang des Hauptentscheidungspfades zum Zustand 505, in dem nach einem schwarzen Zeilensignal
abgefragt wird. Wurde ein schwarzes Zeilensignal vom Dekodierer 102 erhalten, das die Anwesenheit von schwarzer
Zelleninformation in den Videodaten angibt, dann wird der Zeichenerkennungsprozessor 53 im Zustand 506 durch Ausgabe
eines Ladebefehls CDLD auf der Leitung 138 zum Zwischenspeicher 113 freigegeben.
Vom Zustand 506 wird der logische Fluß zum Zustand 507 transferiert, indem der Zeilenzähler neuerlich nach dem
Ende eines Abtastvorganges oder nach der Zeile 38 abgefragt wird. Wird das Ende eines Abtastvorganges angezeigt,
dann wird der logische Zweig 602 zum Zustand 500 durchlaufen,
BÜ98 13/0757
in dem der Zeilenzähler wieder gestartet wird. Wird kein Ende eines Abtastvorganges angezeigt, dann erfolgt ein
Transfer in den Zustand 508, um zu bestimmen, ob ein Entscheidungsketten-Rückstellsignal
DTRES auf einer Leitung 141 vom ROM 104 erhalten wurde. Wurde ein Entscheidungsketten-Rückstellsignal
empfangen, dann verläuft der Prozeß zur Verknüpfung A, bei der der Zeilenzähler im Zustand
603 um eins erhöht wird, und der Prozeß wird vom Zustand fortgesetzt. Wurde kein Entscheidungsketten-Rückstellsignal
aufgenommen, dann läuft der Prozeß vom Zustand 508 zum Zustand 509, in dem die Steuerung 111 nach einem Zeichenentscheidungssignal auf der Leitung 128 vom ROM 108 fragt.
Wurde kein Zeichenentscheidungssignal aufgenommen, dann wird die Leitung 109 in Figur 4 im Zustand 510 nach einem
schwarzen Zeilensignal abgesucht. Ist ein schwarzes Zeilensignal vorhanden, dann wird das weiße Zeilenkennzeichen im
Zustand 511 rückgestellt und im Zustand 512 eine Abfrage
nach einem Merkmalkode 16 vorgenommen. Ein Merkmalkode
16 tritt auf, wenn sowohl ein Merkmalkode-O-Signal vom
Dekodierer 106 und ein gleichzeitiges Schwarze-Zeile-Signal
vom Dekodierer 102 von der Steuerung 111 aufgenommen werden. Dies gibt an, daß in einer Zeile eine nicht identifizierte
schwarze Zelleninformation vorhanden ist.
Tritt im Zustand 512 kein Merkmalkode 16 auf, dann wird
das Merkmalkode-16-Kennzeichen im Zustand 513 rückgestellt.
Der Prozeß läuft dann über den Zweig 604 zum Zustand 605,
6098 13/0757
in dem der Zeilenzählerstand um eins erhöht und der Prozeß
vom Zustand 507 fortgesetzt wird.
Liegt eine Merkmalkode-16-Bedingung im Zustand 512 vor,
dann wird ein Transfer in den Zustand 514 vorgenommen, um festzustellen, ob das Merkmalkode-16-Kennzeichen gesetzt
wurde. Wurde es gesetzt, dann wird der Zweig 606 zum Zustand 607 durchlaufen, um eine Ende der Zeichenanwesenheitsbedingung
zu suchen, die das Abtasten eines Zeichenfußes bezeichnet. Das Vorhandensein einer Ende-einer-Zeichenanwesenheitsbedingung
bewirkt einen Transfer zur Verknüpfung A, bei der der Zeilenzählerstand im Zustand
603 um eins erhöht wird, und der Steuerprozeß läuft vom Zustand 503 weiter. Ist im Zustand 607 keine Ende-einer-Zeichenanwesenheitsbedingung
vorhanden, dann wird im Zustand 608 nach einer Entscheidungsketten-Rückstellbedingung
gefragt. Existiert keine Rückstellbedingung, dann wird der Zeilenzählerstand im Zustand 601 um eins erhöht und ein
Transfer in den Zustand 607 zur weiteren Abfrage nach einer Ende-einer-Zeichenanwesenheitsbedingung vorgenommen.
Ist jedoch eine Entscheidungsketten-Rückstellbedingung im Zustand 608 vorhanden, dann erfolgt ein Transfer zur
Verknüpfung A, wobei der Zeilenzählerstand im Zustand um eins erhöht wird und der Steuerprozeß wiederum vom Zustand
503 weiterläuft.
B09813/0757
Wird kein Merkmalkode-16-Kennzeichen im Zustand 514 entdeckt,
dann wird das Kennzeichen im Zustand 515 gesetzt und die Entscheidung skette im Zustand 516 durch Sperren des CDLD-Signals
auf der Leitung 138 zum Zwischenspeicher 113 festgehalten. Der Prozeß läuft dann über den Zweig 610 zum Zustand 605,
wobei der Zeilenzählerstand um eins erhöht wird.
Bei der Rückkehr in den Zustand 510 unter der Bedingung, daß kein Zeichenentscheidungssignal im logischen Zustand
509 entdeckt und keine schwarze Zelleninformation in den im Zustand 510 untersuchten Videodaten gefunden wurde,
wird die Entscheidungskette wie zuvor im Zustand 517 durch
Sperren des CDLD-Signals auf der Leitung 138 zum Zwischenspeicher 113 angehalten. Es wird dann im Zustand 518 abgefragt,
ob ein weißes Zeilenkennzeichen gesetzt wurde. War dies nicht der Fall, dann wird das Kennzeichen im Zustand
519 gesetzt und der Steuerprozeß läuft wie zuvor beschrieben weiter entlang des Zweigs 610 zum Zustand 605.
Wurde zuvor ein weißes Zeilenkennzeichen gesetzt, dann wird der logische Datenfluß vom Zustand 518 zum Zustand 520
transferiert, um die Folge der zuvor beschriebenen Rückweisungsabfragen
bezüglich des Inhalts des Registers 115 durchzuführen, ehe die Daten vom Register 115 in den Entscheidungszwischenspeicher
122 getaktet werden.
6098.13/0757
Vom Zustand 520 wird ein Transfer über die Verknüpfung B
zum Zustand 611 durchgeführt, wobei der Zeilenzähler um eins erhöht wird. Der Steuerungsprozeß läuft dann vom Zustand
504 weiter.
Wird auf der Leitung 141 in Figur 2 kein ROM 104 Entscheidungsketten-Rückstellsignal
DTRES gefunden, jedoch ein Zeichenentscheidungssignal CHARDEC auf der Leitung 128
vom ROM 108 entdeckt, dann wird der Steuerungsprozeß vom Zustand 5O9 in den Zustand 521 transferiert, wobei die Entscheidungskette
durch Sperren des Signals CDLD auf der Leitung 138 zum Zwischenspeicher 113 angehalten wird. Im Zustand
522 wird abgefragt, ob eine Ende der Zeichenanwesenheitsbedingung vorliegt. Werden nicht zwei das Ende einer
Zeichenanwesenheit anzeigenden weißen Zeilensignale gefunden, dann wird im Zustand 523 nach einer Merkmalkode-16-Bedingung
gefragt. Liegt eine Merkmalkode-16-Bedingung vor, dann erfolgt ein Transfer in den Zustand 524, in dem
abgefragt wird, ob die zuvor verarbeiteten Videodaten ebenfalls eine Merkmalkode-16-Bedingung lieferten. Trifft
dies zu, dann wird ein Abbruchkennzeichen im Zustand 525 gesetzt, ein Transfer in den Zustand 526 zur Erhöhung des
Zeilenzählerstands durchgeführt und der Steuerprozeß beginnt wieder im Zustand 521. Wurde in den vorhergehenden
Videozeilendaten keine Merkmalkode-16-Bedingung erzeugt, dann erfolgt ein Transfer vom Zustand 524 direkt zum Zustand
526, in dem der Zeilenzähler um eins erhöht und der Steuerprozeß im Zustand 521 auf die zuvor beschriebene
Weise wieder aufgenommen wird.
6ÜB8 1 3/0757
2540Ί01
Vom Zustand 521 erfolgt ein Transfer in den Zustand 522 zur
erneuten Abfrage nach einer Ende-einer-Zeichenanwesenheitsbedingung. Wurde ein Zeichenfuß abgetastet, dann läuft der
Prozeß zum Zustand 527 weiter, indem nach einem Abbruchkennzeichen
gefragt wird. Wurde ein Abbruchkennzeichen gesetzt, dann erfolgt ein Transfer vom Zustand 527 über die Verknüpfung
A zum Zustand 603, von dem der Steuerprozeß weiterläuft. Wurde kein Abbruchkennzeichen gesetzt, dann erfolgt ein Transfer
vom Zustand 527 zum Zustand 520, in dem auf zuvor beschriebene Weise eine Folge von Abfragen des Inhalts des
Registers 115 durchgeführt wird.
Nach dem Erhalten eines Speichere-Entscheidung-Befehls von der Steuerung 111 gemäß Figur 2 bewirkt die Steuerung 131
das Speichern des 6-bit-Zeichenkodes vom Zwischenspeicher 122 und des Inhalts vom Zwischenspeicher 126 in einem 32 χ
bit-Direktzugriffsspeicher RAM 132. Somit enthält ein einzelnes Wort im RAM 132 einen 6-bit-Zeichenkode und 2 bits
Quadranteninformation.
Unter dem Einfluß der Befehle von der Steuerung 131 über die Leitung 162, 171 und 165 wird Zeicheninformation vom
RAM 132 über eine Leitung 163, über die Steuerung 131 und
über die Leitung 165 zu einem 64 χ 8-bit-Zeichenkode adressierbaren RAM 132 transferiert. Wird zusätzliche von der
Abtastung eines einzelnen Zeichens gelieferte Zeicheninformation vom Zwischenspeicher 122 zum RAM 132 transferiert,
6098 1 3/0757
dann vergleicht die Steuerung 131 den eingehenden Kode mit dem Inhalt des RAM 132. Wurde dieser Zeichenkode bereits
gespeichert, dann wird der Inhalt eines diesem Zeichenkode entsprechenden Speicherplatzes vom RAM 133 in einen Zähler
170 übertragen, um eins erhöht und neuerlich im RAM 133 gespeichert.
Da die Zeilenabtastfrequenz verhältnismäßig hoch im Vergleich zur Relativbewegung des Schriftstückes gegenüber
der Anordnung 50 ist, kann ein einzelnes Zeichen mehrere Male abgetastet werden. Auf diese Weise wird von dem
Zeichenerkennungsprozessor 53 eine Folge von Zeichenkodes erzeugt, die die Bewegung eines einzelnen Zeichens über die
Anordnung 50 wiedergeben.
Das Ende einer solchen Zeichenreihe wird durch das Fehlen einer Zeichenanwesenheit am Ende der Reihe gefolgt von
drei weißen Zwischenräumen angegeben. Bei dem Erkennen eines Abtastendesignals ohne zugehöriges Zeichenanwesenheitssignal
fragt die Steuerung 111 einen nicht dargestellten Zeichenanwesenheitszähler ab, ob Zeichenanwesenheitssignale
während sechs aufeinanderfolgender Abtastvorgänge aufgenommen wurde. Wurden sechs aufeinanderfolgende
Signale aufgenommen, dann befragt die Steuerung 111 einen nicht dargestellten zweiten Zwischenraumzähler
zur Bestimmung, ob drei weiße Zwischenräume erkannt wurden. Ist dies der Fall, dann liefert die Steuerung 111
einen Start-ünterbrechungsbefehl auf der Leitung 130 zur Steuerung 131.
6098 13/0757
Der in Figur 6 dargestellte interne Entscheidungsprozeß der Entscheidungsauflösungssteuerung 131 beginnt mit einem logischen
Zustand 700. Hierauf folgt im Zustand 701 eine Abfrage nach einem Speichere-Entscheidung-Signal auf einer
Leitung 129 von der Steuerung 111.
Wurde ein Speichere-Entscheidung-Signal aufgenommen, dann erfolgt ein Transfer über den Zweig 800 zum logischen Zustand
702, in dem der Inhalt des RAM 132 danach abgefragt wird, ob ein im Zwischenspeicher 122 gespeicherter Zeichenkode
zuvor von der Steuerung 131 gelesen wurde. Ist das nicht
der Fall, dann läuft der Prozeß über den logischen Zweig 801 zum Zustand 705 weiter, in dem der Inhalt des Entscheidungszwischenspeichers
122 und des Inhaltsbestimmung-Zwischenspeichers 126 aus Figur 2 in den Entscheidungsanweisungs-RAM
132 geladen werden.
Wurde der im Zwischenspeicher 122 gespeicherte Zeichenkode zuvor gelesen, dann wird im Zustand 703 abgefragt, ob mehr
als vier verschiedene Zeichenentscheidungen aus einem einzigen über die Anordnung 50 laufenden Zeichen gebildet wurden.
Wenn fünf oder mehr verschiedene Zeichenentscheidungen gebildet wurden, dann wird im Zustand 706 ein Rückweisungssignal
erzeugt. Wurden weniger als fünf unterschiedliche Zeichenentscheidungen gebildet, dann läuft der Prozeß vom
6098 1 3/0757
Zustand 703 in den Zustand 704 weiter, in dem ein Zeichenzähler um eins erhöht und ein Transfer in den Zustand 705
vorgenommen wird. Der Inhalt des Entscheidungszwischenspeichers 122 und des Inhaltsbestimmung-Zwischenspeichers 126
werden in dem Entscheidungsanweisungs-RAM 132 gespeichert und der logische Datenfluß läuft wiederum entlang des Zweiges
802 zurück, um im Zustand 701 neuerlich nach einem Speicherentscheidungssignal zu fragen.
Tritt auf der Leitung 129 in Figur 2 kein Speichere-Entscheidung-Signal
auf, dann erfolgt ein Transfer in den Zustand 707 zur Abfrage nach einem Startunterbrechungssignal auf
der Leitung 130 von der Steuerung 111. Liegt kein Startunterbrechungssignal
vor, dann läuft der logische Prozeß entlang des Zweiges 803 zurück, um wiederum nach einem
Speichere-Entscheidung-Signal im Zustand 701 zu fragen.
Ist ein Startunterbrechungssignal im Zustand 707 vorhanden, dann wird der Inhalt des RAM 133 im Zustand 708 zur Bestimmung
des größten Zeichenzählerstandes BIG abgefragt. Im Zustand 709 wird der RAM 133 neuerlich nach dem nächstgrößten
Zeichenzählerstand NEXT abgefragt.
BIG wird dann im Zustand 710 mit NEXT verglichen, um festzustellen,
ob BIG größer als 1,5 (NEXT + 1) ist. Ist das nicht der Fall, dann wird im Zustand 706 ein Rückweisungs-
6098 1 3/0757
signal erzeugt, auf der Ausgangsleitung 134 an ein Ausgangsregister
175 gelegt und ein Entscheidung-abgeschlossen-Signal auf einer Ausgabeleitung 135 an eine Ausgabevorrichtung übertragen.
Der Prozeß läuft dann wie zuvor über den Zweig zurück.
Ist BIG größer als 1,5 (NEXT + 1), dann ist das BIG entsprechende
Zeichen die im Zustand 711 erhaltene Entscheidung, wobei die Zeichenentscheidung zusammen mit der Flächeninhaltsinformation
als Ausgangssignal auf der Leitung 134 zum Register 175 aufscheint. Außerdem werden ein Entscheidung-abgeschlossen-Signal
und ein logisches Abtastrichtung-Ausgangssignal aus der Einheit 56 über die Leitungen
135 und 176 von der Steuerung 131 jeweils zu einer nicht dargestellten Ausgabeeinheit übertragen. Vom Zustand
711 läuft das Programm auf die zuvor beschriebene Weise entlang des Zweigs 802 zum abermaligen Durchlauf.
Wird somit ein Startunterbrechungssignal von der Steuerung 111 aufgenommen, dann beginnt die Steuerung 131 eine Reihe
von Abfragen zur Feststellung einer endgültigen Zeichenentscheidung. Wenn alle Abfragevorgänge für ein bestimmtes
Zeichen zu Zurückweisungen führen, dann wird von der Steuerung 131 ein Zurückweisungskode erzeugt. Liegen noch andere
Kodes aJLs der Zurückweisungskode vor, dann wird jeder unterschiedliche
Kode gezählt, um festzustellen, wie oft er jeweils auftritt, und diese Information wird im RAM 133 ge-
609813/0757
speichert. Rückweisungskodes werden beim Zählen der Zeichen nicht gezählt.
Tritt ein Zeichen häufiger als 1,5 mal irgendein anderes Zeichen
plus 1,5 auf, dann entspricht dieses dem erkannten Zeichen. Tritt kein Zeichenkode häufiger als 1,5 mal irgendein
anderes Zeichen plus 1,5 auf, dann ist das Ausgangssignal des Zeichenkodes ein Rückweisungskode.
Andere Rückweisungsbedingungen treten auf, wenn keine Zeichenentscheidungen
gemacht und ein leerer Speicherplatz zwischen weißen Zwischenräumen entdeckt wird, oder wenn
mehr als vier verschiedene Entscheidungen zwischen weißen Zwischenräumen gespeichert werden, die keine Rückweisungen
oder Punkte sind. Wie zuvor beschrieben, werden Punktentscheidungen zurückgewiesen, wenn andere Entscheidungen von
größerer Zeichenhöhe zwischen weißen Zwischenräumen getroffen werden.
Wird eine Zeichenentscheidung gefällt, dann tritt ein Zeichenerkennungssignal
mit einer Flächeninhaltsinformation auf der Leitung 134 zusammen mit einem Entscheidung-abgeschlossen-Kennzeichen
auf der Leitung 135 auf. Diese Ausgangssignale laufen zu einer Ausgabeeinheit, die die Daten
als lesbare Worte, Fragen oder Sätze wiedergibt.
609813/0757
Zur Unterstützung der Ausgabeeinheit erhält eine Abtastrichtungslogik
56 sechs Datenbits, die die sechs am weitesten links liegenden Spalten der Videodaten vom Vorprozessor
51 darstellen und erzeugt ein Abtastrichtungssignal auf der Leitung 172, das von der Steuerung 131 als Ausgangssignal
zur Ausgabeeinheit führt.
Figur 7 zeigt den internen Programmablauf der Abtastrichtungslogik
56, wobei der Entscheidungsprozeß von einem Anfangszustand 900 in einen Zustand 901 zur Abfrage nach einem
Belegt-Signal auf der Leitung 178 von einer Ausgabeeinheit übergeht. Liegt ein Belegt-Signal vor, dann werden
der Vorprozessor 51 im Zustand 902 und ein Abtastrichtungszähler in der Logik 56 im Zustand 903 rückgestellt. Der
Prozeß läuft dann entlang eines logischen Zweiges 904 zurück, um neuerlich nach der Anwesenheit eines Belegt-Signals
im Zustand 901 zu fragen.
Liegt kein Belegt-Signal vor, dann erfolgt ein Transfer vom Zustand 9O1 zum Zustand 905 zur Abfrage nach einem
Zeile-38-Signal vom Zeilenzähler 123 auf der Leitung 177
in Figur 2. Wurde ein Zeile-38-Signal vom Zähler 123 erzeugt, dann läuft der Prozeß entlang des logischen Zweiges
906 zum Zustand 901 zurück. Wurde kein Zeile-38-Signal vom Zähler 123 ausgegeben, dann läuft der Prozeß in einen weißnach-schwarz
übergangserkennungszustand, beginnend mit dem
Zustand 907.
609 813/0757
Die der Logik 56 vom Vorprozessor 51 im Rhythmus der Zeilenabtastung
zugeführten sechs Videodatenbits sind die sechs am weitesten links stehenden bits des Videokorrelator-Ausgangssignals.
Jedes dieser bits ist im Flußdiagramm der Figur 7 durch die Buchstaben A bis F dargestellt, wobei A das
am weitesten links stehende bit bezeichnet. In jedem Abfragezustand 907 bis 911 wird zwischen den durch die sechs bits
dargestellten Videodatenspalten nach einem Zellenübergang von weiß nach schwarz gesucht. Wie in den Zuständen 912 bis
916 ausgewiesen, bewirkt der erste erkannte übergang das Laden eines Abtastwertregisters mit einer Zahl, die der
Spalte mit dem schwarzen Zelleninhalt entspricht. Jede der Videodatenspalten ist durch eine Zahl O bis 5 bezeichnet.
Wird kein übergang von weiß nach schwarz entdeckt, dann
wird das Abtastwertregister mit der Zahl O beladen, wie es der logische Zustand 917 anzeigt.
Nachdem das Abtastwertregister mit einer Zahl 1 bis 5, die
auf das Auftreten eines Überganges von weiß nach schwarz hinweist, oder mit der Zahl O beladen wurde, die darauf
hinweist, daß kein übergang von weiß nach schwarz erkannt wurde, dann erfolgt ein Transfer in den Zustand 918, um
den Inhalt des Abtastwertregisters abzufragen.
Enthält das Abtastwertregister die Zahl O, dann erfolgt
ein Transfer zur Verknüpfung A, um wiederum nach dem Auf-
6098 1 3/Ü757
treten eines Zeile-38-Signals im Zustand 905 zu fragen. Ist
der Inhalt des Abtastwertregisters jedoch von O verschieden,
dann erfolgt ein Transfer in den Zustand 919, um den Inhalt eines vorherigen Abtastwertregisterstandes zu überprüfen.
War der vorhergehende Registerstand 0, dann erfolgt wie zuvor ein Transfer zur Verzweigung A. War der vorhergehende
Abtastwert von 0 verschieden, dann wird der Inhalt des vorhergehenden Registerstandes vom Inhalt des Abtastwertregisters
abgezogen. Dio Differenz wird in einem Differenzregister gespeichert, das durch den logischen Zustand 920
angedeutet ist.
Das Programm läuft dann entlang des Zweiges 921 in den Zustand 922 weiter, in dem der Absolutwert des Differenzregisterstandes
geprüft wird. Ist der Absolutwert ungleich 1, dann erfolgt ein direkter Transfer entlang des Zweiges
923 zum Zustand 924, in dem das stellenhöchste bit im Abtastrichtungszähler zu einer Richtungsbestimmung untersucht
wird. Der Wert des bits, entweder 0 oder 1, wird dann in einem Richtungsregister zur Ausgabe über die Auflösesteuerung
131 an eine Ausgabeeinheit gespeichert.
Der Abtastrichtungszähler ist ein 4-bit-Zähler, in dem das
stellenhöchste bit als Vorzeichenbit verwendet wird. Der Inhalt des Zählers wird so verarbeitet, daß die Ziffer 4
eine -5 Abtastzählung, die Ziffer 9 eine O-Abtastzählung
und die Ziffer 14 eine +5 Abtastzählung bedeuten. Auf diese
6098 13/0757
Weise wird eine Abtastrichtungsschwelle von -5 durch Speichern von Zahlen zwischen 14 und 4 im Zähler angegeben. Die
Zahl 9 entspricht der O-Linie zwischen den Schellengrenzen.
Eine größere Zahl als 9, die kleiner oder gleich 14 ist, weist auf die Abtastung in einer Richtung hin, während eine
kleinere Zahl als 9, die größer oder gleich 4 ist, eine Abtastung in entgegengesetzter Richtung andeutet.
Nachdem das Vorzeichenbit des Abtastrichtungszählers im Zustand 924 im Richtungsregister gespeichert wurde, wird der
jeweilige Abtastwert in den vorhergehenden Abtastregisterstand gemäß dem Zustand 925 geladen. Dann erfolgt ein Transfer
zur Verzweigung A, um wiederum das Auftreten eines Zeile-38-Signals
im Zustand 905 zu untersuchen.
Ist der Absolutwert des Differenzregisterinhalts 1, dann
erfolgt ein Transfer vom Zustand 922 zum Zustand 926, um das Vorzeichen des Differenzregisterinhalts zu überprüfen.
Ist das Vorzeichen negativ, dann wird der Inhalt des Abtastrichtungszählers im logischen Zustand 927 untersucht. Enthält
der Zähler die Zahl 5, dann erfolgt ein direkter Transfer in den Zustand 924. Ist jedoch eine kleinere Zahl als
5 im Abtastrichtungszähler gespeichert, dann wird dessen Zählerstand im logischen Zustand 928 um eins erniedrigt, bevor
ein Transfer in den Zustand 924 durchgeführt wird.
6098 1 3/0757
25A0101
Ist das Vorzeichen des Differenzregisterinhalts positiv,
dann erfolgt ein Transfer vom Zustand 926 in den Zustand 929, in dem wiederum der Inhalt des Abtastrichtungszählers
untersucht wird. Enthält der Zähler die Zahl 5, dann erfolgt wie zuvor ein direkter Transfer in den Zustand 924.
Als zusätzliche Hilfe für den Ausgabevorgang kennzeichnet die Steuerung 111 zusammen mit der Steuerung 131 das Ende
eines Wortes oder das Ende einer Satzbedingung, wenn ein Zwischenraum zwischen Zeichenfolgen auftreten sollte.
Der Zeilenzähler 123 aus Figur 2 ist insbesondere ein Umlauf
zähler, der ununterbrochen im Rhythmus der Abtastfrequenz während eines Abtastvorganges zählt und alle 38
Zählungen einen Impuls auf der Leitung 142 zur Kennzeichnung eines Äbtastvorgangendes an die Steuerung 111 liefert
und sowohl den Dekodierer 125 als auch das Register 156 entsprechend der Abtastfrequenz höherstellt. Da das
Register 156 nur nach dem Ende einer Zeichenabtastung beladen wird, enthält dieses die Anzahl der Zeilen von der
Spitze der Anordnung 50 bis zu dem abzutastenden Zeichenfuß.
Gibt die Steuerung 111 einen Ladebefehl BBLD auf der Leitung
158 an den Zwischenspeicher 159, dann wird der sonst nur beim Aufsuchen eines Zeichengebietes verwendete Inhalt
des Registers 156 auf der Leitung 161 über einen Zeichenfuß-
609 813/0757
dekodierer 150 und anschließend auf der Leitung 149 zu einem
internen Zeichenfußzwischenspeicher in der Steuerung 111 übertragen. Während der Verarbeitung der Zeicheninformation überlagert
die Steuerung 111 kontinuierlich die Zeichenfußzwischenspeicherinformation, so daß der interne Zeichenfußzwischenspeicher
jeweils nur die zum Entscheidungszwischenspeicher 122 übertragene, den letzten Zeichenkode betreffende
Information enthält.
Am Ende einer Zeichenfolge, die durch ein Ende eines Äbtastvorgangssignals
ohne ein Zeichenanwesenheitssignal angezeigt wird, fragt die Steuerung 111 einen Zeichenanwesenheitszähler
ab, ob ein Zeichenanwesenheitssignal während sechs aufeinanderfolgender Abtastvorgänge vorlag. War dies der Fall,
dann befragt die Steuerung 111 einen nicht dargestellten
weißen Zwischenraumzähler, ob drei aufeinanderfolgende weiße Zwischenräume erkannt wurden. Wurden drei weiße Zwischenräume
gemeldet, dann verarbeitet die Steuerung 111 die dem letzten im RAM 132 gespeicherten Zeichen entsprechende Zeichenfußinformation.
Diese Information dient als Bezugslage, von der aus ein Zeichengebiet untersucht wird.
Die Steuerung 111 vergleicht die Zeichenfußdaten mit Freimachkriterien.
Liegt beispielsweise der Zeichenfuß tiefer als die obersten zwanzig Zeilen der Anordnung 50, dann bewirkt
das Auffinden von zwanzig aufeinanderfolgenden weißen Zeilen oberhalb der untersten Zeile des letzten Zeichens ein
609S 13/0757
Freimachsignal auf der Leitung 173 von der Steuerung 111 zum Zwischenspeicher 122. Es können vom Zeichen getrennte schwarze
Gebiete oberhalb der untersten Zeile des letzten Zeichens auftreten. Liegen zwischen diesen Gebieten und der untersten
Zeile des letzten im RAM 132 gespeicherten Zeichens zwanzig weiße Zeilen, dann wird ein Freimachsignal erzeugt. Liegt der
Zeichenfuß des letzten Zeichens innerhalb der abgetasteten obersten zwanzig Zeilen, dann werden nur die ersten oder obersten
zwanzig Zeilen weiterverarbeitet. Sind die obersten zwanzig Zeilen vollständig weiß, dann wird ein Freimachsignal erzeugt.
Trifft keines der beiden Kriterien nach dem Auffinden von drei aufeinanderfolgenden weißen Zwischenräumen zu, dann
liefert die Steuerung 111 auf der Leitung 174 ein Ausgangssperrsignal,
das den Ausgang der Steuerung 131 zur Ausgabeeinheit sperrt. Die Steuerung 131 arbeitet jedoch weiter,
da nur ihr Eingang gesperrt ist.
Der Unterschied zwischen einem weißen Zwischenraum und einem freigemachten Raum ist hiermit deutlich. Der im Zwischenspeicher
122 gespeicherte freigemachte Raum stellt einen Zeichenkode dar, der ein Ausgangssignal in Form einer Zeichenentscheidung
von der Steuerung 131 an die Ausgabeeinheit bedeutet. Ein freigemachter Raum liefert somit eine
Zeichenentscheidung aus zehn weißen Spalten, während ein
609813/0757
weißer Zwischenraum lediglich drei vertikale Videodatenspalten
zwischen benachbarten Zeichen einschließt.
Erfindungsgemäß wird somit ein Zeichenerkennungssystem vorgeschlagen,
bei dem der von einer Anordnung von Photosensoren erzeugte kontinuierliche Videodatenfluß ohne Zwischenspeicherung
im Rhythmus der Zeichenabtastung an eine Zeichenerkenrungskette übertragen wird.
Es werden aus den Videodaten mit der Zeilenabtastfrequenz Zeichenkodes erzeugt, die zur Zeichenerkennung an eine
sequentielle Entscheidungskette mit in keiner bestimmten Ordnung zu durchlaufenden logischen Verknüpfungen oder Zuständen
gelegt wird. Die logischen Zustände sind durch logische Zweige untereinander verbunden, wobei jeder Zustand
durch einen Zustandsübergang von jedem anderen Zustand gegetrennt ist. Der Entscheidungsfluß der Kette kann somit
logische Zweige schneiden oder zu vorherigen Zuständen zurücklaufen, um die Vielfältigkeit der Entscheidungskette
zu vergrößern und Redundanzen äußerst klein zu halten.
Zusammen mit der sequentiellen Entscheidungskette arbeiten logische Schaltungen zur gesteigerten Zuverlässigkeit der
Zeichenerkennung, welche zwischen Zeichen oder Symbolen, Zeichenbestandteilen und Zwischenräumen im betrachteten
Gebiet unterscheiden.
6098 1 3/0757
Während ein sich über die Anordnung der Photosensoren bewegendes Zeichen wiederholt abgetastet wird, erfolgt eine Zeichenentscheidung
aufgrund der am häufigsten erzeugten Zeichenidentifizierung vor dem Verlassen des Sichtfeldes. Abtastrichtungs-
und vertikale Lagedaten werden gleichzeitig mit der endgültigen Zeichenentscheidung als Ausgabehilfe ausgegeben.
8098 13/0757
Claims (13)
- Ansprüche(\y Automatisches Zeichenerkennungs-System mit einer in einer bestimmten Folge abtastbaren, zweidimensionalen, aus Zeilen und Spalten bestehenden Anordnung von Photosensoren zur Zeilenabtastung eines im Sichtfeld der Anordnung liegenden Schriftstücks und zur Erzeugung einer Folge von binären Datenworten im Rhythmus der Zeilenabtastung, welche schwarze Abschnitte und freie Zonen eines im Sichtfeld liegenden Zeichens enthalten, gekennzeichnet durch eine Einrichtung zur Erzeugung eines eine zuvor festgelegte Beziehung zwischen den schwarzen Abschnitten in einer Zeile bezeichnenden Merkmalkodes im Rhythmus der Zeilenabtastung, durch eine Erkennungseinrichtung zur Aufnahme der Merkraalkodes im Rhythmus der Zeilenabtastung für die Bildung eines Zeichensignalkodes während jedes Abtastvorgangs aus einer eindeutigen Folge der Merkmalkodes, und durch eine Entscheidungseinrichtung zur Erzeugung eines Zeichenerkennungssignals aus den aufeinanderfolgenden Zeichensignalkodes der Erkennungseinrichtung während der Anwesenheit eines Zeichens im Sichtfeld.
- 2. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die Erzeugungseinrichtung für den Merkmalkode ein die Merkmalkodes als Zustände gespeichert enthaltender ROM ist.6098 13/0757
- 3. Vorrichtung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die Erkennungseinrichtung zur Aufnahme der binären Datenworte einen elektrisch angeschlossenen Dekodierer, ein digitales Register und einen mit dem Dekodierer und dem Register verbundenen ROM aufweist.
- 4. Vorrichtung nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß die Erkennungseinrichtung einen ROM mit einem binären Datenworteingang und mit einer Vielzahl von untereinander verbundenen, in keiner bestimmten Ordnung angeordneten logischen Zuständen aufweist, die alle mittels eines Zustandstransfers untereinander erreichbar sind.
- 5. Vorrichtung nach einem der Ansprüche 1 bis 4, gekennzeichnet durch eine jederzeit verwendbare und rekursive sequentielle Entscheidungskette mit einer Vielzahl von Ausgabeverzweigungen zur Ausgabe von Entscheidungen, durch Einrichtungen zum wiederholten Abtasten eines Flächenmusters, wobei jede Abtastung eine Reihe von im Abstand zueinander angeordneter Pfade mit verhältnismäßig hoher Geschwindigkeit im Vergleich zur Geschwindigkeit des Flächenmusterwechsels durchläuft, durch Einrichtungen zur Erzeugung von unterschiedlichen Merkmalsbedingungen für jedes der vielen unterschiedlichen, beim Abtasten gefundenen Zeichenmerkmale, durch Einrichtungen zur sequentiellen Übertragung der Bedingung an die Entscheidungskette, durch609813/Ü 757Einrichtungen zum Zählen der Anzahl der Zeichenentscheidung während der Anwesenheit eines Zeichens im Sichtfeld, und durch Einrichtungen zur Anzeigung einer häufiger als irgendeine andere Zeichenentscheidung auftretenden Zeichenentscheidung während der Anwesenheit des Zeichens ist.
- 6. Vorrichtung nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß zu jeder Verzweigung der Entscheidungskette Zugriff mittels einer einen einzelnen Zustandstransfer bewirkenden Steuerung besteht.
- 7. Vorrichtung nach einem der Ansprüche 1 bis 6, gekennzeichnet durch Einrichtungen zum rasterartigen Abtasten der Anordnung in einer bestimmten Reihenfolge und mit einer verhältnismäßig hohen Abtastfrequenz im Vergleich zur Relativbewegung eines Zeichengebietes gegenüber der Anordnung zur Erzeugung eines die Schwarz/weiß-Information jeder einzelnen Zeile enthaltenden Vielbit-binären-Datenwortesf durch Einrichtungen zur Erzeugung eines jedem von der Anordnung erzeugten binären Datenwort entsprechenden Merkmalkodes im Rhythmus der Zeilenabtastung, durch Einrichtungen zur Erzeugung eines Zeichenkodes entsprechend einer Folge von während einer vollständigen Abtastung der Anordnung erzeugten Merkmalkodes, durch Einrichtungen zur Verarbeitung der von den mittleren Spalten der Anordnung erzeugten binären Daten zur Bildung von auf eine Zeichenanwesenheit oder auf freie Bereiche hinweisenden Signale,6098 1 3/Ü757durch eine Erkennungssteuerung zur vielfachen Abfragung des Zeichenkodes in einer auf einen Zeichenausdruck ausgerichteten Weise zur Sperrung des Ausgangs der Steuerung für die Bildung eines Zeichenkodes beim Auftreten von Freiräumen zwischen den Zeichen und zum Rückstellen des Systems, wenn der Zeichenkode die vielfachen Abfragen nicht erfüllt, und durch eine zweite Steuerung zur Identifizierung eines Zeichens aus einer Folge von Zeichenkodes, die mit einer einer vollständigen Abtastung der Anordnung entsprechenden Frequenz aufgenommen und in Abhängigkeit von einem das Sichtfeld der Anordnung durchlaufenen Zeichen erzeugt werden.
- 8. Vorrichtung nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, daß die Einrichtung zur Erzeugung eines Merkmalkodes einen ROM mit einem binären Datenworteingang aufweist, welcher jede mögliche Beziehung von Linienabschnitten eines Druckzeichens als Zustände gespeichert enthält.
- 9. Vorrichtung nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, daß die Einrichtung zur Erzeugung eines Zeichenkodes einen elektrisch in einer geschlossenen Schleife mit einem digitalen Ausgaberegister verbundenen ROM aufweist, der von einem binären Datenwort adressierbar ist und den Merkmalkode und eine im Register gespeicherte,6G9813/U757einen letzten zuvor adressierten logischen Zustand des ROM identifizierende Zustandszahl enthält und worin der ROM eine Kette von durch logische Zweige miteinander verbundene, in keiner bestimmten Ordnung angeordnete logische Zustände aufweist, die durch einen Zustandstransfer für jeden anderen logischen Zustand zugreifbar sind, wobei eine Vielzahl von logischen Zweigen von den am Ende eines Entscheidungspfades liegenden logischen Zuständen zu Zeichenkodeentscheidungszuständen führen und wobei der Entscheidungspfad durch das im Sichtfeld der Anordnung liegende Zeichen bestimmt ist.
- 10. Vorrichtung nach einem der Ansprüche 1 bis 9, dadurch gekennzeichnet, daß die Einrichtung zur Datenverarbeitung einen ROM mit einer Vielzahl von eine Suchkette bildenden geordneten logischen Zuständen, einen elektrisch mit der Anordnung und dem ROM verbundenen Dekodierer, und ein in einer geschlossenen Schleife elektrisch mit dem ROM verbundenes digitales Register aufweist, wobei der ROM durch ein binäres Datenwort mit der Abtastfrequenz adressierbar ist, welches ein binäres, einen Zeichenbereich oder eine Freizone bezeichnendes binäres Signal vom Dekodierer, binäre von den mittleren Spalten der Photosensoren erzeugte Signale und ein letzter-Zustand-Ausgangssignal entsprechend dem Registerinhalt enthält.609813/U757
- 11. Vorrichtung nach einem der Ansprüche 1 bis 10, dadurch gekennzeichnet, daß die zweite Steuerung zwei mittels einer logischen Schaltung verbundene RAMs und einen elektrisch mit einem der beiden RAMs verbundenen, jeweils um eins erhöhbaren digitalen Zähler enthält, wobei der erste RAM zur Aufnahme der Folge der Zeichenkodes dient und der zweite RAM durch jeden der Zeichenkodes indirekt adressierbar ist.
- 12. Vorrichtung nach einem der Ansprüche 1 bis 11, gekennzeichnet durch eine Einrichtung zur Erzeugung eines Zeichenkodes mit einer sequentiellen Entscheidungskette zur Anzeige einer Zeichenerkennung und zur Identifizierung eines Zeichens aus einer Folge von Merkmalskodes, die während eines vollständigen Abtastvorgangs der Anordnung von der Merkmalskodeerzeugungseinrichtung erzeugt wurden, durch eine mit der Abtastfrequenz arbeitende Zeichenerkennungseinrichtung zur Verarbeitung der Videodaten für die Anzeige einer Zeichenanwesenheit oder von Freiräumen zwischen den Zeichen und zur Anzeige des Endes einer Zeichenabtastung, durch Zeichenentscheidungseinrichtungen zur Erzeugung eines abschließenden Zeichenidentifizierungssignals basierend auf den am häufigsten auftretenden Zeichenkodes während der Anwesenheit eines Zeichens im Sichtfeld der Anordnung, durch eine Zeichenidentifizierungssteuerung zum Anlegen von an ein Druckzeichen angepaßte Zeichenhöhenbedingungen an einen Zeichenkode und zum Verwerfen des Zeichenkodes bei Nichtübereinstimmung609813/0757mit den Zeichenhöhenbedingungen, zum Auswählen eines Zeichenkodes in Abhängigkeit von der größten während einer vollständigen Abtastung der Anordnung festgestellten Höhe, zum Verwerfen von mehrfachen Zeichenkodes, die einer einzigen
während einer vollständigen Abtastung auftretenden Höhe zugeordnet sind, zum Verwerfen von während eines vollständigen Abtastvorgangs erzeugten Zeichenkodes, falls nicht gleichzeitig ein Zeichenanwesenheitssignal von der Zeichenerkennungseinrichtung vorliegt, und zum Sperren des von der Zeichenkodeerzeugungseinrichtung stammenden Ausgangssignals zur Zeichenerkennungseinrichtung im Falle eines Verwerfens, durch mit der Zeichenidentifizierungssteuerung in Verbindung stehende Einrichtungen zum Aufsuchen der vertikalen Lage eines Zeichens in Unterstützung einer Ausgabeeinrichtung und zur Verhinderung von Zeichenzerlegungen, durch Zeichenzwischenraumerkennungseinrichtungen zum Sperren des Ausgangs der Zeichenkodeerzeugungseinrichtung im Falle eines freien Raumes zwischen einer
Folge von Zeichen und zum Anlegen eines Zeichenzwischenraumkodes an die Zeichenentscheidungseinrichtung, und
durch eine mit der Anordnung und der Zeichenentscheidungseinrichtung elektrisch verbundene Abtastrichtung-Erkennungseinrichtung zur Feststellung der Abtastrichtung der Anordnung .609813/07572540107 - 13. Verfahren zur automatischen Zeichenerkennung mittels einer Vorrichtung nach einem der Ansprüche 1 bis 12, dadurch gekennzeichnet, daß eine zweidimensionale Anordnung von Photosensoren rasterartig in einer bestimmten Folge mit einer Abtastfrequenz abgetastet wird, die gegenüber der Relativbewegung zwischen einem abzutastenden Zeichen und der Anordnung verhältnismäßig hoch ist, daß die von der Anordnung gelieferten binären Videodaten mit der Abtastfrequenz ohne Zwischenspeicherung zur Erzeugung von Merkmalkodes für
jede einzelne Abtastung verarbeitet werden, daß eine sequentielle Entscheidungsverarbeitung einer von einem vollständigen Abtastvorgang erzeugten Folge von Merkmalkodes
zur Bildung eines Zeichenkodes erfolgt, der eine eindeutige Beziehung zu der Folge der Merkmalkodes darstellt, und
daß ein Zeichen aus einer Folge von in wiederholten Abtastvorgängen erzeugten Zeichenkodes während der Anwesenheit des Zeichens im Sichtfeld der Anordnung identifiziert wird.su:hu:bü6098 13/0757
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/505,931 US4075605A (en) | 1974-09-13 | 1974-09-13 | Character recognition unit |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2540101A1 true DE2540101A1 (de) | 1976-03-25 |
DE2540101C2 DE2540101C2 (de) | 1984-04-12 |
Family
ID=24012474
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2540101A Expired DE2540101C2 (de) | 1974-09-13 | 1975-09-10 | Verfahren zum automatischen Erkennen von Zeichen mittels eines optischen Zeichenlesers |
Country Status (9)
Country | Link |
---|---|
US (1) | US4075605A (de) |
JP (1) | JPS6156553B2 (de) |
BE (1) | BE831012A (de) |
DE (1) | DE2540101C2 (de) |
FR (1) | FR2284932A1 (de) |
GB (1) | GB1498221A (de) |
IT (1) | IT1035144B (de) |
NL (1) | NL175471C (de) |
SE (3) | SE427511B (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2836725A1 (de) * | 1977-08-22 | 1979-03-08 | Recognition Equipment Inc | Zeichenerkennungseinheit |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS52137939A (en) * | 1976-05-14 | 1977-11-17 | Toshiba Corp | Patrern reading device |
US4200393A (en) * | 1976-06-07 | 1980-04-29 | Tokyo Shibaura Elecric Co., Ltd. | Method of positioning a semiconductor member by examining it and a die bonding apparatus using the same |
JPS53102634A (en) * | 1977-02-18 | 1978-09-07 | Toshiba Corp | Optical character reader |
US4180799A (en) * | 1978-04-21 | 1979-12-25 | Caere Corporation | Apparatus and method for recognizing characters |
JPS54163331U (de) * | 1978-05-09 | 1979-11-15 | ||
US4326190A (en) * | 1978-08-30 | 1982-04-20 | Borland David L | Boundary trace slope feature detection system |
SE422714B (sv) * | 1979-01-16 | 1982-03-22 | Ibm Svenska Ab | Anordning med styrdator for optisk teckenlosning, vilken styrdator bl a bereknar startpunkter for identifiering av ett tecken |
CA1164086A (en) * | 1979-04-23 | 1984-03-20 | Recognition Equipment Incorporated | Image processing integrated circuit |
US4514815A (en) * | 1979-07-27 | 1985-04-30 | Honeywell Information Systems Inc. | Computerized system and method of material control |
AU533978B2 (en) * | 1979-11-16 | 1983-12-22 | Tokyo Electric Co. Ltd. | Character reader |
US4499595A (en) * | 1981-10-01 | 1985-02-12 | General Electric Co. | System and method for pattern recognition |
JPS5975375A (ja) * | 1982-10-21 | 1984-04-28 | Sumitomo Electric Ind Ltd | 文字認識装置 |
US4551850A (en) * | 1983-02-07 | 1985-11-05 | Pattern Processing Technologies, Inc. | Response detector for pattern processing system |
JPH0634236B2 (ja) * | 1985-11-02 | 1994-05-02 | 日本放送協会 | 階層型情報処理方法 |
JPH02500062A (ja) * | 1986-09-18 | 1990-01-11 | ハドソン‐アレン リミテッド | 2進記憶媒体読取り用センサ信号のディジタル処理 |
US4876730A (en) * | 1987-02-25 | 1989-10-24 | Lundy Electronics & Systems, Inc. | Optical character reader with skew recognition |
JPH07104909B2 (ja) * | 1987-03-04 | 1995-11-13 | シャープ株式会社 | 文字認識方法 |
US5119441A (en) * | 1989-03-28 | 1992-06-02 | Ricoh Company, Ltd. | Optical character recognition apparatus and method using masks operation |
US5875264A (en) * | 1993-12-03 | 1999-02-23 | Kaman Sciences Corporation | Pixel hashing image recognition system |
US6594503B1 (en) | 2000-02-02 | 2003-07-15 | Motorola, Inc. | Communication device with dial function using optical character recognition, and method |
US7392287B2 (en) * | 2001-03-27 | 2008-06-24 | Hemisphere Ii Investment Lp | Method and apparatus for sharing information using a handheld device |
US8091784B1 (en) | 2005-03-09 | 2012-01-10 | Diebold, Incorporated | Banking system controlled responsive to data bearing records |
JP5098504B2 (ja) * | 2007-08-09 | 2012-12-12 | 富士通株式会社 | 文字認識プログラム、文字認識装置および文字認識方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE1150235B (de) * | 1956-04-02 | 1963-06-12 | Ibm Deutschland | Verfahren und Anordnung zum Erkennen von Schriftzeichen |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL128938C (de) * | 1957-12-23 | |||
US3585592A (en) * | 1968-02-29 | 1971-06-15 | Nippon Electric Co | Character recognition system with character edge detection capability |
USB618016I5 (de) * | 1968-11-29 | |||
US3573730A (en) * | 1969-10-15 | 1971-04-06 | Ibm | Stored logic recognition device |
US3755780A (en) * | 1971-06-28 | 1973-08-28 | Pattern Analysis & Recognition | Method for recognizing characters |
US3873972A (en) * | 1971-11-01 | 1975-03-25 | Theodore H Levine | Analytic character recognition system |
FR2191788A5 (de) * | 1972-06-30 | 1974-02-01 | Honeywell Bull | |
US3868635A (en) * | 1972-12-15 | 1975-02-25 | Optical Recognition Systems | Feature enhancement character recognition system |
US3909785A (en) * | 1973-11-12 | 1975-09-30 | Amperex Electronic Corp | Apparatus for recognizing hand printed characters |
US3930229A (en) * | 1974-01-31 | 1975-12-30 | Stanford Research Inst | Handwriting system |
-
1974
- 1974-09-13 US US05/505,931 patent/US4075605A/en not_active Expired - Lifetime
-
1975
- 1975-03-13 SE SE7502837A patent/SE427511B/xx not_active IP Right Cessation
- 1975-04-01 IT IT48880/75A patent/IT1035144B/it active
- 1975-04-03 GB GB13687/75A patent/GB1498221A/en not_active Expired
- 1975-04-14 NL NLAANVRAGE7504413,A patent/NL175471C/xx not_active IP Right Cessation
- 1975-06-24 JP JP50078490A patent/JPS6156553B2/ja not_active Expired
- 1975-07-04 BE BE157992A patent/BE831012A/xx not_active IP Right Cessation
- 1975-08-22 FR FR7526011A patent/FR2284932A1/fr active Granted
- 1975-09-10 DE DE2540101A patent/DE2540101C2/de not_active Expired
-
1979
- 1979-02-05 SE SE7900992A patent/SE7900992L/xx unknown
- 1979-02-05 SE SE7900991A patent/SE7900991L/xx unknown
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE1150235B (de) * | 1956-04-02 | 1963-06-12 | Ibm Deutschland | Verfahren und Anordnung zum Erkennen von Schriftzeichen |
Non-Patent Citations (1)
Title |
---|
1959 Proceedings of the Eastern Joint Computer Conference, S.218-224 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2836725A1 (de) * | 1977-08-22 | 1979-03-08 | Recognition Equipment Inc | Zeichenerkennungseinheit |
Also Published As
Publication number | Publication date |
---|---|
JPS5138933A (de) | 1976-03-31 |
FR2284932B1 (de) | 1982-03-05 |
NL175471C (nl) | 1984-11-01 |
SE7502837L (sv) | 1976-03-15 |
DE2540101C2 (de) | 1984-04-12 |
US4075605A (en) | 1978-02-21 |
NL7504413A (nl) | 1976-03-16 |
IT1035144B (it) | 1979-10-20 |
SE7900992L (sv) | 1979-02-05 |
FR2284932A1 (fr) | 1976-04-09 |
SE7900991L (sv) | 1979-02-05 |
BE831012A (fr) | 1976-01-05 |
JPS6156553B2 (de) | 1986-12-03 |
SE427511B (sv) | 1983-04-11 |
NL175471B (nl) | 1984-06-01 |
GB1498221A (en) | 1978-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2540101A1 (de) | Automatisches zeichenerkennungs- system | |
DE1549930C3 (de) | Einrichtung zum Erkennen vorzugsweise handgeschriebener Schriftzeichen | |
DE2228526C3 (de) | Verfahren und Anordnung zum Lesen und Decodieren von Strichmarken-Gruppen, die Daten in codierter Form darstellen | |
DE2801536C2 (de) | Zeichenformkodiervorrichtung | |
DE3633743C2 (de) | ||
DE3750277T2 (de) | Verfahren und Vorrichtung zur Rückgewinnung von Symbolketten aus Daten. | |
DE1250166B (de) | Vorrichtung zur maschinellen Zeichen erkennung | |
DE2557553A1 (de) | Verfahren und anordnung zur bilddatenverdichtung und -reexpansion | |
DE2616753B2 (de) | Vorrichtung zum Lesen von strichkodierten Informationen | |
DE2740105A1 (de) | Optische zeichenerkennungseinrichtung | |
DE2126817A1 (de) | Verfahren und Anordnung zur auto matischen Zeichenerkennung | |
DE69421487T2 (de) | Verfahren zum Vergleichen von Mustern basierend auf der Verwendung von Bildelementmatritzen und Bildelementvektoren | |
DE2829808A1 (de) | Verfahren und vorrichtung zum lesen von zeichen | |
DE2836725A1 (de) | Zeichenerkennungseinheit | |
DE2629590C2 (de) | Schaltungsanordnung zur Trennung benachbarter Muster in einer Zeichenerkennungseinrichtung | |
DE69030614T2 (de) | Gerät zur Erkennung handgeschriebener Zeichen | |
DE69810898T2 (de) | Verfahren zur Wiederherstellung aufeinanderfolgender Abtastungen eines Strichcodes | |
DE1212758B (de) | Verfahren und Schaltungsanordnung zur maschinellen Erkennung von Schriftzeichen | |
DE3026055C2 (de) | Schaltungsanordnung zur maschinellen Zeichererkennung | |
DE2064469A1 (de) | Mustererkennungseinrichtung | |
DE2159307A1 (de) | Verfahren und schaltung zur durchfuehrung dieses verfahrens zur zentrierung eines in die auswerteinrichtung einer zeichenerkennungsmaschine eingegebenen zeichens | |
DE3414455C2 (de) | Verfahren und Vorrichtung zum Lesen und Verarbeiten von Information, die aus dekodierbarer Schriftinformation und/oder nichtdekodierbarer Graphikinformation besteht | |
DE69517910T2 (de) | Verfahren zur analyse von kursivschrift | |
DE1449584A1 (de) | Anordnung zur UEbertragung von Daten einer Loch- oder Magnetkarte in eine Datenverarbeitungsanlage oder umgekehrt | |
DE2230265C2 (de) | Verfahren zur Verminderung von Redundanz in der von einem Abtastrasterbereich einer Zeichenerkennungseinrichtung gelieferten Datenmenge und Einrichtung zu dessen Durchführung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8125 | Change of the main classification |
Ipc: G06K 9/78 |
|
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |