DE10043318A1 - Verfahren zum automatischen Beschneiden eines abgetasteten Bildes im Echtzeitbetrieb - Google Patents
Verfahren zum automatischen Beschneiden eines abgetasteten Bildes im EchtzeitbetriebInfo
- Publication number
- DE10043318A1 DE10043318A1 DE2000143318 DE10043318A DE10043318A1 DE 10043318 A1 DE10043318 A1 DE 10043318A1 DE 2000143318 DE2000143318 DE 2000143318 DE 10043318 A DE10043318 A DE 10043318A DE 10043318 A1 DE10043318 A1 DE 10043318A1
- Authority
- DE
- Germany
- Prior art keywords
- image
- meaningful
- file
- scanned
- region
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 51
- 238000009966 trimming Methods 0.000 title abstract description 3
- 239000011159 matrix material Substances 0.000 claims description 12
- 238000005070 sampling Methods 0.000 claims description 5
- 238000012935 Averaging Methods 0.000 claims 4
- 230000006870 function Effects 0.000 abstract description 3
- 238000012552 review Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/38—Circuits or arrangements for blanking or otherwise eliminating unwanted parts of pictures
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Facsimiles In General (AREA)
Abstract
Das erfindungsgemäße Verfahren umfaßt das Auffinden der Breite und Länge eines abgetasteten Bildes im Echtzeitbetrieb und das anschließende Einschreiben der Länge und der Breite in den Anfangskennsatz einer bitweise orientierten Datei, sobald die Basiszeile des abgetasteten Bildes gefunden wurde. Die Breite des abgetasteten Bildes kann aus der Breite der zuerst aufgetretenen bedeutungstragenden Bildregion berechnet werden. Die Breite wird an den Scanner übertragen, um für das Einlesen nachfolgender Bilddaten die Abtastbreite zurückzusetzen. Die Länge des abgetasteten Bildes kann nicht bestimmt werden, bevor eine Basiszeile gefunden ist. Jede bedeutungstragende Bildregion kann simultan in die bitweise orientierte Datei geschrieben werden, während die Basiszeile des abgetasteten Bildes überprüft wird. Um die Basiszeile für jede bedeutungstragende Bildregion zu finden, werden Stickproben einer Vielzahl von Zeilenbereichen entnommen, um zu bestimmen, ob die bedeutungstragende Bildregion die Basiszeile enthält. Für jede überprüfte, bedeutungstragende Bildregion wird die Gesamtzahl der Bildzeilen aufsummiert, bis die Basiszeile erreicht ist. Schließlich wird, wenn die Basiszeile gefunden wurde, die Breite und die Länge des abgetasteten Bildes in den Anfangskennsatz der bitweise orientierten Datei eingetragen.
Description
Die Erfindung bezieht sich auf ein Bildverarbeitungsver
fahren, insbesondere auf ein Verfahren zum automatischen
Beschneiden eines abgetasteten Bildes im Echtzeitbetrieb, ohne
den Verfahrensschritt der Vorabtastung durchzuführen.
Das Verfahren zum automatischen Beschneiden eines Bildes
stellt eine Technik dar, mit der ein abgetastetes Bild vor
einem üblicherweise schwarzen Hintergrundbild selektiv
eingelesen wird. Nach dem heutigen Stand der Technik muß das
Verfahren zum automatischen Beschneiden eines Bildes im
Anschluß an den Verfahrensschritt der Vorabtastung durchge
führt werden, weil der abgeschnittene Bildbereich des
abgetasteten Bildes nicht im voraus bestimmt werden kann. Die
Funktion zum automatischen Beschneiden des Bildes kann entwe
der durch eine Abtastung ohne Benutzerschnittstelle
(Non-UI Scan) oder eine Abtastung über Benutzerschnittstelle
(UI-Scan) bereitgestellt werden. Der Begriff "UI-Scan" bezieht
sich hier auf eine "TWAIN-Benutzerschnittstelle" innerhalb des
TWAIN-Moduls. Und der Begriff "Non-UI-Scan" bezieht sich auf
eine "Benutzerschnittstelle, die sich nicht innerhalb des
TWAIN-Moduls befindet". In beiden Fällen, sowohl bei einer
Abtastung ohne Benutzerschnittstelle, als auch bei einer
Abtastung über Benutzerschnittstelle muß zunächst einmal der
Verfahrensschritt der Vorabtastung durchgeführt werden.
Anschließend wird jedes Bildelement des vorabgetasteten Bildes
bezüglich seiner R (Rot)-, G (Grün)-, B (Blau)-Werte bewertet,
um auf diese Weise den aktuellen Bildausschnitt für das
abgetastete Bild zu bestimmen. Nach dem Bestimmen des
Bildausschnitts wird der Scanner zurückgesetzt, so daß er den
durch den Bildausschnitt definierten Bildbereich einliest und
den Rest des Bildes verwirft. Oder der Anwender kann manuell
die interessierende Fläche aus dem abgetasteten Bild
auswählen.
Die Nachteile des Standes der Technik sind darin zu
sehen, daß die für das automatische Beschneiden des Bildes
erforderliche Zeit und die erforderlichen Mittel unabhängig
von der Größe des gewünschten Bildes immer identisch sind. Das
rührt daher, daß ein Vorabtastverfahren in jedem Fall erfor
derlich ist. Wenn die interessierende Fläche sehr klein ist,
ist der größte Teil des vom Scanner übertragenen,
vorabgetasteten Bildes nutzlos, obgleich für die Verarbeitung
des Bildes immer noch dieselben Ressourcen erforderlich sind.
So ist zum Beispiel die beim Abtasten eines Bildes der
Größe A3 beanspruchte Zeit dieselbe wie beim Abtasten eines
3×5-Fotos, weil der Scanner zunächst im Farbmodus eine
Vorabtastung eines A3-Bildes durchführen muß. Für Abtastung
ohne Benutzerschnittstelle wäre das Verfahren noch
komplizierter. Zuerst einmal läßt sich der Bildausschnitt des
3×5-Fotos nur ermitteln, indem dessen Koordinaten nach einem
Berechnungsalgorithmus berechnet werden. Daran anschließend
wird der Scanner auf Basis des Bildausschnitts zurückgesetzt,
um ihn auf die Position des 3×5-Fotos örtlich festzulegen, und
anschließend wird er freigegeben, damit er einen zweiten
Bildeinlesevorgang ausführt, um das Bild der interessierenden
Fläche einzulesen.
Demgemäß ist es ein Anliegen der Erfindung, ein Verfah
ren zum automatischen Beschneiden des Bildes im Echtzeit
betrieb zur Verfügung zu stellen, das den Bildausschnitt in
Echtzeit bestimmen kann, während die gewünschten Bilddaten
eingelesen werden, wodurch das gewünschte Bild ohne den
Verfahrensschritt der Bildvorabtastung auf rationelle Weise
beschnitten wird.
Ein weiteres Anliegen der Erfindung besteht darin, ein
Verfahren zum automatischen Beschneiden des Bildes im Echt
zeitbetrieb zur Verfügung zu stellen, bei dem die Bilddaten
des interessierenden Bildbereichs direkt eingelesen werden
können, ohne daß die Übertragung überflüssiger Bilddaten
erforderlich ist, um auf diese Weise die Abtastzeit und die
Verarbeitungszeit zu reduzieren.
Gemäß der Erfindung umfaßt das erfindungsgemäße Verfah
ren die Bestimmung der Breite und der Länge eines abgetasteten
Bildes im Echtzeitbetrieb und das anschließende Einschreiben
der Länge und Breite in den Anfangskennsatz einer bitweise
orientierten Datei, sobald bei einem Zugriff ohne Benutzer
schnittstelle die Basiszeile gefunden wurde. Andererseits
können für einen Zugriff über Benutzerschnittstelle die
Bildpufferdaten an das übergeordnete Bildverarbeitungsprogramm
zurückgegeben werden. Gleichzeitig können die im
Bildausschnitt befindlichen Bilddaten automatisch in die
bitweise orientierte Datei eingeschrieben werden, während nach
der Basiszeile des abgetasteten Bildes gesucht wird. Die
Breite der bedeutungstragenden Bildbereiche kann durch
Berechnen des Abstands zwischen der Position eines am
weitesten links liegenden Startbildelements und der Position
eines am weitesten rechts liegenden Endebildelements der in
einem Teilbildblock zuerst aufgetretenen bedeutungstragenden
Bildregion bestimmt werden. Die berechnete Bildbreite wird
zurück an den Scanner gesendet, damit dieser für das Einlesen
der nachfolgenden Bilddaten zurückgesetzt wird. Die Länge des
abgetasteten Bildes kann nicht bestimmt werden, bevor eine
Basiszeile gefunden wurde.
Um die Basiszeile zu finden, muß für jede bedeutungstra
gende Bildregion eine Vielzahl von Zeilenbereichen abgetastet
werden, um zu bestimmen, ob die bedeutungstragende Bildregion
die Basiszeile enthält. Für jede bedeutungstragende Bildre
gion, die überprüft wurde, muß die Gesamtanzahl der Bildzeilen
aufsummiert werden, bis die Basiszeile erreicht ist. Abschlie
ßend wird für Zugriff über Benutzerschnittstelle, wenn die
Basiszeile gefunden wurde, die Größe des abgetasteten Bildes
auf die gleiche Art bestimmt. Für einen TWAIN-Zugriff über
Benutzerschnittstelle wird der, das Ende der Bilddaten
signalisierende Parameter, an das übergeordnete Bildverarbei
tungsprogramm übergeben. Das gesamte Verfahren läuft im
Echtzeitbetrieb und ohne den Verfahrensschritt der
Bildvorabtastung ab. Mit der Erfindung kann die Abtastzeit
wirkungsvoll verkürzt werden, weil nur die gewünschten
Bilddaten eingelesen werden, nachdem die Breite des
abgetasteten Bildes bestimmt wurde und sofort nach Auffinden
der Basiszeile des abgetasteten Bildes der Abtastvorgang
abgebrochen werden kann. Folglich wird der Scanner, falls es
sich bei dem abgetasteten Bild um ein 3×5-Foto handelt, sofort
anhalten, nachdem das Einlesen der Bilddaten des 3×5-Fotos
abgeschlossen ist.
Diese und weitere Anliegen und Vorteile der Erfindung
werden aus der nachfolgenden Beschreibung anhand der
Zeichnungen ersichtlich, auf denen folgendes dargestellt ist:
Fig. 1 ist ein Flußdiagramm zur Darstellung des
Datenflusses, wenn das Anwendungsprogramm über eine
TWAIN-Benutzerschnittstelle mit dem Scanner verbunden ist.
Fig. 2 ist eine schematische Darstellung des abgetaste
ten Bildes, das Störbildelemente enthält.
Fig. 3 ist eine schematische Darstellung, welche die Berech
nung der Breite der gewünschten bedeutungstragenden Bildregion
zeigt.
Fig. 4A-4B sind schematische Darstellungen von
Matrixfeldern zur Berechnung der Positionen des am weitesten
links liegenden Startbildelements und des am weitesten rechts
liegenden Endebildelements.
Fig. 5 ist eine schematische Darstellung des Verfahrens,
mit dem die Basiszeile des abgetasteten Bildes gesucht wird.
Fig. 6A-6E sind schematische Darstellungen des
Verfahrens zum Suchen der bedeutungstragenden Zeilenbereiche.
Nachfolgend wird ein bevorzugtes Ausführungsbeispiel der
Erfindung beschrieben. Dieses Ausführungsbeispiel stellt
lediglich ein Beispiel dar. Für den Fachmann ist es
ersichtlich, daß an dem offenbarten Ausführungsbeispiel Ände
rungen vorgenommen werden können, ohne vom Erfindungsgedanken
abzuweichen und den Schutzbereich der Erfindung zu verlassen.
Die Struktur der Erfindung ist in Fig. 1 anschaulich
dargestellt. Bei den Funktionen zum automatischen Beschneiden
eines abgetasteten Bildes kann man zwischen Zugriff ohne
Benutzerschnittstelle 12 (Non-UI access) und Zugriff über
Benutzerschnittstelle 142 (UI access) unterscheiden. Der Zu
griff ahne Benutzerschnittstelle 12 kann von einem überge
ordneten Bildverarbeitungsprogramm 11 aufgerufen werden,
welches die Bilddaten lesen kann, die vom Scanner 15 über das
TWAIN-Modul 13 (Technology Without An Important/Interesting
Name) übertragen werden. Weil die TWAIN-Schnittstellennorm
keinen konstanten Parameter zum automatischen Einstellen eines
Bildausschnittsbereiches zur Verfügung stellt, kann der
Bildausschnitt nicht über das TWAIN-Modul 13 vorgegeben
werden. Aus diesem Grunde sieht die Erfindung ein
Auto-Schnittmodul ohne Benutzerschnittstelle 121 innerhalb des
Zugriff ohne Benutzerschnittstelle 12 vor. Somit kann der
Benutzer bei Bildern gleicher Größe automatisches
Bildbeschneiden nach wie vor unter einem übergeordneten
Benutzerprogramm 11 durchführen. Folglich kann bei Aktivierung
eines übergeordneten Bildbearbeitungsprogramms 11 der
TWAIN-Treiber 13 als Schnittstelle zwischen dem übergeordneten
Bildbearbeitungsprogramm 11 und dem Scanner 15 verwendet
werden, wenn das übergeordnete Bildbearbeitungsprogramm 11 das
Bild der abgetasteten Objekte direkt einliest. Das vom Scan
ner 15 übertragene, abgetastete Bild wird in der
Datenquelle 14 gespeichert, so daß der TWAIN-Treiber 13 darauf
zugreifen kann.
Andererseits kann bei einem Zugriff über Benutzer
schnittstelle 142 der Bildausschnitt direkt eingestellt
werden, weil die Befehle ohne TWAIN vorgegeben werden können.
Die Erfindung stellt auch ein Auto-Schnittmodul mit
Echtzeit-Benutzerschnittstelle 141 innerhalb des TWAIN-Zu
griffs über Benutzerschnittstelle 142 der Datenquelle 14
bereit, um den Echtzeit-Bildausschnitt in der Datenquelle 14
direkt einzustellen. Beide, sowohl das Auto-Schnittmodul mit
Echtzeit-Benutzerschnittstelle 141, als auch das Auto-Schnitt
modul ohne Benutzerschnittstelle 121 können das Beschneiden
eines Bildes im Echtzeitbetrieb ohne den Verfahrensschritt der
Bildvorabtastung durchführen. Obwohl die Anfangseinstellungen
des Auto-Schnittmoduls mit Echtzeit-Benutzerschnittstelle 141
und des Auto-Schnittmoduls ohne Benutzerschnittstelle 121 un
terschiedlich sind, sind ihre Befehlsteile in Bezug auf die
Algorithmen zur Bestimmung des Bildausschnitts des abge
tasteten Bildes im Grunde genommen identisch.
Weil die Erfindung darauf abzielt, die Größe des abgeta
steten Bildes im Echtzeitbetrieb zu bestimmen und nicht aus
dem vorabgetasteten Bild, besteht das Hauptanliegen des erfin
dungsgemäßen Gedankens darin, Länge und Breite des
abgetasteten Bildes zu dem Zeitpunkt zu bestimmen, wenn die
Bilddaten vom Scanner 15 übertragen werden. Die vom Scanner 15
übertragenen Bilddaten werden zur weiteren Verarbeitung tempo
rär in einer Speichereinrichtung gespeichert. Die Bildelemente
in der Speichereinrichtung sind sequentiell so angeordnet, daß
jedes Bildelement durch die Farben Blau, Grün und Rot reprä
sentiert wird, wobei jede Farbe 1 Byte umfaßt.
Um zu vermeiden, daß zu viele bedeutungslose Bilddaten
auf einmal eingelesen werden, wird erfindungsgemäß jeweils nur
ein Teilbildblock aus dem Scanner eingelesen. Der
Teilbildblock ist in der Speichereinrichtung gespeichert. Der
Teilbildblock umfaßt 1/N-tel des vollständigen abgetasteten
Bildes. 1/N-tel des vollständigen abgetasteten Bildes
bedeutet, daß die Breite des Teilbildblocks identisch mit der
des vollständigen abgetasteten Bildes ist, wenn dieses nur
1/N-tel der Länge des vollständigen abgetasteten Bildes
umfaßt. N ist ein vorgegebener Wert, zum Beispiel 5. Nachdem
die Größe des Teilbildblocks eingestellt ist, überträgt der
Scanner jeweils einen 1/N Teilbildblock zur Speicher
einrichtung, bis der 1/N-te Teilbildblock bedeutungstragende
Bilddaten enthält.
Um die Breite des abgetasteten Bildes zu finden, wird
ein Speicherraum vereinbart, in dem das Attribut eines jeden
Bildelements, das in der Speichereinrichtung gespeichert ist,
aufgezeichnet wird. Jedem Speicherort des Speicherraums ist
ein Bildelement innerhalb der Speichereinrichtung zugeordnet,
um das Attribut eines Bildelements aufzuzeichnen. Das Attribut
des Bildelements zeigt an, ob das Bildelement ein
bedeutungstragendes Bildelement oder ein bedeutungsloses Bild
element ist. Falls die R-, G-, B-Werte des Bildelements
geringer als vorgegebene Farbwerte sind, wird das Bildelement
als bedeutungslos eingestuft. Wenn keines der Bildelemente
innerhalb der Speichereinrichtung bedeutungstragend ist,
werden alle in der Speichereinrichtung vorhandenen Bilddaten
verworfen. Der Scanner 15 überträgt dann den nächsten
1/N Teilbildblock in den Speicherraum. Das Verfahren wird
fortgesetzt, bis erkannt wird, daß der Speicherraum eine
bedeutungstragende Bildregion enthält.
Die bedeutungstragende Bildregion verweist auf bedeu
tungstragende Bildelemente innerhalb der interessierenden
Fläche. Um den Bereich der bedeutungstragenden Bildregion
genau zu bestimmen, werden durch die Erfindung
Rauschbildelemente zunächst entfernt. Falls die Werte R, G, B
des Bildelements größer als ein vorgegebener Farbwert sind und
die Anzahl der angrenzenden Nachbarbildelemente kleiner als K
(zum Beispiel 4) ist, wird das Bildelement als Rausch
bildelement eingestuft und muß entfernt werden. Bezugnehmend
auf Fig. 2, weisen die Bildelemente a, b, c, d und e darauf
hin, daß ihre R-, G-, B-Werte größer als 60 sind und daß sie
nicht nebeneinander angeordnet sind. In diesem Fall werden die
Bildelemente als Rauschbildelemente betrachtet. Nachdem die
Rauschbildelemente entfernt wurden, haben die bedeutungstra
genden Bildregionen 32 des Teilbildblocks 31 im Speicherraum
das auf Fig. 3 dargestellte Aussehen.
Weil die rechten und linken Ränder der bedeutungstragen
den Bildregion 32 nicht exakt auf einer Linie liegen, wenn sie
durch Bildelemente repräsentiert werden, werden die Positionen
der Bildelemente an der am weitesten links liegenden Spalte
und der am weitesten rechts liegenden Spalte gemittelt. Das
heißt, das jeweils erste Bildelement einer jeden horizontalen
Bildzeile und das jeweils letzte Bildelement einer jeden
horizontalen Bildzeile wird entsprechend aufsummiert und
anschließend durch die Gesamtanzahl der horizontalen Zeilen
der bedeutungstragenden Bildregion 32 dividiert. So werden
sequentiell die jeweils ersten bedeutungstragenden
Bildelemente einer jeden horizontalen Bildzeile des
Teilbildblocks 31 in einem Matrixfeld 41 aufgezeichnet, wie
dies auf Fig. 4A dargestellt ist. Zum Beispiel enthält das
Matrixfeld 41 alle Bildelemente des Teilbildblockes
einschließlich der bedeutungslosen Bildelemente. Die
Ausgangsposition der ersten Zeile ist "0" und die letzte
Position der ersten Zeile ist ebenfalls "0", was darauf
hinweist, daß es an dieser Position kein bedeutungstragendes
Bildelement gibt. Weil die der Kante der bedeutungstragenden
Bildregion 32 unmittelbar benachbarte Fläche ebenfalls nicht
exakt an einer Linie ausgerichtet ist, sind am Anfang einige
Zeilen zu verwerfen, um die Vorderkante der
bedeutungstragenden Bildregion 32 zu bestimmen. So werden zum
Beispiel die ersten beiden Reihen, das heißt, "7" und "5"
verworfen. Anschließend werden die folgenden 50 Reihen als die
gewünschte Fläche der bedeutungstragenden Bildregion 32
bewertet. Außerdem werden "3" und die Anfangspositionen der
Vorderkante der bedeutungstragenden Bildregion 32 übernommen.
Anschließend werden für jede Anfangsposition einer jeden Reihe
deren Mittelwerte berechnet, welche die am weitesten links
liegende, genau auf einer Linie ausgerichtete Anfangsposition
der bedeutungstragenden Bildregion 32 sein wird.
Andererseits wird das jeweils letzte bedeutungstragende
Bildelement einer jeden horizontalen Bildzeile des
Teilbildblocks 31 in einem Matrixfeld 42 aufgezeichnet, wie
dies in Fig. 4B dargestellt ist. Unter Bezugnahme auf Fig. 4B
werden die ersten beiden Reihen, das heißt, "17" und "20"
verworfen und anschließend wird, beginnend bei "21", die am
weitesten rechts liegende Position der bedeutungstragenden
Bildregion 32 berechnet. "21" repräsentiert die 2lste Position
des letzten bedeutungstragenden Bildelements dieser Reihe.
Unter Befolgung der gleichen Regel wird von allen Werten im
Matrixfeld 42 der Mittelwert berechnet. Der Mittelwert stellt
für die bedeutungstragende Bildregion 32 die endgültig
ausgerichtete, am weitesten rechts liegende Position dar.
Im Anschluß an das Ausrichten kann die Breite der
bedeutungstragenden Bildregion 32 bestimmt werden, indem beim
ersten Auftreten der bedeutungstragenden Bildregion 32 der
Abstand zwischen dem am weitesten links liegenden
Startbildelement und dem am weitesten rechts liegenden
Endebildelement berechnet wird. Anschließend wird die Breite
als ein Parameter an den Scanner übertragen, um die
Abtastbreite für die nachfolgenden Bilddaten zurückzusetzen.
Der Speicherraum wird anschließend freigegeben, weil er für
die folgenden Verfahrensschritte nicht verwendet wird.
Das erste Auftreten der bedeutungstragenden
Bildregion 32 wird in eine bitweise orientierte Datei
geschrieben. Gleichzeitig wird ein von der unteren
Programmebene übergebener Parameter die Daten enthalten,
welche die Anzahl der im Speicherraum gespeicherten Bildzeilen
angibt. Dann ergibt der Wert des Parameters abzüglich der
Startposition der bedeutungstragenden Bildregion 32 die Länge
der bedeutungstragenden Bildregion 32 des Teilbildblocks 31.
Die Anzahl der gültigen Bildzeilen wird aufgezeichnet und
summiert. Weil der Abtastvorgang während dieser Zeitspanne
noch andauert, kann die Gesamtlänge der bedeutungstragenden
Bildregion 32 noch nicht ermittelt werden. Weil die Länge des
abgetasteten Bildes nicht bestimmt werden kann, bevor dessen
Basiszeile gefunden wurde, muß für jede bedeutungstragende
Bildregion eine Erkennungsprozedur durchgeführt werden, um zu
erkennen, wo das abgetastete Bild endet. Dieses Erkennen kann
auf unterschiedliche Arten erfolgen. Die Erfindung sieht ein
Abtastverfahren zum selektiven Erkennen einer Vielzahl von
Zeilenbereichen vor, um die Basiszeile des abgetasteten Bildes
zu finden, wie dies in Fig. 5 dargestellt ist.
Zuerst wird beim Unterteilen eines jeden Bildblocks in
4 Zeilenbereiche der erste Zeilenbereich 51 das obere
Speicherbereichende und der letzte Zeilenbereich 54 das untere
Speicherbereichende anzeigen. Die zwei Zeilenbereiche 52, 53
im mittleren Teil sind im gleichen Abstand angeordnet. Jeder
Zeilenbereich enthält 3 Bildzeilen. Unter der Voraussetzung,
daß n die Gesamtanzahl der Zeilen der bedeutungstragenden
Bildregion repräsentiert, kann der Abstand m zwischen allen
Zeilenbereichen nach folgender Formel berechnet werden:
(n - (4 × 3))/3 = m.
(n - (4 × 3))/3 = m.
Anschließend sind die Attribute eines jeden Bildelements
in jedem Zeilenbereich zu überprüfen. Nach jeweils 10 Bildele
menten wird ein Bildelement herausgegriffen und dessen
Attribut überprüft. Das Attribut eines Zeilenbereichs kann
unter Befolgung folgender Regeln bestimmt werden:
- 1. Falls die R-, G-, B-Werte eines Bildelements kleiner als 60 Werte sind, wird das Bildelement als bedeutungslos eingestuft. Und falls der prozentuale Anteil bedeutungs loser Bildelemente eines Zeilenbereichs 90% übersteigt, wird der Zeilenbereich als bedeutungslos eingestuft.
- 2. Falls der prozentuale Anteil bedeutungsloser Bildelemente des Zeilenbereichs unter 90% beträgt, sollte eine zweite Überprüfung durchgeführt werden. Die ursprüngliche Über prüfungsposition wird um einige Bildelemente nach rechts verschoben und nach jeweils 10 Bildelementen wird ein Probebildelement entnommen, um den in Schritt (1) beschriebenen Nachweis zu führen. Wenn man voraussetzt, daß zum Beispiel bestenfalls drei Überprüfungen durchge führt wurden, beginnt die erste Überprüfung bei Posi tion 1, die zweite Überprüfung an der 3. Position und die dritte Überprüfung an der 6. Position und so weiter. Wenn der prozentuale Anteil bedeutungsloser Bildelemente über 90% beträgt, wird dieser Zeilenbereich als bedeutungslos eingestuft.
- 3. Falls in Schritt (2) der prozentuale Anteil bedeutungslo ser Bildelemente immer noch geringer als 90% ist, muß die gleiche Überprüfung ein drittes Mal durchgeführt werden. Das heißt, das Bildelement wird erneut um einige Bildelemente nach rechts verschoben und die gleichen Überprüfungen wie in Schritt (1) und (2) werden durchgeführt.
Nachdem das Attribut eines jeden Zeilenbereichs bestimmt
wurde, kann aus dem Ergebnis die Lage der Basiszeile bestimmt
werden, wie dies in Fig. 6A-6E dargestellt ist.
Wenn alle vier Zeilenbereiche bedeutungstragend sind,
wie dies in Fig. 6A dargestellt ist, bedeutet dies, daß die
aus der Speichereinrichtung übertragenen Bilddaten alle bedeu
tungstragend sind. Wenn diese Zeilenbereiche zum ersten Mal
abgetastet und über einen TWAIN-Zugriff über Benutzer
schnittstelle 142 gelesen und direkt aus der
Speichereinrichtung des Scanners übertragen werden, werden die
für einen Programmparameter erforderlichen Daten aufgefüllt
und der Programmparameter wird an das übergeordnete
Bildverarbeitungsprogramm übergeben. Die für einen
Programmparameter erforderlichen Daten umfassen: den Zeiger
der bedeutungstragenden Bildregion in der Speichereinrichtung
und die Anzahl der Bildzeilen der gültigen Bilddaten innerhalb
der bedeutungstragenden Bildregion.
Anderenfalls, wenn die Zeilenbereiche über einen TWAIN-
Zugriff über Benutzerschnittstelle 142 oder einen Zugriff ohne
Benutzerschnittstelle 12 gelesen werden, die es erforderlich
machen, eine Bilddatei zurückzugeben, werden die Bilddaten der
bedeutungstragenden Bildregion in die Datei geschrieben.
Anschließend wird die Gesamtanzahl der gültigen Bilddaten, die
durch den Parameter der unteren Programmebene zurückgegeben
werden, aufsummiert, und der Empfang der Bilddaten, die aus
dem Speicher des Scanners übertragen werden, wird fortgesetzt.
Wenn diese Zeilenbereiche zum letzten Mal abgetastet
werden, zeigt dies an, daß die Fläche unterhalb des Zeilenbe
reichs bedeutungslos ist und das Ende des Bildes gefunden
wurde. Falls die Zeilenbereiche über einen TWAIN-Zugriff über
Benutzerschnittstelle 142, der den direkten Empfang von
Bilddaten aus dem Scanner erfordert, gelesen werden, müssen
die für einen Programmparameter erforderlichen Daten
eingetragen und der Programmparameter an das übergeordnete
Bildverarbeitungsprogramm übergeben werden. Die für einen Pro
grammparameter erforderlichen Daten umfassen: den Zeiger der
bedeutungstragenden Bildregion innerhalb der Speichermittel,
die Anzahl der gültigen Bildzeilen der bedeutungstragenden
Bildregion und Dateiabschlußdaten. Anschließend wird ein
Dateiendesignal an den Scanner gesendet, um den Abtastvorgang
zu beenden.
Wenn die Zeilenbereiche zum letzten Mal abgetastet und
über einen Zugriff ohne Benutzerschnittstelle 12 gelesen
werden, wird die Gesamtanzahl der aktuellen bedeutungs
tragenden Bildzeilen aufsummiert, in den Anfangskennsatz der
bitweise orientierten Datei eingetragen und die Datei wird
geschlossen. Anschließend wird ein Steuersignal an den Scanner
gesendet, um den Abtastvorgang zu beenden. Anderenfalls wird
bei einem TWAIN-Zugriff über Benutzerschnittstelle 142 ein
Dateiendesignal an das übergeordnete Bildverarbeitungsprogramm
gesendet, um das Einlesen von Bilddaten zu beenden.
Wenn die vier Zeilenbereiche alle bedeutungslos sind,
wie dies in Fig. 6B dargestellt ist, zeigt dies an, daß die
aus der Speichereinrichtung übertragenen Bilddaten alle bedeu
tungslos sind. Deshalb werden all diese Bilddaten verworfen.
Wenn die Zeilenbereiche das erste Mal abgetastet werden und
über einen TWAIN-Zugriff über Benutzerschnittstelle 142 gele
sen und direkt aus der Speichereinrichtung des Scanners
übertragen werden, werden die für einen Programmparameter
erforderlichen Daten eingetragen und der Programmparameter an
ein übergeordnetes Bildverarbeitungsprogramm übergeben. Die
für einen Programmparameter erforderlichen Daten umfassen: den
Zeiger der bedeutungstragenden Bildregion innerhalb der
Speichereinrichtung und die Anzahl der Bildzeilen mit gültigen
Bilddaten innerhalb der bedeutungstragenden Bildregion.
Andererseits werden, falls die Zeilenbereiche über einen
TWAIN-Zugriff über Benutzerschnittstelle 142 oder einen
Zugriff ohne Benutzerschnittstelle 12 gelesen werden, welche
die Rückgabe einer Bilddatei erfordern, die Bilddaten der
bedeutungstragenden Bildregion in die Datei geschrieben.
Weiterhin wird die Gesamtanzahl der durch den Parameter
zurückgegebenen Bildzeilen aufsummiert und der Empfang der aus
der Speichereinrichtung übertragenen Daten wird fortgesetzt.
Falls diese Zeilenbereiche das letzte Mal abgetastet
worden sind, zeigt dies an, daß die Fläche unterhalb der Zei
lenbereiche bedeutungslos ist und das Ende des Bildes gefunden
wurde. Falls die Zeilenbereiche über einen TWAIN-Zugriff über
Benutzerschnittstelle 142 gelesen werden, der den direkten
Empfang von Bilddaten aus dem Scanner erfordert, werden die
für einen Programmparameter erforderlichen Daten eingetragen
und der Programmparameter wird an das übergeordnete Bildver
arbeitungsprogramm übergeben. Die für einen Programmparameter
erforderlichen Daten umfassen: den Zeiger der bedeu
tungstragenden Bildregion in der Speichereinrichtung, die
Anzahl gültiger Bildzeilen der bedeutungstragenden Bildregion
und Dateiabschlußdaten. Dann wird ein Steuersignal an den
Scanner gesendet, um den Abtastvorgang zu beenden.
Wenn die Zeilenbereiche zum letzten Mal abgetastet und
über einen TWAIN-Zugriff über Benutzerschnittstelle oder einen
Zugriff ohne Benutzerschnittstelle 12 gelesen werden, wird die
Gesamtanzahl der aktuellen bedeutungstragenden Bildzeilen
aufsummiert, der Anfangskennsatz der bitweise orientierten
Datei eingetragen und die Datei geschlossen. Anschließend wird
an den Scanner ein Steuersignal gesendet, um den Abtastvorgang
zu beenden.
Falls die Zeilenbereiche 61 und 62 bedeutungstragend,
die Zeilenbereiche 63 und 64 jedoch bedeutungslos sind, wie
dies in Fig. 6C dargestellt ist, wird die Basiszeile der
bedeutungstragenden Bildregion irgendwo zwischen den
Zeilenbereichen 62 und 63 erscheinen. In diesem Fall muß der
Abtastvorgang für die Fläche zwischen den Zeilenbereichen 62
und 63 erneut ausgeführt werden. Der Abtastvorgang wird
wiederholt, bis die Basiszeile des abgetasteten Bildes
aufgefunden wurde. Nachdem die Basiszeile des abgetasteten
Bildes aufgefunden wurde, wird die Gesamtanzahl der Bildzeilen
der aktuellen bedeutungstragenden Bildregion aufsummiert.
Falls die Zeilenbereiche eine Mischung gültiger und
ungültiger Bildelemente enthalten, wie dies in Fig. 6D
dargestellt ist, wird das Abtastverfahren erneut durchgeführt,
um die bedeutungstragende Bildregion irgendwo zwischen den
bedeutungstragenden Zeilenbereichen 65 und 66 aufzufinden. Das
ist darin begründet, daß nach dem Auffinden der Basiszeile
deren Bildelemente gleichmäßig schwarz (alle sind
Rauschbildelemente) erscheinen müßten und nicht in
ungleichmäßigen Farben. Demgemäß sollte die Basiszeile des
abgetasteten Bildes irgendwo zwischen dem Zeilenbereich 65 und
66 angeordnet sein. So muß das Abtastverfahren erneut für die
Bilddaten zwischen den Zeilenbereichen 65 und 66 wiederholt
werden, bis die Basiszeile gefunden wurde. Nach dem Auffinden
der Basiszeile werden die Bildzeilen für die
bedeutungstragende Bildregion aufsummiert.
Eine andere Situation ist in Fig. 6E anschaulich
dargestellt, welche Zeilenbereiche zeigt, in denen
bedeutungstragende Bildelemente und bedeutungslose
Bildelemente gemischt sind. In solch einem Fall werden alle
Bilddaten als bedeutungstragend übernommen. Das Verfahren ist
identisch mit dem Verfahren für den Fall, daß alle vier
Zeilenbereiche bedeutungstragend sind.
Letztendlich kann die Erfindung das Lesen des abgeta
steten Bildes im Echtzeitbetrieb zu Ende bringen, weil jede
bedeutungstragende Bildregion zu dem Zeitpunkt in die bitweise
orientierte Datei eingeschrieben wird, wenn die Bilddaten für
einen Zugriff ohne Benutzerschnittstelle aus der
Speichereinrichtung gelesen werden. Andererseits können die
Daten im Bildpufferspeicher für einen Zugriff über
Benutzerschnittstelle an das übergeordnete Bildverarbei
tungsprogramm zurückgegeben werden. Darüber hinaus werden
erfindungsgemäß nur bedeutungstragende Bildregionen gelesen,
weil der Scanner die Abtastbreite zurücksetzt, sobald die
Breite des abgetasteten Bildes berechnet wurde. Infolgedessen
kann mit der Erfindung erfolgreich Verarbeitungszeit einge
spart und die Übertragung ungültiger Daten reduziert werden.
Weil mit dem erfindungsgemäßen Verfahren die Vorab
tastung eingespart werden kann, wird die Wirtschaftlichkeit
des erfindungsgemäßen Verfahrens noch beachtlicher,
insbesondere wenn der Scanner eine Vielzahl von Dokumenten
gleicher Größe abtastet. Weil die Erfindung jedoch für das
Lesen der Bilddaten eine feste Breite vorgibt und den Fall
nicht berücksichtigt, wenn das Original schief aufgelegt wird,
ist das erfindungsgemäße Verfahren in solch einer Situation
nicht anwendbar.
Obwohl die vorliegende Erfindung anhand eines veran
schaulichenden Ausführungsbeispiels beschrieben wurde, ist
diese Beschreibung keinesfalls im einschränkenden Sinne auszu
legen. Eine Vielzahl von Abwandlungen und Kombinationen des
veranschaulichenden Ausführungsbeispiels sowie weitere erfin
dungsgemäße Ausführungsbeispiele sind für den Fachmann anhand
der Beschreibung sofort ersichtlich. Deshalb sollen die beige
fügten Ansprüche all diese Varianten oder Ausführungsbeispiele
umfassen.
Claims (15)
1. Verfahren zum automatischen Beschneiden eines
abgetasteten Bildes im Echtzeitbetrieb, das folgende
Schritte umfaßt:
- a) sequentielles Lesen eines jeden Teilbildblocks aus einem Scanner, bis eine erste bedeutungstragende Bildregion aufgefunden wurde und anschließendes Speichern eines jeden Teilbildblocks in einer Speichereinrichtung des Scanners;
- b) Aufzeichnen eines Attributs eines jeden Bild elements eines jeden Teilbildblocks in einem Speicherraum, bis die bedeutungstragende Bildregion aufgefunden wurde, wobei das Attribut anzeigt, ob ein Bildelement bedeutungstragend oder bedeutungslos ist;
- c) Berechnen einer Position eines am weitesten links liegenden Startbildelements und einer Position eines am weitesten rechts liegenden Endebildelements der ersten bedeutungstragenden Bildregion, nachdem die erste bedeutungstragende Bildregion aufgefunden wurde;
- d) Stichprobenentnahme einer Vielzahl von Zeilen bereichen innerhalb einer jeden bedeutungstragenden Bildregion, um die Position einer Basiszeile des abgetasteten Bildes zu bestimmen;
- e) Berechnen der Breite der ersten bedeutungstra genden Bildregion auf Grundlage der Position des am weitesten links liegenden Startbildelements und der Position des am weitesten rechts liegenden Endebildelements;
- f) Zurücksetzen der Abtastbreite des Scanners, um nachfolgende Bilddaten in Antwort auf die in Schritt (e) berechnete Breite einzulesen;
- g) Einlesen aller nachfolgenden bedeutungstragenden Bildregionen, bis eine Basiszeile aufgefunden wurde, und direktes Einschreiben der gültigen Bilddaten eines jeden nachfolgenden Teilbildblocks in eine bitweise orientierte Datei und Aufsummieren der Gesamtanzahl von Bildzeilen mit gültigen Bilddaten in einer jeden nachfolgenden bedeutungstragenden Bildregion, oder Übertragen der gültigen Bilddaten in ein übergeordnetes Bildverarbeitungsprogramm; und
- h) Einsetzen der Summe der Gesamtanzahl von Bild zeilen mit gültigen Bilddaten in einer jeden bedeutungstragenden Bildregion, als Länge des abge tasteten Bildes und Einschreiben der Länge und der Breite in den Anfangskennsatz der bitweise orientierten Datei, oder Senden eines Dateiende signals an ein übergeordnetes Bildverarbeitungs programm, um das Einlesen der gültigen Bilddaten zu beenden.
2. Verfahren nach Anspruch 1, wobei Schritt (b)
die Schritte umfaßt:
Einstufen eines Bildelements als bedeutungsloses Bildelement, wenn die R-, G-, B-Werte des Bildelements kleiner als vorgegebene R-, G-, B-Werte sind; und
Einstufen des Bildelemente als bedeutungstragendes Bildelement, wenn die R-, G-, B-Werte des Bildelements größer als die vorgegebenen R-, G-, B-Werte sind.
Einstufen eines Bildelements als bedeutungsloses Bildelement, wenn die R-, G-, B-Werte des Bildelements kleiner als vorgegebene R-, G-, B-Werte sind; und
Einstufen des Bildelemente als bedeutungstragendes Bildelement, wenn die R-, G-, B-Werte des Bildelements größer als die vorgegebenen R-, G-, B-Werte sind.
3. Verfahren nach Anspruch 1, wobei Schritt (c)
folgende Schritte umfaßt:
Aufzeichnen einer Sequenz-Nummer eines jeden bedeutungstragenden Bildelements, das als erstes in einer jeden horizontalen Zeile der ersten bedeutungs tragenden Bildregion aufgefunden wurde, in einem ersten Matrixfeld;
Aufzeichnen einer Sequenz-Nummer eines jeden bedeu tungstragenden Bildelements, das als letztes in einer jeden horizontalen Zeile der ersten bedeutungstragenden Bildregion aufgefunden wurde, in einem zweiten Matrix feld;
Berechnen der Position des am weitesten links liegenden Startbildelements durch Mittelwertbildung aller Sequenz-Nummern im ersten Matrixfeld; und
Berechnen der Position des am weitesten rechts liegenden Endebildelements durch Mittelwertbildung aller Sequenz-Nummern im zweiten Matrixfeld.
Aufzeichnen einer Sequenz-Nummer eines jeden bedeutungstragenden Bildelements, das als erstes in einer jeden horizontalen Zeile der ersten bedeutungs tragenden Bildregion aufgefunden wurde, in einem ersten Matrixfeld;
Aufzeichnen einer Sequenz-Nummer eines jeden bedeu tungstragenden Bildelements, das als letztes in einer jeden horizontalen Zeile der ersten bedeutungstragenden Bildregion aufgefunden wurde, in einem zweiten Matrix feld;
Berechnen der Position des am weitesten links liegenden Startbildelements durch Mittelwertbildung aller Sequenz-Nummern im ersten Matrixfeld; und
Berechnen der Position des am weitesten rechts liegenden Endebildelements durch Mittelwertbildung aller Sequenz-Nummern im zweiten Matrixfeld.
4. Verfahren nach Anspruch 1, wobei Schritt (d)
die Schritte umfaßt:
Auswählen einer Vielzahl von Zeilenbereichen für jede bedeutungstragende Bildregion, wobei jeder Zeilen bereich eine Vielzahl von Bildzeilen umfaßt;
selektives Lesen der Bildelemente in jedem Zeilenbereich für jede vorgegebene Anzahl von Bildelementen;
Einstufen eines Zeilenbereichs als bedeutungstra gend, wenn die Anzahl der bedeutungstragenden Bildele mente im Zeilenbereich einen vorgegebenen Prozentsatz übersteigt; und
Einstufen eines Zeilenbereichs als bedeutungslos, wenn die Anzahl der bedeutungstragenden Bildelemente im Zeilenbereich unterhalb eines vorgegebenen Prozentsat zes liegt.
Auswählen einer Vielzahl von Zeilenbereichen für jede bedeutungstragende Bildregion, wobei jeder Zeilen bereich eine Vielzahl von Bildzeilen umfaßt;
selektives Lesen der Bildelemente in jedem Zeilenbereich für jede vorgegebene Anzahl von Bildelementen;
Einstufen eines Zeilenbereichs als bedeutungstra gend, wenn die Anzahl der bedeutungstragenden Bildele mente im Zeilenbereich einen vorgegebenen Prozentsatz übersteigt; und
Einstufen eines Zeilenbereichs als bedeutungslos, wenn die Anzahl der bedeutungstragenden Bildelemente im Zeilenbereich unterhalb eines vorgegebenen Prozentsat zes liegt.
5. Verfahren nach Anspruch 1, wobei die Breite
und die Länge des abgetasteten Bildes in Form einer
bitweise orientierten Datei definiert sind.
6. Verfahren nach Anspruch 4, das weiterhin
folgenden Schritt umfaßt:
wenn die Zeilenbereiche das erste Mal abgetastet und über einen TWAIN-Zugriff über Benutzerschnittstelle gelesen werden, der den direkten Empfang der Bilddaten aus der Speichereinrichtung des Scanners erfordert, Eintragen der für einen Programmparameter erforder lichen Daten und Übergeben des Programmparameters an ein übergeordnetes Bildverarbeitungsprogramm, wobei die für einen Programmparameter erforderlichen Daten den Zeiger der bedeutungstragenden Bildregion innerhalb der Speichereinrichtung und die Anzahl der Bildzeilen mit gültigen Bilddaten innerhalb der bedeutungstragenden Bildregion umfassen;
wenn die Zeilenbereiche zum ersten Mal abgetastet und über einen TWAIN-Zugriff über Benutzerschnittstelle gelesen werden, der die Rückgabe einer Bilddatei erfordert, Einschreiben der bedeutungstragenden Bild region in die Bilddatei; und
wenn die Zeilenbereiche zum ersten Mal abgetastet und über einen Zugriff ohne Benutzerschnittstelle gelesen werden, Einschreiben der bedeutungstragenden Bildregion in die Bilddatei, Aufsummieren der Gesamtanzahl der zurückgegebenen Bildzeilen und Empfangen der vom Scanner zurückgegebenen Bilddaten.
wenn die Zeilenbereiche das erste Mal abgetastet und über einen TWAIN-Zugriff über Benutzerschnittstelle gelesen werden, der den direkten Empfang der Bilddaten aus der Speichereinrichtung des Scanners erfordert, Eintragen der für einen Programmparameter erforder lichen Daten und Übergeben des Programmparameters an ein übergeordnetes Bildverarbeitungsprogramm, wobei die für einen Programmparameter erforderlichen Daten den Zeiger der bedeutungstragenden Bildregion innerhalb der Speichereinrichtung und die Anzahl der Bildzeilen mit gültigen Bilddaten innerhalb der bedeutungstragenden Bildregion umfassen;
wenn die Zeilenbereiche zum ersten Mal abgetastet und über einen TWAIN-Zugriff über Benutzerschnittstelle gelesen werden, der die Rückgabe einer Bilddatei erfordert, Einschreiben der bedeutungstragenden Bild region in die Bilddatei; und
wenn die Zeilenbereiche zum ersten Mal abgetastet und über einen Zugriff ohne Benutzerschnittstelle gelesen werden, Einschreiben der bedeutungstragenden Bildregion in die Bilddatei, Aufsummieren der Gesamtanzahl der zurückgegebenen Bildzeilen und Empfangen der vom Scanner zurückgegebenen Bilddaten.
7. Verfahren nach Anspruch 4, das weiterhin
folgende Schritte umfaßt:
wenn die Zeilenbereiche zum letzten Mal abgetastet und über einen TWAIN-Zugriff über Benutzerschnittstelle gelesen werden, welcher den direkten Empfang der Bilddaten aus der Speichereinrichtung des Scanners erfordert, Eintragen der für einen Programmparameter erforderlichen Daten und Übergeben des Programm parameters an ein übergeordnetes Bildverarbei tungsprogramm, wobei die für einen Programmparameter erforderlichen Daten den Zeiger der bedeutungstragenden Bildregion innerhalb der Speichereinrichtung, die Anzahl gültiger Bildzeilen der bedeutungstragenden Bildregion und Dateiabschlußdaten umfassen;
wenn die Zeilenbereiche zum letzten Mal abgetastet und über einen TWAIN-Zugriff über Benutzerschnittstelle eingelesen werden, der die Rückgabe einer Bilddatei erfordert, Einschreiben der bedeutungstragenden Bildregion in die Bilddatei, Aufsummieren der Gesamtanzahl der aktuellen bedeutungstragenden Bildzei len, Auffüllen des Anfangskennsatzes der bitweise orientierten Datei und Schließen der bitweise orien tierten Datei; und
wenn die Zeilenbereiche zum letzten Mal abgetastet und über einen Zugriff ohne Benutzerschnittstelle eingelesen werden, Aufsummieren der Gesamtanzahl der aktuellen bedeutungstragenden Bildzeilen, Auffüllen des Anfangskennsatzes der bitweise orientierten Datei und Schließen der bitweise orientierten Datei; und
Senden eines Steuersignals an den Scanner, um den Abtastvorgang zu beenden.
wenn die Zeilenbereiche zum letzten Mal abgetastet und über einen TWAIN-Zugriff über Benutzerschnittstelle gelesen werden, welcher den direkten Empfang der Bilddaten aus der Speichereinrichtung des Scanners erfordert, Eintragen der für einen Programmparameter erforderlichen Daten und Übergeben des Programm parameters an ein übergeordnetes Bildverarbei tungsprogramm, wobei die für einen Programmparameter erforderlichen Daten den Zeiger der bedeutungstragenden Bildregion innerhalb der Speichereinrichtung, die Anzahl gültiger Bildzeilen der bedeutungstragenden Bildregion und Dateiabschlußdaten umfassen;
wenn die Zeilenbereiche zum letzten Mal abgetastet und über einen TWAIN-Zugriff über Benutzerschnittstelle eingelesen werden, der die Rückgabe einer Bilddatei erfordert, Einschreiben der bedeutungstragenden Bildregion in die Bilddatei, Aufsummieren der Gesamtanzahl der aktuellen bedeutungstragenden Bildzei len, Auffüllen des Anfangskennsatzes der bitweise orientierten Datei und Schließen der bitweise orien tierten Datei; und
wenn die Zeilenbereiche zum letzten Mal abgetastet und über einen Zugriff ohne Benutzerschnittstelle eingelesen werden, Aufsummieren der Gesamtanzahl der aktuellen bedeutungstragenden Bildzeilen, Auffüllen des Anfangskennsatzes der bitweise orientierten Datei und Schließen der bitweise orientierten Datei; und
Senden eines Steuersignals an den Scanner, um den Abtastvorgang zu beenden.
8. Verfahren nach Anspruch 1, weiter umfassend
die Schritte:
- a) Schließen der bitweise orientierten Datei und Übergeben des Dateinamens der bitweise orientierten Datei als Programmparameter an ein übergeordnetes Bildverarbeitungsprogramm oder Rückgabe der Bilddaten und eines Dateiendesignals an das übergeordnete Bild verarbeitungsprogramm; und
- b) Senden eines Steuersignals an den Scanner, um den Abtastvorgang zu beenden, wenn die Basiszeile aufge funden wurde.
9. Verfahren zum automatischen Beschneiden eines
abgetasteten Bildes im Echtzeitbetrieb, das die
Schritte umfaßt:
- a) Suchen einer ersten bedeutungstragenden Bildre gion innerhalb eines Teilbildblocks und Einschreiben der Bilddaten der ersten bedeutungs tragenden Bildregion in eine bitweise orientierte Datei und Aufsummieren der Gesamtanzahl der Bildzeilen der ersten bedeutungstragenden Bildregion;
- b) Berechnen der Breite der ersten bedeutungs tragenden Bildregion;
- c) Rücksetzen einer Abtastbreite für einen Scanner, um nachfolgende Bilddaten zu lesen;
- d) Probenahme einer Vielzahl von Zeilenbereichen in jedem Teilbildblock, um die Lage einer Basiszeile für das abgetastete Bild zu bestimmen;
- e) Einlesen einer jeden nachfolgenden bedeutungs tragenden Bildregion, bis eine Basiszeile aufgefunden wurde und direktes Einschreiben der Bilddaten einer jeden nachfolgenden bedeu tungstragenden Bildregion in die bitweise orientierte Datei und Aufsummieren der Gesamtan zahl der Bildzeilen für jede nachfolgende bedeutungstragende Bildregion;
- f) Einsetzen der Summe der Gesamtanzahl der Bildzeilen als die Länge des abgetasteten Bildes und Einschreiben der Breite und der Länge in den Anfangskennsatz der bitweise orientierten Datei, oder Übertragen der gültigen Bilddaten an ein übergeordnetes Bildverarbeitungsprogramm; und
- g) Schließen der bitweise orientierten Datei und Übergeben des Dateinamens der bitweise orien tierten Datei als ein Parameter an ein übergeordnetes Bildverarbeitungsprogramm oder an eine Datenquelle, oder Senden eines Dateiende signals an ein übergeordnetes Bildverarbeitungs programm, um das Einlesen der gültigen Bilddaten zu beenden; und
- h) Senden eines Steuersignals an den Scanner, um den Abtastvorgang zu beenden.
10. Verfahren nach Anspruch 9, wobei jedes
Bildelement der bedeutungstragenden Bildregionen als
bedeutungstragendes Bildelement eingestuft wird, wenn
die R-, G-, B-Werte des Bildelements größer als die
vorgegebenen R-, G-, B-Werte sind.
11. Verfahren nach Anspruch 9, wobei Schritt (b)
folgende Schritte umfaßt:
Aufzeichnen einer Sequenz-Nummer eines jeden bedeutungstragenden Bildelements, das als erstes in jeder horizontalen Zeile der ersten bedeutungstragenden Bildregion aufgefunden wurde, in einem ersten Matrixfeld;
Aufzeichnen einer Sequenz-Nummer eines jeden bedeu tungstragenden Bildelements, das als letztes in jeder horizontalen Zeile der ersten bedeutungstragenden Bild region gefunden wurde, in einem zweiten Matrixfeld;
Berechnen der Position des am weitesten links lie genden Startbildelements durch Mittelwertbildung aller Sequenz-Nummern innerhalb des ersten Matrixfeldes;
Berechnen der Position des am weitesten rechts lie genden Endebildelements durch Mittelwertbildung aller Sequenz-Nummern innerhalb des zweiten Matrixfeldes.
Aufzeichnen einer Sequenz-Nummer eines jeden bedeutungstragenden Bildelements, das als erstes in jeder horizontalen Zeile der ersten bedeutungstragenden Bildregion aufgefunden wurde, in einem ersten Matrixfeld;
Aufzeichnen einer Sequenz-Nummer eines jeden bedeu tungstragenden Bildelements, das als letztes in jeder horizontalen Zeile der ersten bedeutungstragenden Bild region gefunden wurde, in einem zweiten Matrixfeld;
Berechnen der Position des am weitesten links lie genden Startbildelements durch Mittelwertbildung aller Sequenz-Nummern innerhalb des ersten Matrixfeldes;
Berechnen der Position des am weitesten rechts lie genden Endebildelements durch Mittelwertbildung aller Sequenz-Nummern innerhalb des zweiten Matrixfeldes.
12. Verfahren nach Anspruch 9, wobei Schritt (d)
folgende Schritte umfaßt:
Auswählen einer Vielzahl von Zeilenbereichen für jede bedeutungstragende Bildregion, wobei jeder Zeilen bereich eine Vielzahl von Bildzeilen enthält;
selektives Einlesen der Bildelemente in jedem Zei lenbereich für jede vorgegebene Anzahl von Bildelemen ten;
Einstufen eines Zeilenbereichs als bedeutungstra gend, wenn die Anzahl der bedeutungstragenden Bildele mente in diesem Zeilenbereich einen vorgegebenen prozentualen Wert überschreitet; und
Einstufen eines Zeilenbereichs als bedeutungslos, wenn die Anzahl bedeutungstragender Bildelemente inner halb des Zeilenbereichs unter dem vorgegebenen pro zentualen Wert liegt.
Auswählen einer Vielzahl von Zeilenbereichen für jede bedeutungstragende Bildregion, wobei jeder Zeilen bereich eine Vielzahl von Bildzeilen enthält;
selektives Einlesen der Bildelemente in jedem Zei lenbereich für jede vorgegebene Anzahl von Bildelemen ten;
Einstufen eines Zeilenbereichs als bedeutungstra gend, wenn die Anzahl der bedeutungstragenden Bildele mente in diesem Zeilenbereich einen vorgegebenen prozentualen Wert überschreitet; und
Einstufen eines Zeilenbereichs als bedeutungslos, wenn die Anzahl bedeutungstragender Bildelemente inner halb des Zeilenbereichs unter dem vorgegebenen pro zentualen Wert liegt.
13. Verfahren nach Anspruch 9, wobei die Breite
und die Länge des abgetasteten Bildes im Format einer
bitweise orientierten Datei definiert ist.
14. Verfahren nach Anspruch 12, das weiterhin fol
gende Schritte umfaßt:
wenn die Zeilenbereiche das erste Mal abgetastet und über einen TWAIN-Zugriff über Benutzerschnittstelle eingelesen werden, der den direkten Empfang der Bildda ten aus der Speichereinrichtung des Scanners erfordert, Eintragen der für einen Programmparameter erforderli chen Daten und Übergeben des Programmparameters an ein übergeordnetes Bildverarbeitungsprogramm, wobei die für einen Programmparameter erforderlichen Daten den Zeiger der bedeutungstragenden Bildregion innerhalb der Spei chereinrichtung und die Anzahl der Bildzeilen gültiger Bilddaten innerhalb der bedeutungstragenden Bildregion umfassen;
wenn die Zeilenbereiche das erste Mal abgetastet und über einen TWAIN-Zugriff über Benutzerschnittstelle eingelesen werden, der die Rückgabe einer Bilddatei erfordert, Einschreiben der bedeutungstragenden Bildregion in die Bilddatei; und
wenn die Zeilenbereiche das erste Mal abgetastet und über einen Zugriff ohne Benutzerschnittstelle eingelesen werden, Einschreiben der bedeutungstragenden Bildregion in die Bilddatei, Aufsummieren der Gesamtanzahl der zurückgegebenen Bildzeilen und Empfangen der vom Scanner zurückgegebenen Bilddaten.
wenn die Zeilenbereiche das erste Mal abgetastet und über einen TWAIN-Zugriff über Benutzerschnittstelle eingelesen werden, der den direkten Empfang der Bildda ten aus der Speichereinrichtung des Scanners erfordert, Eintragen der für einen Programmparameter erforderli chen Daten und Übergeben des Programmparameters an ein übergeordnetes Bildverarbeitungsprogramm, wobei die für einen Programmparameter erforderlichen Daten den Zeiger der bedeutungstragenden Bildregion innerhalb der Spei chereinrichtung und die Anzahl der Bildzeilen gültiger Bilddaten innerhalb der bedeutungstragenden Bildregion umfassen;
wenn die Zeilenbereiche das erste Mal abgetastet und über einen TWAIN-Zugriff über Benutzerschnittstelle eingelesen werden, der die Rückgabe einer Bilddatei erfordert, Einschreiben der bedeutungstragenden Bildregion in die Bilddatei; und
wenn die Zeilenbereiche das erste Mal abgetastet und über einen Zugriff ohne Benutzerschnittstelle eingelesen werden, Einschreiben der bedeutungstragenden Bildregion in die Bilddatei, Aufsummieren der Gesamtanzahl der zurückgegebenen Bildzeilen und Empfangen der vom Scanner zurückgegebenen Bilddaten.
15. Verfahren nach Anspruch 12, das weiterhin fol
gende Schritte umfaßt:
wenn die Zeilenbereiche das letzte Mal abgetastet und über einen TWAIN-Zugriff über Benutzerschnittstelle eingelesen werden, der den direkten Empfang von Bilddaten aus den Speichereinrichtungen des Scanners erfordert, Eintragen der für einen Programmparameter erforderlichen Daten und Übergeben der Programm parameter an ein übergeordnetes Bildverarbei tungsprogramm, wobei die für einen Programmparameter erforderlichen Daten den Zeiger der bedeutungstragenden Bildregion in der Speichereinrichtung, die Anzahl der gültigen Bildzeilen der bedeutungstragenden Bildregion und Dateiendedaten umfassen;
wenn die Zeilenbereiche das letzte Mal abgetastet und über einen TWAIN-Zugriff über Benutzerschnittstelle eingelesen werden, der die Rückgabe einer Bilddatei erfordert, Einschreiben der bedeutungstragenden Bildregion in die Bilddatei, Aufsummieren der Gesamtanzahl der aktuellen bedeutungstragenden Bild zeilen, Eintragen des Anfangskennsatzes der bitweise orientierten Datei und Schließen der bitweise orien tierten Datei; und
wenn die Zeilenbereiche das letzte Mal abgetastet und über einen Zugriff ohne Benutzerschnittstelle eingelesen werden, Aufsummieren der Gesamtanzahl der aktuellen bedeutungstragenden Bildzeilen, Eintragen des Anfangskennsatzes der bitweise orientierten Datei und Schließen der bitweise orientierten Datei; und
Senden eines Steuersignals an den Scanner, um den Abtastvorgang zu beenden.
wenn die Zeilenbereiche das letzte Mal abgetastet und über einen TWAIN-Zugriff über Benutzerschnittstelle eingelesen werden, der den direkten Empfang von Bilddaten aus den Speichereinrichtungen des Scanners erfordert, Eintragen der für einen Programmparameter erforderlichen Daten und Übergeben der Programm parameter an ein übergeordnetes Bildverarbei tungsprogramm, wobei die für einen Programmparameter erforderlichen Daten den Zeiger der bedeutungstragenden Bildregion in der Speichereinrichtung, die Anzahl der gültigen Bildzeilen der bedeutungstragenden Bildregion und Dateiendedaten umfassen;
wenn die Zeilenbereiche das letzte Mal abgetastet und über einen TWAIN-Zugriff über Benutzerschnittstelle eingelesen werden, der die Rückgabe einer Bilddatei erfordert, Einschreiben der bedeutungstragenden Bildregion in die Bilddatei, Aufsummieren der Gesamtanzahl der aktuellen bedeutungstragenden Bild zeilen, Eintragen des Anfangskennsatzes der bitweise orientierten Datei und Schließen der bitweise orien tierten Datei; und
wenn die Zeilenbereiche das letzte Mal abgetastet und über einen Zugriff ohne Benutzerschnittstelle eingelesen werden, Aufsummieren der Gesamtanzahl der aktuellen bedeutungstragenden Bildzeilen, Eintragen des Anfangskennsatzes der bitweise orientierten Datei und Schließen der bitweise orientierten Datei; und
Senden eines Steuersignals an den Scanner, um den Abtastvorgang zu beenden.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE2000143318 DE10043318B4 (de) | 2000-08-18 | 2000-08-18 | Verfahren zum automatischen Beschneiden eines abgetasteten Bildes im Echtzeitbetrieb |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE2000143318 DE10043318B4 (de) | 2000-08-18 | 2000-08-18 | Verfahren zum automatischen Beschneiden eines abgetasteten Bildes im Echtzeitbetrieb |
Publications (2)
Publication Number | Publication Date |
---|---|
DE10043318A1 true DE10043318A1 (de) | 2002-03-07 |
DE10043318B4 DE10043318B4 (de) | 2005-07-21 |
Family
ID=7654780
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2000143318 Expired - Fee Related DE10043318B4 (de) | 2000-08-18 | 2000-08-18 | Verfahren zum automatischen Beschneiden eines abgetasteten Bildes im Echtzeitbetrieb |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE10043318B4 (de) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0703696A2 (de) * | 1994-09-23 | 1996-03-27 | International Business Machines Corporation | Schräglagenkorrektur für zeilenabgetastete Bilder |
EP0800148A2 (de) * | 1996-04-04 | 1997-10-08 | Hewlett-Packard Company | Bildverarbeitungssystem |
EP0949802A2 (de) * | 1998-04-09 | 1999-10-13 | Hewlett-Packard Company | Bildverarbeitungssystem mit Bildabschneiden und Schräglagenkorrektur |
-
2000
- 2000-08-18 DE DE2000143318 patent/DE10043318B4/de not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0703696A2 (de) * | 1994-09-23 | 1996-03-27 | International Business Machines Corporation | Schräglagenkorrektur für zeilenabgetastete Bilder |
EP0800148A2 (de) * | 1996-04-04 | 1997-10-08 | Hewlett-Packard Company | Bildverarbeitungssystem |
EP0949802A2 (de) * | 1998-04-09 | 1999-10-13 | Hewlett-Packard Company | Bildverarbeitungssystem mit Bildabschneiden und Schräglagenkorrektur |
Also Published As
Publication number | Publication date |
---|---|
DE10043318B4 (de) | 2005-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69429962T2 (de) | Bildverarbeitungsvorrichtung und -verfahren | |
DE69831290T2 (de) | System und Verfahren zur Bildübertragung | |
DE3785911T2 (de) | Kodiersystem hoher leistung durch der quantisierung vorhergehende und/oder nachfolgende verarbeitung. | |
DE69713941T2 (de) | Bildverarbeitungssystem | |
DE69734694T2 (de) | Automatisches Bildbeschneiden | |
DE69628711T2 (de) | Verfahren und Vorrichtung zum Korrigieren von Pixelwerten eines digitalen Bildes | |
DE69720399T2 (de) | Digitale Komposition eines mosaikähnlichen Bildes | |
DE69119847T2 (de) | Elektronische standbildkamera mit mehrformatspeicherung von bildern mit voller und beschränkter auflösung | |
DE19814075B4 (de) | Verfahren zum Abtasten und Erkennen mehrerer Fotografien und zum Beseitigen von Randfehlern | |
DE69836432T2 (de) | Bildcoder und -decoder | |
DE69924827T2 (de) | Verfahren und Vorrichtung zur Verarbeitung von Bilddaten | |
DE69121523T2 (de) | Beseitigung von fehlerhaften Punkten in einem abgetasteten Bild | |
DE60029194T2 (de) | Verfahren, Vorrichtung und Speichermedium für Bildverarbeitung | |
DE3415470A1 (de) | Geraet und verfahren zum codieren und speichern von rasterabtastbildern | |
DE69814212T2 (de) | Gerät zur Bildsignalumwandlung | |
DE3789091T2 (de) | Bildverarbeitungsverfahren und -system zur Bildrekonstruktion. | |
DE19719378B4 (de) | Verfahren zum Verbessern und Drucken von Text in einem Bild | |
DE3304241C2 (de) | ||
DE69015153T2 (de) | Segmentierungseinrichtung zur erzeugung farbinterpolationswerte für ein getastetes farbbildsignal. | |
DE69121345T2 (de) | Zeichenausgabegerät | |
DE4041054A1 (de) | Farbbilduebertragungsverfahren | |
DE69934385T2 (de) | Bilddatenkompression für Verarbeitung zusammengesetzter Dokumente | |
DE19944687B4 (de) | Scanverfahren und Scannervorrichtung | |
DE602004005647T2 (de) | Bildverarbeitungsverfahren und Vorrichtung zur Änderung der Bildgrösse | |
DE69415763T2 (de) | Verfahren zur Grössenreduktion eines Dokuments für eine optische Darstellung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8131 | Rejection | ||
8170 | Reinstatement of the former position | ||
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: TRANSPACIFIC OPTICS LLC, WILMINGTON, DEL., US |
|
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |
Effective date: 20120301 |