-
Die
vorliegende Erfindung bezieht sich allgemein auf das Gebiet der
optischen Abtastvorrichtungen oder optischen Scanner und insbesondere
auf ein Verfahren zum Erhalten von Mehrfachbildern aus einer Einzelabtastung.
Insbesondere schafft die vorliegende Erfindung eine Einrichtung
zum Erhalten von Farbbilddaten und Schwarzweißbilddaten aus einer Einzelabtastung.
-
Optische
Abtastvorrichtungen werden verwendet, um Bilder zu erfassen und
zu digitalisieren. Beispielsweise kann eine optische Abtastvorrichtung
verwendet werden, um das Bild von gedruckten Dingen auf einem Papierblatt
einzufangen. Das digitale Bild kann dann elektronisch gespeichert
und/oder mit einer Zeichenerkennungssoftware, um ASCII-Text zu erzeugen,
verarbeitet werden. Die meisten optischen Abtastvorrichtungen verwenden
eine Beleuchtung und optische Systeme, um das Objekt zu beleuchten,
und um einen kleinen Bereich des beleuchteten Objekts, der üblicherweise
als "Abtastzeile" bezeichnet wird,
auf das optische Photosensorarray zu fokussieren. Das gesamte Objekt
wird dann durch Bewegen der beleuchteten Abtastzeile quer zu dem
gesamten Objekt abgetastet, entweder durch Bewegen des Objekts bezüglich der
Beleuchtung und der optischen Anordnungen oder durch Bewegen der
Beleuchtung und der optischen Anordnungen relativ zu dem Objekt.
-
Ein
typisches optisches Abtastvorrichtungssystem wird eine Linsenanordnung
umfassen, um das Bild der beleuchteten Abtastzeile auf die Oberfläche des
optischen Photosensorarrays zu fokussieren. Abhängig von dem speziellen Entwurf
kann das optische Abtastvorrichtungssystem ferner eine Mehrzahl
von Spiegeln umfassen, um den Weg des Lichtstrahls zu "Falten", womit es ermöglicht wird,
daß das
optische System vorteil haft innerhalb einer relativ kleinen Hülle angebracht
wird.
-
Obwohl
verschiedene Typen von Photosensorbauelementen in optischen Abtastvorrichtungen
verwendet werden können,
ist ein allgemein verwendeter Sensor das ladungsgekoppelte Bauelement
oder CCD (= Charge Coupled Device). Wie es gut bekannt ist, kann
ein CCD eine große
Anzahl von einzelnen Zellen oder "Pixeln" aufweisen, von denen jedes eine elektrische
Ladung als Reaktion auf eine Belichtung mit Licht sammelt oder aufbaut.
Da die Größe der angereicherte
elektrischen Ladung in jeder gegebenen Zelle oder jedem Pixel auf
die Intensität
und Dauer der Lichtbelichtung bezogen ist, kann ein CCD verwendet
werden, um helle und dunkle Flecken auf einem Bild, das auf das
CCD fokussiert ist, zu erfassen. Bei einer typischen Abtastvorrichtungsanwendung
wird die Ladung, die sich in jeder der CCD-Zellen oder -Pixel aufbaut,
in regelmäßigen Intervallen,
die als Belichtungszeiten oder Abtastintervalle bekannt sind, und
die etwa 5 Millisekunden oder ähnlich
für eine
typische Abtastvorrichtung sein können, gemessen und entladen.
Da die Ladungen (d. h. Bilddaten) gleichzeitig in den CCD-Zellen
während
der Belichtungszeit gesammelt werden, umfaßt das CCD ferner ein analoges
Schieberegister, um die gleichzeitigen oder paral2lelen Daten von
den CCD-Zellen in einen sequentiellen oder seriellen Datenstrom
umzuwandeln.
-
Ein
typisches analoges Schieberegister weist eine Mehrzahl von "Ladungsübertragungseimern" auf, von denen jeder
mit einer einzelnen Zelle verbunden ist. Am Ende der Belichtungszeit
werden die Ladungen, die durch jede CCD-Zelle gesammelt werden,
gleichzeitig zu den Ladungsübertragungseimern übertragen, womit
die CCD-Zellen für
die nächste
Belichtungssequenz vorbereitet werden. Die Ladung in jedem Eimer
wird dann von Eimer zu Eimer hinaus aus dem Schieberegister in einer
sequentiellen oder "Eimerketten"-Art während der
Zeit, in der die CCD-Zellen mit der nächsten Abtastzeile belichtet
werden, übertragen.
Die sequentiell angeordneten Ladungen von den CCD-Zellen können dann
eine nach der anderen in ein digitales Signal durch einen geeigneten
Analog-zu-Digital-Wandler umgewandelt werden.
-
Bei
den meisten optischen Abtastvorrichtungsanwendungen ist jedes der
einzelnen Pixel in dem CCD Ende-an-Ende angeordnet, womit ein lineares
Array gebildet wird. Jedes Pixel in dem CCD-Array entspricht folglich
einem zugehörigen
Pixelabschnitt der beleuchteten Abtastzeile. Die einzelnen Pixel
in dem linearen Photosensorarray werden allgemein in der "Quer"-Richtung ausgerichtet,
d. h. senkrecht zu der Richtung der Bewegung der beleuchteten Abtastlinie
quer zu dem Objekt (ferner als "Abtastrichtung" bekannt). Jedes
Pixel des linearen Photosensorarrays weist folglich eine in der
Querrichtung gemessene Länge
und eine in der Abtastrichtung gemessene Breite auf. Bei den meisten
CCD-Arrays sind die Länge
und die Breite der Pixel gleich, typischerweise etwa 8 μm oder ähnlich in
jeder Dimension.
-
Die
Abtastrate in der Querrichtung ist eine Funktion der Anzahl der
einzelnen Zellen in dem CCD. Beispielsweise enthält ein allgemein verwendetes
CCD-Photosenorarray eine ausreichende Anzahl von einzelnen Zellen
oder Pixeln, um eine Abtastrate in der Querrichtung von etwa 600
Pixeln oder Punkten pro Zoll (600 ppi = 236,22 Punkte pro cm (ppcm);
ppi = points per inch) zu ermöglichen,
auf die hierin als ursprüngliche
Abtastrate in der Querrichtung Bezug genommen wird.
-
Die
Abtastrate in der Abtastrichtung ist umgekehrt auf das Produkt der
Abtastzeilendurchlaufrate und die CCD-Belichtungszeit (d. h. dem
Abtastintervall) bezogen. Daher kann die Abtastrate in der Abtastrichtung durch
Verringern der Abtastzeilendurchlaufrate, der CCD-Belichtungszeit
oder beidem erhöht
werden. Umgekehrt kann die Abtastrate in der Abtastrichtung durch
Erhöhen
der Abtastzeilendurchlaufrate, der CCD-Belichtungszeit oder beidem
verringert werden. Die "minimale
Abtastrate in der Abtastrichtung" für eine gegebene Belichtungszeit
ist die Abtastrate, die erreicht wird, wenn bei der maximalen Abtastzeilendurchlaufrate
bei dieser Belichtungszeit abgetastet wird. Beispielsweise führt eine
maximale Abtastzeilendurchlaufrate von etwa 8,4582 cm (= 3,33 Zoll)
pro Sekunde und eine maximale Belichtungszeit von etwa 5 Millisekunden
zu einer minimalen Abtastrate in der Abtastrichtung von etwa 23,62
ppcm (= 60 ppi).
-
Derzeit
erfordert eine optische Zeichenerkennung (OCR; OCR = Optical Character
Recognition) 118,11 ppcm (= 300 ppi) Abtastraten für genaue
Resultate. Folglich ist eine 118,11-ppcm-4-Bit-Grauabtastung (21,59 × 27,94
cm = 8,5 × 11
Zoll), was eine hohe Auflösung
und eine niedrige Bittiefe bedeutet, etwa 4,2 Megabyte. Eine Farbechtheit
erfordert eine 24-Bit-Farbabtastung.
Folglich ist eine 59,06-ppcm-24-Bit-Farbabtastung (21,59 × 27,94
cm), was eine niedrige Auflösung
und eine hohe Bittiefe bedeutet, etwa 6,3 Megabyte. Um eine Abtastung
eines Dokuments zu liefern, das sowohl Farbbilder oder Zeichnungen
und Geschriebenes, das eine OCR erfordert, aufweist, müßte die
Abtastung etwa 300 ppi bei 24 Bit (21,59 × 27,94 cm) sein, was etwa 25,24
Megabyte Speicher entspricht. Dementsprechend würde die Abtastung eines Dokuments,
das sowohl Text als auch Bilder umfaßt, eine ziemliche Speichermenge
erfordern. Bis jetzt wird die Software auf einem Computer das Farbbild
auf etwa 6,3 Megabyte hinunterabtasten, und das Farbbild wegwerfen,
um den Text zu erhalten. Dieser Prozeß ist extrem langsam, um denselben
mit Software durchzuführen,
und derselbe verbraucht unnötigerweise
eine große
Speichermenge. Eine weitere Alternative besteht darin, entweder
den Text oder die Graphiken zuerst abzutasten, und dann eine Abtastung
des anderen durchzuführen.
Dann könnte
das Dokument durch Software wiedererzeugt werden. Dies ist ebenso
ein sehr zeitaufwendiges Verfahren des Abtastens des Dokuments,
abgesehen davon, daß dasselbe
sehr viel Speicher verwendet.
-
Die
EP 0 685 963 A2 betrifft
einen Bildverarbeitungsprozeß,
bei dem Bilddaten von einer Empfangseinheit in eine Umwandlungseinheit
eingegeben werden, die die RGB-Bilddaten in Helligkeitsdaten und
Farbdaten umwandelt, diese entsprechend codiert und abspeichert.
Das Abtasten führt
nicht zur gleichzeitigen Wiedergabe eines Bildes mit hoher Auflösung und
eines Bildes mit niedriger Auflösung
-
Die
US-A-5,125,072 beschäftigt
sich mit der Erzeugung von bedruckten Dokumenten, wobei Daten unterschiedlicher
Quellen, z. B. Textinformationen und Video-Informationen von unterschiedlichen
Eingabegeräten
kombiniert werden.
-
Die
EP 0 507 601 A2 beschreibt
ein Bildverarbeitungsverfahren, bei dem Eingangsdaten von einem Eingang
einer ersten Farbbildcodiereinheit sowie einer zweiten Farbbildcodiereinheit
bereitgestellt werden. Diese Codiereinrichtungen bearbeiten entweder
binäre
Farbbilder oder Mehrebenenfarbbilder, also Bilddaten mit unterschiedlicher
Bittiefe.
-
Die
DE 36 20 463 C2 beschreibt
einen Farbkopierer, bei dem ausgewählt werden kann, ob eine Schwarz-Weiß-Kopie
oder eine Farb-Kopie erstellt werden soll.
-
Die
DE 34 17 188 C2 beschreibt
einen Ansatz, bei dem eine Schwarzkomponente aus den Farbkomponenten
eines Bildsignals herausgezogen wird, um eine Auflösung des
Farbbildes festzustellen.
-
Die
EP 0 744 860 A1 beschreibt
eine Bildlesevorrichtung mit einem Zeilensensor zum Lesen eines
Bildes eines Dokuments. Die Vorrichtung umfasst eine erste Umwandlungseinrichtung,
um Bilddaten von dem Zeilensensor in Mehrpegel-Bilddaten umzuwandeln.
Ferner ist eine zweite Umwandlungseinrichtung vorgesehen, um die
Mehrpegel-Bilddaten der ersten Umwandlungseinrichtung in Bi-Pegel-Bilddaten
umzuwandeln. Ferner ist eine Ausgabeeinrichtung vorgesehen, um entweder
die Mehrpegel-Bilddaten oder die Bi-Pegel-Bilddaten auszugeben,
wobei die Anzahl der gelesenen Pixel im Mehrpegel-Bild kleiner ist
als die Anzahl der gelesenen Pixel im Bi-Pegel-Bild.
-
Die
EP 0 320 755 B1 beschreibt
ein Bildverarbeitungssystem zum Erzeugen einer Darstellung eines Bildes
unter Verwendung von hochauflösenden
Graustufenbilddaten. Die Vorrichtung umfaßt eine Einrichtung zum Definieren
von Graustufenbilddaten mit niedriger Auflösung sowie einer Einrichtung
zum Definieren von binären
Schwarz- und Weiß-Bilddaten
mit hoher Auflösung,
sowie einer Einrichtung zum Zusammenführen der Bilddaten, zur Erzeugung
des Gesamtbildes.
-
Die
Aufgabe der vorliegenden Erfindung besteht darin, ein Verfahren
zu schaffen, mit dem eine Abtastvorrichtung ein Dokument abtasten
kann, das sowohl Text als auch Graphik aufweist, wobei das Verfahren die
Gesamtmenge der Daten, die von der Abtastrichtung zu dem Hostcomputer
gesendet wird (was derzeit eine Geschwindigkeitseinschränkung ist),
und die Gesamtmenge der Daten, die durch die Hostcomputersoftware
gespeichert und verarbeitet wird, erheblich reduziert.
-
Diese
Aufgabe wird durch ein Verfahren zum Erzeugen von Mehrfachwiedergaben
eines Bilds mit einer Abtastvorrichtung gemäß Anspruch 1, 2 oder 3 gelöst.
-
Die
obigen und weitere Aspekte der vorliegenden Erfindung werden durch
eine Mehrfachbildabtastvorrichtung erreicht, die eine Einzelabtastung
eines Dokuments durchführt,
das mehrere Typen von Bildern (z. B. Text und Graphik) enthält, und
die Mehrfachwiedergaben des gleichen Dokuments von der Abtastvorrichtung
zu dem Hostcomputer (z. B. ein Graustufenbild mit hoher Auflösung und
ein Farbbild mit niedriger Auflösung
und hoher Bittiefe) sendet, was folglich stark die gesamte Datenmenge
reduziert, die zu dem Hostcomputer gesendet und durch denselben
verarbeitet wird, z. B. von etwa 25,24 Megabyte auf etwa 10,5 Megabyte (ein
118,11-ppcm-4-Bit-Graubild
[21,59 × 27,94
cm], das sind 4,2 Megabyte, und ein 59,06-ppcm-24-Bit-Farbbild [21,59 × 27,94
cm], das sind 6,3 Megabyte), was eine 2,4-zu-1-Reduktion ist.
-
Die
Abtastvorrichtung der vorliegenden Erfindung sendet die Mehrfachbilder
verschachtelt auf einer Zeilenbasis zu dem Hostcomputer, z. B. mit
zwei Zeilen von Graudaten mit hoher Auflösung und dann einer Zeile von
Farbdaten mit niedriger Auflösung,
wenn das Auflösungsverhältnis zwischen
den Bildern Zwei ist. Der Vorteil der vorliegenden Erfindung besteht
darin, daß die
Hostsoftware weniger Informationen verarbeiten und speichern muß, und daß weniger
Informationen von der Abtastvorrichtung zu dem Host gesendet werden müssen, was
eine derzeitige Einschränkung
der Abtastvorrichtungsgeschwindigkeit ist.
-
Die
vorliegende Erfindung weist ferner Hostcomputersoftware auf, die
den Datenstrom von verschachtelten Bildern in einzelne Bilder analysieren
kann, die dann für
eine Manipulation und eine weitere Verarbeitung durch den Hostcomputer
bereit sind.
-
Die
vorliegende Erfindung kann ein Verfahren zum Erzeugen von Mehrfachwiedergaben
eines Bilds mit einer Abtastvorrichtung aufweisen, wobei das Verfahren
folgende Schritte aufweist: Durchführen einer Einzelabtastung
des Bilds mit der Abtastvorrichtung; und Erzeugen von mehr als einer
Wiedergabe des Bilds, das durch die Einzelabtastung des Bilds erhalten
wurde, durch die Abtastvorrichtung. Der Schritt des Erzeugens von
mehr als einer Wiedergabe des Bilds, das aus einer Einzelabtastung
des Bilds erhalten wurde, kann ferner den Schritt des Erzeugens
von mindestens einem Graustufenbild und mindestens einem Farbbild
aufweisen, der ferner den Schritt des Erzeugens von mindestens einem
Graustufenbild mit hoher Auflösung
und von mindestens einem Farbbild mit niedriger Auflösung und
hoher Bittiefe aufweist. Sobald die Abtastvorrichtung mehr als eine
Wiedergabe des Einzelabtastungsbilds erzeugt, kann die Abtastvorrichtung
mehr als eine Wiedergabe des Bilds, das aus der Einzelabtastung
des Bilds erhalten wurde, zu einem Hostcomputer für ein weiteres
Verarbeiten senden.
-
Die
vorliegende Erfindung weist ferner eine Abtastvorrichtung mit folgenden
Merkmalen auf: eine Bildverarbeitungseinheit zum Erzeugen von mehr
als einer Wiedergabe eines Bilds einer Einzelabtastung, wobei die
Bildverarbeitungseinheit einen Vorteiler oder Prescaler aufweisen
kann, wobei der Vorteiler ein Einzelabtastungsbild in mehr als eine
Wiedergabe des Einzelabtastungsbilds aufteilt. Der Vorteiler kann
ferner das Einzelabtastungsbild in mindestens eine Monochromwiedergabe
des Einzelabtastungsbilds und mindestens eine Farbwiedergabe des
Einzelabtastungsbilds aufteilen. Ferner kann der Vorteiler das Einzelabtastungsbild
in mindestens ein Graustufenbild mit hoher Auflösung und ein Farbbild mit niedriger
Auflösung
und hoher Bittiefe aufteilen.
-
Bevorzugte
Ausführungsbeispiele
der vorliegenden Erfindung werden nachfolgend unter Bezugnahme auf
die beiliegenden Zeichnungen näher
erläutert.
Es zeigen:
-
1 ein
Blockdiagramm des Datenwegs für
eine Mehrfachbildabtastvorrichtung gemäß der vorliegenden Erfindung;
-
2 ein
detaillierteres Blockdiagramm des Datenwegs des Bildvorprozessors
für eine
Mehrfachbildabtastvorrichtung gemäß der vorliegenden Erfindung;
-
3 ein
detaillierteres Blockdiagramm des Datenwegs des Bildnachprozessors
für eine
Mehrfachbildabtastvorrichtung gemäß der vorliegenden Erfindung;
-
4 ein
detaillierteres Blockdiagramm des Datenwegs von der Mehrfachbildabtastvorrichtung
zu dem Hostcomputer gemäß der vorliegenden
Erfindung; und
-
5 ein
Flußdiagramm
eines Verfahrens des Analysierens eines Datenstroms, der mehr als
einen Datensatz enthält
gemäß der vorliegenden
Erfindung.
-
Die
vorliegende Erfindung schafft eine Abtastvorrichtung die zwei Sätze von
Abtastdaten gleichzeitig aus einer Einzelabtastung erhalten kann.
Obwohl die Region der Abtastung gleich ist, können die Datentypen und Auflösungen der
zwei Ansichten variieren. Beispielsweise wird, wenn eine Abtastung
eines Dokuments durchgeführt
wird, eine Bildverarbeitungseinheit in der Abtastvorrichtung ein
Graustufenbild mit hoher Auflösung
und ein 24-Bit-Farbbild mit niedriger Auflösung des Dokuments erzeugen,
das abgetastet wird, und dann beide Wiedergaben des abgetasteten
Dokuments zu einem Hostcomputer in einem Datenstrom verschachtelt senden,
den der Hostcomputer dann analysiert, um die zwei Ansichten des abgetasteten
Dokuments neu zu erzeugen.
-
1 zeigt
ein Blockdiagramm des Datenwegs für eine Doppelbildabtastvorrichtung,
wobei der Bereich der gestrichelten Linie 100 die Abtastvorrichtungsfunktionen
sind, die durch eine Bildverarbeitungseinheit implementiert werden,
und wobei der Bereich der gestrichelten Linie 102 die Hostcomputerfunktionen
sind. Es sei bemerkt, daß,
obwohl das Ausführungsbeispiel,
das hierin beschrieben ist, eine Doppelbildabtastvorrichtung ist,
die ein Schwarzweiß-
und ein Farbbild aufweist, die Konzepte auf Mehrfachbilder ausdehnbar
sind. Eine Bildverarbeitungseinheit 100 ist in einer ASIC
(ASIC = Application Specific Circuit = anwendungsspezifische integrierte
Schaltung) implementiert, mit funktionellen Details, die im folgenden
unter Bezugnahme auf die 2 und 3 beschrieben
sind. Wenn ein Dokument abgetastet wird, gibt ein CCD-Array 104 oder
ein anderes bekanntes Photosensorbauelement ein Rot-Datensignal 106,
ein Blau-Datensignal 108 und ein Grün-Datensignal 110 aus.
Diese drei Datensignale werden dann in ein Farbbilddatensignal 128 und
in ein Monochrombilddatensignal 130 durch einen Bildvorprozessor 112 umgewandelt.
Der Bildvorprozessor 112 plaziert das Farbbilddatensignal 128 in
einem Farbpufferabschnitt 118 eines Puffers 114 und
das Monochrombilddatensignal 130 in einem Monochrompufferabschnitt 116 des
Puffers 114.
-
Als
nächstes
verwendet ein Bildnachprozessor 120 die Bilddaten in dem
Farbpuffer 118 und dem Monochrompuffer 116, um
entweder eine oder zwei Ansichten des Fensters zu erzeugen, das
durch die Abtastvorrichtung, wie durch den Hostcomputer spezifiziert,
abgetastet wurde. Wenn zwei Ansichten erzeugt werden, wird der Bildnachprozessor
die zwei Ansichten zu dem Hostcomputer in einem verschachtelten
Datenstrom 136 senden.
-
Wenn
der Hostcomputer die zwei Ansichten des Abtastfensters empfängt, wird
ein Datenanalysator 122 den Datenstrom 136 in
ein Farbbild 124 und ein Monochrombild 126 analysieren.
Die zwei Ansichten sind dann bereit, um durch den Hostcomputer manipuliert
zu werden. Der Vorteil besteht darin, daß weniger Informationen durch
die Hostsoftware zu verarbeiten und zu speichern sind, und daß weniger
Informationen von der Abtastvorrichtung zu dem Host zu senden sind,
was eine derzeitige Einschränkung
der Geschwindigkeit von Abtastvorrichtungen ist.
-
I. MEHRFACHBILDABTASTVORRICHTUNGEN
-
Die
Doppelbildabtastvorrichtung reduziert die erforderlichen Daten,
die von der Abtastvorrichtung zu dem Hostcomputer für vollständige Seiten-
(Text- und Graphik/Bild-) Informationen mit einer Abtastung zu senden
sind. Derzeit erfordert die optische Zeichenerkennung 118,11-ppcm-Abtastraten
(= 300-ppi-Abtastraten) für genaue
Resultate. Für
eine Farbechtheit ist eine 24-Bit-Farbabtastung erforderlich. Um
dies durchzuführen, wäre die typische
Abtastung 118,11 ppcm (= 300 ppi) bei 24 Bit (21,59 × 27,94
cm), was 25,24 Megabyte entspricht. Läßt man die Abtastvorrichtung
zwei Wiedergaben der gleichen Seiten senden, ein Graustufenbild
mit hoher Auflösung
und ein 24-Bit-Farbbild mit niedriger Auflösung, so wird die Gesamtdatenmenge,
die zu der Hostsoftware gesendet wird, und durch dieselbe verarbeitet
wird, stark reduziert. Ein 118,11-ppcm-4-Bit-Graustufenbild (21,59 × 27,94
cm) ist etwa 4,2 Megabyte und ein 59,06-ppcm-24-Bit-Farbbild (21,59 × 27,94
cm) entspricht etwa 6,3 Megabyte, was eine Gesamtmenge von 10,5
Megabyte ist, und etwa eine 2,4-zu-1-Reduktion der Daten ist.
-
Die
Mehrfachbildabtastung der vorliegenden Erfindung weist eine Bildverarbeitungseinheit
auf, die die oben erwähnten
Operationen sehr schnell durchführt.
Die Bildverarbeitungseinheit kann in einer herkömmlichen feldprogrammierbaren
Gatteranordnung oder einem Gatearray, einer ASIC oder dergleichen
unter Verwendung von Verilog implementiert werden, z. B. mit der
Funktionsbeschreibung, die hierin vorgesehen ist. Die Bildverarbeitungseinheit
der Mehrfachbildabtast vorrichtung weist den Bildvorprozessor 112,
den Puffer 116 und den Bildnachprozessor 120 auf,
die im folgenden detaillierter beschrieben sind.
-
A. Bildvorprozessor
-
Bezugnehmend
auf 2 nimmt der Bildvorprozessor 112 die
RGB-Bilddaten (Rot 106, Grün 108 und Blau 110)
von dem CCD 104, und derselbe plaziert entweder eine oder
zwei unterschiedliche Darstellungen dieses Bild in den Puffer 114.
Eine der möglichen
Darstellungen ist ein Farbbild und die andere ist ein Monochrombild,
das durch Auswählen
lediglich eines der drei Farbkanäle
(rot, grün
oder blau) erzeugt wird. Die zwei unterschiedlichen Pufferbilder
weisen die gleiche y-Auflösung
auf, dieselben können
jedoch unterschiedliche x-Auflösungen
und Bittiefen aufweisen. Die Bittiefe jedes Bildes kann entweder
zu 12 Bit oder 8 Bit gewählt werden,
und die x-Auflösung
kann die CCD-Auflösung
geteilt durch jeden ganzzahligen Faktor von 1 bis 63 sein. Die CCD-Auflösung ist
die gleiche für
beide Bilder, und dieselbe kann entweder 118,11 ppcm (= 300 ppi) oder
59,06 ppcm (= 150 ppi) sein. Beispielsweise kann der Bildvorprozessor 112 programmiert
werden, um 118,11-ppcm- (x-) mal-118,11-ppcm- (y-) 8-Bit-Monochrom- (Grünkanal-)
Daten und 39,37 ppcm (x) mal 118,11 ppcm (y) 12-Bit-Farbdaten in
den Puffer zu stellen. Es sei bemerkt, daß nicht beide Bilder erzeugt
werden müssen.
Der Vorprozessor kann programmiert werden, um lediglich die Farbdarstellung
oder lediglich die Monchromdarstellung oder beides zu erzeugen.
-
Die
vier Hauptfunktionen, die durch den Bildvorprozessor der vorliegenden
Erfindung durchgeführt werden,
sind detaillierter im folgenden und unter Bezugnahme auf die 1 und 2 beschrieben.
-
1. A/D-Wandler
-
Der
A/D-Wandler nimmt die analogen 118,11-ppcm- oder 59,06-ppcm-RGB-Bilddaten
von dem CCD-Array und wandelt entweder einen der drei oder alle
drei Farbwerte für
jedes Pixel in 10-Bit-Digitalzahlen um. Diese Digitalwerte werden
auf 12 Bit aufgefüllt
und zu einer Dunkelklammer gesendet.
-
2. Dunkelklammer
-
Die
Dunkelklammer zieht den durchschnittlichen Dunkelstrom für die Zeile
von jedem Pixelwert ab. Pixel innerhalb des gewünschten Abtastfensters werden
dann zu einem Kompensator geschickt.
-
3. Kompensator
-
Der
Kompensator entfernt Pixelvariationen, die durch eine nicht gleichmäßige Beleuchtung
und ein nicht gleichmäßiges CCD-Ansprechverhalten
bewirkt werden. Kompensierte Pixelwerte werden dann zu dem Vorteiler
gesendet.
-
4. Vorteiler
-
Der
Vorteiler teilt die kompensierten Pixelwerte in ein Monochrombild
und ein Farbbild auf, derselbe reduziert die x-Auflösung jedes
Bilds durch einen unterschiedlichen ganzzahligen Faktor, und derselbe
stellt eines oder beide der resultierenden Bilder in den Puffer.
Der Vorteiler teilt die Bilddaten von dem Kompensator in einen Monochromstrom
und einen Farbstrom, derselbe reduziert die x-Auflösung jedes
Stroms durch einen unterschiedlichen ganzzahligen Faktor, und derselbe
speichert dann einen oder beide der resultierenden Ströme in dem
Puffer. Dies wird durchgeführt,
um die Menge des Pufferraums zu minimieren, der durch jede Zeile von
Bilddaten verbraucht wird, insbesondere wenn zwei Ansichten durch
den Host angefordert werden. Beispielsweise würde, wenn kein Vorteiler vorgesehen
wäre, und
der Host eine 118,11-ppcm-Monochromansicht und eine 39,37-ppcm-Farbansicht eines
21,59 cm (= 8,5 Zoll) breiten Abtastfensters angefordert hätte, jede Zeile
des Bilds 11,475 Kbyte Pufferraum verbrauchen (21,59 cm, 118,11
ppcm, 3 Farben/Pixel, 1,5 Byte/Farbe). Mit dem Vorteiler verbraucht
jedoch jede Zeile lediglich 6,375 Kbyte (21,59 cm, 118,11 ppcm,
1 Farbe/Pixel + 21,59 cm, 39,37 ppcm, 3 Farben/Pixel, 1,5 Byte/Farbe).
-
Es
sei bemerkt, daß der
Vorteiler entweder volle 12-Bit- oder
abgeschnittene 8-Bit-Daten in den Puffer stellen kann. Die Datenbreite
kann unabhängig
für jeden
Datenstrom spezifiziert werden. Der Vorteiler reduziert die x-Auflösung der
zwei Datenströme
durch Zusammenmitteln benachbarter Pixel und nicht durch einfaches
Weglassen von Pixeln. Dies tiefpaßfiltert wirksam die Bilddaten
bevor dieselben bei der niedrigeren Auflösung abgetastet werden, und
dies hilft Bildunschönheiten
oder das Aliasing zu reduzieren. Der Vorteiler kann die x-Auflösung durch
jeden ganzzahligen Faktor zwischen 1 und 63 reduzieren.
-
B. Bildnachprozessor
-
Der
Bildnachprozessor verwendet die Bilder in dem Puffer, um entweder
eine oder zwei Ansichten des Abtastfensters, das durch den Host
spezifiziert ist, zu erzeugen. Jede Ansicht wird entweder aus dem
Farbbild oder aus dem Monochrombild erzeugt. Die zwei Ansichten
können
aus dem gleichen oder unterschiedlichen Bildern erzeugt werden.
Beispielsweise könnte
eine Ansicht aus dem Farbbild und die andere Ansicht aus dem Monochrombild
erzeugt werden, ODER beide Ansichten könnten aus dem Farbbild erzeugt
werden, ODER beide Ansichten könnten
aus dem Monochrombild erzeugt werden. Die zwei Ansichten können unterschiedliche
y-Auflösung
aufwei sen, die y-Auflösung
jeder Ansicht muß jedoch
die Puffer-y-Auflösung geteilt
durch einen ganzzahligen Faktor von 1 bis 16 sein. Die zwei Ansichten
können
ferner unterschiedliche x-Auflösungen aufweisen,
die jede Auflösung
von 1/4 bis 2 mal der x-Auflösung
des Pufferbilds sein können,
aus dem die Ansicht erzeugt wird. Jede Ansicht kann ferner unterschiedliche
Matrizen, Tontabellen, Datentypen, etc. (mit einigen Einschränkungen,
die detaillierter im folgenden abgedeckt werden) aufweisen.
-
Wenn
zwei Ansichten freigegeben werden, werden die Ansichten verschachtelt
auf einer Zeilenbasis abhängig
von dem Verhältnis
der y-Auflösungen
derselben ausgesendet. Wenn beispielsweise die y-Auflösung der
ersten Ansicht
300 ist, und die y-Auflösung der zweiten Ansicht
150 ist,
dann wechseln die Daten mit zwei Zeilen der Bilddaten der ersten
Ansicht und dann einer Zeile der Bilddaten der zweiten Ansicht (außer am Anfang)
ab. Andere Beispiele von verschachtelten Daten als Verhältnis der
y-Auflösung
sind:
(2
zu 1 Verhältnis) | -> Ausgabe 118,11-zu-59,06-Verhältnis: |
| 118,11,
59,06, 118,11, 118,11, 59,06, 118,11, 118,11, 59,06 .... |
(1
zu 2 Verhältnis) | -> Ausgabe 59,06-zu-118,11-Verhältnis: |
| 59,06,
118,11, 118,11, 59,06, 118,11, 118,11, 59,06, 118,11 .... |
(3
zu 1 Verhältnis) | -> Ausgabe 118,11-zu-39,37-Verhältnis: |
| 118,11,
118,11, 39,37, 118,11, 118,11, 118,11, 39,37, 118,11, 118,11, 118,11
.... |
(1
zu 3 Verhältnis) | -> Ausgabe 39,37-zu-118,11-Verhältnis: |
| 118,11,
39,37, 118,11, 118,11, 118,11, 39,37, 118,11, 118,11, 118,11, 39,37
.... |
(4
zu 1 Verhältnis) | -> Ausgabe 118,11-zu-29,53-Verhältnis: |
| 118,11,
118,11, 29,53, 118,11, 118,11, 118,11, 118,11, 29,53, 118,11, 118,11.... |
(1
zu 4 Verhältnis) | -> Ausgabe 29,53-zu-118,11-Verhältnis: |
| 118,11,
29,53, 118,11, 118,11, 118,11, 118,11, 29,53, 118,11, 118,11, 118,11.... |
(5
zu 1 Verhältnis) | -> Ausgabe 118,11-zu-60-Verhältnis: |
| 118,11,
118,11, 118,11, 60, 118,11, 118,11, 118,11, 118,11, 118,11, 60.... |
(1
zu 5 Verhältnis) | -> Ausgabe 60-zu-118,11-Verhältnis: |
| 118,11,
118,11, 60, 118,11, 118,11, 118,11, 118,11, 118,11, 60, 118,11.... |
-
Es
sei bemerkt, daß die
vorhergehenden Beispiele lediglich exemplarisch sind; andere mögliche Verhältnisse
der aktuellen Implementation gehen bis 1-zu-9.
-
Die
sechs Hauptoperationen, die durch den Bildnachprozessor der vorliegenden
Erfindung durchgeführt
werden, sind detaillierter im folgenden und unter Bezugnahme auf
die 1 und 3 beschrieben.
-
1. Zeilenmischer
-
Der
Zeilenmischer liest 1 bis 9 Zeilen von dem geeigneten Bild (farbig
oder schwarzweiß),
wobei derselbe optional einige Zeilen zusammenmittelt, bevor die
resultierenden Zeilen zu einem Matrixer gesendet werden. Der Zeilenmischer
verschachtelt im wesentlichen die zwei oder mehreren Wiedergaben
des abgetasteten Bilds in einen einzelnen verschachtelten Datenstrom,
der zu dem Hostcomputer gesendet werden soll. Durch Verschachteln
der zwei oder mehreren Wiedergaben des abgetasteten Bilds auf einer
Zeile-für-Zeile-Basis muß die Abtastvorrichtung
nicht alles jeder Wiedergabe speichern, sowie alle Wiedergaben erzeugt,
verschachtelt und zu dem Hostcomputer in Echtzeit gesendet werden – d. h.
auf einer Zeile-für-Zeile-Basis.
-
Der
Zeilenmischer liest 1 bis 9 Datenzeilen von entweder dem Farbbild
oder dem Schwarzweißbild
und mittelt einige der Zeilen zusammen, um die Anzahl der Berechnungen
zu reduzieren, die durch den Matrixer durchgeführt werden müssen. Zusätzlich kann
der Zeilenmischer eine einfache Form des y-Auflösungvorteilens durch Zusammenmitteln
zusätzlicher
benachbarter Zeilen vorsehen. Beispielsweise kann der Zeilenmischer
neun Zeilen von dem Puffer lesen, jeweils drei benachbarte Zeilen
mitteln, um die effektive y-Auflösung durch
einen Faktor von 3 zu reduzieren, die zwei verbleibenden äußeren Zeilen
für eine
Kernsymmetrie mitteln und dann die resultierenden zwei Zeilen zu
dem Matrixer senden. Daher hat der Zeilenmischer die Anzahl der Zeilen,
die durch den Matrixer verarbeitet werden müssen, von 9 auf 2 reduziert.
-
Jede
ganzzahlige Anzahl von benachbarten Zeilen von 1 bis N (wobei N
die Anzahl der Zeilen ist, die aus dem Puffer gelesen werden – bis zu
9 Zeilen) kann zusammengemittelt werden. Nachdem jedoch benachbarte
Zeilen gemittelt wurden, muß die
resultierende Anzahl der Zeilen 1, 3, 5, 7 oder 9 sein, derart,
daß symmetrische
Zeilen weiter gemittelt werden können,
bevor dieselben weiter an den Matrixer geleitet werden. Dies bedeutet,
daß, wenn
keine benachbarten Zeilen gemittelt werden, entweder 1-, 3-, 5-,
7- oder 9-Zeilenkerne verwendet werden können. Wenn jedoch zwei oder
drei benachbarte Zeilen gemittelt werden, können lediglich 1- oder 3-Zeilenkerne
verwendet werden. Wenn vier bis neun benachbarte Zeilen gemittelt
werden, kann lediglich ein 1-Zeilenkern verwendet werden.
-
Die
Zeilen werden durch Addieren der entsprechenden Pixel jeder Zeile
und Teilen durch einen Teilungsfaktor von 1, 2, 4 oder 8 gemittelt.
Daher wird ein exaktes Mitteln lediglich erhalten, wenn 1, 2, 4
oder 8 Zeilen zusammengemittelt werden. Der Zeilenmischer wird überlaufen,
wenn die Anzahl der Zeilen, die zusammenaddiert wurden, geteilt
durch den Teilungsfaktor größer als
2 ist. Daher sollte, wenn ein 3, 5, 6, 7 oder 9 Zeilenmitteln erwünscht ist,
der nächstniedrigere
Teilungsfaktor verwendet werden, und die Matrixerkoeffizienten sollten
reduziert werden, um die zusätzliche "Verstärkung", die in den Zeilenmischer
eingeführt
wird, zu kompensieren. Die einzigste Ausnahme zu dieser Regel besteht
darin, wenn 9 Zeilen von dem Puffer gelesen werden, und jede drei
benachbarten Zeilen gemittelt werden, und dann ein 3-Zeilenkern
verwendet wird. Bei diesem Fall reduziert der Zeilenmischer schließlich 9
Zeilen auf 2. Eine dieser zwei Zeilen (die eine, die der Mitte des
Kerns entspricht) wird durch Addieren der drei Mittelzeilen von
dem Puffer erhalten. Die andere Zeile wird durch Addieren der äußeren 6
Zeilen von dem Puffer erhalten. Es kann jedoch lediglich ein Divisor
ausgewählt
werden, und derselbe muß derart
ausgewählt
werden, daß keine
Zeile, die aus dem Zeilenmischer herauskommt, mit mehr als 2 multipliziert
wurde. Daher muß bei
diesem Beispiel ein Divisor von 4 ausgewählt werden. Da die Verstärkung des
Zeilenmischers jetzt 3/4 ist, müssen
die Matrixerkoeffizienten unter Umständen erhöht werden, um zu kompensieren.
-
Das
Pufferbild, das verwendet werden soll (farbig oder monochrom), die
Anzahl der Zeilen, die aus diesem Bild gelesen werden, die Anzahl
der gemittelten benachbarten Zeilen und der Teilungsfaktor können unabhängig für jede Ansicht,
die erzeugt werden soll, spezifiziert werden.
-
2. Matrixer
-
Der
Matrixer "mischt" die drei Farben
jedes Pixels, um eine einzelne Farbe oder drei neue Farben zu erzeugen,
bevor die Zeilen zu einer Tontabellenvorrichtung weitergesendet
werden.
-
3. Tontabellenvorrichtung
-
Die
Tontabellenvorrichtung oder der Tonmapper verwendet Nachschlagtabellen
und eine Interpolation, um den Bildkontrast und die Intensität vor dem
Senden der Daten zu dem Formatierer einzustellen. Die Ausgabepixel
werden durch die Tontabellenvorrichtung weiter transformiert, die
dieselben durch eine Nachschlagtabelle schickt, die eine Übertragungskurve
enthält,
die Tontabelle genannt wird. Tontabellen werden verwendet, um eine
Gammakorrektur durchzuführen,
um den Kontrast und die Intensität
einzustellen, um Schatten zu verstärken, etc.
-
4. Formatierer
-
Der
Formatierer führt
optional eine Schwellenwertbildung oder Rasterung der Daten vor
dem Packen derselben in eine spezifizierte Datenbreite durch. Diese
Stufe kann ferner die Daten, wenn gewünscht, vor dem Senden derselben
zu einer Komprimierungsvorrichtung invertieren.
-
5. Komprimierungsvorrichtung
-
Die
Komprimierungsvorrichtung verwendet optional den Packbits-Algorithmus,
um die Zeile der Bilddaten vor dem Senden derselben zu dem Host
zu komprimieren.
-
II. MEHRFACHANSICHTEN
VON EINEM ABTASTFENSTER
-
Die
Mehrfachbildabtastvorrichtung der vorliegenden Erfindung weist die
Fähigkeit
auf, zwei Bilder aus einer einzigen Abtastung zu erhalten. Die Abtastvorrichtungsbefehlssprachen-Implementation (SCL-Implementation;
SCL = Scanner Command Language) von Mehrfachbildern trennt das Konzept
des Abtastfensters von der speziellen Ansicht dieses Fensters. Die
SCL ist die Befehlssprache, die für Abtastvorrichtungen verwendet
wird und die allgemein bekannt ist. Es sei bemerkt, daß jede Befehlssprache
verwendet werden könnte.
Bei dem bevorzugten Ausführungsbeispiel
wird jeoch die SCL verwendet, um Mehrfachansichten aus einem Abtastfenster
zu erzeugen. Das Abtastfenster ist der physische Bereich der Seite,
der abgetastet wird (definiert durch die x- und y-Position und die
Ausdehnungen). Die Ansicht dieses Abtastfensters sind die Daten, die
innerhalb des physischen Bereichs (definiert durch die Auflösung, den
Datentyp, den Spiegel, die Umkehrung, etc.) enthalten sind. Es gibt
Abtastvorrichtungseinstellungen, die fenster- und ansichtsunabhängig (d.
h. ist ADF angebracht, Seriennummer etc.) sind. Der Vorteil des
Trennens der Ansicht und des Fensters besteht darin, daß dasselbe
die Definition von Mehrfachansichten auf Mehrfachfenster mit Mehrfachansichten
erweiterbar macht. Keine andere Abtastvorrichtung weist Mehrfachbildfähigkeiten
oder eine Implementation von Mehrfachansichten auf. Es sei bemerkt,
daß, obwohl
bei der vorliegenden Erfindung von Mehrfachansichten eine Einzelabtastung
verwendet wird, um die Mehrfachansichten des gleichen Dokuments
zu erhalten, es irrelevant ist, ob eine oder mehrere Abtastungen
verwendet werden, um Mehrfachansichten des gleichen Dokuments zu
erhalten. Es spielt keine Rolle, wie die Daten (aus einer oder mehreren
Abtastungen) erhalten werden, der wichtige Punkt besteht darin,
daß die
SCL-Implementation von mehr als einer Ansicht unterschiedliche Daten
ermöglicht,
um den gleichen Raum darzustellen.
-
Bei
einem bevorzugten Ausführungsbeispiel
wird der Hewlett-Packard
ScanJet 5p verwendet, um eine Erfassung von zwei Ansichten von Daten
gleichzeitig zu ermöglichen.
Es sollte jedoch bemerkt werden, daß jede Farbabtastvorrichtung
von jedem Hersteller modifiziert werden könnte, um die vorliegende Erfindung
zu implementieren. Während
die Region der Abtastung gleich ist, können die Datentypen und die
Auflösungen der
zwei Ansichten variieren. Die Grenzen der zwei Variablensätzen der
zwei Ansichten sind mit dem SetView- Type-Makro in SCL wie folgt beschrieben:
INT16
DualScan(INT16 Phase,
PUINT8 PBufferView0,
INT32 LengthView0,
PINT32
pReceivedView0,
PUINT8 PBufferView1,
INT32 LengthView1,
PINT32
PReceivedView1);
-
Die
Parameter werden, wie im folgenden gezeigt, eingestellt:
Phase – Flag,
die anzeigt, ob dies die erste Übertragung
in einer Sequenz ist. Muß einer
der folgenden Werte sein:
SL_FIRST oder SL_SCAN, der erste
Puffer bei der Übertragung,
SL_ADF_SCAN,
der erste Puffer bei einer ADF-Übertragung
(derzeit lediglich durch HP1750A und HP5110A unterstützt),
SL_NEXT,
jede zusätzliche
Pufferübertragung;
PbufferView0 | – Zeiger
auf den Ansicht-0-Datenpuffer, um die Daten zu empfangen; |
LengthView0 | – Größe des Ansicht-0-Datenpuffers
in Bytes; |
pReceivedView0 | – Zeiger
zu der tatsächlichen
Anzahl der Bytes, die von der Abtastrichtung für die Ansicht 0 empfangen wurden; |
pBufferView1 | – Zeiger
zu dem Ansicht-1-Datenpuffer, um die Daten zu empfangen; |
LengthView1 | – Größe des Ansicht-1-Puffers
in Bytes; |
pReceivedView1 | – Zeiger
zu der tatsächlichen
Anzahl der Bytes, die von der Abtastvorrichtung für die Ansicht
1 empfangen wurde. |
-
Diese
Funktion ist nahezu identisch zu der Scan()-Funktion, die denjenigen
gut bekannt ist, die sich mit SCL auskennen, ausgenommen, daß dieselbe
die Doppelansichtbetriebsart der Abtastvorrichtung unterstützt.
-
Einige
der Vorgabeeinstellungen für
die zwei Ansichten einer Abtastung sind im folgenden in der Tabelle
1 gezeigt.
-
-
-
-
-
In
der obigen Tabelle zeigt "*", daß der Parameter
nicht unabhängig
für die
zwei Ansichten eingestellt wird. Dies könnte jedoch modifiziert werden,
um es zu ermöglichen,
daß einige
oder alle dieser Parameter unabhängig
für diese
zwei Ansichten eingestellt werden können. Ferner spiegeln diese
Parametereinstellungen und SCL-Befehle die Implementation wider,
die durch die Erfinder verwendet wird, und dieselben sollen nicht die
einzig mögliche
Kombination von Parametereinstellungen oder SCL-Befehlen sein, die
Mehrfachansichten von einem Einzelabtastungskonzept der vorliegenden
Erfindung ermöglichen.
-
Die
folgenden Befehle wurden hinzugefügt, um die Anzahl der Ansichten
auszuwählen,
die durch die Abtastvorrichtung zu dem Hostcomputer gesendet werden
soll:
Befehl: | Select
Number of Views (= Anzahl der Ansichten auswählen) |
Escape
Sequenz: | Esc*f#A |
Abfrage-ID: | 10466 |
Bereich: | 1–2 |
Vorgabe: | 1 |
Makro: | SetNumberofViews(x) |
Sende
Befehl: | SendCommand(SL_NUM_OF_VIEWS,x) |
x kann entweder 1 oder 2 sein.
-
Dieser
Befehl wird auswählen,
wie viele Ansichten des Fensters durch die Abtastvorrichtung gesendet werden.
Die Vorgabe wird 1 sein. Die durch die vorliegende Implementation
unterstützten
Werte sind 1 = eine Ansicht, 2 = zwei Ansichten. Wenn zwei Ansichten
freigegeben sind, werden die Daten für die zwei Ansichten, abhängig von
dem Quantum der y-Auflösungen
derselben, verschachtelt auf einer Zeilenbasis ausgesendet. Wenn
beispielsweise die y-Auflösung
der ersten Ansicht 300 ist, und die y-Auflösung der
zweiten Ansicht 150 ist, dann wechseln die Daten mit zwei
Zeilen der Ansicht des ersten Bilds und dann einer Zeile des Bilds
der zweiten Ansicht (außer
zu Beginn; siehe die obigen Beispiele in dem Bildnachprozessorabschnitt)
ab.
-
Der
Befehl Select view (= Auswahl der Ansicht) wird verwendet, um die
Abtastvorrichtungseinstellungen für die Ansicht oder die Ansichten,
mit denen gearbeitet werden soll, wie folgt einzustellen:
Befehl: | Select
view |
Escape
Sequenz: | Esc*f#B |
Abfrage-ID: | 10467 |
Bereich: | 0–1 |
Vorgabe: | 0 |
Makro: | SetViewType(x) |
Sende
Befehl: | SendCommand(SL_VIEW_TYPE,x) |
x kann 0 für
die Ansicht Eins oder 1 für
die Ansicht Zwei sein.
-
Die
Ansicht muß vor
dem Auswählen
der Abtastvorrichtungseinstellungen ausgewählt werden. Dieser Befehl wählt aus,
auf welche Ansicht die folgenden SCL-Befehle oder Abfragen Bezug
nehmen. Unterstützte Werte
sind: 0 (Ansicht Eins) und 1 (Ansicht Zwei). Der Vorgabewert ist
Ansicht Eins.
-
III. VERFAHREN ZUM ANALYSIEREN
VON MEHRFACHBILDABTASTDATEN
-
Eine
Hostcomputersoftware analysiert die verschachtelten Mehrfachbildaten,
die durch die Abtastvorrichtung gesendet werden. Bei der vorliegenden
Implementation ermöglichen
es das Softwareprogramm DualScan (= Doppelabtastung) und seine unterstützenden
Module, daß ein
Anwender, der die Details des Mehrfachbilddatenformats nicht kennt,
ohne weiteres Mehrfachbilddaten von der Abtastvorrichtung in bekannte Tiff-Dateien
analysiert, die dann mit Programmen, wie z. B. PhotoShop, verwendet
werden können.
DualScan ist ein Softwareprogramm, das durch die Hewlett-Packard
Co. verkauft wird. Es ist möglich,
daß eines
oder beide der Bilder komprimierte Daten enthalten, die weiter das
Analyseproblem verkomplizieren. Die DualScan-Software ermöglicht die
Verwendung einer Abtastvorrichtung mit einer Mehrfachbildfähigkeit
der Hardware derselben durch Analysieren des verschachtelten Datenstroms,
der von der Abtastvorrichtung empfangen wird. Fachleute können ohne
weiteres das Programm DualScan erweitern, um das Analysieren von
Mehrfachansichten von Daten und nicht zwei Ansichten, wie es bei
der vorliegenden Implementation beschrieben ist, zu umfassen.
-
4 ist
ein Blockdiagramm eines Doppelbilddatenstroms 136, der
von der Abtastvorrichtung (nicht gezeigt) gesendet wird, und durch
einen Datenstromanalysator 122 an dem Hostcomputer (nicht
gezeigt) in Ansicht-Eins-Daten (Monochrombild) 126 und
Ansicht-Zwei-Daten (Farbbild) 124 analysiert wird. Der
Betrieb des Datenstromanalysators wird weiter unter Bezugnahme auf 5 erklärt, die
ein Flußdiagramm
der Datenstromanalysefunktion ist.
-
Bei
dem Anfangseintrittspunkt werden die Auflösung, der Komprimierungszustand,
die Bytes pro Zeile für
jedes der Bilder durch den Datenanalysator bei 200 abgefragt.
Als nächstes
werden die Bildverhältnisse
für jede
Ansicht durch den Datenanalysator bei 202 berechnet. Dann
werden verschachtelte Bilddaten durch den Datenanalysator von der
Abtastvorrichtung bei 204 empfangen. Der Datenanalysator
kopiert dann eine Zeile von Abtastdaten zu dem geeigneten Ausgabepuffer,
wobei derselbe die Daten, wenn es notwendig ist, bei 206 dekomprimiert.
Der Datenanalysator wechselt dann (210) basierend auf den
Bildverhältnissen,
die bei 202 berechnet wurden, die Ansichten. Wenn keine
Fehler erfaßt
werden, und das Analysieren des Datenstroms nicht abgeschlossen
ist (212), kehrt der Analysator zu 204 zurück, und
derselbe empfängt
mehr verschachtelte Daten von der Abtastvorrichtung, die zu analysieren
sind. Wenn ein Fehler erfaßt
wird, oder das Analysieren des Datenstroms bei 212 abgeschlossen
ist, gibt der Datenanalysator diesen Status zu der aufrufenden Funktion zurück, die
eine geeignete Handlung vornimmt. Fehlerbedingungen können folgende
Bedingungen umfassen: (1) Ausgabepuffer voll, (2) schlechtes Ansprechverhalten
von der Abtastvorrichtung, (3) Dekomprimierungsvorrichtung hat keine
Daten mehr, und die Abtastvorrichtung weist keine weiteren Daten
auf, oder (4) Abtastung abgeschlossen. Die Schritte in 5 sind
ferner in dem Quellcode in Anhang A gezeigt.
-
Es
sei bemerkt, daß,
obwohl die Implementation, die hierin beschrieben ist, eine Doppelabtastung, Doppelansichten
und das Analysieren von zwei verschachtelten Datenströmen beschreibt,
diese Konzepte ohne weiteres auf das Mehrfachabtasten, auf Mehrfachansichten
und auf das Analysieren von verschachtelten Mehrfachdatenströmen erweiterbar
ist.
-
Obwohl
die hierin beschriebene Implementation das Beispiel des Erzeugens
eines Graustufenbilds mit hoher Auflösung und eines Farbbildes mit
niedriger Auflösung
und hoher Bittiefe darstellt, das gut für Dokumente funktioniert, die
Text und Farbbilder enthalten, wie z. B. Magazine, sind ferner andere
Szenarios möglich und
durch die vorliegende Erfindung vorweggenommen. Dies betrifft z.
B. das Erzeugen mindestens eines Graustufenbilds oder Monochrombilds
mit hoher Auflösung
und niedriger Bittiefe und mindestens eines Graustufenbilds oder
Monochrombilds mit niedriger Auflösung und hoher Bittiefe, was
gut beim Abtasten von Dokumenten, wie z. B. Monochromdokumente,
Schwarz-Weiß-Photographien
etc, funktioniert.
-
Die
vorhergehende Beschreibung der vorliegenden Erfindung wurde lediglich
für Zwecke
der Darstellung und Beschreibung dargelegt. Es ist nicht beabsichtigt,
daß dieselbe
erschöpfend
ist, oder daß dieselbe die
Erfindung auf die präzise
offenbarte Form beschränkt,
und weitere Modifikationen und Variationen können im Licht der obigen Lehren
möglich
sein. Beispielsweise kann der Datenstromanalysator jeden verschachtelten Datenstrom,
der mehr als einen Datensatz enthält, analysieren. Der Datenstrom
muß nicht
ein Datenstrom eines abgetasteten Bilds sein. Ferner ist es für die SCL-Implementation von
Mehrfachansichten des gleichen Fensters unerheblich, wie die Mehrfachansichten
erhalten wurden; die Implementation ist die gleiche, egal ob die
Ansichten von einer oder mehreren Abtastungen des gleichen Bereichs
erhalten wurden.
-
ANHANG A
-
-
-
-
-
-
-
-
-
-
-
-