DE3787206T2 - Gerät und Verfahren zur Ermittlung von Zeichenteilen auf einem gedruckten Dokument. - Google Patents
Gerät und Verfahren zur Ermittlung von Zeichenteilen auf einem gedruckten Dokument.Info
- Publication number
- DE3787206T2 DE3787206T2 DE87107234T DE3787206T DE3787206T2 DE 3787206 T2 DE3787206 T2 DE 3787206T2 DE 87107234 T DE87107234 T DE 87107234T DE 3787206 T DE3787206 T DE 3787206T DE 3787206 T2 DE3787206 T2 DE 3787206T2
- Authority
- DE
- Germany
- Prior art keywords
- character
- bits
- data stream
- document
- operations
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 45
- 230000011218 segmentation Effects 0.000 claims description 42
- 238000005070 sampling Methods 0.000 claims description 3
- 238000000926 separation method Methods 0.000 claims 1
- 238000012015 optical character recognition Methods 0.000 description 6
- 230000000903 blocking effect Effects 0.000 description 4
- 238000007796 conventional method Methods 0.000 description 4
- 238000006073 displacement reaction Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
- G06V30/15—Cutting or merging image elements, e.g. region growing, watershed or clustering-based techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Character Input (AREA)
Description
- Die vorliegende Erfindung bezieht sich auf ein Gerät und ein Verfahren zur Ermittlung von Zeichen und Zeichenzeilen auf einem gedruckten Dokument in einem Datenstrom, der aus dem Abtasten des Dokuments resultiert.
- Optische Zeichenerkennungssysteme (OCR) zum Lesen von gedruckten Zeichen dienen zum Lesen einer großen Menge von maschinengedruckten Zeichen. Andere Dokumente mit handschriftlichen Zeichen, Dokumente mit maschinengeschriebenen Zeichen haben jedoch nicht die akkurat gedruckten Zeichen, die innerhalb von Zeichenrahmen mit einer besonderen Blindfarbe gedruckt werden, so daß die Rahmen nicht von dem OCR-System ermittelt werden. In Dokumenten mit gedruckten Zeichen wurden die Zeichen gemäß dem Zeichenabstand gedruckt, der einzig und allein von den Druckern erstellt wird. Außerdem enthalten Dokumente, die von OCR-Systemen ausgelesen werden, nicht nur originalgedruckte Dokumente von hoher Qualität sondern auch Kopien von solchen Originaldokumenten. Da es nicht möglich ist, Geräuschteile zu vermeiden, die in den gedruckten Bereichen enthalten sind, ist es in in solchen Dokumentkopien erforderlich, nur die effektiven, nicht durch Geräusche beeinflußten Zeichenanteile von Bildern in Datenströmen zu ermitteln, die aus dem Abtasten der Dokumente resultieren.
- Beim Lesen der Zeichen mit OCR-Systemen gibt es außer dem oben erwähnten Geräuschproblem auch das Problem der Verschiebung des Dokuments. In einem Belegzufuhr-Abtastsystem kann z. B. die Verschiebung des Dokuments beim Zuführen verursacht werden und in einem Flachbett-Abtastsystem kann ein Dokument, das auf eine Lesewalze gelegt wurde, verschoben werden. Im Falle einer Dokumentkopie kann das Dokument außerdem verschoben kopiert worden sein.
- Generell verwenden konventionelle OCR-Systeme ein Verfahren zur ersten Segmentierung eines Datenstroms, der eine Zeile von Zeichenfeldern repräsentiert, um Zeichenfelder zu definieren und dann jedes Zeichenfeld von der von den Zeichenfeldern erstellten Zeichenzeile durch Projektion oder dergleichen zu segmentieren. Wenn jedoch das Dokument verschoben wird und die Zeichenzeile nicht parallel zu der projizierten Richtung verläuft, wird sich die erste Segmentierung der Zeichenzeile als schwierig erweisen. Dieses Problem könnte durch eine Technik gelöst werden, bei der eine Zeichenzeile in verschiedene Blöcke geteilt wird und jeder der Blöcke projiziert wird, wie in der japanischen, ungeprüft veröffentlichten Patentanmeldung mit den Nummern 58-106,665; 58-123,169 und 58-146,973 und in einem Artikel von J. KIM, "BASELINE DRIFT CORRECTION OF HAND- WRITTEN TEXT", IBM Technical Disclosure Bulletin, Vol. 25, No. 10, March 1983, pp. 5111-5114, beschrieben wird.
- Die oben erwähnten Dokumente beschreiben jedoch nicht detailliert wie schwarze Anteile, d. h. Zeichenteile, ermittelt werden. Im allgemeinen wäre ein Verfahren zur Feststellung, daß ein Zeichenteil ermittelt wurde, selbst dann unzulänglich, wenn ein Muster nur einen schwarzen Punkt enthält, da er zu geräuschempfindlich wäre.
- Andererseits wurde ein weiteres, bekanntes Verfahren, das oft in der Bildverarbeitung verwendet wird, bei dem eine Maske von 3 · 3 Punkten oder dergleichen benutzt wird und das feststellt, daß ein Zeichenteil ermittelt wurde, wenn die Anzahl von vorhandenen schwarzen Punkten innerhalb der Maske größer als ein zuvor bestimmter Wert ist, besondere Schaltkreise zu dessen Durchführung erfordern oder dessen Verarbeitungsgeschwindigkeit würde reduziert werden, wenn die äquivalenten Funktionen mit Software durchzuführen sind, da dies Bitmanipulationen erfordern würde.
- Bei der Segmentierung jedes Zeichens aus einem Datenstrom, der eine erstellte Zeichenlinie repräsentiert, ist das Problem der Verschiebung des Dokuments nicht so groß. Jedoch im Falle eines lateral gedruckten Dokuments zum Beispiel, in dem Zeichen enger voneinander spationiert sind als Zeichenzeilen, sollte eine Zwangssegmentierung erfolgen, um jede Verbindung zwischen zwei aneinandergrenzenden Zeichen aufgrund der dazwischenliegenden Geräusche zu vermeiden. US-A-3,629,826 beschreibt ein Verfahren zur Trennung solch aneinandergrenzenden Zeichen, die miteinander verbunden sind oder sich berühren. Gemäß diesem Verfahren werden Parameter, die Führungsstrichkanten und Verzögerungsstrichkanten repräsentieren aus quantisierter Video- Information ermittelt, die Zeichen repräsentiert. Diese Zeichen werden gewichtet. Dann werden Gattersignale zur Trennung der aneinandergrenzenden Zeichen erzeugt, die auf den Unterschieden zwischen den gewichteten Parametern basieren. Das Verfahren erfordert ganz komplizierte Hard- und Software. Deshalb ist es wünschenswert, ein einfacheres Verfahren zur Segmentierung von Zeichen zu bekommen.
- Es ist eine allgemeine Praktik, bei dem Segmentieren von Datenströmen, die ein Bild von Zeichen und Zeichenzeilen repräsentieren, um die Abstände zwischen Zeichenzeilen und die Abstände zwischen Zeichen festzustellen, Histogramme mit schwarzen Punkten vorzubereiten und diese mit zuvor bestimmten Schwellenwerten zu vergleichen. Zur Vorbereitung der Histogramme ist es jedoch erforderlich, die Anzahl der schwarzen Punkte zu dem ganzen, quantisierten Bild zu addieren. Dies bedingt jedoch generell mehr zusätzlichen Platz in einem Mikroprozessor. Deshalb würde die Verarbeitungsgeschwindigkeit zur Durchführung aller Segmentierungen reduziert, es sei denn, irgendein dedizierter Schaltkreis ist hierfür vorgesehen, und selbst wenn irgendein dedizierter Schaltkreis hierfür vorgesehen ist, würde sich dies außerdem in den Kosten niederschlagen.
- Gegenstand der vorliegenden Erfindung ist es, ein verbessertes Gerät und Verfahren zur Ermittlung von Zeichenteilen auf einem gedruckten Dokument bereitzustellen.
- Die vorliegende Erfindung bezieht sich auf ein Gerät zur Ermittlung von Zeichenteilen auf einem gedruckten Dokument von der Art, das Mittel enthält zum Abtasten des Dokuments und zur Erzeugung eines Zeichendatenstroms, Segmentierungsmittel zur Ermittlung der Grenzen zwischen aneinandergrenzenden Zeichenteilen in dem Datenstrom mittels Durchführung von Segmentierungsoperationen in dem Datenstrom und Erkennungsmittel unter Verwendung der Segmentierungsoperationen, um die Zeichenteile in dem Zeichendatenstrom zu ermitteln.
- Gemäß der Erfindung wird das Gerät dadurch gekennzeichnet, daß die Segmentierungsmittel
- Mittel zur Teilung jedes Teils des Datenstroms enthalten, der der Abtastung eines ausgewählten, eindimensionalen Bereichs des Dokuments in einer Vielzahl von p aneinandergrenzenden Bitgruppen entspricht, so daß jede Gruppe die gleiche Anzahl j von Bits enthält,
- Mittel zur Durchführung von ODER-Operationen in allen Bits in jeder der Gruppen enthalten, um so ein Muster zu erzeugen, das m Bits enthält, wobei m eine Ganzzahl größer als eins ist und wo jedes i-th Bit in dem Muster dem Ergebnis einer ODER-Operation entspricht, die zwischen den Bits i, i+m, i+2m . . . (i+(pj-m) des eindimensionalen Bereichs, d. h. jedem m-th Bit ausgehend von dem i-th Bit, durchgeführt wurde, wobei 0≤i< m ist;
- Mittel zum Zählen der Anzahl von Bits in dem Muster enthalten, das das Vorhandensein von einem Zeichenteil repräsentiert,
- Summenmittel zum Summieren der Zählungen für eine Anzahl von Mustern enthalten, die einer zuvor ausgewählten Anzahl von aneinandergrenzenden Bereichen des Dokuments entsprechen, und
- Mittel zur Ermittlung der Ergebnisse aus den Summenoperationen enthalten, in denen die abgetasteten Bereiche die Grenzen zwischen aneinandergrenzenden Zeichenteile auf dem Beleg repräsentieren.
- Die Erfindung bezieht sich auch auf ein Verfahren zur Ermittlung von Zeichenteilen auf einem gedruckten Dokument von der Art, das das Abtasten des Dokuments und das Erzeugen eines Zeichendatenstroms, die Ermittlung der Grenzen zwischen aneinandergrenzenden Zeichenteilen in dem Datenstrom mittels Durchführung von Segmentierungsoperationen in dem Datenstrom enthält und die Ergebnisse der Segmentierungsoperationen verwendet, um die Zeichenteile in dem Zeichendatenstrom zu ermitteln.
- Gemäß der Erfindung wird das Verfahren dadurch gekennzeichnet, daß die Segmentierungsoperationen
- die Trennung jedes Teils des Datenstroms enthalten, der der Abtastung eines ausgewählten, eindimensionalen Bereichs des Dokuments in einer Vielzahl von p aneinandergrenzenden Bitgruppen entspricht, so daß jede Gruppe die gleiche Anzahl j von Bits enthält,
- die Durchführung von ODER-Operationen in allen Bits in jeder der Gruppen enthalten, um so ein Muster zu erzeugen, das m Bits enthält, wobei m eine Ganzzahl größer als eins ist und wo jedes i-th Bit in dem Muster dem Ergebnis einer ODER-Operation entspricht, die zwischen den Bits i, i+m, i+2m . . . (i+(pj-m) des eindimensionalen Bereichs, d. h. jedem m-th Bit ausgehend von dem i-th Bit durchgeführt wurde, wobei 0≤i< m ist;
- das Zählen der Anzahl von Bits in dem Muster enthalten, das das Vorhandensein von einem Zeichenteil repräsentiert, das Summieren der Zählungen für eine Anzahl von Mustern enthalten, die einer zuvor ausgewählten Anzahl von aneinandergrenzenden Bereichen des Dokuments entsprechen, und die Ermittlung der Ergebnisse aus den Summenoperationen enthalten, in denen die abgetasteten Bereiche die Grenzen zwischen aneinandergrenzenden Zeichenteile auf dem Beleg repräsentieren.
- Damit die Erfindung ohne weiteres verstanden werden kann, wird nun ein Ausführungsbeispiel mit Bezug auf die beiliegenden Zeichnungen beschrieben, in denen
- Fig. 1 ein Flußdiagramm eines Verfahrens zur Feststellung von Zeichenteilen in einem Datenstrom gemäß der vorliegenden Erfindung enthält,
- Fig. 2 ein Gerät zur Zeichenerkennung zeigt, das das in Fig. 1 dargestellte Verfahren durchführen kann,
- Fig. 3 eine Blocktechnik zeigt, die in dem in Fig. 1 dargestellten Verfahren verwendet werden kann, wenn ein Dokument verschoben wurde,
- Fig. 4 die ODER-Operationen zur Segmentierung von Zeichenzeilen zeigt, die in dem in Fig. 1 dargestellten Verfahren verwendet werden können,
- Fig. 5 zeigt, wie ein Zeilenteil aus den Ergebnissen der ODER-Operation erstellt wird, die in Fig. 4 abgebildet ist, und
- Fig. 6 zeigt, wie ein Zeichenteil aus den Ergebnissen der ODER-Operation erstellt wird, die in Fig. 4 abgebildet ist.
- In der folgenden Beschreibung eines Ausführungsbeispiels von einem Gerät und einem Verfahren gemäß der vorliegenden Erfindung wird davon ausgegangen, daß ein lateral gedrucktes Dokument abgetastet wird, so daß die Richtung der Zeichenzeilen und die von dem Abtaster zuerst abgetastete Richtung die gleichen sind. Desweiteren verwenden die Ausführungsbeispiele eine Blocktechnik, die ähnlich der ist, die in dem oben erwähnten Stand der Technik verwendet wird, um mit schrägen Zeichenzeilen fertig zu werden. Es sollte jedoch verstanden werden, daß ein Gerät und ein Verfahren gemäß der vorliegenden Erfindung auf die gleiche Weise in Fällen angewendet werden können, in denen ein vertikal gedrucktes Dokument abgetastet wird oder keine Blocktechnik verwendet wird. Das mit Zeichen bedruckte Dokument, das mit dem Gerät oder in dem Verfahren gemäß der Erfindung verwendet wird, kann entweder ein maschinengedrucktes oder ein handschriftliches Dokument sein.
- Im Prinzip ist ein Verfahren gemäß der vorliegenden Erfindung dem eines konventionellen Verfahrens ähnlich, in dem eine m · n Maske lateral und vertikal Punkt für Punkt, bezogen auf ein Bild eines gedruckten Dokuments, verschoben wird und in dem die schwarzen, ermittelten Punkte innerhalb der Maske gezählt werden. Es wird festgestellt, daß ein effektiver schwarzer Teil eines Zeichens ermittelt wurde, wenn der Zählwert gleich oder größer als ein zuvor bestimmter Wert ist.
- Solch ein konventionelles Verfahren muß jedoch die Maske für alle Punkte verwenden, während ein Verfahren gemäß der vorliegenden Erfindung eine Effizienz erreichen kann, die äquivalent zu der ist, die durch Verschieben einer Maske von m · n Punkten erreicht werden kann und noch eine Genauigkeit bei der Segmentierung eines Datenstroms in Zeichenteile erreicht, die im wesentlichen die Gleiche ist wie die, die durch die Punkt-für-Punkt-Verschiebung der Maske erreicht werden könnte.
- Fig. 1 zeigt ein Flußdiagramm eines Verfahrens zur Segmentierung eines Datenstroms in Zeichenteile gemäß der vorliegenden Erfindung. Schritt 1 zum Abtasten des Dokuments mit einem Abtaster, um einen Zeichendatenstrom zu bekommen und Schritt 2 zur Quantisierung des Datenstroms in zwei Ebenen (in der jedes Bildelement mit einem Bit repräsentiert wird) und Speicherung des Datenstroms in einem Speicher sind wohl bekannte Techniken und müssen deshalb nicht im einzelnen erklärt werden.
- In Schritt 3 wird eine Vielzahl von Gruppen durch aufeinanderfolgendes Auswählen jedes m-th Bits in dem quantisierten Datenstrom in einer ersten Richtung des Bilds des abgetasteten Dokuments erzeugt, d. h. in Segmentierungsrichtung, die parallel zu der Projektionsrichtung verläuft. Im Falle der Segmentierung des Datenstroms, um eine laterale Zeichenzeile zu bekommen, kann dies zum Beispiel durch Teilung jeder der abgetasteten Zeilen erfolgen, die in dem quantisierten Datenstrom in einer Vielzahl von Gruppen entlang der zuerst abgetasteten Richtung (laterale Richtung) repräsentiert sind. Dann werden die entsprechenden Bits dieser Gruppen in jeder der abgetasteten Zeilen zusammen ODER-verknüpft.
- Wie später erklärt werden wird, hängt die effizientere Durchführung der ODER-Operationen von der Architektur eines Prozessors ab.
- Die Anzahl der ODER-Gruppen, die als Ergebnis der ODER-Operationen in Schritt 3 erzeugt werden, ist gleich der Anzahl von Bits entlang einer zweiten Richtung des quantisierten Datenstroms, d. h. senkrechte Richtung zur Segmentierungsrichtung. In Schritt 4 werden schwarze Bits (z. B. binär '1') in jeder dieser ODER-Gruppen gezählt. Diese Zählwerte werden entlang der zweiten Richtung angeordnet.
- In Schritt 5 werden die Summen von n aufeinanderfolgenden Zählwerten der Blockbits durch einzelnes Verschieben der Schwarzbit-Zählwerte entlang der zweiten Richtung berechnet. Genauer gesagt, wird zuerst die Summe der n-th Zählwerte des ersten Durchgangs entlang der zweiten Richtung berechnet und dann die Summe der (n + 1)-th Zählwerte des zweiten Durchgangs berechnet und danach erfolgen weitere Operationen auf die gleiche Weise bis die Summe des i-th Durchgangs der (n + i - 1)-th Zählwerte schließlich berechnet wird. Schritt 5 wird durchgeführt, um effektive Zeichenteile von Geräuschen zu unterscheiden, was später im einzelnen erklärt wird.
- Im letzten Schritt 6 werden Zeichenteile festgestellt, indem jede der Summen mit einem zuvor bestimmten Schwellenwert verglichen wird. Jeder der Werte m und n ist eine Ganzzahl gleich oder größer als zwei. Diese können gemäß der Auflösung, je nach Abtaster oder Prozessoreinheit variieren. Im allgemeinen würden drei oder vier ausreichen, wie im Falle einer konventionellen Maske.
- Die oben beschriebene Segmentierungsverfahren kann in einem wie in Fig. 2 gezeigten Gerät zur Zeichenerkennung verwendet werden. Das Gerät enthält ein Steuergerät 10, das das Gerät steuert, einen Abtaster 12, der ein maschinengedrucktes oder handschriftliches Dokument abtastet, um einen Datenstrom zu erzeugen und die Bits in dem Datenstrom in zwei Ebenen zu quantisieren, einen Speicher 14, in welchem die von dem Abtaster quantisierten Datenströme gespeichert werden, eine Segmentierungslogik 16, die die quantisierten Datenströme abtastet und die Datenströme in Zeichenbereiche segmentiert und eine Erkennungslogik 18, die die Zeichen innerhalb der segmentierten Datenstrombereiche erkennt. Das Steuergerät 10 kann ein 16-Bit-Mikroprozessor, z. B. ein Intel 8086 sein. Außer der Segmentierungslogik 16 können die Elemente ohne weiteres mit konventionellen Einheiten realisiert werden. Nach Speicherung der quantisierten Datenströme, die von dem Abtaster in den Speicher 14 geleitet werden, aktiviert das Steuergerät die Segmentierungslogik 16, um die quantisierten Datenströme zur Ermittlung der Zeichenzeilen und Zeichen zu segmentieren. In dem vorliegenden Ausführungsbeispiel wurde ein 16-Bit-Mikroprozessor verwendet und deshalb werden die Schreib- und Leseoperationen aus und in den Speicher 14 mit einer 16-Bit- Worteinheit durchgeführt.
- Die Segmentierungsoperation des quantisierten Datenstroms zur Ermittlung der Zeichenzeilen und Zeichen, die mittels der Segmentierungslogik 16 durch Steuerung der Steuereinheit 10 durchgeführt wird, wird nun beschrieben.
- Die Segmentierungsoperation des Datenstroms zur Ermittlung von Zeichenzeilen ist eine Operation, um aus einem quantisierten Datenstrom, der von dem Abtaster 12 erzeugt wurde, jede Zeichenzeile einzeln auszublenden. Wenn jedoch ein Dokument viele Zeichenzeilen enthält und beim Lesen durch den Abtaster 12 verschoben wurde, wird der quantisierte Datenstrom in dem Speicher 14 in der geneigten Bedingung gespeichert und repräsentiert 50 ein schiefes Bild des Dokuments. Wenn es gewünscht wird, jede Zeichenzeile durch laterale Projektion solch eines Bildes zu ermitteln, wird es schwierig werden, jede Zeichenzeile zu ermitteln, da mehrere aneinandergrenzende Zeichenteile sich untereinander überlappen.
- Dies wird in Fig. 3 (a) gezeigt, in der die Zeichenzeilen 22, 24 und 26 in einem Bild 20 geneigt sind, das in dem Speicher 14 gespeichert wurde. Mit dieser Anordnung wird der Teil, der durch eine kräftige Linie 28 auf der rechten Seite dargestellt wird, als eine Zeichenzeile ermittelt. Wie bereits mit Bezug auf den Stand der Technik angegeben wurde, ist es jedoch bei gleicher Teilung des Bilds 20 in eine Vielzahl von (vier, im Falle des in Fig. 3 (a) gezeigten Beispiels) Blöcken in senkrechter Richtung zu der Projektionsrichtung (laterale Richtung) und bei Projektion jedes einzelnen der Blöcke möglich, jede der Zeichenzeilenteile erfolgreich auszublenden, wie in Fig. 3 (b) gezeigt wird.
- In dem hier beschriebenen Gerät wird solche eine Blocktechnik verwendet. In dem Beispiel, das in Fig. 3 (a) dargestellt ist, vorausgesetzt, daß das Bild 20 eine Breite von 1728 Bits (108 Wörtern) hat, hat jeder Block eine Breite von 432 Bits (27 Wörtern). Natürlich muß eine solche Blocktechnik nicht verwendet werden, wenn das Problem des Verschiebens des Dokuments unbedeutend ist.
- Der quantisierte, von dem Abtaster 12 erzeugte Datenstrom wird in dem Speicher 14, Wort für Wort aufeinanderfolgend, entlang der zuerst abgetasteten Richtung des Abtasters 12 gespeichert, und wenn die Daten, die eine Zeile (108 Wörter im Falle des oben erwähnten Beispiels) repräsentieren, darin gespeichert wurden, werden die Daten, die die nächste Zeile repräsentieren und die in der zweiten Abtastrichtung verarbeitet werden, darin gespeichert. Wenn der gesamte, quantisierte Datenstrom komplett gespeichert wurde, führt die Segmentierungslogik 16 die Segmentierung des Datenstroms durch, um die Zeichenzeilen in jedem der Blöcke gemäß dem oben genannten Prinzip zu ermitteln. Dies wird in Fig. 4 und Fig. 5 dargestellt.
- In Fig. 4 enthalten die Daten 30 in einer besonderen Zeile in einem Block, wie in Fig. 3 (b) gezeigt, 27 Wörter (432 Bits) in diesem Ausführungsbeispiel. Die Breite des Blocks ist vorzugsweise eine ganzzahlige Vielfache von der Breite eines Busses (in diesem Fall 16 Bits) des Mikroprozessors, der in dem Gerät verwendet wird und, wenn ansonsten, unnötige Bits der Maskierung bedürfen. Hierzu wurden, wie zuvor angegeben, alle schwarzen Bits in der Zeile berechnet. Dies ist für einen Mikroprozessor nicht effizient. Anstatt, gemäß der vorliegenden Erfindung, entsprechende Bits (in dem Fall des in Fig. 4 dargestellten Beispiels ist es jeder vierte Bit) in den Gruppen ODER-zu-verknüpfen. In diesem Fall jedoch, ist es nicht angebracht, jeden vierten Bit in der Datenzeile mit einem 16-Bit- Mikroprozessor ODER-zu-verknüpfen. Deshalb wird in dem in Fig. 4 gezeigten Beispiel eine erste ODER-Operation 32 Wort für Wort durchgeführt, und eine nächste ODER-Operation 36 wird durch Teilung eines ODER-Ergebnisses 34 in den höheren Byte und den niedrigeren Byte durchgeführt und eine abschließende ODER-Operation 40 wird durch Teilung eines ODER-Ergebnisses 38 von einem Byte in den höheren Halbbyte (Teil eines Bytes) und den niedrigeren Halbbyte (Teil eines Bytes) auf die gleiche Weise durchgeführt. Somit wird schließlich ein ODER-Muster 42 erzielt, das in 4 Bits konvergiert ist. Obwohl das gleiche Ergebnis durch Teilung der Datenzeile 30 in Gruppen zu 4 Bits und durch ODER-verknüpfen entsprechender Bits in jeder von ihnen erzielt werden könnte, ist das in Fig. 4 abgebildete Verfahren weitaus effizienter. Im allgemeinen kann das in Fig. 4 abgebildete Verfahren durchgeführt werden, wenn m = M/2p (p ist eine Ganzzahl) ist, vorausgesetzt, daß die Prozessoreinheit oder die Breite eines Busses M Bits ist. Mit anderen Worten kann m so ausgewählt werden.
- Die ODER-Operationen 32, 36 und 40 können durch ein ODER-Befehl in einem Mikroprozessor realisiert werden. In der ersten ODER-Operation 32 kann der erste Operand als besonderes, allgemeines Register (alle wurden auf Null zurückgesetzt) geliefert werden und der zweite Operand kann als Adressen der Wörter 0-26 in dem Speicher 14 dienen, und die Ergebnisse werden in das allgemeine Register zurückgeschrieben, das von dem ersten Operanden gehalten wird. Dann wird das ODER-Ergebnis 34 von einem der Wörter durch siebenundzwanzigmaligen Zugriff auf den Speicher 14 erzielt. Wenn auf das allgemeine Register Byte für Byte zugegriffen werden kann, kann das ODER-Ergebnis 34 eines Wortes leicht in den höheren Byte und den niedrigeren Byte geteilt werden, um jeden von ihnen ODER-zu-verknüpfen.
- Wenn auf das allgemeine Register nicht Byte für Byte zugegriffen werden kann, ist es erforderlich das ODER-Ergebnis 34 in den höheren Byte und den niedrigeren Byte zu teilen, indem ein Verschiebebefehl verwendet wird. Das gleiche gilt für den Fall, in dem das ODER-Ergebnis 42 von vier Bits aus dem ODER- Ergebnis 38 von einem Byte erzielt wird.
- Die in Fig. 4 gezeigten Operationen werden für alle Zeichenzeilen in dem Datenstrom wiederholt. Die resultierenden 4-Bit- Muster, wie in der Spalte mit der Überschrift "ODER-Ergebnis" in Fig. 5 dargestellt, werden erzielt. Durch Zählung, die entweder direkt oder mit Bezug auf eine Tabelle erfolgt, wird die Anzahl von schwarzen Bits in jedem der 4-Bit-Muster, die Vorkommenshäufigkeit von schwarzen Bits in der Reihe von 0 - 4 erzielt. Als nächstes wird eine Erklärung zu dem Konzept eines Verfahrens zur Ermittlung effektiver Zeilenteile von den erzielten Vorkommenshäufigkeiten von schwarzen Bits gegeben.
- Die in Fig. 3 dargestellten, schattierten Anteile 22, 24 und 26 sind Anteile, die in Zeichen als Zeichenzeilen zu segmentieren sind. Diese Anteile sollten natürlich eine ausreichende Anzahl von aufeinanderfolgenden schwarzen Bits enthalten. Deshalb wird geschätzt, daß die Bitmuster, die von den horizontal abgetasteten Zeilen abgeleitet werden, die diese Anteile queren, die Vorkommenshäufigkeit von 4 an schwarzen Bits haben werden, und daß auch die Bitmuster, die von den vertikal abgetasteten Zeilen abgeleitet werden, die Vorkommenshäufigkeit von 4 an schwarzen Bits. Im Falle von Geräuschen, die sporadisch auftreten können, ist es andererseits kaum wahrscheinlich, daß mehrere Bitmuster, die von aufeinanderfolgend abgetasteten Zeilen abgeleitet werden, die solche Geräusche abdekken, die Vorkommenshäufigkeit von 4 an schwarzen Bits haben.
- Bei Betrachtung der vertikalen Verteilungshäufigkeit, die in der Spalte mit der Überschrift "Häufigkeit" in Fig. 5 abgebildet ist, und der erzielten Summe solcher Häufigkeiten in einem Bereich, ist es demgemäß möglich, effektive Zeichenteile von Geräuschen zu unterscheiden. Genauer gesagt, vorausgesetzt daß, ein betreffender Bereich eine Höhe n hat, dann werden die Häufigkeitswerte von n aneinandergrenzenden Abtastlinien summiert und diese Operation wird durch Verschieben der abgetasteten Linie, eine nach der anderen, wiederholt. Als Ergebnis werden eine Reihe von Summen, die in der Spalte mit der Überschrift "Summe" in Fig. 5 gezeigt wird, für die jeweiligen Zeilensätze erzielt. In dem in Fig. 5 gezeigten Beispiel ist n = 3. Die Summe der Häufigkeiten für die Bitmuster, bezogen auf einen Zeilensatz, kann durch Addieren des Häufigkeitswertes von den Bitmustern der mittleren Zeile zu den Häufigkeitswerten von den Bitmustern der oberen und unteren Zeilen, die daran angrenzen, erzielt werden. Im Falle einer Zeile 0, die keine obere Zeile hat, kann jedoch eine Addition nicht durchgeführt werden und die "Summen"spalte für die Zeile 0 wird mit einer Leerstelle gezeigt (gleiches gilt für die untere Zeile). In solch einem Fall, wenn eine virtuelle Zeile mit einer Bitmusterhäufigkeit von 0 erstellt wird, könnte es möglich sein, solch eine Addition durchzuführen.
- Die Summen reichen von 0 bis 12. Die Bereiche der Dokumente, die effektive Zeichenzeilenteile enthalten, können durch Vergleich dieser Summe mit einem zuvor festgelegten Schwellenwert ermittelt werden. In dem beschriebenen Fall, wenn die Summe für eine Zeile gleich oder größer als der Schwellenwert ist, wird festgestellt, daß die Zeile schwarze Teile hat, die Zeilenteile bilden, und wenn die Summe für die Zeile kleiner als der Schwellenwert ist, wird festgestellt, daß die Zeile keine solchen schwarzen Teile hat. Außerdem, wenn die "Summen"spalte aufeinanderfolgend von oben geprüft wird, wird die Anzahl von einer abgetasteten Zeile, für die die Summe gerade von einem kleineren Wert als der Schwellenwert in einen Wert geändert wurde, der gleich oder größer als der Schwellenwert ist, als Zeichenbereich mit dem Ausgangspunkt si registriert und die Anzahl von einer abgetasteten Zeile, für die die Summe gerade von einem gleichen oder größeren Wert als der Schwellenwert in einen kleineren Wert als der Schwellenwert geändert wurde, wird als Zeichenbereich mit dem Endpunkt ei (siehe Abbildung 3 (b)) registriert. In dem in Fig. 5 gezeigten Beispiel beträgt der Schwellenwert 7 und die Zeilennummern 5 und 12 werden als Zeichenbereich mit dem Anfangspunkt bzw. als Zeichenbereich mit dem Endpunkt registriert. Die Anzahl der Zeilen (in diesem Fall 8) von dem Anfangspunkt zu dem Endpunkt gibt die Höhe eines effektiven Zeilenteils an. (Derzeit ist die Höhe sehr viel größer).
- Das in Fig. 4 und Fig. 5 gezeigte Beispiel, in dem m = 4, n = 3 und der Schwellenwert = 7 ist, hat im wesentlichen den gleichen Effekt wie im Falle des konventionellen Verfahrens, wobei ein ganz quantisierter Datenstrom ein abgetastetes Dokument repräsentiert, das mit einer 3 · 4 Maske abgetastet wurde und schwarze Teile durch Zählung der schwarzen Punkte ermittelt hat, die innerhalb der Maske aufgetreten sind und hat noch den Vorteil, daß Hochgeschwindigkeitsverarbeitung möglich ist, ohne daß irgendeine dedizierte Hardware erforderlich ist. Die Werte von m und n und von dem Schwellenwert können wie gewünscht, gemäß der Zeichengröße, die für das Drucken des Dokuments verwendet wird, der Auflösung des Abtasters, der Architektur des Mikroprozessors, etc. ausgewählt werden. Jeder der Werte von m und n ist eine Ganzzahl gleich oder größer als zwei, obwohl im allgemeinen drei oder vier ausreichen würde. Es wird gewünscht, daß der Schwellenwert größer als ein Wert (6 in dem oben erwähnten Beispiel) in dem mittleren Bereich der Summe der Häufigkeiten ist. Der Grund, warum m gewählt wurde, um in dem obigen Beispiel eher vier als drei zu sein, ist daß die Prozessoreinheit als Mikroprozessor mit einer Leistung von zwei gewünscht wird, obwohl m drei sein kann, wenn es keine solche Einschränkung gibt.
- Außerdem, wenn ein Abtaster mit einer hohen Auflösung in der Größenordnung von 16 Punkten/mm verwendet wird, kann die Abtastung jeder weiteren Abtastzeile in der zweiten Abtastrichtung (vertikale Richtung) durchgeführt werden. Die Gründe hierfür sind, daß es ausreichend wäre, die Abtastung jeder weiteren Abtastzeile durchzuführen, da effektive schwarze Komponenten anders als Geräusche sich wenigstens über zwei Abtastzeilen bei solch einer hohen Auflösung ausbreiten und daß der Vorteil der Hochgeschwindigkeitsverarbeitung gemäß der vorliegenden Erfindung bei Durchführung der Abtastung jeder Abtastzeile verloren ginge, da die Menge von segmentierten Daten dadurch anstiege.
- Obwohl die Segmentierung von einem Datenstrom mit Zeichenteilen, d. h. Zeichenzeilenteilen, gemäß dem Verfahren, das in den Fig. 4 und Fig. 5 dargestellt ist, zufriedenstellend akkurat erfolgt, könnte die Segmentierung noch akkurater durch Verwendung der Zeilenteilungsinformation und der Schriftgrößeninfomation durchgeführt werden, die von einem System oder einem Benutzer für den Fall geliefert werden, in dem das Originaldokument ein maschinengedrucktes Dokument ist.
- In Fig. 3 (b) zum Beispiel, wenn (e&sub1;-s&sub1;), bezogen auf eine Schriftgröße (Höhe), z. B. 0,8 bis 1,2 mal die Schriftgröße ist, innerhalb eines zuvor festgelegten Bereichs liegt, kann der durch s&sub1; und e&sub1; (als dicke Linie dargestellt) begrenzte Teil als ein erster Zeilenteil erstellt werden. Als nächstes wird der Punkt geschätzt, wo eine Zeilenteilung zu den Koordinaten des Zentrums des ersten Zeilenteils addiert wird, um die Koordinaten des Zentrums des zweiten Zeilenteils zu werden und ein Bereich innerhalb der Reihe in der Größenordnung von z. B. 0,6 mal die Höhe der Schriftgröße auf den oberen und unteren Seiten des geschätzten Zentrums des zweiten Zeilenteils überprüft, wenn der durch s&sub1; und e&sub1; (i = 2, 3, . . ) begrenzte Teil den Bereich überlappt und zur gleichen Zeit (e&sub1;-Si) innerhalb der Reihe von 0,8 bis 1,2 mal die Höhe der Schriftgröße liegt, kann der durch si und ei begrenzte Teil als zweites Zeilenteil erstellt werden. Danach werden ähnliche Berechnungen wiederholt, bis das letzte Zeilenteil erstellt wurde. Falls ein quantisierter Datenstrom in eine Vielzahl von Blökken geteilt wird, erfolgen die gleichen Berechnungen für jeden der Blöcke.
- Wenn (ei-si) größer als 1,2 mal die Höhe der Schriftgröße ist, ist der Block weiter zu unterteilen und das in Fig. 4 und Fig. 5 abgebildete Verfahren wird erneut durchgeführt. Wenn (ei-si) kleiner als 0,8 mal die Höhe der Schriftgröße ist, werden die Unterschiede zwischen ei+1, ei+2, usw., und si überprüft und wenn (ei+j-Si) innerhalb der oberen Reihe liegt, wird der durch si und ei+j begrenzte Bereich als ein Zeilenteil erstellt. Wenn der erste Zeilenteil nicht erstellt werden kann, wird zuerst der zweite Zeilenteil ermittelt, indem der Punkt geschätzt wird, wo eine Zeilenteilung zu einem Punkt addiert wurde, der als Teil des Zeilenteils geschätzt wurde, um das Zentrum des zweiten Zeilenteils zu sein und dann wird der Bereich berechnet, wo der erste Zeilenteil vorhanden ist.
- Theoretisch kann durch Drehung um 90º jeder Zeichenzeilenteil durch das Verfahren der Segmentierung des Datenstroms ermittelt werden, der in den Fig. 4 und Fig. 5 dargestellt wird und durch Anwendung des Verfahrens zur Segmentierung in dem entsprechenden Teil des Datenstroms, die in den Fig. 4 und Fig. 5 dargestellt wird, kann ein einzelner Zeichenbereich separat ermittelt werden. Jedoch das Drehen eines Bildes von einer Zeichenzeile unter Verwendung eines normalen Mikroprozessors erfordert zusätzlichen Platz in dem Mikroprozessor und das Lesen eines quantisierten Datenstroms, der in dem Speicher 14 gespeichert ist, erfordert auch in vertikaler Richtung komplizierte Zugriffsschaltkreise. Deshalb wird nachstehend ein Segmentierungsverfahren zur Ermittlung von Zeichen erklärt, das einfach mit einem normalen Mikroprozessor durchgeführt werden kann.
- Wie oben erklärt, basiert das Verfahren der Segmentierung gemäß der vorliegenden Erfindung auf ODER-verknüpften Bits in einer Reihe von Gruppen, die durch Auswahl jedes m-th Bits entlang der Segmentierungsrichtung, d. h. der Projektionsrichtung gebildet werden. Demgemäß bilden in segmentierten Zeichen entsprechende Bits aus ausgewählten Abtastzeilen eine Gruppe. Anstelle des Lesens solch einer Gruppe durch einen Zugriff von dem Speicher 14 und der ODER-Verknüpfung der Gruppe mit jeder der anderen Gruppen werden in dem vorliegenden Ausführungsbeispiel m Register bereitgestellt, welche jedes die gleiche Länge wie das eines zuvor segmentierten Zeichenzeilenteils hat, oder es werden für solche Register virtuelle Bereiche in dem Speicher bereitgestellt, und das Ergebnis der ODER-Verknüpfung der entsprechenden Bits in jeder m-th abgetasteten Zeile wird darin gespeichert. Dann enthält schließlich jede Gruppe von m entsprechenden Bits in den m Registern das ODER-Ergebnis wie mit Bezug auf das Prinzip der vorliegenden Erfindung erklärt wurde. Vorausgesetzt, daß zum Beispiel die i-th bis k-th abgetasteten Zeilen als ein effektiver Zeilenteil gemäß dem in den Fig. 4 und Fig. 5 dargestellten Verfahren ermittelt wurde, würden die folgenden ODER-Ergebnisse in den m Registern R&sub1;-Rm gespeichert.
- R&sub1; = [i] + [i + m] + [i + 2m] + . . . + [i + k&sub1;m) (i + k&sub1;m ≤ k)
- R&sub2; = [i + 1] + [i + 1 + m] + . . . + [i + 1 + k&sub2;m] (i + 1 + k&sub2;m ≤ k)
- Rm = [i + m - 1] + [i + m - 1 + m] + . . . + [i + m - 1 + kmm] (i + m - 1 + kmm ≤ k)
- In der obigen Formel repräsentiert jede Klammer [ ] die Daten einer abgetasteten Zeile, die eine Nummer hat, die darin angegeben ist (die Länge ist die gleiche wie die eines ausgewählten effektiven Zeilenteils) und "+" repräsentiert die ODER- Operation jedes Bits. Diese ODER-Operationen können einfach durchgeführt werden, indem der ODER-Befehl mit dem ersten Operanden verwendet wird, der für jedes der Register R&sub1;-Rm geliefert wird, und dem zweiten Operanden, der zu abgetasteten Zeilendaten wird und die Ergebnisse in dem ersten Operanden- Register speichert. In dem Fall, wenn die Länge eines ermittelten Zeilenteils größer als ein Wort ist (16 Bits), werden die obigen Operationen erforderlich, um diese für jedes Wort durchzuführen. Wie in dem Fall der ermittelten Zeichenzeilen wird danach die Anzahl von schwarzen Punkten in dem ODER-Operationsergebnis entlang der Segmentierungsrichtung (in diesem Fall, die zweite Abtastrichtung) gezählt und die Verteilungshäufigkeit in senkrechter Richtung zu der Segmentierungsrichtung, d. h. der ersten abgetasteten Richtung, wird erzielt und dann werden die Summen von n aufeinanderfolgenden Häufigkeitswerten durch Verschieben der Häufigkeitswerte, einer nach dem anderen, berechnet. Wenn eine Summe der Häufigkeitswerte gleich oder größer als ein zuvor festgelegter Schwellenwert ist, wird der dementsprechende Teil als ein Bereich erstellt, in dem ein Zeichenteil vorhanden ist.
- Die Werte von m und n können im allgemeinen als drei ausgewählt werden, da jeder der effektiven Zeichenteile außer dem Geräusch im allgemeinen wenigstens drei aufeinanderfolgende Punkte enthält, obwohl es von der Auflösung des Abtasters und der verwendeten Zeichengröße abhängt. In diesem Fall würden die Summen der Häufigkeitswerte in dem Bereich von 0 bis 9 liegen und demgemäß kann ein Schwellenwert von fünf gewählt werden, der größer als der Mittelwert ist. Dies hat im wesentlichen den gleichen Effekt wie in dem konventionellen Verfahren, in dem ein ganzer quantisierter Datenstrom ein Bild repräsentiert, das Punkt für Punkt mit einer 3 · 3 Maske abgetastet wurde.
- Fig. 6 zeigt ein Beispiel zur Ermittlung von Zeichen durch die Segmentierungsoperation, die für jeden der Werte m und n beschrieben wurde, und für drei ausgelegt ist. Das Beispiel, das in Fig. 6 gezeigt wird, entspricht dem in Fig. 5 gezeigten Beispiel, außer daß es um 90º gedreht wurde und das ODER-Operationsergebnis aus drei Bits besteht. In dem in Fig. 6 gezeigten Beispiel wird herausgestellt, daß die Bitpositionen 5-11, 17, 18, usw. effektive Zeichenteile enthalten.
- Als nächstes folgt eine Erklärung bezüglich eines Verfahrens zur Ermittlung jedes Zeichens unter Verwendung von Teilungs- und Zeichengröße-Information (Breite), die von einem System oder einem Benutzer geliefert wird. Zuerst werden die in Fig. 6 gezeigten Summen aufeinanderfolgend von links nach rechts geprüft, um herauszufinden, welche gleich oder größer als der Schwellenwert sind. Wenn die Länge jeder der aufeinanderfolgenden Positionen die gleiche Summe oder eine größere Summe hat, dann liegt der Schwellenwert innerhalb des Bereichs von zum Beispiel 0.8 bis 1,2 mal die Breite W der Zeichengröße, und die Positionen werden als ein erster Zeichenbereich erstellt. Mit den Koordinaten des Zentrums eines erstellten Zeichenbereichs in der X-Richtung (der zweiten abgetasteten Richtung), die mit X&sub1; bezeichnet wird und einer Zeichenteilung, die mit P bezeichnet wird, können die Koordinaten des Zentrums X&sub2; des nächsten Zeichenbereichs in der X-Richtung wie folgt ausgedrückt werden:
- X&sub2; = X&sub1; + P
- Demgemäß wenn eine Position, die eine Summe von Häufigkeitswerten hat, die kleiner als der Schwellenwert ist (vorzugsweise eine Position, die eine Summe von Häufigkeitswerten von Null hat), wird innerhalb des folgenden Bereichs ermittelt
- X&sub2; + ( P / 2) + ( P - W ) /2.
- Die Position kann als rechte Kante von dem geschätzten Zeichenrahmen des nächsten Zeichens erstellt werden. Wenn solche eine Position nicht innerhalb des obigen Bereichs ermittelt werden kann, wird angenommen, daß zwei aneinandergrenzende Zeichen sich einander berühren. In solch einem Fall kann eine Position bei der die Häufigkeitsverteilung das Minimum ist innerhalb des geschätzten Bereichs als Segmentierungspunkt gewählt werden. Die linke Kante kann auf die gleiche Weise erzielt werden. Wenn die rechten und linken Kanten des geschätzten Zeichenrahmens bestimmt wurden (die oberen und unteren Kanten eines Zeilenbereichs enthalten die Zeichen, die bereits zum Zeitpunkt der Segmentierung der Zeichenzeile erzielt wurden), werden die oberen und unteren Kanten der Zeichen durch Durchführung einer lateralen Projektion wieder innerhalb des Bereichs ermittelt, um ein eingrenzendes Rechteck um das Zeichen zu erstellen. Die Koordinate des Zentrums des eingrenzenden Rechtecks in der X-Richtung wird neu als X2 definiert. Durch weitere Wiederholung der gleichen Segmentierungsoperation kann jedes der Zeichen in jeder Zeichenzeile ermittelt werden.
Claims (8)
1. Gerät zur Ermittlung von Zeichenteilen auf einem
gedruckten Dokument mit Mitteln (12) zum Abtasten des Dokuments
und zum Erzeugen eines Datenstroms, Segmentierungsmitteln
(16) zur Ermittlung der Grenzen zwischen den
aneinandergrenzenden Zeichenteilen in dem Datenstrom mittels
Durchführung von Segmentierungsoperationen in dem Datenstrom
und Erkennungsmitteln (18), die die Ergebnisse der
Segmentierung zur Ermittlung der Zeichenteile in dem
Zeichendatenstrom verwenden,
dadurch gekennzeichnet, daß die Segmentierungsmittel (16)
mit
Mitteln zur Trennung jedes Teils des Datenstroms, der der
Abtastung eines ausgewählten, eindimensionalen Bereichs
des Dokuments in einer Vielzahl von p aneinandergrenzenden
Bitgruppen entspricht, so daß jede Gruppe die gleiche
Anzahl j von Bits enthält,
Mitteln zur Durchführung von ODER-Operationen in allen
Bits in jeder der Gruppen, um so ein Muster zu erzeugen,
das m Bits enthält, wobei m eine Ganzzahl größer als eins
ist und wo jedes i-th Bit in dem Muster dem Ergebnis einer
ODER-Operation entspricht, die zwischen den Bits i, i+m,
i+2m . . . (i+(pj-m) des eindimensionalen Bereichs, d. h.
jedem m-th Bit ausgehend von dem i-th Bit durchgeführt
wurde, wobei 0≤i< m ist;
Mittel zum Zählen der Anzahl von Bits in dem Muster, das
das Vorhandensein von einem Zeichenteil repräsentiert,
Summenmittel zum Summieren der Zählungen für eine Anzahl
von Mustern, die einer zuvor ausgewählten Anzahl von
aneinandergrenzenden Bereichen des Dokuments entsprechen,
und
Mittel zur Ermittlung der Ergebnisse aus den
Summenoperationen enthalten, in denen die abgetasteten Bereiche die
Grenzen zwischen aneinandergrenzenden Zeichenteile auf dem
Beleg repräsentieren.
2. Gerät wie in Anspruch 1 dadurch gekennzeichnet, daß die
Mittel zur Durchführung der ODER-Operationen auf allen
Bits in jeder Gruppe die Operationen in Stufen
durchführen, die als Teilmengen der Bits in jeder Stufe operieren.
3. Gerät wie in irgendeinem der vorhergehenden Ansprüche
dadurch gekennzeichnet, daß die Summenmittel die Zählungen
für Muster entsprechend der Abtastung einer zuvor
ausgewählten Anzahl von aneinandergrenzenden Zeilen summieren,
die parallel zu der Abtastrichtung verlaufen.
4. Gerät wie in irgendeinem der Ansprüche 1 oder 2 dadurch
gekennzeichnet, daß die Summenmittel die Zählungen für die
Muster entsprechend der Abtastung einer zuvor ausgewählten
Anzahl von aneinandergrenzenden Zeilen summieren, die
senkrecht zu der Abtastrichtung verlaufen.
5. Ein Verfahren zur Ermittlung von Zeichenteilen auf einem
gedruckten Dokument, das das Abtasten des Dokuments und
die Erzeugung eines Zeichendatenstroms enthält, die
Ermittlung der Grenzen zwischen aneinandergrenzenden
Zeichenteilen in dem Datenstrom mittels Durchführung von
Segmentierungsoperationen in dem Datenstrom enthält und die
Ergebnisse der Segmentierungsoperationen verwendet, um die
Zeichenteile in dem Zeichendatenstrom zu ermitteln,
dadurch gekennzeichnet, daß die Segmentierungsoperation
die Trennung jedes Teils des Datenstroms enthält, der der
Abtastung eines ausgewählten, eindimensionalen Bereichs
des Dokuments in einer Vielzahl von p aneinandergrenzenden
Bitgruppen entspricht, so daß jede Gruppe die gleiche
Anzahl j von Bits enthält,
die Durchführung von ODER-Operationen in allen Bits in
jeder der Gruppen enthält, um so ein Muster zu erzeugen, das
m Bits enthält, wobei m eine Ganzzahl größer als eins ist
und wo jedes i-th Bit in dem Muster dem Ergebnis einer
ODER-Operation entspricht, die zwischen den Bits i, i+m,
i+2m . . . (i+(pj-m) des eindimensionalen Bereichs, d. h.
jedem m-th Bit ausgehend von dem i-th Bit durchgeführt
wurde, wobei 0≤i< m ist;
das Zählen der Anzahl von Bits in dem Muster enthält, das
das Vorhandensein von einem Zeichenteil repräsentiert,
das Summieren der Zählungen für eine Anzahl von Mustern
enthält, die einer zuvor ausgewählten Anzahl von
aneinandergrenzenden Bereichen des Dokuments entsprechen, und
die Ermittlung der Ergebnisse aus den Summenoperationen
enthalten, in denen die abgetasteten Bereiche die Grenzen
zwischen aneinandergrenzenden Zeichenteile auf dem Beleg
repräsentieren.
6. Ein Verfahren wie in Anspruch 5 dadurch gekennzeichnet,
daß der Schritt zur Durchführung der ODER-Operationen auf
allen Bits in jeder Gruppe die Operationen in Stufen
durchführt, die als Teilmengen der Bits in jeder Stufe
operieren.
7. Ein Verfahren wie in Anspruch 5 oder 6 dadurch
gekennzeichnet, daß die Summenmittel die Zählungen für Muster
entsprechend der Abtastung einer zuvor ausgewählten Anzahl
von aneinandergrenzenden Zeilen summieren, die parallel zu
der Abtastrichtung verlaufen.
8. Ein Verfahren wie in Anspruch 5 oder 6 dadurch
gekennzeichnet, daß die Summenmittel die Zählungen für die
Muster entsprechend der Abtastung einer zuvor ausgewählten
Anzahl von aneinandergrenzenden Zeilen summieren, die
senkrecht zu der Abtastrichtung verlaufen.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61122414A JPH0731714B2 (ja) | 1986-05-29 | 1986-05-29 | 文字成分切出し方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3787206D1 DE3787206D1 (de) | 1993-10-07 |
DE3787206T2 true DE3787206T2 (de) | 1994-04-21 |
Family
ID=14835224
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE87107234T Expired - Fee Related DE3787206T2 (de) | 1986-05-29 | 1987-05-19 | Gerät und Verfahren zur Ermittlung von Zeichenteilen auf einem gedruckten Dokument. |
Country Status (4)
Country | Link |
---|---|
US (1) | US4776024A (de) |
EP (1) | EP0248262B1 (de) |
JP (1) | JPH0731714B2 (de) |
DE (1) | DE3787206T2 (de) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5144682A (en) * | 1987-03-05 | 1992-09-01 | Ricoh Company, Ltd. | Method and an apparatus for isolating an area corresponding to a character or word |
US4901365A (en) * | 1988-12-19 | 1990-02-13 | Ncr Corporation | Method of searching binary images to find search regions in which straight lines may be found |
US5073857A (en) * | 1989-06-01 | 1991-12-17 | Accuron Corporation | Method and apparatus for cell analysis |
US5077806A (en) * | 1989-06-01 | 1991-12-31 | Accuron Corporation | Machine vision analysis apparatus |
US4963719A (en) * | 1989-11-01 | 1990-10-16 | Spectra-Physics | Bar code scanner and method of scanning |
CA2034617C (en) * | 1990-01-19 | 1996-12-31 | Masayuki Kimura | Data processing system |
US4992650A (en) * | 1990-03-29 | 1991-02-12 | International Business Machines Corporation | Method and apparatus for barcode recognition in a digital image |
CA2049866C (en) * | 1990-12-28 | 1998-06-30 | Raymond L. Higgins | System and method for optical recognition of bar-coded characters |
US5172422A (en) * | 1991-05-13 | 1992-12-15 | Eastman Kodak Company | Fast character segmentation of skewed text lines for optical character recognition |
US5335290A (en) * | 1992-04-06 | 1994-08-02 | Ricoh Corporation | Segmentation of text, picture and lines of a document image |
US5680479A (en) * | 1992-04-24 | 1997-10-21 | Canon Kabushiki Kaisha | Method and apparatus for character recognition |
US5633957A (en) * | 1994-09-16 | 1997-05-27 | Compaq Computer Corporation | Method and apparatus for determining positional guidelines of handwritten data |
US5692069A (en) * | 1995-03-17 | 1997-11-25 | Eastman Kodak Company | Apparatus for performing character segmentation using slant histograms |
US5956468A (en) * | 1996-07-12 | 1999-09-21 | Seiko Epson Corporation | Document segmentation system |
US10846553B2 (en) * | 2019-03-20 | 2020-11-24 | Sap Se | Recognizing typewritten and handwritten characters using end-to-end deep learning |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE1524407C3 (de) * | 1966-06-15 | 1975-07-03 | Ibm Deutschland Gmbh, 7000 Stuttgart | Verfahren zur maschinellen Zeichenerkennung mittels Lichtpunktabtastung |
US3432673A (en) * | 1967-10-06 | 1969-03-11 | Control Data Corp | Line tracking reading machine having means to positionally normalize the character-video signals |
US3629826A (en) * | 1970-01-02 | 1971-12-21 | Ibm | Sectioning apparatus and method for character recognition systems |
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 |
JPS6043555B2 (ja) * | 1980-02-26 | 1985-09-28 | 株式会社トキメック | 印字文字切出し装置 |
US4377803A (en) * | 1980-07-02 | 1983-03-22 | International Business Machines Corporation | Algorithm for the segmentation of printed fixed pitch documents |
NL183790C (nl) * | 1980-11-21 | 1989-01-16 | Nederlanden Staat | Werkwijze voor karaktersegmentatie. |
-
1986
- 1986-05-29 JP JP61122414A patent/JPH0731714B2/ja not_active Expired - Fee Related
-
1987
- 1987-05-19 EP EP87107234A patent/EP0248262B1/de not_active Expired - Lifetime
- 1987-05-19 DE DE87107234T patent/DE3787206T2/de not_active Expired - Fee Related
- 1987-05-21 US US07/052,814 patent/US4776024A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH0731714B2 (ja) | 1995-04-10 |
JPS62281085A (ja) | 1987-12-05 |
US4776024A (en) | 1988-10-04 |
DE3787206D1 (de) | 1993-10-07 |
EP0248262A3 (en) | 1990-08-22 |
EP0248262B1 (de) | 1993-09-01 |
EP0248262A2 (de) | 1987-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3716787C2 (de) | ||
DE3689416T2 (de) | Mustermerkmalextraktion. | |
DE3787206T2 (de) | Gerät und Verfahren zur Ermittlung von Zeichenteilen auf einem gedruckten Dokument. | |
DE2909153C2 (de) | Einrichtung zur digitalen Analyse von Bild- oder Zeichenmustern | |
DE69033484T2 (de) | Identifizierung und Segmentierung von feintexturierten und festen binären Bildern | |
DE3440377C2 (de) | ||
DE68907383T2 (de) | Verfahren und Anordnung zur Umsetzung von Umrissdaten in Rasterdaten. | |
DE2558498C2 (de) | Vorrichtung zur Darstellung von aus Bildpunkten zusammengesetzten Zeichen | |
DE3633743C2 (de) | ||
DE3788257T2 (de) | Bilddrehungsverfahren. | |
DE68926890T2 (de) | Bildvergrösserung | |
DE69032421T2 (de) | Verfahren und Gerät zur Dokumentschräglage-Ermittlung | |
DE68915950T2 (de) | Verfahren zum Trennen von Zeichen. | |
DE69425084T2 (de) | Verfahren und Gerät zur Erkennung von Textzeilen, Wörtern und räumlichen Merkmalen von Zeichenzellen | |
DE69421117T2 (de) | Gerät zur Bildinformationsverarbeitung und -wiedergabe | |
DE1549930C3 (de) | Einrichtung zum Erkennen vorzugsweise handgeschriebener Schriftzeichen | |
DE19814075B4 (de) | Verfahren zum Abtasten und Erkennen mehrerer Fotografien und zum Beseitigen von Randfehlern | |
DE69027902T2 (de) | Graphische Skalierungsverfahren für hochauflösende Drucker | |
DE3615906C2 (de) | ||
DE4007021C2 (de) | ||
DE3415470A1 (de) | Geraet und verfahren zum codieren und speichern von rasterabtastbildern | |
DE3326725A1 (de) | Verfahren zur datenkomprimierung fuer zweidimensionale zeichenbilder | |
DE69231049T2 (de) | Bildverarbeitung | |
EP0301384B1 (de) | Schaltungsanordnung zur Aufbereitung von schrägstehenden, insbesondere handgeschriebenen Zeichen | |
DE69117100T2 (de) | Verfahren und Gerät zur Erzeugung von ein integriertes Bild darstellenden Bilddaten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |