Die Erfindung betrifft ein Verfahren zum Korrigieren der
Schräge eines Vorlagenbildes nach dem Oberbegriff des An
spruchs 1 und eine Einrichtung zur Durchführung des Ver
fahrens, sowie ein Vorlagensegmentierungssystem nach dem
Oberbegriff des Anspruchs 10. Insbesondere betrifft die Er
findung das Gebiet der Zeichenerkennungssysteme, und insbe
sondere ein Verfahren zum Bestimmen und Identifizieren eines
Winkels einer Schräge und dessen Korrektur in Verbindung mit
einer Vorlagensegmentierung.
Bei einer optischen Zeichenerkennung wird eine Textdatei
auf einem Computersystem von einer gedruckten Vorlagenseite
angelegt. Die angelegte Textdatei kann durch eine Textauf
bereitung oder eine Wortverarbeitung auf dem Computersystem
behandelt werden. Da eine Vorlagenseite sich sowohl aus Text
als auch aus Bildern zusammensetzen und der Text in Spalten,
wie beispielsweise in einem Zeitungs- oder einem Zeitschrif
tenartikel, vorliegen kann, ist ein wichtiger Schritt vor ei
ner Zeichenerkennung eine Vorlagensegmentierung. Eine Vorla
gensegmentierung ist das Erkennen bzw. Identifizieren von
verschiedenen Text-, Bild- und Zeilensegmentteilen des Vorla
genbildes. Wenn nur die Textteile des Vorlagenbildes in eine
Textdatei umgesetzt werden können, ist es wünschenswert, die
Zeichenerkennung nur auf Bereiche der Vorlage zu beschränken,
welche Text aufweisen und eine Reihenfolge zu schaffen, durch
welche diese Textteile in eine Textdatei eingefügt werden.
Ein Ordnen von Textdateien ist wünschenswert, um die Erstel
lung von Textdateien zu vermeiden, die logisch nicht der ur
sprünglichen Vorlage entsprechen würden. Solche Textdateien
würden von geringem Wert sein.
Ein schwieriges Problem, mit dem man bei allen Vorlagenseg
mentierungssystemen konfrontiert wird, ist das Schrägenprob
lem bzw. die Schwierigkeit aufgrund einer schrägen Darstellung.
Zu einer sogenannten Schräge kommt es, wenn die Darstellung
einer Vorlage horizontale Textzeilen auf dem tatsächlichen
Seitenbild Vorlage nicht richtig wiedergibt. Eine solche
Schräge muß vor einer Zeichenerkennung des Vorlagenbildes kor
rigiert werden. Eine Schrägenkorrektur erfordert im allgemei
nen die Bestimmung eines Schrägenwinkels und eine Modifika
tion einer Vorlagenbilddarstellung auf der Basis des Schrä
genwinkels. Hinsichtlich der Bestimmung eines Schrägenwinkels
basiert ein erstes bekanntes Verfahren auf der Hough-Trans
formation. Bei der Hough-Transformation wird das als digita
les Muster gespeicherte Bild der Vorlage in einen Polarkoor
dinaten-Raum transformiert. Durch Erkennen und Identifizieren
des maximalen Wertes in der Polarkoordinate wird der Schrä
genwinkel direkt aus dem Polarwinkel erhalten.
Das Hough-Transformationsverfahren erfordert eine extensive
Berechnungszeit, und es hat sich herausgestellt, daß es be
züglich des Schrägenwinkels nicht hinreichend empfindlich ge
nug ist.
Ein zweites bekanntes Verfahren ist in dem Artikel "The Skew
Angle of Printed Documents", H.S. Baird, Proceeding SPSE 40th
Conference Symposium Hybrid Imaging Systems, Rochester, New
York, May 1987, Stn. 21 bis 24 beschrieben. Bei diesem Verfah
ren wird nach einer zweidimensionalen Fourier-Transformation
des ursprünglichen Vorlagenbildes dieses wieder in Polar-
Koordinaten projiziert. Das Maximum der projizierten Werte
ergibt dann den Schrägenwinkel. Mit diesem Verfahren ist eine
hohe Genauigkeit von bis zu 2 Bogenminuten erreichbar, aber
es erfordert wiederum eine sehr umfangreiche Bearbeitungszeit.
Gemäß der Erfindung soll daher eine Schrägenbestimmungs- und
Korrektureinrichtung und ein entsprechendes Verfahren ge
schaffen werden, welches genau ist und Systemresourcen wirk
sam ausnutzt.
Es ist ein Verfahren und eine Einrichtung zum Bestimmen und
Korrigieren einer Schräge in einem Vorlagenbild beschrieben.
Ein Korrigieren der Schräge erfordert die Berechnung eines
Schrägenwinkels. Ein Schrägenwinkel wird genau in weniger
Berechnungszeit bestimmt, da die Bestimmung auf einer Daten
darstellung eines Vorlagenbildes basiert, d. h. in Rechtecken
und nicht in tatsächlichen Pixel-Daten. Bei Vernachlässigen
von Nahrechtecken zeigt der dektierte Winkel eine scharfe
Spitze und einen hohen Genauigkeitsgrad.
Bei einer Schrägenwinkel-Bestimmung gemäß der Erfindung wer
den im allgemeinen die folgenden Schritte durchgeführt,
Erzeugen einer Gruppe von zugeordneten Rechtecken, welche das
Vorlagenbild darstellen, Identifizieren bzw. Erkennen eines
Spaltenrandes, welcher der Gruppe von zugeordneten Rechtecken
zugeordnet ist, Vergleichen von Rechtecken aus der Gruppe
zugeordneter Rechtecke, um diejenigen zu erkennen und zu identi
fizieren, welche sich in derselben oder entsprechend weit
entfernt davon befinden, Berechnen eines Tangentialwinkels
zwischen den erkannten Rechtecken und Erkennen bzw. Identifi
zieren des häufigsten Tangentialwinkels als den Schrägen
winkel.
Bei einer Schrägenkorrektur mit Hilfe des Schrägenwinkels
gemäß der Erfindung werden im allgemeinen folgende Schritte
durchgeführt, Bilden von tatsächlichen schrägen Rechtecken
aus entsprechenden extrahierten Rechtecken und Drehen jedes
der tatsächlichen, schrägen Rechtecken um einen Ursprung auf
der Basis des Schrägenwinkels.
Nachfolgend wird die Erfindung anhand von bevorzugten Ausfüh
rungsformen unter Bezugnahme auf die anliegenden Zeichnungen
im einzelnen erläutert. Es zeigen:
Fig. 1a ein Computersystem, das mit einem Scanner verbun
den ist und so in Verbindung mit dem Zeichenerken
nungssystem in einer Ausführungsform der Erfindung
verwendet werden kann;
Fig. 1b im einzelnen einen Host-Computer, wie er in Fig.
1a dargestellt und von dem Zeichenerkennungssystem
in einer weiteren Ausführungsform der Erfindung
benutzt werden kann;
Fig. 2a ein Grenzbereich-Rechteck für ein Textwort, wie es
von einer Ausführungsform der Erfindung benutzt
wird;
Fig. 2b ein Grenzbereich-Rechteck für einen Textsatz, wie
es von einer Ausführungsform der Erfindung benutzt
wird;
Fig. 2c ein Flußdiagramm der Schritte für eine Vorlagenseg
mentierung in einer Ausführungsform der Erfindung;
Fig. 3 ein Komprimieren von Abtastzeilen, wie es in einer
Ausführungsform der Erfindung durchgeführt worden
ist;
Fig. 4 ein Verfahren zur Lauflängen-Extraktion aus
einer komprimierten Abtastzeile, wie es in einer
Ausführungsform der Erfindung durchgeführt werden
kann;
Fig. 5 ein Verfahren bezüglich einer Rechteckkonstruktion
aus vorhergehenden und laufenden komprimierten
Abtastzeilen, wie es in einer Ausführungsform der
Erfindung durchgeführt werden kann;
Fig. 6 ein Flußdiagramm von Schritten für eine Schrägen
winkel-Detektion, wie sie in einer Ausführungsform
der Erfindung durchgeführt werden kann;
Fig. 7 eine Histogrammdarstellung zum Identifizieren
eines Spaltenrands, wie sie in einer Ausführungs
form der Erfindung benutzt werden kann;
Fig. 8a einen tangentialen (Schrägen-) Winkel zwischen
zwei Rechtecken, was durch eine Ausführungsform
der Erfindung umgesetzt worden ist;
Fig. 8b eine Histogrammdarstellung zum Erkennen und Iden
tifizieren eines Schrägenwinkels aus einer Sammlung
von gemessenen Tangentialwinkeln, wie es in einer
Ausführungsform der Erfindung benutzt werden kann;
Fig. 9a eine Beziehung zwischen einem realen, positiv
schrägen Rechteck und einem nicht-schrägen, ex
trahierten Rechteck, was von einer Ausführungsform
der Erfindung ausgewertet worden ist;
Fig. 9b eine Beziehung zwischen einem realen, negativ
schrägen Rechteck und einem nicht-schrägen, ex
trahierten Rechteck, was durch eine Ausführungs
form der Erfindung ausgewertet worden ist;
Fig. 10a bis 10b Vermischen von Textblöcken in einem Bild
rechteck, das in einer Ausführungsform der Er
findung durchgeführt werden kann;
Fig. 11 ein Flußdiagramm eines Verfahrens zum Ordnen von
Textblöcken, das von einer Ausführungsform der Er
findung benutzt werden kann;
Fig. 12 ein Vorlagenbild, das aus Textblöcken besteht, und
wie sie in einer Ausführungsform der Erfindung ge
ordnet werden würden;
Fig. 13 ein Beispiel einer Seite eines Vorlagentextes,
welcher gemäß einer Ausführungsform der Erfindung
segmentiert wird;
Fig. 14 eine Darstellung der Vorlagenseite der Fig. 13 als
ein Satz von extrahierten Rechtecken, wie sie durch
eine Ausführungsform der Erfindung geschaffen sind;
Fig. 15 eine entschrägte Darstellung der Vorlagenwieder
gabe der Fig. 14, was mittels einer Ausführungs
form der Erfindung erreicht ist;
Fig. 16 eine Darstellung der Vorlagenseite der Fig. 13,
in welcher Rechtecke klassifiziert worden sind
und Textzeilen vermischt worden sind, gemäß einer
bevorzugten Ausführungsform der Erfindung, und
Fig. 17 eine Darstellung der Vorlagenseite der Fig. 13,
wobei Textblöcke mit Hilfe einer Ausführungsform
der Erfindung gemischt und geordnet worden sind.
Die Erfindung ist als Teil eines Vorlagensegmentierungssystems
ausgeführt und sie stellt ein Verfahren und eine Einrichtung
zum Korrigieren der Schräge in einem Vorlagenbild dar. In der
folgenden Beschreibung werden zum besseren Verständnis der
Erfindung spezifische Einzelheiten wie Datenstrukturen darge
stellt. Selbstverständlich kann jedoch die Erfindung auch
ohne solche spezifischen Einzelheiten in der Praxis durchge
führt werden. In anderen Fällen sind allgemein bekannte
Komponenten, welche sich mit der jeweiligen Ausführungsform
verknüpfen lassen, wie beispielsweise Bildabtasttechniken oder
eine Zeichenerkennung, im einzelnen nicht beschrieben worden,
um das Verständnis der Erfindung nicht unnötig zu erschweren.
Das Vorlagensegmentierungssystem einer Ausführungsform wird
in der Praxis im Rahmen eines optischen Zeichenerkennungssy
stems durchgeführt. Ein solches optisches Zeichenerkennungs
system kann in drei Grundteile aufgeteilt werden, nämlich
einen Abtastteil, einen Segmentierungsteil und einen Zeichen
erkennungsteil. Der Abtastteil, üblicherweise ein optischer
Abtaster, erzeugt eine als digitales Muster gespeicherte Dar
stellung eines Vorlagenbildes. Das als digitales Muster ge
speicherte Bild ist eine Darstellung der Vorlage in Form ei
nes Satzes von logischen Bitwerten, welche mittels einer ent
sprechenden Verarbeitungseinrichtung interpretiert und behan
delt werden können. Solche Abtasteinrichtungen sind im Han
del erhältlich und erzeugen verschiedene Abtastauflösungen,
z. B. 120 Pkte/cm (300 DPI). Hierbei ist eine Abtastauflösung
ein Parameter zum Festsetzen bestimmter Schwellenwerte, wel
che in dem Vorlagensegmentierungsverfahren verwendet worden
sind. Eine Zeichenerkennung in dem Zeichenerkennungsteil ist
das Interpretieren bzw. Wiedergeben der als digitale Muster
gespeicherten Darstellungen in die entsprechenden Zeichen
oder Symbole. Es sind bereits verschiedene Methoden für eine
Zeichenerkennung bekannt, einschließlich einer Formenanpassung
und einer Formanalyse. Bekanntlich erfordert jedoch eine Zei
chenerkennung eine extensive Verarbeitungszeit.
Schließlich ist eine Vorlagensegmentierung die Identifizie
rung und Klassifizierung von verschiedenen, eindeutigen
Blöcken in dem Vorlagenbild. Eine Vorlagensegmentierung ba
siert auf einer Analyse der als digitales Muster gespeicherten
Darstellung des Bildes. Eine Vorlagensegmentierung ist wich
tig, da sie Bereiche auf einer Vorlage, welche Text sind,
von solchen unterscheidet, welche ein Bild (oder kein Text)
sind. Das Vorlagensegmentierungssystem der erfindungsgemäßen
Ausführungsform schafft Koordinatenadressen in dem Testbild,
wodurch Textblöcke in dem Zeichenerkennungsteil identifiziert
werden. Hierdurch kann dann der Zeichenerkennungsteil dieje
nigen Teile des Vorlagenbildes übergehen, welche kein Text
sind. Hierdurch wird in vorteilhafter Weise die Datenmenge
verringert, welche von dem Zeichenerkennungsteil bearbeitet
werden muß.
Ein Computersystem, welches eine optische Zeichenerkennung
durchführt, ist in Fig. 1a dargestellt. Ein solches optisches
Zeichenerkennungssystem weist einen Scanner 101, einen Host-
Computer 102 mit einer Zentraleinheit (CPU), einem Speicher
und einer Anzeigeeinheit 103 und eine Eingabeeinrichtung, wie
ein Tastenfeld 106, auf. Eine als digitales Muster gespeicher
te Darstellung einer Vorlage wird mittels des Scanners 101
erzeugt. Nachdem der Zeichenerkennungsprozeß beendet ist,
ist eine Textdatei angelegt worden und in einer Text-Daten
bank 104 sichergestellt worden, welche mit dem Host-Computer
102 verbunden ist. Die Anzeigeeinheit 103 wird verwendet, um
die Ergebnisse der Segmentierung zu überprüfen. Ferner ist in
Fig. 1a eine Bild-Datenbank 105 dargestellt. Zu beachten ist,
daß in der Ausführungsform die Teile, welche als Text erkannt
worden sind, in der Text-Datenbank 104 interpretiert und
gespeichert werden sollten, während die Teile, welche als
Bild erkannt worden sind, in der Bild-Datenbank 105 gespei
chert werden könnten.
In Fig. 1b ist der Host-Computer 102 der Fig. 1a im einzelnen
dargestellt. Der in Fig. 1b dargestellte Host-Computer weist
einen Bus oder eine andere Übertragungseinrichtung 110 zum
Übertragen von Informationen, eine Verarbeitungseinrichtung
111, beispielsweise eine mit dem Bus 110 verbundene Zentral
einheit (CPU) zum Bearbeiten von Informationen, einen Random
speicher (RAM) oder eine andere Speichereinrichtung 112 (die
im allgemeinen als ein Hauptspeicher bezeichnet wird), welche
mit dem Bus 110 zum Speichern von Information und Befehlen
für die Zentraleinheit 111 verbunden ist, einen Festwertspei
cher (ROM) oder eine andere statische Speichereinrichtung 113
auf, welche mit dem Bus 110 verbunden ist, um statische In
formation und Befehle für die Zentraleinheit 111 zu spei
chern. Die Zentraleinheit 11 wird dazu verwendet, um die
Segmentierungs- und Klassifizierungsfunktionen oder Ausfüh
rungsform bei der als digitales Muster dargestellten Wieder
gabe der Vorlage anzuwenden. Wie später noch im einzelnen be
schrieben wird, enthalten solche Funktionen eine Abtastzei
len-Kompression, eine Lauflängen-Extraktion und -Klassifi
kation, eine Rechteckkonstruktion und -Klassifikation, eine
Schrägen-Detektion und-Korrektur, ein Rechteckmischen und ein
Textblock-Ordnen.
Ferner ist mit dem Bus 110 ein Datenspeicher 114, wie ein
magnetischer oder optischer Plattenspeicher, und ein Platten
laufwerk verbunden. Der Datenspeicher 114 wird zum Speichern
von Befehlen, Parameter- und Rechteckinformation sowie
anderer Daten verwendet und schließt die Text-Datenbank 104
und die Bild-Datenbank 105 ein, welche anhand von Fig. 1a be
schrieben worden sind und bei dem Segmentierungsverfahren ge
mäß dieser Ausführungsform verwendet sind.
Bei dem erfindungsgemäßen Verfahren wird ein Grenzbereich-
Rechteck zum Beschreiben der Merkmale einer Vorlage verwendet.
Ein Grenzbereich-Rechteck legt die Grenzen eines Musters, bei
spielsweise eines Wortes, fest. In Fig. 2a stellt ein Rechteck
220 eine räumliche Grenze für das Wort "house" 221 dar. In
Fig. 2b stellt ein Rechteck 230 eine räumliche Grenze für den
Satz 231 "The house is white". Eine Heuristik oder Kenndaten
sind vorgesehen, welche vorschreiben, wie Rechtecke bearbeitet
werden.
Das gesamte Verfahren einer Bild-Segmentierung und -Klassifi
zierung ist in Fig. 2c dargestellt. Jeder der in Fig. 2 darge
stellten Schritte wird nachstehend kurz und später im ein
zelnen beschrieben. In Fig. 2 ist eine als digitales Muster
gespeicherte Darstellung der Vorlage vorgesehen (Schritt 201).
Bekanntlich kann dies von dem Scanner 101 der Fig. 1a aus oder
über irgendwelche andere Einrichtungen geschaffen werden, die
eine als digitales Muster gespeicherte Darstellung einer Vor
lage schaffen. Da Methoden zum Erzeugen der als digitales Mu
ster gespeicherten Darstellung der Vorlage bekannt sind, wird
eine weitere Erläuterung einer solchen Erzeugung einer als
digitales Muster gespeicherten Darstellung einer Vorlage als
nicht notwendig erachtet. Bekanntlich besteht vorzugsweise
die als digitales Muster gespeicherte Darstellung auf Abtast
zeilen, welche Teilen des Bildes entsprechen. Folglich setzt
sich die gesamte Darstellung aus einer vorherbestimmten Anzahl
von Abtastzeilen zusammen, üblicherweise entsprechend der
Auflösung der Abtasteinrichtung, welche die als digitale Mu
ster gespeicherten Darstellungen erzeugt. Auf jeden Fall wird
die Darstellung der Vorlage dahin verdichtet (Schritt 202).
Dies bedeutet, daß die Datenmenge, welche zum Darstellen der
Vorlage verwendet wird, im allgemeinen durch eine wirksamere
Darstellung von redundanten Daten verringert wird. Tatsächlich
bedingen die weniger Daten, die zu verarbeiten sind, daß ein
kleinerer Systemspeicher und weniger Verarbeitungszeit erfor
derlich sind. Der Ausgang beim Schritt 202 ist ein Sammeln
von komprimierten Abtastzeilen.
Aus den komprimierten Abtastzeilen werden Lauflängen extra
hiert und klassifiziert (Schritt 203). Lauflängen sind auf
einanderfolgende schwarze Pixels auf einer Abtastzeile. Hin
sichtlich der als digitales Muster gespeicherten Darstellung
sind Lauflängen aufeinanderfolgende Bits, die einen logischen
Weht eins haben. In Abhängigkeit von Schritt 203 erfolgt eine
Rechteckkonstruktion und eine anfängliche Klassifikation
(Schritt 204). Wie vorstehend beschrieben, gibt es Rechtecke,
welche verwendet werden, um eindeutige Blöcke der Vorlage zu
identifizieren. Bekanntlich werden die Rechtecke anfangs erst
klassifiziert, wenn sie abgelegt werden. Sobald alle Rechtecke
abgelegt und anfangs klassifiziert worden sind, ist festge
legt worden, daß bestimmte Rechtecke als vertikale Zeilen feh
lerhaft klassifiziert sind. Folglich müssen bestimmte verti
kale Zeilen, welche klassifiziert wurden, erneut klassifiziert
werden (Schritt 205). Der Schritt 205 kann auch mit dem
Schritt 204 verschmolzen werden; jedoch erlaubt ein Trennen
in zwei Schritte eine wirksamere Verarbeitung.
Als nächstes werden eine Schrägendetektion und Schrägen
winkel-Berechnung durchgeführt (Schritt 206). Ein Bewerten
der Schräge auf der Vorlage folgt durch Analysieren der Ob
jekte (d. h. Rechtecke), welche Worte darstellen. Dies wird in
einer frühen Stufe des Mischprozesses durchgeführt. Eine Be
wertung der Schräge ist nicht nur bei dem Segmentierungsvor
gang, sondern auch bei irgendeinem anderen Prozeß wichtig,
welcher angewendet werden kann, um auf derselben Kopie des
Bildes zu arbeiten, die beispielsweise der Zeichenerkennungs
prozeß. Sobald eine Schräge festgestellt und ein Schrägenwin
kel berechnet worden ist, wird eine Schrägen-Korrektur an den
Rechtecken, welche die Merkmale der Vorlage beschreiben,
durchgeführt (Schritt 207).
Nachdem die Vorlagendarstellung bezüglich einer Schräge korri
giert worden ist, müssen irgendwelche falsch erkannten Recht
ecke auf der Basis von einigen heuristischen Daten wieder
klassifiziert werden (Schritt 208). Hierzu werden Merkmale
der Rechtecke mit einem vorherbestimmten Satz Regeln ver
glichen. Sobald die erneute Klassifizierung beendet ist, wer
den zugeordnete Textrechtecke zusammengelegt, um Textblöcke zu
bilden (Schritt 209). Wie beim Schritt 209, werden die zuge
ordneten Rechtecke vorher als "UNBEKANNT" identifiziert. Diese
Textblöcke sind üblicherweise Textspalten, welche auf der
Vorlage durch Bilder getrennt sein können. Als weiterer Schritt
werden Textrechtecke in Bildbereichen zusammengelegt (Schritt
210). Schließlich werden die Textblöcke logisch geordnet
(Schritt 211). Es ist wünschenswert, Textblöcke logisch zu
ordnen, um das Erstellen einer Textdatei mit Text in einer
Reihenfolge, welche dem Layout der Vorlage entspricht, zu
erleichtern.
Durch dieses Vorlagen-Segmentierungsverfahren, wie es bei
dem ausgeführten Computersystem in der Praxis angewendet
ist, wird die Verwendung eines Systemspeichers minimiert,
während gleichzeitig eine hohe Verarbeitungsgeschwindigkeit
erhalten wird. Ferner bleibt bei diesem Verfahren eine sehr
hohe Genauigkeit für eine Vorlagensegmentierung und eine Be
reichsklassifizierung erhalten. Das gesamte Verfahren für eine
Vorlagensegmentierung kann als Benutzen einer Bottom-up-Lö
sung beschrieben werden. Zuerst wird die als digitales Muster
gespeicherte Darstellung auf einen Datensatz verringert, wel
cher ungeschützte wesentliche Merkmale der Vorlage enthält.
Objekte (Lauflängen und Rechtecke) werden dann aus dem redu
ziertem Vorlagenbild extrahiert, indem inkrementell ver
mischt wird, wobei von dem Grundpegel von Gruppen benachbar
ter schwarzer Pixels ausgegangen wird, und zu Objekten durch
gearbeitet wird, welche Textspalten, Bilder, Zeilen, usw. dar
stellen. Eine Klassifikation von Objekten kommt während des
ganzen Verschmelzungsprozesses vor.
In spezifischen Bereichen des Verfahrens, nämlich bei einer Recht
eck-Klassifizierung, einem Verschmelzen und einem Block-Ord
nen wird ein Top-Down-Verfahren angewendet. Eine Regelbasis,
die aus bekannter Heuristik eines Seitenlayouts für übliche
Vorlagen ausgelegt worden ist, wird verwendet. In der engli
schen Sprache werden beispielsweise Worte verknüpft, um Ob
jekte zu bilden, welche als Zeilen bekannt sind; Zeilen wer
den verknüpft, um Objekte zu bilden, welche als Spalten be
kannt sind; Blöcke in Spalten werden von oben nach unten ge
ordnet, und Spalten werden von links nach rechts geordnet.
Es ist wichtig, daß bei dem Verfahren gemäß der Erfindung
Teile einer Vorlage wirksam klassifiziert werden, welche
Halbtonbilder oder Schriftzeichen sind. Halbtonbilder und
Schriftzeichen werden auf einer Vorlage basierend auf der
Größe der erzeugten Rechtecke in einem entsprechenden Teil
der Vorlage identifiziert. Die verwendete hohe Verdichtung
bedeutet, daß feine Details zusammengelegt werden. Da Lauf
längen-Größenverteilungen in Rechteck-Randbereichen enthalten
sind, kann eine Klassifizierung auf der Basis der Rechteck-
Randgröße und der Kenndaten der Lauflängen-Größenverteilungen
vorgenommen werden.
Die Verdichtung der als digitales Muster gespeicherten Dar
stellung der Vorlage für Segmentierungszwecke erleichtert ein
schnelleres Verarbeiten. Die Verdichtungstechnik dieser Aus
führungsform bewirkt eine Reduzierung von vier zu eins in der
tatsächlichen Menge, die zum Darstellen der Vorlage verwendet
ist. Jedoch wird eine Reduzierung von 32 zu 1 in der
Datenmenge erreicht, die verarbeitet werden muß. Die Technik
basiert auf einem Verknüpfen von vier (4) horizontalen Abtast
zeilen zu einer verdichteten bzw. komprimierten Abtastzeile
mit Hilfe eines logischen bitweisen ODER-Operators. In dieser
Ausführungsform bezieht sich eine Abtastzeile auf eine Bit
reihe, welche Bildelemente (Pixels) des Bildes darstellt, das
sich quer über das Bild von links nach rechts erstreckt. Dies
ist der Gegensatz zu einer komprimierten Abtastzeile, bei
welcher ein Byte-Wert einen Pixel-Wert darstellt. Die Anzahl
an Abtastzeilen, die zum Komprimieren ausgewählt worden ist,
d. h. 4, basiert auf Experimentieren. Es ist festgestellt wor
den, daß 120 Punkte/cm (300 Punkte pro Inch (dpi)) die mini
male Auflösung ist, bei welcher eine optische Zeichenerken
nung (ocr) genau durchgeführt werden kann. Daher bedeutet die
Wahl von vier Abtastzeilen, daß bei der minimalen Auflösung
das Verfahren dieser Ausführungsform Vorlagen mit
einem Schriftbild von 6 Punkten verarbeiten kann.
Die Komprimiertechnik hat zwei Komponenten, nämlich ein ver
tikales und ein horizontales Komprimieren. Hierbei sollte
als erstes beachtet werden, daß in der vorliegenden Beschrei
bung bezüglich einer Abtastzeile der Begriff, ein schwarzes
Pixel ein Bit mit einem logischen Wert eins kennzeichnet,
während ein weißes Pixel ein Bit mit einem logischen Wert
null bezüglich einer komprimierten Abtastzeile bezeichnet,
ein schwarzes Pixel einen logischen Wert nicht-null bezeich
net, während ein weißes Pixel ein Byte mit einem Wert null be
zeichnet. Die Grundvoraussetzung für ein vertikales Verdich
ten von Bits ist, daß, wenn ein oder mehrere schwarze Pixels
an derselben Stelle in vier benachbarten Abtastzeilen vor
handen sind, das sich ergebende Pixel als ein schwarzes Pi
xel angesehen wird. Wenn jedoch keine schwarzen Pixels an
derselben Stelle vorhanden sind, dann wird das sich ergebende
Pixel als ein weißes Pixel angesehen. Horizontales Komprimie
ren kommt als ein Ergebnis der Definition eines Pixel-Werts
als ein Byte vor. Hierbei bewirkt das vertikale Komprimieren
eine Anfangskompression von vier zu eins. Die vertikal
verdichteten Daten werden dann durch horizontales Komprimie
ren 8 zu 1 komprimiert, wodurch sich eine effektive Verdich
tung von 32 zu 1 hinsichtlich zu verarbeitender Daten ergibt.
Bezüglich eines Speichers, der zum Speichern des Bildes ver
wendet wird, ist die tatsächliche Verdichtung 4 zu 1.
In Fig. 3 ist eine Abtastzeilen-Kompression in der durchgeführ
ten Ausführungsform dargestellt. In Fig. 3 sind vier Abtast
zeilen 300 bis 303 von der ursprünglichen, unkomprimierten
als digitales Muster gespeicherten Darstellung wiedergegeben.
Hierbei ist zu beachten, daß für jede der Abtastzeilen 300
bis 303 zwei Bytes 304 bis 311 dargestellt werden. Ebenso
sind die sich ergebenden Bytes 312 und 313 in einer vertika
len Kompression dargestellt. Jedes der Bytes 304 bis 311 und
die sich ergebenden Bytes 312 und 313 bestehen aus 8 Bits.
Schließlich ist das Ergebnis einer horizontalen Kompression
jedes der sich ergebenden Bytes 312 und 313 in der kompri
mierten Abtastzeile 314 als Bytes 315 und 316 dargestellt.
Um das sich ergebende Byte 312 zu bilden, wird eine logi
sche ODER-Operation an den entsprechenden Bits in Bytes 304,
305, 308 und 310 durchgeführt. Dieselbe logische ODER-Opera
tion wird an den entsprechenden Bits in den Bytes 305, 307,
309 und 311 durchgeführt, um das sich ergebende Byte 313 zu
bilden. Wenn das sich ergebende Byte 312 schwarze Bits ent
hält, d. h. einen logischen Nicht-Null-Wert haben würde,
stellt das Byte 312 ein schwarzes Pixel in der komprimier
ten Abtastzeile 312 dar. Dies wird als Byte 315 dargestellt.
Wenn ein sich ergebendes Byte 313 keine schwarzen Bits ent
hält, d. h. einen logischen Null-Wert haben würde, stellt
der Byte 312 ein weißes Pixel in der komprimierten Abtast
zeile 314 dar. Dies wird als Byte 316 dargestellt. Obwohl es
nicht dargestellt ist, wird diese Prozedur für jedes der
Bits (oder Bytes) für die Abtastzeilen 300 bis 303 wiederholt.
Ferner ist zu beachten, daß bei dem Verarbeiten, um die kom
primierte Abtastzeile zu bilden, nur ein Systemspeicher zum
Speichern des Äquivalents von drei (3) Abtastzeilen der ur
sprünglichen als digitales Muster gespeicherten Darstellung
erforderlich ist. Ein erster Abtastzeilen-Speicher ist für
eine zu verarbeitende Abtastzeile, der zweite Abtastspeicher
ist als ein Zwischenarbeitsplatz und der dritte Abtastzeilen-
Speicher ist für die verdichtete, sicherzustellende Abtast
zeile vorgesehen.
Das Verfahren erfordert ein Komprimieren auf ein Byte, um
Geschwindigkeitsvorteile zu erhalten, die von der byte-weisen
Verarbeitung kommen. Es kann jedoch auch eine alternative
Ausführungsform geschaffen werden, bei welcher ein Bit-Wert
verwendet wird, um einen Pixel-Wert in den komprimierten Ab
tastzeilen darzustellen. Dies würde natürlich die Modifika
tion von logischen und Datenstrukturen für eine Datendarstel
lung und -behandlung erfordern. Eine solche alternative Aus
führungsform würde ebenfalls im Rahmen der Erfindung liegen.
In der beschriebenen Ausführungsform ist eine Lauflänge als
ein Satz von aneinandergrenzenden, schwarzen Pixels in einer
komprimierten Abtastzeile definiert. Wie vorstehend ausge
führt, wird in einer komprimierten Abtastzeile ein schwarzes
Bildelement durch ein Byte mit einem Nicht-Null-Wert darge
stellt, während ein weißes Pixel durch ein Byte mit einem
Null-Wert dargestellt wird. Zum Definieren einer Lauflänge
spezifiziert ein erstes Element die Stelle des schwarzen Pi
xels, an welcher der Übergang von weiß auf schwarz erfolgt,
und ein zweites Element spezifiziert die Stelle, wo es zu
dem Übergang von schwarz auf weiß kommt. Jede komprimierte
Abtastzeile kann eine oder mehrere Lauflängen haben. Für
jede verdichtete Abtastzeile wird ein Lauflängensatz, welcher
aus Lauflängen-Datensätzen besteht, gebildet.
Eine Datenstruktur für einen Lauflängen-Datensatz, welcher in
der C-Programmiersprache variabel ist, ist in Tabelle A dar
gestellt. Fachleute sind mit solchen Programmiertechniken
vertraut, um die Lauflängenstruktur festzulegen.
In Zeile 1 der Tabelle A ist die Struktur-Definition für
eine mit einem Lauf bezeichnete Struktur. Zeile 2 der Daten
struktur in Tabelle A ist die Definition eines variablen
RECT des Typs *parent RECT (Ausgangs-RECT). Die Datenstruk
tur *parent RECT schließt eine Information ein, welche das
Ausgangsrechteck und eine komprimierte Abtastzeile betrifft,
welche der Lauflänge entspricht. In Zeile 3 ist eine variable
ganze Zahl sx eingetragen, welche die Ausgangsposition der
Lauflänge definiert. In Zeile 4 ist eine veränderliche ganze
Zahl ex eingetragen, welche die Endpositionen der Lauflänge
festlegt. In Zeile 5 ist eine veränderliche ganze Zahl f1
eingetragen, welches ein Flag ist, um den Typ einer Lauflänge
anzuzeigen. Schließlich ist in Zeile 7 ein variabler Lauf (RUN)
definiert, welches der Typ eines Laufs (a RUN) ist. Modifi
kationen dieser Datenstruktur, z. B. ein Zurückhalten der
Anzahl Pixels in der Lauflänge und nicht an der Endposition
könnte im Rahmen der Erfindung ebenfalls benutzt werden.
Wie vorstehend beschrieben, wird ein Lauflängensatz für
jede komprimierte Abtastzeile erzeugt. Ein Lauflängensatz
ist üblicherweise eine Anordnung mit Elementen der Art "a
RUN" (eines Laufs). Alternativ hierzu kann es eine listenge
koppelte Datenstruktur sein, wo es jeweils veränderliche
Punkte zu der nächsten Lauflängenstruktur in dem Satz (der
Liste) gibt.
Der Grundprozeß einer Lauflängen-Extraktion schließt ein Su
chen entlang einer komprimierten Abtastzeile für Folgen von
aneinandergrenzenden schwarzen Pixels ein. Dies erfolgt durch
Prüfen der Bytewerte in der Abtastzeile für logische Nicht-
Null-Werte. Die erste Pixel-Stelle einer derartigen Folge
wird als der Startwert für die Lauflänge gesetzt. Das nächste
weiße Pixel wird dann gesucht, d. h. indem die aufeinanderfol
genden Byte-Werte in der Abtastzeile für einen logischen Null-
Wert geprüft werden. Dies Pixel wird als der Endwert für die
Lauflänge gesetzt. Auf diese Weise werden alle Lauflängen
für eine Abtastzeile extrahiert. Sobald alle Lauflängen für
die Abtastzeile extrahiert sind, wird der Satz als der Satz
Lauflängen bezeichnet, welche in der n-ten Abtastzeile von
der Oberseite der komprimierten, als digitales Muster gespei
cherten Darstellung existieren.
Eine Klassifizierung wird dann auf der Basis der Größe
(Länge in Pixels) der Lauflänge und der Vorlagenbild-Auf
lösung durchgeführt. Die Auflösung hängt von der benutzten
Abtasteinrichtung ab. Die Auflösung muß beachtet werden, da
ein Vorlagenbild mit hoher Auflösung notwendigerweise mehr
Pixels festlegt, als ein Vorlagenbild mit geringer Auflösung.
Ein Nichtbeachten der Auflösung würde die Ausführungsform auf
Scannereinheiten mit einer ganz bestimmten Auflösung beschrän
ken. Wie im einzelnen unten noch beschrieben wird, wird die
Klassifizierung der Lauflänge dazu verwendet, eine Anfangs
klassifizierung von zugeordneten extrahierten Rechtecken vor
zunehmen. Die Klassifizierungsregeln für eine abgetastete Vor
lage mit 120 Pkte./cm (300 dpi) auf der Basis von heuristi
schen Daten sind folgende:
- 1. Zuteilen eines kurzen Lauflängen-Typs, wenn es weni
ger als oder gleich 2 Pixels sind.
- 2. Zuordnen eines langen Lauflängentyps, wenn er grö
ßer als 60 Pixels ist.
- 3. Zuordnen eines mittleren Lauflängentyps, wenn die
Lauflänge größer als 2 Pixels und kleiner als oder
gleich 60 Pixels ist.
In der durchgeführten Ausführungsform sind Flags und entspre
chende Werte zum Beschreiben der Lauflängen-Typen definiert
worden. Ein Flag RNFL_MEDIUM ist durch einen Werte null (0)
definiert worden, um eine mittlere Lauflänge festzulegen. Ein
Flag RNFL_SHORT ist mit einem Wert eins (1) definiert worden,
um eine kurze Lauflänge festzulegen. Ein Flag RNFL_LONG ist
mit einem Werte zwei (2) definiert worden, um eine lange
Lauflänge festzulegen. Sobald die vorstehende Klassifizierung
festgesetzt worden ist, wird der entsprechende Flag-Wert in
das Feld f1 (Zeile 5 in Tabelle A) eingesetzt.
In Fig. 4 ist eine Abtastzeile von Pixels und eine Lauflänge
dargestellt. Zu beachten ist, daß Fig. 4 vereinfacht ist, da
ein Byte auf seinen entsprechenden Pixel-Wert reduziert worden
ist. Beispielsweise stellt das Pixel 405 einen Nicht-Null-
Byte-Wert (d. h. ein schwarzes Pixel ) dar, während ein Pixel
406 einen Null-Byte-Wert (d. h. ein weißes Pixel) darstellt.
Eine Abtastzeile 401 hat einen Teil 402, welcher aus einer
Reihe von aneinandergrenzenden schwarzen Pixels gebildet ist.
Die Adresse eines Pixels 403 bezeichnet den Beginn der Lauf
länge, während die Adresse eines Pixels 404 das Ende der
Lauflänge bezeichnet. Wenn das Pixel 403 an einer Adresse 312
und das Pixel 404 an einer Adresse 414 liegt, und wenn der
Schwellenwert für eine lange Lauflänge 100 ist, dann würde
der sich ergebende Lauflängen-Datensatz einen Ausgangsposi
tionswert sx von 312, einen Endpositionswert ex von 414 und
einen Lauflängen-Flagwert f1 von 2 (für eine lange Lauflänge)
haben.
An einem Punkt der Verarbeitung werden nur zwei Sätze von
Datensätzen, welche die Spurlängen von zwei verdichteten Ab
tastzeilen beschreiben, benutzt und in einem Speicher gespei
chert. Ein erster Satz von Datensätzen beschreibt die augen
blicklichen Abtastzeilen-Lauflängen und ein zweiter Satz be
schreibt die vorhergehenden Abtastzeilen-Lauflängen. Wie im
einzelnen später noch beschrieben wird, wird die vorherige
Abtastzeilen-Information für eine Rechteck-Extraktion ver
wendet. Vor einem Lesen eines neuen Satzes von komprimierten
Abtastzeilen-Datensätzen wird der alte augenblickliche Satz
Datensätze an der Speicherstelle kopiert, um die Datensätze
der vorherigen Abtastzeile zu halten. Die Datensätze, welche
die neue Abtastzeile beschreiben, werden dann in die Spei
cherstelle gelesen, um die Datensätze zu halten, welche die
augenblickliche Abtastzeile beschreiben, und wird dann ent
sprechend verarbeitet. Dies dauert an, bis alle komprimier
ten Abtastzeilen verarbeitet worden sind.
Wenn die Lauflängen auf den komprimierten Abtastzeilen ex
trahiert werden, werden Rechtecke, welche die Merkmale der
Vorlage beschreiben, konstruiert. Diese Rechtecke beschrei
ben die Grenzen von aneinandergrenzenden schwarzen Pixels
sowohl in der horizontalen als auch in der vertikalen Rich
tung in dem Vorlagenbild. Lauflängen sind eindimensional,
während Rechtecke zweidimensional sind. Wie vorstehend aus
geführt, sind die Lauflängen-Information einer augenblick
lichen und einer vorhergehenden komprimierten Abtastzeile für
den Rechteck-Extraktionsschritt erforderlich.
Eine Beziehung zwischen der augenblicklichen komprimierten
Abtastzeile und der vorherigen, komprimierten Abtastzeile
legen fest, ob die augenblicklichen, komprimierten Abtast
zeilen-Lauflängen vorhandenen Rechtecken zugeteilt werden
oder wenn ein neues Rechteck gebildet wird. Wenn die erste
komprimierte Abtastzeile verarbeitet ist, erzeugt jede Lauf
länge ein neues Rechteck. Wenn jede neue augenblickliche
komprimierte Abtastzeile verarbeitet wird, werden irgend
welche Rechtecke, welche einer Lauflänge in dieser Zeile zu
geordnet sind, entsprechend gedehnt. Eine Lauflänge wird ei
nem Rechteck zugeordnet, wenn die Lauflänge in dem Grenzbe
reich des Rechtecks vorhanden ist. Ein Rechteck ist vollstän
dig und wird nicht länger gedehnt, wenn alle Pixels der au
genblicklichen, komprimierten Abtastzeile, welche dem Recht
eck benachbart sind, weiß sind. Mit anderen Worten, ein Recht
eck ist abgeschlossen, wenn keine Lauflängen der augenblick
lichen komprimierten Abtastzeile in dem Rechteck-Grenzbereich
liegen. Ein neues Rechteck wird erzeugt, wenn eine Lauflänge
nicht vollständig in dem Grenzbereich eines Rechtecks liegt.
Ein derartiges Schema läßt die Erzeugung von Rechtecken zu,
welche einander überdecken. Solche einander überdeckenden
Rechtecke sind in den aufeinanderfolgenden Schritten des
Verfahrens vorgesehen.
Eine Gestaltung eines Rechtecks aus den Lauflängen einer
augenblicklichen und einer vorherigen komprimierten Abtast
zeile ist in Fig. 5 dargestellt. In Fig. 5 enthalten eine vor
herige komprimierte Abtastzeile 501 und eine augenblickliche
komprimierte Abtastzeile 502 jeweils eine Anzahl Lauflängen.
Die vorherige komprimierte Abtastzeile 501 hat Lauflängen
503 bis 509, während die augenblickliche, komprimierte Abtast
zeile 502 Lauflängen 510 bis 517 hat. Zu beachten ist, daß,
wie dargestellt, die Abtastzeilen 501 und 502 bitweise aus
gerichtet sind. Dies bedeutet, daß das linke höchste Bit in
der Abtastzeile 501 dem linken höchsten Bit in der Abtastzeile
502 entspricht. In Fig. 5 sind auch die Rechtecke 520 bis 525
dargestellt. Wenn eine vorherbestimmte Beziehung zwischen ei
ner Lauflänge in der augenblicklichen, komprimierten Abtast
zeile und einer Lauflänge in der vorherigen, komprimierten
Abtastzeile existiert, wird die Lauflänge in der augenblick
lichen komprimierten Abtastzeile zu einem existierenden Recht
eck hinzuaddiert. Wenn keine derartige Beziehung existiert,
wird ein neues Rechteck gebildet.
Die vorherbestimmte Beziehung zwischen Lauflängen in den
vorherigen und den augenblicklichen komprimierten Abtast
zeilen führt zu dem Rechteck, das entsprechend der vorstehend
beschriebenen Regeln aufgebaut ist. Die Beziehung, welche be
züglich einer Lauflänge existieren muß, um eine Lauflänge zu
einem existierenden Rechteck hinzuzuaddieren, besteht darin,
daß der Ausgangspunkt für eine Lauflänge in der augenblick
lichen Abtastzeile eine Kontinuität mit einer Lauflänge in
der vorherigen Abtastzeile haben muß. Beispielsweise hat in
Fig. 5 der Ausgangspunkt für eine Lauflänge 510 eine Kontinui
tät mit Lauflängen 503 und 504 der komprimierten Abtastzeile
501.
Bezüglich der Lauflänge 515 besteht keine Kontinuität mit
einer Lauflänge in der vorherigen Abtastzeile 501. Folglich
wird das neue Rechteck 522 erzeugt. Für die Lauflänge 508
in der vorherigen Abtastzeile 501 gibt es keine Kontinuität
mit einer Lauflänge in der augenblicklichen Abtastzeile;
folglich wird das Rechteck 524 vervollständigt und nicht hin
zuaddiert.
In Fig. 5 werden die Lauflängen der Abtastzeile 501 zu existie
renden Rechtecken auf folgende Weise hinzugefügt: Die Lauf
längen 503 und 504 werden dem Rechteck 520, die Lauflänge
505 wird dem Rechteck 521, die Lauflängen 506 und 507 wer
den dem Rechteck 523 und die Lauflänge 509 wird dem Rechteck
525 hinzugefügt. Zu beachten ist, daß die Lauflänge 508 zu
der Bildung des Rechtecks 524 führt. Bezüglich der Abtast
zeile 502 werden die Lauflängen 510 und 511 dem Rechteck 520,
die Lauflängen 512 bis 514 dem Rechteck 521, die Lauflänge
516 dem Rechteck 523 und die Lauflänge 517 dem Rechteck 525
hinzugefügt. Wie vorstehend ausgeführt, hat die Lauflänge
514 die Bildung des Rechtecks 522 zur Folge.
Da Rechtecke zu konstruieren sind, werden die verschiedenen
Arten von Lauflängen genau gezählt, welche jedes Rechteck
bilden. Wenn ein Rechteck vervollständigt worden ist, wird
eine anfängliche Rechteckklassifikation durchgeführt. Auf der
Basis der Lauflängen-Kenndaten und der Rechteckgrößen wird
die anfängliche Klassifikation in einer von vier Typen, näm
lich einer vertikalen Linie (VL), einer horizontalen Line (HL)
einer Bildabbildung (IMG) oder unbekannt (UNKNOWN) vorgenom
men. Die folgenden allgemeinen Regeln, die bei einer Vorlagen
auflösung festgelegt worden sind, werden verwendet, um die
Klassifizierung durchzuführen:
- 1. Wenn (Lauflängen alle vom Typ lang sind) und (eine
Rechteckhöhe kleiner oder gleich dem Lauflängentyp
mit kurzem Schwellenwert ist) dann ist ein Recht
eck als Typ HL zu klassifizieren.
- 2. Wenn (Lauflängen alle vom Typ kurz sind) und (die
Rechteckhöhe größer als der Lauflängentyp mit kur
zem Schwellenwert ist), dann ist das Rechteck als
Typ VL zu klassifizieren.
- 3. Wenn (Lauflängen vom Typ lang sind) oder (die Recht
eckbreite kleiner oder gleich dem Lauflängentyp mit
einem langen Schwellenwert ist) und (die Rechteck
höhe größer als ein Bildhöhen-Rechteck-Schwellenwert
ist), dann ist das Rechteck als Typ IMG zu klassifi
zieren.
- 4. Alle übrigen Rechtecke sind als UNKNOWN zu klassi
fizieren.
Regel 1 kennzeichnet horizontale Linien, Regel 2 kennzeichnet
vertikale Linie, Regel 3 kennzeichnet Bildrechtecke und Regel 4
schafft eine fehlerhafte unbekannte Klassifizierung. Für ein
Vorlagenbild mit 120 Pkte./cm (300 dpi) ist festgesetzt
worden, daß die Schwellenwerte für einen Lauflängentyp mit
kurzem Schwellenwert 2 Pixels sind, während festgelegt worden
ist, daß der Bildhöhen-Rechteck-Schwellenwert 82 Pixels ist.
Die vorstehend wiedergegebenen Klassifizierungsregeln sind
aus bekannten Parametern entwickelt, welche eine typische
Vorlage enthalten sollten. Diese Parameter können in Abhäng
keit von der Auflösung der als digitales Muster gespeicherten
Darstellung der Vorlage modifiziert werden und/oder sie kön
nen auf eine spezifische Vorlage abgestimmt werden, indem die
Rechteck-Größenverteilung analysiert wird.
Am Ende einer Verarbeitung der komprimierten Vorlagendarstel
lung wird eine Liste von Rechtecken gebildet, welche alle
Grundobjekte in dem Vorlagenbild beschreiben. Wie nachstehend
noch beschrieben wird, enthält üblicherweise ein Rechteck
des Typs "UNKNOWN" Text.
In der wiedergegebenen Ausführungsform kann die Schriftgröße
von Zeichen zwischen 6 bis 48 Punkten liegen. Die Regeln ba
sieren zum Teil auf dieser Annahme. Jedoch können selbstver
ständlich auch kleinere oder größere Schriftgrößen geschaffen
werden, indem die Schwellenwerte modifiziert werden, die bei
der Grundklassifikation verwendet worden sind. Die Endklassi
fikation für einen Rechtecktyp VL wird, wie oben beschrie
ben, in der Rechteck-Extraktionszeit gegeben. Die folgenden
Regeln werden dann verwendet, um die anfänglich vorgenommene
Klassifikationen zu prüfen und zu verfeinern:
Regel 1: korrigiert für einen falsch klassifizierten Text,
nämlich 1, l oder 1, welche als vertikale Linien
klassifiziert wurden.
Wenn (der Rechtecktyp VL ist) und (die Rechteck
höhe kleiner als eine Schwellenwerthöhe für unbe
kannte Rechtecke ist), dann (ist das Rechteck als
Typ UNKNOWN zu klassifizieren).
Regel 2: ordnet Rechtecke auf der Basis der Schriftgröße
wieder zu. Wenn sie größer als eine maximale
Schriftzeichengröße sind, müssen sie Bilder sein.
Wenn (eine Rechteckhöhe, die durch einen Faktor 2
im Maßstab geändert worden ist) größer als (ein
Schwellenwert für eine Bildhöhe) ist, dann (ist
das Rechteck als Typ IMG zu klassifizieren).
Regel 3: teilt Bildflächen auf der Basis der Voraussetzung
zu, daß Worte dazu tendieren, länger zu sein, als
sie hoch sind.
Wenn ((eine Rechteckhöhe die mit einem Faktor 4
im Maßstab geändert worden ist), welche zu (der
Rechteckbreite hinzu addiert worden ist)) größer ist
als ein Schwellenwert für eine Bildhöhe, welche
um einen Faktor 4 im Maßstab geändert worden ist)
dann (ist das Rechteck als Typ IMG zu klassifizieren)
Regel 4: beschreibt die Kriterien, um eine horizontale Zeile
auf der Basis der Voraussetzung zu definieren, daß
längere horizontale Zeilen dazu neigen, dicker zu
sein als kurze horizontale Zeilen, welche Text
blöcke oder Spalten teilen.
Wenn ((eine Rechteckbreite) als ein Verhältnis von
(Rechteckhöhe, die um einen Faktor 4 im Maßstab
geändert worden ist)) größer als (der Schwellenwert
für eine Breite einer horizontalen Zeile ist),
dann (Rechteck als Typ HL klassifizieren).
Regel 5: beschreibt die Kriterien, um eine horizontale
Linie von einer langen Linie eines kleinen Schrift
textes (z. B. 6 Punkte) zu unterscheiden.
Wenn ((eine Rechteckbreite) als ein Verhältnis von
(Rechteckhöhe)) größer als (ein Schwellenwert für
ein horizontales Linienbreiten-Höhenverhältnis)
ist, dann (ist das Rechteck als Typ HL zu klassifi
zieren.
Für ein Bild mit 120 Pkte/cm (300 dpi) sind die Werte für die
verschiedenen Schwellenwerte:
Die Schwellenwerthöhe für unbekannte Rechtecke ist 5; die
Schwellenwert-Bildhöhe ist 82; die Schwellenwertbreite einer
horizontalen Linie ist 77 und der Schwellenwert für ein Hori
zontallinien-Breiten-Höhen-Verhältnis ist 15.
Bei Lauflängen ist eine Datenstruktur vorgesehen, um die
Rechteckinformation zu speichern. Eine solche Datenstruktur
ist in Tabelle B dargestellt.
Die Datenstruktur in den Zeilen 2 und 3 schafft Zeiger zu
nachfolgenden und vorher verarbeiteten Rechtecken. Hierdurch
wird die Verarbeitung von Rechtecken in nachfolgenden Schrit
ten erleichtert. Koordinatenpunkte, welche die räumliche
Stelle des Rechtecks beschreiben, sind in den Zeilen 5 bis 7
vorgesehen. In den Zeilen 4 und 5 sind die X-Y-Koordinaten
für den oberen linken Punkt des Rechtecks wiedergegeben, wäh
rend in den Zeilen 6 und 7 die X-Y-Koordinaten für den un
teren rechten Punkt des Rechtecks angegeben sind. Zeile 8
ist ein Flag-Wert für das Rechteck. Dieser Flagwert zeigt den
Datensatztyp an. Die Zeilen 9 und 10 sind Textblock ordnende
Variable "TAU" und "MU". Eine Berechnung und eine Zuordnung
dieser Textblock ordnenden Werte wird später noch im einzel
nen beschrieben. Zeile 11 stellt einen Zeiger für das nächste
Textrechteck dar. Ein solcher Zeiger erleichtert weitere Ver
arbeitungsschritte einschließlich dem Verschmelzen von Recht
ecken des Typs UNKNOWN, um Textblöcke zu erzeugen. Schließ
lich stellt Zeile 13 die Definition einer Rechteck-Variablen
dar.
Wenn eine Rechteck-Parameter-Information kontinuierlich wäh
rend des Segmentierungsprozesses verwendet wird, wird sie
an einer vorherbestimmten Stelle eines Systemspeichers gespei
chert. Eine solche Datenstruktur, welche eine Parameterinfor
mation enthält, ist in Tabelle C dargestellt.
Die Parameter-Datenstruktur ist ein Beispiel für eine Typen
definition zum Speichern von Information, die während des
Vorlagen-Segmentierungs- und Objekt-Klassifizierungsprozesses
verwendet worden ist. Diese Parameterdaten stehen in Bezie
hung zu der Auflösung der verwendeten Abtasteinrichtung. Be
schreibungen der jeweiligen Informationsfelder werden in Ab
schnitten gefunden, welche beschreiben, wo die Information
verwendet wird. Durch Speichern von Parameterdaten in einer
zentralen Stelle wird die Modifikation der Vorlagensegmen
tierungs-Schwellenwerte ohne weiteres erreicht. An diesem
Punkt des Prozesses sind viele Textteile fehlerhaft als ver
tikale Zeilensegmente VL (beispielsweise die Zeichen 1,1 und
1) klassifiziert worden. Daher werden die kürzeren vertika
len Zeilensegmente mit Hilfe der vorstehend beschriebenen
Regel 1 als unbekannt (UNKNOWN) wieder klassifiziert. Wie
später noch beschrieben wird, werden diese Rechtecke wieder
als Textrechtecke klassifiziert. An dieser Stelle ist eine
genaue Klassifikation von Bildbereichen, vertikalen und hori
zontalen Linien erzeugt worden. Was verbleibt, sind Rechtecke,
die als unbekannt (UNKNOWN) klassifiziert worden sind.
Der schräge Verlauf ist eine bekannte Schwierigkeit und be
trifft Vorlagenbilder, bei welchen die Textzeilen nicht auf
einer horizontalen Linie liegen. Das Verfahren zum Feststellen
eines schrägen Verlaufs schafft eine Bestimmung eines Schrägen
winkels. Dieser Schrägenwinkel der Vorlage kann aus der Liste
extrahierter Rechtecke bestimmt werden, welche das Bild dar
stellen. Das Verfahren zum Bestimmen des schrägen Verlaufs
hängt nicht davon ab, wie die extrahierten Rechtecke abge
leitet werden. Eine Einrichtung, durch welche eine Vorlagen
darstellung hinsichtlich Rechtecken genau ausgeführt werden
kann, kann das eine Schräge feststellende und korrigierende
Verfahren benutzen.
Das Verfahren arbeitet unter der Voraussetzung, daß Zeichen
folgen durch rechteckige Kästchen angenähert werden. Solche
Rechtecke werden vorzugsweise mit Hilfe des Rechteck-Kon
struktionsverfahrens der vorliegenden Ausführungsform ge
schaffen. Jedoch würden auch alternative Verfahren zum Bil
den von Rechtecken im Rahmen der Erfindung liegen. Auf jeden
Fall ist jedes Rechteck der Grenzbereich eines Satzes von Ver
bindungsmustern (Pixels) , welche ein Wort oder einen Buchsta
ben bilden. Das grundsätzliche Flußdiagramm des sogenannten
Schräglaufverfahrens ist in Fig. 6 dargestellt. Als erstes
können die Rechtecke als Koordinatenpunkte auf einer
X-Y-Ebene adressiert werden. Zuerst wird Adresseninformation
für eine vorherbestimmte Anzahl diesbezüglicher Rechtecke in
einer Rechteck-Pufferspeicherstelle gespeichert (Schritt
601). Es ist festgestellt worden, daß genau 80 Rechtecke ver
wendet werden können, um den schrägen bzw. Schräglaufwinkel
festzustellen. Ferner sind die gespeicherten Adresseninfor
mationen die Koordinaten für die obere linksseitige Ecke des
Rechtecks. Andererseits würde auch die untere rechte Ecke
des Rechtecks akzeptabel sein, solange es eine Übereinstim
mung für alle Rechteckadressen gibt.
Die X-Koordinaten für jede der Adressen werden dann auf ein
Histogramm von X-Koordinaten-Adressen projiziert, und eine
Spaltenkante wird gekennzeichnet (Schritt 602). Ein solches
Histogramm ist in Fig. 7 dargestellt. Das Histogramm zeigt
die häufigsten X-Koordinaten an. Diese häufigste X-Koordinate
kennzeichnet einen Rand einer Textspalte. Zu beachten ist,
daß, wenn Rechtecke durch ihren oberen linken Eckenpunkt
gekennzeichnet werden, der linke Spaltenrand definiert ist.
Umgekehrt ist, wenn der untere rechte Eckpunkt verwendet
wird, der rechte Spaltenrand gekennzeichnet. In Fig. 7
kennzeichnet die erste Histogrammspalte 701 die zu zählenden
X-Koordinaten, eine zweite Histogrammspalte 702 kennzeich
net den Häufigkeitszählwert, und eine dritte Histogrammspalte
703 zeigt grafisch die Beziehung des Zählwerts an jeder
X-Koordinate an. Wenn der X-Koordinatenpunkt 704 der Punkt mit
der höchsten Haufigkeit ist, wird er als der Spaltenrand
festgelegt. Die Signifikanz der Kennzeichnung einer Spalte
besteht darin,. daß sie verwendet werden kann, um die Recht
ecke zu begrenzen, welche verglichen werden sollten, wenn ein
Schrägenwinkel bestimmt wird. Die Grenze liegt dort, wo nur
Rechtecke in derselben Spalte verglichen werden.
In Fig. 6 werden der Tangentialwinkel zwischen allen zugeordne
ten Rechtecken in dem Rechteckpuffer bestimmt und auf ein
Histogramm projiziert, um einen Schrägenwinkel zu kennzeich
nen (Schritt 603). Ein Tangentialwinkel zwischen zwei Recht
ecken ist in Fig. 8a dargestellt. Ein erstes und ein zweites
Rechteck 801 bzw. 802 haben einen Schrägenwinkel, welcher
durch eine Diagonallinie 804 und eine horizontale Linie 803
festgelegt ist. Die Diagonallinie 804 verläuft von der unte
ren rechten Ecke 806 des Rechtecks 801 zu der unteren rechten
Ecke 807 des Rechtecks 802. Die horizontale Linie 803 geht
von der Ecke 806 des Rechtecks 801 aus. Der Schrägenwinkel 805
wird mit Hilfe bekannter trigonometrischer Berechnungen
auf folgende Weise berechnet:
- ΔX = abs((X-Koordinate des Punktes 806)-(X-Koordinate
des Punktes 807))
- ΔY = abs((Y-Koordinate des Punktes 806)-(X-Koordinate
des Punktes 807))
- Schrägenwinkel = (180 * ΔY)/(π * ΔX)
Hierbei werden die Absolutwerte zwischen den Koordinaten
punkten, welche die Diagonallinie 804 bilden, berechnet und
in die Gleichung für den Schrägenwinkel eingesetzt.
Wie vorstehend erwähnt, werden nur assoziierte Rechtecke
verglichen. Assoziierte Rechtecke sind als solche Rechtecke
definiert, welche sich in derselben Spalte befinden und ent
sprechend weit abseits sind. Zu bemerken ist, daß Rechtecke,
welche sich in derselben Spalte befinden und nicht entspre
chend weit abseits sind, Ergebnisse bewirken würden, die
fehlinterpretiert werden würden, wenn sie in das geschaffene
Histogramm eingetragen worden sind. Rechtecke würden nicht
entsprechend abseits sein, wenn sie aneinandergrenzen. Insbe
sondere würden sie ein Festlegen falscher Null-Schrägenwinkel
bewirken. Ferner würden sie bewirken, daß unnötige Berech
nungen durchgeführt werden.
Ein Histogramm, wie es in der Ausführungsform erzeugt wer
den kann, ist in Fig. 8b dargestellt. Das Histogramm gibt eine
Verteilung der Tangentialwinkel für die verglichenen Recht
ecke wieder. Eine erste Histogrammspalte 820 gibt die ver
schiedenen Schrägenwinkel an, eine zweite Histogrammspalte
821 zeigt einen Häufigkeitszählwert für den speziellen Tan
gentialwinkel an, und eine dritte Histogrammspalte 822 zeigt
grafisch die Verteilung für die Tangentialwinkel an.
In Fig. 6 wird bei dem letzten Schritt der tatsächliche Schrä
genwinkel durch Kennzeichnen des spitzen Winkels und durch
Verifizieren, daß er der Schrägenwinkel ist, bestimmt (Schritt
604). Dies wird durch eine Analyse der Daten erreicht, wel
che beim Generieren des Schrägenwinkel-Histogramms erhalten
worden sind. Wenn ein bestimmter Schrägenwinkel "Ai" in dem
Histogramm als Hist (Ai) adressiert ist, ist der Winkel,
welcher den maximalen Wert der Gleichung ergibt:
Hist(Ai)=hist _Schräge(Ai-1)+hist_Schräge(Ai)+hist-Schräge (Ai+1),
der Schrägenwinkel. Dieser Gleichung wird üblicherweise durch
den Spitzenwert in dem Histogramm genügt. In Fig. 8b ist der
Winkel 824 der Spitzenwinkel, welcher der Gleichung genügen
würde. Folglich ist der Winkel 824 der Schrägenwinkel.
Der festgestellte Schrägenwinkel wird verwendet, um die Schräge
der extrahierten Rechtecke zu korrigieren. Wenn das Bild be
züglich der Schräge korrigiert ist, dann müssen die Rechtecke,
welche das Bild darstellen, ebenfalls korrigiert werden. Die
Korrektur von ausgeführten Rechtecken schließt grundsätzlich
zwei Schritte ein: 1) eine Ableitung von einem tatsächlichen
schräg verlaufenden Rechteck und 2) eine Drehung des tat
sächlichen schräg verlaufenden Rechtecks, um eine Korrektur
des Schrägenwinkels zu bewirken.
Fig. 9a und 9b stellen positiv und negativ schräge Rechtecke
dar. Ein Rechteck ist so definiert, daß es eine positive
Schräge hat, falls, wenn von oben nach unten abgetastet
wird, zuerst auf die obere linke Ecke getroffen wird. Ein
Rechteck ist so definiert, daß es eine negative Schräge hat,
falls, wenn von oben nach unten abgetastet wird, zuerst auf
die obere rechte Ecke getroffen wird. In den beiden Fig. 9a
und 9b ist ein Rechteck 910, das durch Punkte A 901, B 902,
C 903 und D 904 festgelegt ist, ein äußeres Rechteck, wel
ches ein extrahiertes schräg verlaufendes Rechteck darstellt.
Normalerweise verursacht das schräg verlaufende Bild die
Bildung eines größeren Rechtecks als ein nicht-schräges
Bild.
In Fig. 9a verläuft ein extrahiertes Rechteck 910 positiv
schräg. Ein entsprechendes nicht-schräges Rechteck 905 ist
durch die Punkte I 906, J 907, K 908 und L 909 definiert. Ein
Schrägenwinkel 911 ist in diesem Fall als der Winkel definiert,
welcher durch die Punkte A 901, L 909 und I 906 festgelegt
ist. Die folgende Schreibweise wird verwendet, um die Bezie
hung zwischen den schrägen und den nicht-schrägen Rechtecken
zu beschreiben:
((Vu, Wu), (Vd, Wd)) bezeichnet das Rechteck 905;
((Vu, Wu), (Vd, Wd)) bezeichnet ein nicht-schräges Rechteck,
das durch Punkte I 906, I 907, K 908 und L 909 festgelegt ist;
der Schrägenwinkel ist mit "a" bezeichnet;
W ist die Länge zwischen den Punkten A 901 und D 904 und
H ist die Länge zwischen den Punkten A 901 und E 902.
Die Beziehung zwischen den schrägen und den nicht-schrägen
Rechtecken kann folgendermaßen definiert werden:
Durch Einsetzen der entsprechenden Werte kann das Rechteck
905 erzeugt werden.
In Fig. 9b hat das Bild eine axiale Symmetrie zu dem Fall mit
positiver Neigung bzw. Schräge. Hier ist ein negativ-schräges
Rechteck durch ein Rechteck 910 bezeichnet. Die entsprechenden
nicht-schrägen Rechtecke sind dadurch definiert, daß sie
Punkte I 921, J 922, K 923 und L 924 haben. Ferner ist in die
sem Fall ein Schrägenwinkel 825 der Winkel, welcher durch die
Punkte D 904, I 921 und L 924 definiert ist. Mit Hilfe der
vorstehenden Definitionen kann die Beziehung zwischen den
schrägen und den nicht-schrägen Rechtecken beschrieben werden
als:
Durch Einsetzen der entsprechenden Werte kann das Rechteck
920 erzeugt werden.
Hinsichtlich der Randbedingungen werden aus der Definition
von Wu, Vu, Wd und Vd die folgenden Bedingungen aus dem Aus
druck (1) erhalten:
Sobald die tatsächlichen schrägen Koordinaten für jedes ex
trahierte Rechteck definiert sind, wird der gesamte Koordina
tensatz von Rechtecken, welche das Bild darstellen, um einen
Winkel "a" um den Ursprung gedreht. Die Operation wird mit
Hilfe einer Matrix-Transformation durchgeführt, die folgender
maßen definiert ist:
wobei "a" der vorstehend festgestellte Schrägenwinkel ist.
Die Koordinaten Xu′, Yu′ stellen korrigierte Koordinaten für
das Rechteck dar.
Wenn in Einklang mit dem Bottom-up-Verfahren der durchgeführ
ten Ausführungsform der Prozeß sich zu höheren Pegeln einer
Datendarstellung bewegt, wird es notwendig, die Genauigkeit
aller Rechtecke zu prüfen, welche bis zu diesem Punkt klassi
fiziert worden sind. Es kann auch notwendig sein, einige
Rechtecke wieder zu klassifizieren. Die Nachprüfungs- und
Wiederklassifikationsregeln sind dieselben wie diejenigen,
welche bei den vorstehend beschriebenen Klassifikationsregeln
angegeben sind.
Bis zu diesem Punkt sind Rechtecke entweder als Bild (IMG),
als horizontale Linie (HGL) oder als vertikale Linie (VL)
klassifiziert worden. Alle übrigen Rechtecke sind als unbe
kannt (UNKNOWN) klassifiziert worden. Diese unbekannten Recht
ecke stellen den Text auf der Vorlage oder ein Text ähnliches
Rauscher dar. Der nächste Prozeß besteht darin, Rechtecke zu
finden, die in Blöcke verschmolzen werden können, die dann
als Textzeilen klassifiziert werden können. Solche verschmol
zenen Blöcke werden als Typ CHAR klassifiziert.
Hierbei wird der Begriff Block verwendet, um auf eine Gruppie
rung von Fusions-(merger)Rechtecken hinzuweisen. Eine
Gruppierung aus verschmolzenen unbekannten Recktecken wird
als Textblock bezeichnet. Ferner ist zu bemerken, daß Recht
ecke des Typs IMG niemals verschmolzen werden. Dies liegt
implizit in dem Kriterium, durch welches ein Rechteck als
ein Typ IMG klassifiziert wird.
Der erste Schritt besteht darin, die durchschnittliche Höhe
von Rechtecken auf der Vorlage zu schätzen bzw. zu bewerten.
Basierend darauf, was bei diesem Wert berechnet wird, werden
die horizontalen und vertikalen Misch-Schwellenwerte entspre
chend gesetzt. Das Verfahren, um die mittlere Rechteckgröße
zu schätzen, kann für die gesamte Vorlage oder für zugeord
nete Cluster von Rechtecken vorgenommen werden. In dem letzte
ren Fall wird das Verschmelzen von Clustern als der Cluster-
Durchschnittswert verwendet, um die entsprechenden horizon
talen und vertikalen Mischschwellenwerte zu bestimmen. Cluster
von Rechtecken werden mittels bekannter Cluster-Verfahren
identifiziert, z. B. mit Hilfe des nächstliegenden Nachbar-
Algorithmus, bei welchem Rechtecke auf der Basis ihres mitt
leren Abstandes gebündelt werden.
Der Mischprozeß schließt dann eine horizontale und eine ver
tikale Fusion (merger) ein. Bei einer horizontalen Fusion
muß darauf geachtet werden, Textrechtecke, die benachbart
aber in anderen Spalten sein können, nicht zu vermischen bzw.
zu verschmelzen. Es sei daran erinnert, daß eine Spaltenrand-
Identifizierung vorstehend bezüglich einer Schrägenwinkel
Bestimmung beschrieben wurde. Während des horizontalen Misch- oder
Verschmelzungsschrittes werden Rechtecke, welche als
unbekannt klassifiziert werden und in ihrer Grenzlänge klei
ner als die Schwellenwert-Störlänge sind, als Störung ge
löscht. Die verbleibenden horizontal vermischten bzw. ver
schmolzenen Rechtecke werden dann als Text klassifiziert
(d. h. dem Typ CHAR zugeordnet).
Der vertikale Verschmelzungsschritt schließt ein Übernehmen
der horizontalen Textzeilen und ein Verschmelzen in der ver
tikalen Richtung ein. Wenn eine Überdeckung zwischen einem
Textdreieck und einem Dreieck-des Typs IMG, HL oder VL besteht,
dann werden diese Rechtecke für eine spätere Verarbeitung auf
geschoben. Zu einer Verschmelzung zwischen zwei Rechtecken in
der durchgeführten Ausführungsform kommt es, wenn es Recht
ecke desselben Typs sind und wenn sie in einem vorherbestimm
ten horizontalen oder vertikalen Verschmelzungsschwellenwert
liegen. Solche Schwellenwerte hängen von einer Bildauflösung
und einer durchschnittlichen Rechteckhöhe ab. In Tabelle D
sind solche Schwellenwerte für eine Vorlage mit einer Auf
lösung von 120 Pkt/cm (300 dpi) dargestellt.
Verschmelzungs-(Merger)Schwellenwerte
Eine Verschmelzung wird durch Modifizieren von Koordinaten
feldern in einem variablen Rechteck erreicht, das die Definition
des verschmolzenen Rechtecks darstellt, um ein größeres ver
schmolzenes Rechteck zu reflektieren. Die Definition des
Rechtecks, das verschmolzen wurden kann dann ausgeschieden wer
den.
Ein Rechteck, das außerhalb eines Bildrechtecks liegt, kann
nicht mit einem Rechteck vermischt oder verschmolzen werden,
das innerhalb eines Bildrechtecks liegt. Ein Rechteck liegt
innerhalb, wenn es vollständig innerhalb eines Bildrechtecks
liegt oder ein solches überdeckt. Rechtecke, die innerhalb
eines Bildrechtecks liegen, werden als ein spezieller Fall
behandelt. Beispielsweise kann ein solcher Fall bei einer
Vorlage vorkommen, wenn eine Legende für ein Diagramm dem
Diagramm überlagert wird.
Im Fall eines Rechtecks, das innerhalb eines Bildrechtecks
liegt, wird ein Verschmelzen mit Hilfe derselben Verschmel
zungsparameter wie vorher durchgeführt (z. B. wie in Tabelle
D dargestellt ist). Ein solcher Fall ist in Fig. 10a und 10b
dargestellt. Fig. 10a zeigt eine Vorlage, bei welchem einer
grafische Darstellung 1001 (ein Teil eines Auto-Aufhängungs
systems) ein beschreibender Text zugeordnet ist, d. h. Text
bereiche 1002 und 1003. Fig. 10b stellt die Ergebnisse nach
den Schritten einer Lauflängen-Extraktion und einer Recht
eck-Extraktion der digitalen Bilddarstellung der Vorlage dar.
Ein Rechteck 1010 entspricht der grafischen Darstellung 1001.
Das Rechteck 1010 ist vom Typ IMG. Ferner entspricht eine
erste Gruppierung von Rechtecken 1011 einem Textbereich 1002
und eine zweite Gruppierung von Rechtecken 1012 entspricht
einem Textbereich 1003. Jedes der Rechtecke in den Gruppie
rungen 1011 und 1012 ist von dem Typ "unbekannt". Die Recht
ecke in der Gruppierung 1011 können nicht vermischt werden,
da sie sich mit dem IMG-Rechteck 1010 überlappen.
Der letzte Schritt bei der Vorlagen-Segmentierung besteht
darin, eine logische Reihenfolge für die Textblöcke vorzu
sehen. Eine 100% genaue Ordnung hängt davon ab, welche Regeln
verwendet wurden, als die Seite ursprünglich entworfen wurde.
Diese Regeln können sich zwischen verschiedenen Vorlagen-
Layouts beträchtlich ändern. Daher ist es zugestandenermaßen
in der Praxis nicht möglich, ein generelles Sortierverfahren
zu schaffen, welches für alle Vorlagen-Layouts gilt.
Jedoch ist es möglich, sich einer korrekten Ordnung zu nä
hern. Das Sortierverfahren, das bei der durchgeführten Aus
führungsform verwendet worden ist, basiert auf einem Zählen
der Anzahl Textblöcke "oben" und "links von" dem in Betracht
gezogenen Block; "oben" und "links von" sind auf das geometri
sche Layout einer Vorlage bezogen.
Das Block-Ordnungsverfahren in der dargestellten Ausführungs
form wird anhand von Fig. 11 und 12 beschrieben. Fig. 11 ist
ein Flußdiagramm, das die Schritte wiedergibt, um die logi
sche Blockordnung der verschiedenen Textblöcke auf einem
Vorlagenbild zu bestimmen. Fig. 12 stellt ein Vorlagenbild
und eine daraus resultierende Wertetabelle dar, die verwendet
wird, um die logische Anordnung der Textblöcke zu berechnen.
In Fig. 11 wird bei einem ersten Schritt ein "TAU"-Wert jedem
Textblock auf der Vorlage zugeordnet (Schritt 1101). Die
"TAU"-Werte werden in fortlaufender Reihenfolge, die mit 1
beginnt, von dem oberen Teil bis zum unteren Teil des Vorla
genbildes zugeordnet. Üblicherweise ist es dieselbe Reihen
folge, in welcher die Textblöcke geschaltet werden. In Fig.
12 ist ein Vorlagenbild 1200 mit Textblöcken 1201 bis 1207
dargestellt. Ferner ist in Fig. 12 ein Bildrechteck 1208 dar
gestellt. Hierbei ist zu beachten, daß dem Bildrechteck 1208
kein "TAU"-Wert zugeordnet ist. Bei einem Überstreichen der
Vorlage in der Reihenfolge von links nach rechts und von oben
nach unten ist offensichtlich, daß der am weitesten links
liegende, obere Textblock der Block 1201 ist. Folglich wird
dem Textblock 1201 ein "TAU"-Wert von 1 zugeordnet. Der näch
ste Textblock, um dem Kriterium von links oben nach unten zu
genügen, ist der Textblock 1202. Folglich wird dem Textblock
1202 ein "TAU"-Wert von 2 zugeordnet. Auf diese Weise wird
fortgefahren, bis ein "TAU"-Wert von 7 einem Textblock 1207
zugeordnet wird. Der "TAU"-Wert für jeden der Textblöcke 1201
bis 1207 ist in der tabellarischen Aufstellung 1220 darge
stellt. Hier gibt eine "TAU"-Reihe 1210 alle "TAU"-Werte für
jeden der Textblöcke an. Die "TAU"-Reihenfolge hinsichtlich
des Ordnens wird als geometrische Ordnung des Textblockes
bezeichnet.
Sobald die "TAU"-Werte erzeugt worden sind, besteht der näch
ste Schritt darin, einen "MU"-Wert für jeden Textblock zu
erzeugen (Schritt 1102). Der "MU"-Wert ist ein erster Schritt,
um eine logische Reihenfolge für die Textblöcke festzulegen.
Beim Bestimmen eines "MU"-Werts für jeden Textblock schließt
die Gesamtanzahl Blöcke oberhalb oder links von dem zu ver
arbeitenden Block den zu verarbeitenden Block mit ein. In
Fig. 12 stellt eine Spalte 1201 der Darstellung 1220 die "MU"
Werte dar, welche für Textblöcke in dem Vorlagenbild 1200 er
zeugt worden sind. Beispielsweise ist der "MU"-Wert für den
Textblock 1204 4, und zwar deswegen, da die Textblöcke
1203, 1201 und 1202 dem Kriterium genügen, daß sie oberhalb
oder links von dem Block liegen. Der "MU"-Wert der Textblöcke
schafft eine logische Reihenfolge von links nach rechts und
von oben nach unten.
Im allgemeinen wichtet die Auswertung von "MU" die geome
trische Reihenfolge von oben nach unten, indem auf der Seite
die Position von links nach rechts berücksichtigt wird. Das
Ergebnis ist ein Wert, der eine Reihenfolge von oben/links
nach unten/rechts ergibt. Wenn jedoch Textblöcke auf der
Vorlage von oben nach unten ausgerichtet sind, muß dem Er
reichen des Bodens der Textspalte Vorrang gegeben werden,
bevor mit dem Textblock rechts fortgefahren wird. Eine sol
che Vorgehensweise wird dadurch ermöglicht, daß ein Wert
"PSI" für jeden Textbock berechnet wird.
In Fig. 11 wird ein "PSI"-Wert für jeden der Textblöcke in
dem Vorlagenbild berechnet, indem die Anzahl Textblöcke links
von dem zu verarbeitenden Block summiert wird (Schritt 1103).
Wie vorstehend ausgeführt, schafft der "PSI"-Wert ein Mittel
zum Ordnen von Text, wenn sie in einem Spaltenformat sind. In
Fig. 12 stellt eine Zeile 12 der Darstellung 1220 die erzeug
ten "PSI"-Werte dar. Beispielsweise hat der Textblock 1205
einen "PSI"-Wert von 5, da die Blöcke 1201 bis 1203, 1204,
1206 und 1207 dem Kriterium genügen, daß sie links von dem
Textblock 1205 liegen.
In Fig. 11 besteht der nächste Schritt darin, den "PSI"-Wert
dadurch zu wichten, daß der ursprüngliche "PSI"-Wert
mit der Anzahl Textblöcke multipliziert wird (Schritt 1104).
Es ist festgestellt worden, daß dieser Wichtungsschritt vor
teilhaft ist, um ein genauere logische Reihenfolge der Text
blöcke zu schaffen. Auf jeden Fall ist in Fig. 12 der gewich
tete "PSI"-Wert durch eine Zeile 1213 der Darstellung 1220
wiedergegeben.
Um die endgültige logische Reihenfolge festzulegen, wird der
gewichtete "PSI"-Wert zu dem "MU"-Wert für jeden Textblock
hinzugefügt (Schritt 1105). Es ist festgestellt worden, daß
der sich ergebende Wert eine sehr gute Annäherung der logi
schen Reihenfolge der Textblöcke auf der Vorlage ergibt. In
Fig. 12 ist dies in Zeile 1214 der Darstellung 1220 wieder
gegeben. In Fig. 12 wird dann bestimmt, ob es irgendwelche ge
wichtete "PSI"- und "MU"-Werte gibt, welche gleich sind
(Schritt 1106). Wenn irgendwelche Werte dieselben sind, dann
würde die Blockreihenfolge keine brauchbare Information schaf
fen, da "mehrere" Textblöcke denselben logischen Ordnungswert
haben würden. Wenn keine "MU"-Werte dieselben sind, dann wird
der Textblock-Ordnungsprozeß beendet. Wenn es "MU"-Werte
gibt, welche identisch sind, dann wird die geometrische
Reihenfolge der Textblöcke in Betracht gezogen (Schritt 1107)
Es sei daran erinnert, daß die geometrische Ordnung der
"TAU"-Wert ist, welcher zuerst berechnet wurde.
Aus Fig. 12 wird deutlich, daß keine Textblöcke denselben
"MU"-Wert gaben. Folglich ist die sich ergebende Reihenfolge
für die Textblöcke eines Vorlagenbildes 1200 1203, 1201,
1204, 1206, 1207, 1202 und 1205. Dies ist ein Spaltenformat,
wie es in Zeitungen und Zeitschriften zu finden ist. Sobald
die Blockanordnung beendet ist, können die Textblöcke in einem
Zeichen-Erkennungsprogramm vorgesehen werden, um eine logi
sche Anordnung der Zeichen auf der Vorlagenseite vorzusehen.
Schließlich ist zu beachten, daß das Kriterium zum Kennzeich
nen eines Textblockes als "oben und links vorn" zu irgendei
nem Block paßt, der einen Punkt hat, der deutlich oberhalb
und links von irgendeinem Punkt eines Textblockes liegt, der
in Frage kommt. Jedoch erfordert das Kriterium "links von"
das mehr als eine Hälfte eines Textblockes, der horizontal
angeordnet ist, links von einem Block liegt, welcher in Frage
kommt.
Sobald eine Blockordnung beendet ist, muß die segmentierte
Textblock-Information bei einer Zeichenerkennung oder bei
einer Form die verwendbar ist, vorgesehen werden. Wenn die
Darstellung des Bildes komprimiert worden ist, müssen tat
sächliche Koordinatenadressen vorgesehen werden, welche den
Blöcken entsprechen. Dies wird durch ein erneutes Skalieren
der Darstellung zurück zu den Abmessungen des ursprünglichen,
unverdichteten Vorlagenbildes erreicht.
In Fig. 13 bis 17 sind verschiedene Schritte des Vorlagen-Seg
mentierungsverfahrens gemäß dieser Ausführungsform darge
stellt. Hierbei ist zu beachten, daß die Fig. 14 bis 17 wäh
rend des Vorlagen-Segmentierungsprozesses nicht tatsächlich
erzeugt werden müssen, sondern hier nur zum Veranschaulichen
der Verfahrensschritte vorgesehen sind. Auf jeden Fall stellt
Fig. 13 ein Format einer gedruckten Seite dar, wie sie mit
Hilfe einer Abtasteinrichtung erhalten wird. Zu beachten ist,
daß Fig. 13 einem tatsächlich veröffentlichten, einseitigen
Zeitschriftenartikel entspricht. Die übrigen Fig. 14 bis 17
wurden mit Hilfe eines Systems gemäß der durchgeführten Aus
führungsform aus dem einseitigen Zeitschriftenartikel er
zeigt. In Fig. 13 enthält das Vorlagenbild Text im Titelbe
reich 1301, im Untertitel-Bereich 1302, im "Verfasser"-Be
reich, im Bildunterschriftbereich 1307, im Seitenzahl-Bereich
1309, im Veröffentlichungs/Datumsbereich 1311 und in Spal
tentext-Bereichen 1305, 1308, 1309, 1312 und 1313. Bildbe
reiche 1304 und 1306 befinden sich ebenfalls auf der Vorla
genseite.
In Fig. 14 ist eine Darstellung des Bildes als ein Satz von
extrahierten Rechtecken wiedergegeben. Zu beachten ist, daß
jedes Rechteck einem Wort, einer Reihe von Worten oder einem
Bild entspricht. In Fig. 14 verläuft das Bild schräg. Je
doch sind die Hauptmerkmale des Vorlagen-Layouts erkennbar.
Jeder der Bereiche 1401 bis 1413 hat eine direkte Beziehung
zu einem Bereich 1301 bis 1313 der Fig. 13 (d. h. der Titel
bereich 1301 entspricht einem Bereich 1401, der Untertitel
bereich 1302 entspricht einem Bereich 1402, usw.).
In Fig. 15 sind die Rechtecke dargestellt, nachdem der schräge
Verlauf korrigiert worden ist. Hier entsprechen die wichti
gen Merkmale der ursprünglichen Vorlage genauer dem Vorlagen
bild der Fig. 13. Wieder haben jeweils die Bereiche 1501 bis
1513 eine direkte Beziehung mit Bereichen 1301 bis 1313 der
Fig. 13 (d. h. ein Titelbereich 1301 entspricht einem Bereich
1501, ein Untertitel-Bereich 1302 entspricht einem Bereich
1502, usw.).
In Fig. 16 ist die Rechteck-Klassifikation der Vermischung
bzw. Verschmelzung (merger) von Textzeilen dargestellt.
Wieder hat jeder der Bereiche 1601 bis 1613 eine direkte
Beziehung zu einem Bereich 1301 bis 1313 von Fig. 13 (d. h.
der Titelbereich 1301 entspricht einem Bereich 1601, der
Untertitelbereich 1302 entspricht einem Bereich 1602, usw.).
Schließlich sind in Fig. 17 die Rechtecke eines Typs "unbe
kannt" verschmolzen worden, um Textblöcke zu bilden. Ferner
sind die Textblöcke geordnet worden. Die Anordnung wird durch
einen ganzzahligen Wert angezeigt, der in dem oberen linken
Teil des Textblockes angeordnet ist. Folglich wird bei einer
Texterkennung und einer Verkleinerung des Vorlagenbildes in
einer Textdatei der Text in dieser Datei in der angezeigten
Reihenfolge erscheinen.
Somit ist ein Verfahren zum Segmentieren eines Vorlagen
bildes beschrieben. Durch Vorsehen einer komprimierten Dar
stellung der Merkmale des Vorlagenbildes in Form von Recht
ecken kann Text und Nicht-Text genau und wirksam unterschie
den werden.