DE69509691T2 - Verfahren zur Korrektur und Glättung von Bildelementen - Google Patents
Verfahren zur Korrektur und Glättung von BildelementenInfo
- Publication number
- DE69509691T2 DE69509691T2 DE69509691T DE69509691T DE69509691T2 DE 69509691 T2 DE69509691 T2 DE 69509691T2 DE 69509691 T DE69509691 T DE 69509691T DE 69509691 T DE69509691 T DE 69509691T DE 69509691 T2 DE69509691 T2 DE 69509691T2
- Authority
- DE
- Germany
- Prior art keywords
- pixels
- pixel
- type
- target
- replacement
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 51
- 238000009499 grossing Methods 0.000 title description 29
- 230000008569 process Effects 0.000 title description 8
- 238000001914 filtration Methods 0.000 claims description 9
- 238000013139 quantization Methods 0.000 description 8
- 238000012937 correction Methods 0.000 description 7
- 230000007704 transition Effects 0.000 description 6
- 230000000740 bleeding effect Effects 0.000 description 4
- 239000003550 marker Substances 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000004836 empirical method Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000007787 solid Substances 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/40—Picture signal circuits
- H04N1/409—Edge or detail enhancement; Noise or error suppression
- H04N1/4097—Removing errors due external factors, e.g. dust, scratches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
-
- 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/40—Picture signal circuits
- H04N1/40062—Discrimination between different image types, e.g. two-tone, continuous tone
-
- 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/40—Picture signal circuits
- H04N1/409—Edge or detail enhancement; Noise or error suppression
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
- Editing Of Facsimile Originals (AREA)
Description
- Diese Erfindung bezieht sich auf das Drucken von Pixeln auf einem Aufzeichnungsmedium und insbesondere auf ein Verfahren zum Verbessern der Qualität eines angezeigten (z. B. gedruckten) Musters, das aus Pixeln gebildet ist.
- Texte und Bilder werden manchmal unter Verwendung eng beabstandeter Punkte, die Pixel genannt werden, gedruckt. Die einzelnen Pixel werden von dem menschlichen Auge nicht ohne weiteres wahrgenommen, sondern scheinen vielmehr in benachbarte Pixel überzugehen, um ein kontinuierliches, durchgehendes Symbol oder Bild zu erzeugen. Solche Pixel werden von Faksimilegeräten, Punktmatrixdruckern und anderen Druck- oder Anzeigegeräten gedruckt.
- Die Erzeugung von Pixeln, die digital und nicht analog ist, ergibt inherent einen gewissen Quantisierungsfehler, da ein Pixel üblicherweise entweder schwarz oder weiß ist. Es können ferner Pixel aus Komplementärfarben oder Grauschattierungen gedruckt werden, wobei die resultierenden, gedruckten Muster (in unterschiedlichem Maße) von denselben Quantisierungseffekten beeinträchtigt werden, wie Muster, die unter Verwendung von lediglich schwarzen und weißen Pixeln gedruckt werden. Eine diagonale Linie, die mit Pixeln gedruckt wird, wird folglich aufgrund dieses Quantisierungsfehlers das Aussehen von kleinen Stufen und nicht das einer glatten diagonalen Linie aufweisen. Dieses Problem tritt ferner bei dem Versuch auf, ein Symbol oder eine Linie zu drucken, die nicht nur aus horizontalen oder vertikalen Linien bestehen. Wenn die gedruckten Punkte pro Zoll (dpi = dots per inch) erhöht werden, wird dieser Quantisierungsfehler weniger be merkbar.
- Das Drucken bei Faksimilegeräten ist bezüglich des dpi-Werts absichtlich relativ niedrig eingestellt, um eine schnellere Übertragung der Pixeldaten zum empfangenden Faksimilegerät zu ermöglichen. Wegen der relativ großen Pixel, die von einem Faksimilegerät gedruckt werden, erscheinen folglich diagonale und abgerundete Figuren für das bloße Auge aufgrund des Druckens mit einem niedrigeren dpi-Wert gezackt.
- Eine bekannte Verbesserungstechnik besteht darin, ein bestimmtes Pixelmuster in einem Block aus Pixeln zu erfassen und eine interpolierte Zeile aus Pixeln einzufügen, um ein Glätten dieser Pixelmuster vorzunehmen. Ein solches Glätten kann durch Vorsehen einer Nachschlagtabelle erreicht werden, die durch das ankommende Pixelmuster adressiert wird und deren Ausgabe eine oder mehrere interpolierte Pixelzeilen enthält, um das ursprüngliche Muster zu verbessern. Die Muster, die in der Nachschlagtabelle gespeichert sind, können selbst fehlerhaft sein und sind schwierig zu erzeugen.
- Weitere Verfahren zum Glätten von Pixelmustern weisen eine Zeilenmittelung auf, bei der ein Mittelwert von zwei ursprünglichen Pixelzeilen zwischen die zwei ursprünglichen Zeilen eingefügt wird. Diese Technik weist bestimmte Nachteile auf, wobei beispielsweise dunkle und helle Bereiche von Abbildungen (pictures) ungleichmäßig betroffen sind, wodurch dieselben übermäßig verzerrt werden. Ferner werden Ein-Bit-Erhöhungen oder Ein-Bit-Vertiefungen in einer Pixellinie in Flecken skaliert, wodurch dieselben auffallender werden. Darüberhinaus ist ein horizontales Skalieren nicht möglich, das das Ausmaß der Glättung, die durchgeführt werden kann, begrenzt und sichtbare gezackte Kanten ergibt.
- Ein weiteres Verfahren zum Glätten eines Pixelmusters besteht darin, eine Tiefpaßfilterung des Pixelmusters durchzuführen. Diese Technik entfernt vereinzelte Punkte und Erhöhungen und glättet ferner die Stufen in diagonalen oder gekrümmten Linien; eine solche Tiefpaßfilterung kann jedoch auch Details aus dem ursprünglichen Bild beseitigen, wie z. B. schmale weiße oder schwarze Linien. Eine solche Bildverarbeitung bewirkt folglich, daß dunkle und helle Bereiche von Abbildungen ungleichmäßig betroffen sind, woraus eine Beeinträchtigung resultiert.
- Die obigen Techniken werden normalerweise in Verbindung mit einer Pixelskalierung verwendet, bei der der dpi-Wert des Druckers größer als der dpi-Wert des ursprünglichen Pixelmusters eingestellt ist, um die Auflösung des gedruckten Musters zu erhöhen. Folglich kann beispielsweise ein Block aus vier Pixeln für jedes einzelne ursprüngliche Pixel gedruckt werden. Jedes gedruckte Pixel würde dann ungefähr ein Viertel der Größe des ursprünglichen Pixels aufweisen, um die Auflösung des gedruckten Musters effektiv um den Faktor vier zu erhöhen. Ein solches Skalieren weist lediglich dann Vorteile auf, wenn eine gewisse Korrektur des ursprünglichen Pixelmusters durchgeführt worden ist.
- Es wird ein verbessertes Verfahren zum Korregieren von Quantisierungsfehlern in einem übertragenen Muster, das aus Pixeln gebildet ist, benötigt.
- Die EP-A-0194689, die EP-A-0053935, die US-A-4003024 und die EP-A-0006715 beschreiben Verfahren für eine Binärdatenbildverbesserung.
- Bei der EP-A-0194689 wird ein Bit-Map-Bild in eine Reihe von Fenstern umgewandelt, von denen jedes überprüft wird, indem dieselben durch eine Reihe von Umgebungslogikelementen geführt werden. Falls die Ausgangsdatenpegel des äußeren Rings von Elementen des Fensters denselben Sinn aufweisen, werden die Elemente, die das Innere des Fensters definieren, gelöscht, so daß die Ausgangsdatenpegel aller Elemente, die das Fenster definieren, denselben Sinn aufweisen.
- Bei der EP-A-0053935 werden Datenelemente eines Bildab schnitts in einer Matrix gespeichert. Die Elemente werden von einer Mehrfachmaskenlogik untersucht, um zu bestimmen, ob irgendwelche Datenelemente fehlerhaft sind. Falls solche erfaßt werden, werden die fraglichen Elemente in einen korrekten Wert geändert.
- Bei der US-A-4003024 werden jedes Datenbit in einem binären Datenstrom, der aus einem 2D-Bild abgeleitet wird, und eine vorausgewählte Gruppe von Bits, die demselben zugeordnet ist, in einer ersten Position und in zugeordneten vorausgewählten Positionen einer Speicherungsschaltung gespeichert. Die Bits, die jedem Datenbit zugeordnet werden, werden als Adresse für ein ROM (ROM; ROM = Read Only Memory = Nur-Lese-Speicher) verwendet, um ein Entscheidungsbit als Funktion der Adresse zu erhalten. Eine Torsteuerungsschaltung entwickelt als Antwort auf jedes Datenbit und dessen zugeordnetes Entscheidungsbit ein Ausgangsbit. Die Sequenz von Ausgangsbits bildet einen verbesserten Datenbitstrom.
- Bei der EP-A-0006715 wird ein Bild abgetastet,. um eine Folge von Pixellinien zu liefern. Zusätzliche Bildpixel werden in jeder Linie aus den ursprünglichen Bildpixeln interpoliert, wobei zumindest eine zusätzliche Linie aus Ausgabepixeln für jede abgetastete Linie interpoliert wird.
- Ein verbessertes Verfahren zum Schaffen einer getreueren und gefälligeren Aufbereitung eines Pixelmusters ist in den nachfolgenden Ansprüchen definiert und wird nun beschrieben. Dieses Verfahren plaziert das ursprüngliche Pixelmuster zuerst in einem Bit-Map-Speicher. Ein kleiner Block dieses Bit-Map-Musters, das als Eingabefeld bezeichnet wird, wirkt als Adresse für eine Nachschlagtabelle, die einen korrigierten Pixelmusterabschnitt (ein Ausgabefeld) enthält, der den Zielpixeln entspricht, die in dem Eingabefeld korrigiert werden sollen. Bei einem Ausführungsbeispiel besteht das Eingabefeld aus zwei angrenzenden Zielpixeln und ihren un mittelbar benachbarten Pixeln, um ein Eingabefeld aus zwölf Pixeln zu bilden. Das entsprechende Ausgabefeld wird daraufhin mit einem höheren Punkte pro-Zoll-Wert (dpi-Wert) als das ursprüngliche Pixelmuster gedruckt, um ein korrigiertes Muster mit höherer Auflösung zu liefern. Dieser Prozess kann ferner unter Verwendung eines Algorithmus durchgeführt werden, der eine Korrektur der Zielpixel in dem Eingabefeld durchführt, anstatt ein entsprechendes Ausgabefeld in einer Nachschlagtabelle zu adressieren. Der obige Prozess wird wiederholt, bis für alle ursprünglichen Pixel ein Ausgabefeld erzeugt worden ist.
- Im folgenden wird ein neues Verfahren zum Herleiten der Ausgabefelder beschrieben. Bei diesem neuen Verfahren wird eine hochauflösende Bit-Map aus einem Eingabefeld erzeugt, indem das Eingabefeld z. B. sechzehn mal in der x- und y-Richtung skaliert wird. Ein dreieckiger Abschnitt jeder konvexen Ecke in der hochauflösenden Bit-Map wird abgeschnitten, wobei ein dreieckiger Abschnitt jeder konkaven Ecke in der hochauflösenden Bit-Map aufgefüllt wird. Die Größe dieser dreieckigen Abschnitte wird unter Verwendung einer Funktion basierend auf den freiliegenden Seiten pro Minoritätspixel in dem Eingabefeld bestimmt. Eine freiliegende Seite eines Pixels ist ein Weiß-Schwarz-Übergang (oder ein Schwarz-Weiß-Übergang) auf einer der Pixelseiten. Ein Minoritätspixel entspricht demjenigen Pixeltyp (z. B. ein schwarzes Pixel oder ein weißes Pixel), der die geringste Anzahl in dem Eingabefeld aufweist. Der Quotient aus freiliegenden Seiten dividiert durch die Anzahl der Minoritätspixel in dem Eingabefeld ist ein Maß für die durchschnittliche Anfälligkeit der Pixel in dem Eingabefeld, durch die Auffüllungen und Abschneidungen in dem oben erwähnten Schritt beseitigt zu werden. Je größer der Quotient ist, umso geringer sollte die Glättung sein, die bei diesem Auffüllungs- und Abschneidungsschritt vorgenommen wird. Diese Regulierung der Glättung hilft, ein gewünschtes Detail in dem Bild zu erhalten. Weitere geeignete Quotienten, die die Anfälligkeit der Pixel, bei einem nachfolgenden Glättungsprozess beseitigt zu werden, darstellen, können ferner verwendet werden, um das Glätten zu regulieren.
- Daraufhin wird eine Tiefpaßfilterung der resultierenden, hochauflösenden Bit-Map durchgeführt. Der Quotient, der vorher berechnet wurde, reguliert ferner das Maß der durchgeführten Tiefpaßfilterung. Diese Tiefpaßfilterung ist viel weniger umfangreich als die, die von den im Stand der Technik bekannten Tiefpaßfilterungsverfahren benötigt wird, da die hochauflösende Bit-Map bei dem früheren Schritt bereits teilweise geglättet wurde.
- Der mittlere Abschnitt der hochauflösenden Bit-Map, der den zwei ursprünglichen Zielpixeln entspricht, die korrigiert werden sollen, wird daraufhin in mehrere Pixelbereiche unterteilt, wobei jeder Bereich ein zu druckendes Pixel darstellt. Bei einem Ausführungsbeispiel wird der mittlere Abschnitt der Bit-Map in sechs Pixelbereiche unterteilt. Aufgrund des anfänglichen Skalierens mit dem Faktor sechzehn befindet sich eine große Anzahl von Pixeln in jedem Pixelbereich.
- Eine Schwellenanzahl wird eingestellt, die bestimmt, ob ein Pixelbereich als ein schwarzer Punkt oder ein weißer Punkt gedruckt werden soll. Diese Schwelle kann basierend auf dem Ausmaß des Verlaufens der Tinte oder des Verlaufens eines anderen Markierungsmittels eingestellt werden, das auftritt, wenn das Bild auf ein Aufzeichnungsmedium gedruckt wird.
- Das bevorzugte Verfahren erfaßt ferner Eingabefeldausnahmen, die den üblichen Korrekturen nicht unterzogen werden. Eine solche Ausnahme kann die Erfassung eines vereinzelten Punkts oder einer Vertiefung oder Erhöhung in einer Linie aus Pixeln sein. Diese Ausnahmen werden dann entsprechend korrigiert.
- Ferner wird ein Verfahren zum Erfassen, ob ein Pixelmuster ein Text oder ein Bild (z. B. eine Abbildung) ist, beschrie ben.
- Fig. 1 ist ein Blockdiagramm einer Schaltung, die verwendet werden kann, um das erfindungsgemäße Verfahren durchzuführen.
- Fig. 2 ist ein Flußdiagramm, das die bevorzugten Schritte bei einem Verfahren zum Erzeugen von Ausgabefeldern darstellt.
- Fig. 3A, 3B, 3C und 3D stellen das Verarbeiten eines Eingabefelds dar, um ein Ausgabefeld mit einem korrigierten Pixelmuster zu erzeugen.
- Fig. 4 ist ein Flußdiagramm, das die Schritte darstellt, die verwendet werden, um ein Ausgabefeld aus einer Nachschlagtabelle abzurufen.
- Fig. 5 stellt eine Korrektur dar, die bezüglich eines vereinzelten Punkts in einem Eingabefeld durchgeführt wird, indem der vereinzelte Punkt beseitigt wird.
- Fig. 6 stellt eine Ausnahme dar, wenn ein Pixelmuster eine Erhöhung aufweist, wobei die Erhöhung entfernt worden ist, jedoch in dem ausgegebenen Pixelmuster wiedergegeben wird.
- Fig. 7 stellt eine Ausnahme dar, wenn ein Pixelmuster eine Vertiefung aufweist, wobei die Vertiefung entfernt worden ist, jedoch in dem ausgegebenen Pixelmuster wiedergegeben wird.
- Fig. 8 ist ein Flußdiagramm, das die Schritte darstellt, die verwendet werden, um zu bestimmen, ob ein Eingabefeld Teil eines Bilds oder Texts ist.
- Fig. 1 ist ein Blockdiagramm, das ein Ausführungsbeispiel der Erfindung darstellt. Die Funktionsweise der erfindungsgemäßen Struktur wird in dem Zusammenhang des Verarbeitens von Pixeldaten, die bei einem Faksimilegerät empfangen werden, das die Schaltungsanordnung von Fig. 1 aufweist, beschrieben. Diese Erfindung kann jedoch ferner auf jeden beliebigen Typ einer Anzeigevorrichtung angewendet werden, der einen Pixeltyp verwendet, wobei angezeigt wird, wo das ursprüngliche Pixelmuster wunschgemäß verbessert und bei einer höheren Auflösung als der des ursprünglichen Pixelmusters ausgegeben werden soll.
- In Fig. 1 werden die Faksimile-Rohdaten an einem Eingangstor eines gewöhnlichen Modems empfangen und geeignet dekomprimiert, um die übermittelten digitalen Codes in Pixel zum Drucken durch das empfangende Faksimilegerät umzuwandeln. Diese herkömmliche Schaltungsanordnung ist als Modem/Dekomprimierer 10 gezeigt. Diese verarbeiteten Pixeldaten werden daraufhin vorübergehend in einem ersten Bit-Map-Speicher 12 gespeichert. Bei im Stand der Technik bekannten Faksimilegeräten würden die Pixel in dem Bit-Map-Speicher 12 von dem Faksimilegerät gedruckt werden. Dieses Pixelbild enthält wahrnehmbare Quantisierungsfehler und weitere unerwünschte Eigenschaften. Um diese unerwünschten Eigenschaften zu entfernen und um die Pixeldaten, die in dem Bit-Map-Speicher 12 gespeichert sind, zu verbessern, ist die folgende Schaltungsanordnung vorgesehen.
- Ein Prozessor 14 wird verwendet, um die Pixeldaten, die in dem Speicher 12 enthalten sind, gemäß einem Satz von Vorschriften zu modifizieren. Der Prozessor 14 arbeitet, indem derselbe ein Eingabefeld aus dem Bit-Map-Speicher 12 empfängt und ein entsprechendes Ausgabefeld an den Bit-Map- Speicher 20 ausgibt. Bei einem Ausführungsbeispiel führt der Prozessor 14 einen Algorithmus auf einem Eingabefeld der Pixeldaten gemäß einem Satz von Anweisungen durch, der in einem Programm-ROM 16 enthalten ist, um Zielpixel in dem Eingabefeld in ein Ausgabefeld, das verbesserte Pixeldaten enthält, umzuwandeln. Bei einem weiteren Ausführungsbeispiel kann der Prozessor 14 ein ASIC (ASIC; ASIC = Applicationspecific integrated circuit = Anwendungspezifische Integrierte Schaltung) sein, der fest verdrahtet ist, um Zielpixel in dem Eingabefeld durch ein Ausgabefeld, das vorher in einer Nachschlagtabelle 18 gespeichert wurde, zu ersetzen. Ferner kann ein Mikroprozessor verwendet werden, um die Ausgabefelder in der Nachschlagtabelle 18 zu indexieren. Das Verwenden eines Algorithmus und der Nachschlagtabelle 18 wird detailliert im folgenden beschrieben.
- Die Funktionsweise der Schaltung aus Fig. 1 wird, wenn ein Algorithmus von dem Prozessor 14 verwendet wird, um die Pixeldaten zu modifizieren, unter Bezugnahme auf Fig. 2 und
- Fig. 3A-3D beschrieben. (Dieser Algorithmus kann ferner dazu verwendet werden, um anfänglich die Ausgabefelder zu erzeugen, die in der Nachschlagtabelle 18 gespeichert werden, falls der Prozessor 14 verwendet wird, um die Ausgabefelder in der Nachschlagtabelle 18 zu indexieren.)
- Bei Schritt 1 (Fig. 2) adressiert der Prozessor 14 einen kleinen Block (ein Eingabefeld) aus Pixeldaten in dem Speicher 12. Bei einem bevorzugten Ausführungsbeispiel besteht ein Eingabefeld aus zwei angrenzenden Pixeln in einer Zeile in dem Speicher 12 und deren nächsten Nachbarn. Ein solches Eingabefeld 28 ist in Fig. 3A mit zwölf Pixeln oder Bits gezeigt, wobei die zentralen zwei Pixel 29, 30 die Zielpixel sind, die von dem Prozessor 14 verbessert werden sollen. Die Pixeldaten, die in dem Speicher 12 gespeichert sind, weisen eine ursprüngliche Auflösung von N Punkten pro Zoll (dpi) in der horizontalen Richtung und M dpi in der vertikalen Richtung auf.
- Bei Schritt 2 bestimmt der Prozessor 14, ob dieses Eingabe feld 28 eine Ausnahme ist. Eine Ausnahme tritt auf, wenn das Eingabefeld mit einem aus mehreren spezifischen Mustern übereinstimmt, die eine spezielle Verarbeitung erfordern, die sich von der unterscheidet, die in dem Rest des Flußdiagramms von Fig. 2 beschrieben ist. Eine solche Ausnahme ist das Auftreten eines einzelnen, alleinstehenden Bits in dem Eingabefeld, wie es in Fig. 5 dargestellt ist. Es wird angenommen, daß dieses Bit ein vereinzeltes Bit ist, das als Ergebnis von Rauschen oder eines "schmutzigen" Originaldokuments erscheint. Dieses Bit wird nicht verbessert, sondern wird in einem entsprechenden Ausgabefeld einfach gelöscht (Schritt 2'). Beispiele weiterer Ausnahmen und das Verfahren, das verwendet wird, um diese Ausnahmen zu handhaben, werden später beschrieben.
- Bei Schritt 3 wird eine hochauflösende Bit-Map 31 (Fig. 3B) aus dem Eingabefeld 28 erzeugt. Bei einem Ausführungsbeispiel wird diese hochauflösende Bit-Map 31 durch Erweitern des Eingabefelds 28 um einen Faktor Sechzehn sowohl in der x- als auch in der y-Richtung gebildet, wie es in Fig. 3B gezeigt ist. In Fig. 3B ist das Array aus schwarzen Pixeln, das durch das Erweitern des Eingabefelds 28 erzeugt wird, innerhalb der durchgezogenen Außenlinie 32 eingeschlossen. Bei einem alternativen Ausführungsbeispiel unterscheidet sich ein Faktor, der verwendet wird, um das Eingabefeld 28 in der x-Richtung zu erweitern, von einem Faktor, der verwendet wird, um das Feld 28 in der y-Richtung zu erweitern.
- Bei Schritt 4 bestimmt der Prozessor 14, ob die hochauflösende Bit-Map 31 Teil eines Bilds (d. h. einer Abbildung) oder eines Texts ist. Falls bestimmt wird, daß die Bit-Map 31 Teil eines Bilds ist, werden die Glättungsschritte 5-7 übersprungen, woraufhin Schritt 8 auf der Bit-Map 31 durchgeführt wird. Das Verfahren zum Bestimmen, ob die Bit-Map 31 Teil eines Bilds oder Texts ist, wird später beschrieben. Falls bestimmt wird, daß die Bit-Map 31 Teil eines Texts ist, werden die folgenden Operationen durchgeführt, um die Qualität des gedruckten Texts zu verbessern.
- Bei Schritt S wird die folgende Berechnung durchgeführt, um das Ausmaß einer Anfangsglättung zu bestimmen, die bei Schritt 6 ausgeführt werden soll:
- Anzahl der Minoritätspixeln im Eingabefeld wobei ein höherer Q-Wert eine geringere Glättung ergibt, die bei den Schritten 6 und 7 durchgeführt wird. Die freiliegenden Pixelseiten, die in Gleichung 1 angegeben sind, entsprechen der Anzahl von Seiten (maximal vier pro Pixel) eines Minoritätspixels, die einem Weiß-Schwarz- oder Schwarz- Weiß-Übergang gegenüberstehen; die Begrenzungen des Eingabefelds werden nicht als Übergang gezählt. Ein Minoritätspixel ist ein Pixeltyp (Schwarz oder Weiß), der die geringste Anzahl in dem Eingabefeld aufweist. Der Q-Wert ist folglich die mittlere Anzahl von freiliegenden Seiten pro Minoritätspixel in dem Eingabefeld.
- Dieser Q-Wert ist ein Maß für die durchschnittliche Anfälligkeit der Pixel, durch die Anfangsglättung bei Schritt. 6 beseitigt zu werden. Wenn die Minoritätspixel nur in geringer Anzahl vorhanden sind und diese Minoritätspixel eine hohe Anzahl freiliegender Seiten aufweisen, sind sie folglich dafür anfällig, durch die Anfangsglättung bei Schritt 6 beseitigt zu werden, es sei denn, ein Korrekturfaktor (d. h. der Q-Wert) wird bei der Anfangsglättung angewendet.
- Das Regulieren des Glättungsausmaßes hilft nicht nur, ein Detail zu erhalten, sondern verringert ferner den angerichteten Schaden, falls der oben erwähnte Text/Bild-Unterscheidungsschritt 4 fehlschlägt. Falls ein Eingabefeld fälschlicherweise für einen Text gehalten wird (aber tatsächlich Teil eines Bilds ist), werden die Pixel in demselben wahrscheinlich etwas gestreut sein, woraus sich ein hoher Q-Wert ergibt, und wodurch eine geringere Glättung auftritt. Die Abbildung ist dann nicht wesentlich verändert.
- Dieser Q-Wert wird ferner beim Bestimmen der Größe der Schablone verwendet, die beim Durchführen einer digitalen Tiefpaßfilterung (Schritt 7) bezüglich der hochauflösenden Bit- Map verwendet wird, nachdem der Schritt 6 beendet worden ist.
- Weitere geeignete Q-Werte können unter Verwendung anderer Gleichungen als Gleichung 1 berechnet werden. Zum Beispiel kann ein weiterer geeigneter Q-Wert wie folgt berechnet werden: berechne die Anzahl der freiliegenden Ecken des freiliegendsten mittleren Pixels, das dem Zielpixel 29 oder 30 in einem Eingabefeld entspricht (Fig. 3A). Das "Freiliegen" eines Pixels ist die Anzahl der freiliegenden Ecken, die dasselbe aufweist. Eine Ecke eines Pixels ist "freiliegend", falls ihre drei Nachbarn die entgegengesetzte Farbe oder den entgegengesetzten Typ aufweisen. Beispielsweise wird angenommen, daß in der folgenden Anordnung von Pixeln die B- Pixel (B; B = Black) schwarz und die W-Pixel (W; W = White) weiß sind.
- Das obige B&sub0;-Pixel weist eine freiliegende Ecke auf (d. h. seine obere rechte Ecke). Das B&sub1;-Pixel weist zwei freiliegende Ecken auf. Die freiliegenden Ecken des freiliegendsten Pixels werden dann als der Q-Wert gespeichert. Dieses "Freiliegen" 'ist eine Zahl von 0 bis 4. Je höher diese Zahl ist, umso anfälliger ist das Pixel dafür, während des nachfolgenden Glättungsschritts beseitigt zu werden. Diese Zahl für das Freiliegen kann anstelle des Q-Werts verwendet werden, der insbesondere in Gleichung 1 bestimmt ist. Bei einem Spezialfall gilt: falls das Freiliegen des freiliegendsten Pixels, wie oben berechnet, Eins ist, und falls entweder sowohl die obere als auch die untere Seite des Pixels freiliegend sind oder sowohl die linke als auch die rechte Seite freiliegend sind, wird das Freiliegen auf Zwei erhöht. Beispielsweise ist bei der folgenden Pixelanordnung
- das tatsächliche Freiliegen des obigen Pixels B&sub0; Eins. Da jedoch sowohl die obere Seite als auch die untere Seite von B&sub0; freiliegen, wird das Freiliegen auf Zwei erhöht, wodurch der Tatsache wiedergegeben wird, daß dieses Pixel B&sub0; dafür anfälliger ist, beseitigt zu werden, als es dessen eine freiliegende Ecke nahelegen würde. Diese Technik ist stark bezüglich der mittleren beiden Pixel gewichtet, wohingegen der Q-Wert, der mittels Gleichung 1 berechnet wird, eine durchschnittliche Anfälligkeit über dem gesamten Eingabefeld ist. Diese Technik ist folglich dahingehend vorsichtiger als die Q-Wert-Technik von Gleichung 1, daß das Zielpixel 29, 30 weniger wahrscheinlich übermäßig geglättet wird.
- Weitere geeignete Gleichungen für einen Q-Wert können stattdessen verwendet werden, wobei der Q-Wert die Anfälligkeit eines Pixels dafür, unerwünschterweise bei den nachfolgenden Glättungsschritten 6 und 7 beseitigt zu werden, wiedergibt.
- Bei Schritt 6 wird eine Anfangsglättung der 90º-Ecken von Weiß/Schwarz- oder Schwarz/Weiß-Pixelübergängen in der hochauflösenden Bit-Map 31 entweder durch Abschneiden einer dreieckigen Ecke 34 mit bestimmter Größe (Fig. 3C) von den konvexen 90º-Winkeln oder durch Auffüllen der konkaven 90º- Winkel mit einem Dreieck 35 mit bestimmter Größe durchgeführt. Die Größe dieser Dreiecke entspricht dem vorher bestimmten Q-Wert, wobei ein höherer Wert von Q kleineren Dreiecken (d. h. einer geringeren Glättung) entspricht, die bei dem obigen Abschneide- und Auffüllungsschritt verwendet werden. Ein solcher Abschneide- und Auffüllungsschritt ist in Fig. 3C dargestellt. In Fig. 3C sind die bei Schritt 6 gelöschten oder hinzugefügten Pixel innerhalb gestrichelter Linien gezeigt.
- Die folgende Tabelle 1 stellt ein Beispiel einer Korrelation zwischen einem berechneten Q-Wert und dem Prozentwert der maximalen Dreiecksgröße dar, die während des Schritts 6 abgeschnitten oder aufgefüllt werden soll. Tabelle I
- Bei dem Beispiel von Fig. 3A-3C befinden sich vier Minoritätspixel in dem Eingabefeld 28 mit einer Gesamtzahl von vier freiliegenden Seiten, woraus sich unter der Annahme, daß Gleichung 1 verwendet wird, ein Q-Wert von Eins ergibt. Unter der Voraussetzung dieses ziemlich geringen Werts von Q wird eine große anfängliche Vor-Glättung unter Verwendung der Dreiecksabschneidungen und -auffüllungen durchgeführt, indem beispielsweise ein Abschnitt in der Form eines rechtwinkligen Dreiecks mit zwölf Pixeln auf zwei seiner gleichen. Seiten von den konvexen Ecken abgeschnitten wird, und indem die konkave Ecke mit einem rechtwinkligen Dreieck mit zwölf Pixeln auf zwei seiner gleichen Seiten aufgefüllt wird. Die maximale Dreiecksgröße, die bei Schritt 6 verwendet werden soll, kann empirisch bestimmt werden und hängt von dem ursprünglichen dpi-Wert des Pixelmusters und dem Grad der gewünschten Anfangsglättung ab:
- Bei Schritt 7 wird die resultierende, vor-geglättete, hochauflösende Bit-Map 31 einer herkömmlichen digitalen Faltung unterzogen, die eine relativ kleine Faltungsschablone verwendet und als Tiefpaßfilter wirkt. Dieses Filter ist entworfen, um kleine grobe Ecken zu glätten, die größeren Merkmale aber noch größtenteils unverändert zu lassen. Mittels des Durchführens der Vor-Glättung der großen 90º-Winkel bei Schritt 6 kann das digitale Filter bei Schritt 7 eine Faltung mit einem größeren Durchlaßbereich als die im Stand der Technik bekannten Filter verwenden, um alle dünnen schwarzen Linien und dünnen weißen Spalten zu bewahren. Bei den Schritten 6 und 7 wird folglich eine Glättung durchgeführt, ohne daß Details gelöscht werden. Je größer der Q-Wert ist, desto kleiner ist die Schablone, die für die digitale Filterung verwendet wird. Optimale Schablonengrößen können empirisch bestimmt werden. Solche Schablonen können kreisförmig, falls das Faksimilegerät in dem feinen Modus arbeitet, oder für den Standardmodus oval (Höhe = 2 · Breite) sein.
- Die resultierende hochauflösende Bit-Map 31 ist nach dem Glätten mittels des herkömmlichen Digitalfilters durch die Außenlinie der schwarzen Pixel in Fig. 3D dargestellt.
- Bei Schritt 8 wird ein mittlerer Abschnitt der hochauflösenden Bit-Map 31, der den zwei Zielpixeln 29, 30 in dem Eingabefeld 28 (Fig. 3A) entspricht, in soviele Pixelbereiche 38-43 (Fig. 3D) unterteilt, wie es erwünscht ist, um die zwei ursprünglichen Zielpixel 29, 30 zu ersetzen. Falls es beispielsweise gewünscht wäre, ein höherauflösendes Bild zu drucken, indem die zwei ursprünglichen Zielpixel 29, 30 in sechs gedruckte Pixel umgewandelt werden, würde der Bereich der hochauflösenden Bit-Map 31, der den zwei Zielpixeln 29, 30 entspricht, in sechs gleichgroße Pixelbereiche 38-43 unterteilt werden. Die Pixelbereiche 38-43 können sich, falls gewünscht, bis zu einem gewissen Grad überlappen. Bei einem Ausführungsbeispiel beträgt die horizontale Skalierung zum Drucken 1.5 (entsprechend den drei Ausgabepixeln in einer Zeile) und die vertikale Skalierung beträgt Zwei (entsprechend den zwei Zeilen aus Ausgabepixeln). Eine solche Segmentierung ist in Fig. 3D gezeigt. Bei einem weiteren Ausführungsbeispiel beträgt die vertikale Skalierung Drei, so daß der dpi-Wert sowohl in der horizontalen als auch in der vertikalen Richtung gleich ist (z. B. 300 dpi).
- Bei Schritt 9 wird die Anzahl von schwarzen Pixeln in einem einzelnen Pixelbereich 38-43 bestimmt und, falls diese Anzahl größer als eine Schwellenanzahl ist, wird das zu druckende Pixel, das diesem Bereich 38-43 entspricht, ein schwarzes Pixel sein. Falls die Anzahl der schwarzen Pixeln unter der Schwelle liegt, wird ein weißes Pixel für diesen Pixelbereich gedruckt. (Diese Schwellenanzahl kann ferner basierend auf der Anzahl von weißen Pixeln in einem Pixelbereich eingestellt werden.) Die Schwellenanzahl kann eingestellt werden, um ein Verlaufen der Tinte oder ein Verlaufen eines anderen Markierungsmittels zu berücksichtigen, wenn ein Pixel auf einem Medium gedruckt wird oder auf andere Weise angezeigt wird. Durch korrektes Einstellen der Schwellenanzahl kann eine getreue Wiedergabe der Helligkeit und der Dunkelheit des gesamten Bilds erhalten werden. Die Schwellenanzahl kann basierend auf empirischen Verfahren hinsichtlich des Typs des verwendeten Markierungsmittels, des verwendeten Aufzeichnungsmediums und des verwendeten Druckverfahrens eingestellt werden. Bei dem Beispiel von Fig. 3D ist die Schwellenanzahl auf die Hälfte der gesamten Anzahl von Pixeln in einem Pixelbereich 38-43 eingestellt, wobei die resultierende Bestimmung eines schwarzen oder weißen, zu druckenden Pixels für jeden Pixelbereich 38-43 durch ein B oder W gezeigt ist.
- Bei den Schritten 10 und 11 wird das Ausgabefeld 46 (Fig. 3D), das aus einem Pixel pro Pixelbereich 38-43 besteht, von dem Prozessor 14 ausgegeben und in einem zweiten Bit-Map- Speicher 20 (Fig. 1) für eine nachfolgende Anzeige (z. B. Drucken) auf einem Medium gespeichert. (Die erzeugten Ausgabefelder können stattdessen in der Nachschlagtabelle 18 zum späteren Indexieren durch ein entsprechendes Eingabefeld ge speichert werden.) Da das Ausgabefeld sechs Pixel für alle zwei Zielpixel 29, 30 aufweist, ist der Bit-Map-Speicher 20 dreimal so groß wie der Bit-Map-Speicher 12.
- Der obige Prozess wird bei allen oder mehreren Eingabefeldern in dem Bit-Map-Speicher 12 durchgeführt, um mehrere Ausgabefelder 46 zu erzeugen, die in dem Bit-Map-Speicher 20 gespeichert werden. Die Pixel in den Ausgabefeldern 46, die in dem Bit-Map-Speicher 20 gespeichert sind, werden nun sequentiell adressiert und bei Schritt 11 mit einem horizontalen dpi-Wert von U und einem vertikalen dpi-Wert von V, die größer als der ursprüngliche horizontale dpi-Wert und vertikale dpi-Wert von N bzw. M sind, gedruckt (oder auf andere Weise angezeigt). Bei dem beispielhaften Ausführungsbeispiel von Fig. 3A-3D werden sechs Pixel in dem Raum von zwei Pixeln aus dem ursprünglichen Pixelmuster, das in dem Speicher 12 gespeichert ist, gedruckt, obwohl ein beliebiges Ausgabefeld mit anderer Größe (z. B. ein 3 · 3-Array) erzeugt, gespeichert und angezeigt werden kann. Eine herkömmliche Adressierungs- und Druckkopftreiberschaltungsanordnung 22 (Fig. 1) wird verwendet, um die Pixel aus dem Speicher 20 auszugeben. Der Druckkopftreiber 22 steuert einen herkömmlichen Druckkopf 24, um die entsprechenden Pixel auf einem Aufzeichnungs- oder Anzeigemedium zu drucken oder auf andere Weise anzuzeigen.
- Es wird offensichtlich, daß abhängig von der gewünschten Auflösung des letztendlich gedruckten Pixelmusters eine beliebige Anzahl von Pixeln in einem Ausgabefeld enthalten sein kann. Ferner kann eine beliebige Stufe für die Glättung bei den Schritten 6 und 7 durchgeführt werden, wobei diese optimale Glättung abhängig davon, was von dem Benutzer als die angenehmste Wirkung betrachtet wird, empirisch bestimmt werden kann.
- Bei dem obigen Verfahren, das in Fig. 2 gezeigt ist, wurde auf jedem Eingabefeld 28 ein Algorithmus durchgeführt, um jedes Eingabefeld 28 unter Verwendung des Algorithmus, der in dem Programm-ROM 16 enthalten ist, in ein Ausgabefeld 46 umzuwandeln.
- Ein viel weniger rechenintensives Verfahren wird hinsichtlich Fig. 4 beschrieben und verwendet eine Nachschlagtabelle 18 (Fig. 1). Bei diesem Ausführungsbeispiel besteht der Prozessor 14 aus einem fest-verdrahteten ASIC oder einem Mikroprozessor. Bei diesem Verfahren enthält die Nachschlagtabelle 18 die Ausgabefelder für jede Kombination von 12 Pixeln in einem Eingabefeld, d. h. für insgesamt 4096 Ausgabefelder. Die Ausgabefelder werden anfänglich für alle möglichen Eingabefelder unter Verwendung des oben, hinsichtlich Fig. 2 beschriebenen Verfahrens erzeugt. Die Eingabefelder wirken dann als Index, um ein entsprechendes Ausgabefeld aus der Nachschlagtabelle 18 auszuwählen, wobei dieses indexierte Ausgabefeld dann in den Bit-Map-Speicher 20 ausgegeben wird.
- Bei dem Verfahren, das in Fig. 4 gezeigt ist, entspricht Schritt 1 dem Schritt 1 aus Fig. 2. Bei Schritt 2 wird ein Ausgabefeld in der Nachschlagtabelle 18 adressiert oder indexiert, wobei das Eingabefeld als die Adresse verwendet wird. Zum Beispiel würde das Eingabefeld 28 in Fig. 3A das gespeicherte Ausgabefeld 46 in Fig. 3D adressieren. Bei Schritt 3 wird dieses Ausgabefeld in einen Bit-Map-Speicher 20 übertragen. Bei Schritt 4 werden die Pixel in dem Bit- Map-Speicher 20 mit einem horizontalen dpi-Wert von U und einem vertikalen dpi-Wert von V ausgedruckt, die höher sind als der ursprüngliche horizontale und vertikale dpi-Wert von N bzw. M.
- Die Ausgabefelder, die in der Nachschlagtabelle 18 gespeichert sind, werden unter Verwendung des in den Fig. 2 und 3A-3D dargestellten Prozesses für jedes Eingabefeld, das wunschgemäß verbessert werden soll, hergeleitet.
- Die vorher erwähnten Eingabefeldausnahmen weisen eine Ausnahme für einen vereinzelten Punkt und eine Ausnahme für eine Erhöhung oder Vertiefung auf. Die Ausnahme für einen vereinzelten Punkt ist in Fig. 5 dargestellt, wobei das Eingabefeld 52 ein einzelnes, schwarzes oder weißes Pixel aufweist. Da es keine beabsichtigten Schriftzeichen gibt, die aus einem einzelnen Pixel gebildet sind, wird angenommen, daß dieses einzelne Pixel das Ergebnis von Rauschen oder einem schmutzigen Original ist. Wenn dieser Eingabefeldtyp erfaßt wird, wird das einzelne Pixel entsprechend gelöscht, wobei ein korrigiertes Ausgabefeld 54 von dem Prozessor 14 ausgegeben wird. Die spezielle Darstellung von Fig. 5 zeigt die zwei zentralen Zielpixel, die in ein 3 · 3-Pixelarray umgewandelt werden, obwohl ferner andere Ausgabefeldarraygrößen verwendet werden können. Ein solches Ausgabefeld 54 kann in der Nachschlagtabelle 18 gespeichert werden oder das Ausgabefeld 54 würde entsprechend einer Zweigroutine erzeugt werden, die den Ausnahme-Algorithmus enthält, falls das Eingabefeld 52 unter Verwendung eines Algorithmus, wie er in Fig. 2 beschrieben ist, verarbeitet wird.
- Fig. 6 stellt eine weitere Ausnahme eines Eingabefelds 56 dar, die eine Erhöhung (Pixel 57) ist, die aus einer Pixelzeile hervorsteht. Eine solche Erhöhung wird normalerweise hervorgerufen, wenn die Dicke einer Linie in einem Originaldokument sehr nah an einem Schwellenquantisierungspegel liegt und nur hin und wieder diesen Schwellenpegel übersteigt. Folglich ist die Erhöhung nicht das Ergebnis von Rauschen oder einem schmutzigen Original, sondern dieselbe liefert Informationen über das ursprüngliche Bild. Bei dieser Ausnahme wird eine Erhöhung in dem entsprechenden Ausgabefeld 58 in eine schmale horizontale Linie skaliert, deren Dicke ein Drittel der einer vollen Linie beträgt. Dies setzt voraus, daß das Ausgabefeld aus einem 3 · 3-Pixelarray besteht. Folglich würde sich die Dicke der gedruckten Linie, die die Erhöhung enthält, ein wenig erhöhen, wenn das vollständige Bild gedruckt worden ist.
- Fig. 7 stellt ein Eingabefeld 60 dar, das eine Vertiefung (Pixel 61) in einer Pixellinie enthält. Diese Ausnahme setzt voraus, daß die mit einer Vertiefung versehene Linie ein wenig dünner als eine volle Linie ist, wobei folglich die mit einer Vertiefung versehene Linie in dem Ausgabefeld 62 in eine Linie skaliert wird, deren Dicke zwei Dritteln der Dicke einer vollen Linie beträgt. Dies setzt voraus, daß das Ausgabefeld aus einem 3 · 3-Pixelarray besteht. Die Korrekturen bezüglich der Erhöhungen und Vertiefungen können ferner genauso bei vertikalen Linien angewendet werden.
- Bei der Darstellung der Fig. 5-7 beträgt die vertikale Skalierung des gedruckten Bilds 3.0 und die horizontale Skalierung beträgt 1.5, so daß drei Zeilen und drei Spalten aus Pixeln für alle zwei horizontal angrenzenden, ursprünglichen Zielpixel ausgegeben werden.
- Falls bei Schritt 2 der Fig. 2 und 4 bestimmt wird, daß ein Original-Faksimile-Bild eine Abbildung (oder ein anderes Nicht-Text-Bild) ist, muß es nicht erwünscht sein, dieses Bild zu korrigieren, da nicht bekannt ist, ob irgendwelche Merkmale oder Winkel beabsichtigt oder das Ergebnis eines Quantisierungsfehlers sind. Falls folglich bestimmt wird, daß ein Eingabefeld ein Abschnitt eines Bilds ist, sollte keine Korrektur durchgeführt werden, wobei die Zielpixel in dem Eingabefeld skaliert werden sollten, um ein Ausgabefeld mit dem erhöhten horizontalen und vertikalen dpi-Wert U, V zu liefern, wie es in Fig. 2 gezeigt ist.
- Fig. 8 ist ein Flußdiagramm eines Verfahrens, um zu bestimmen, ob die Pixeldaten einen Text oder ein Bild (z. B. eine Abbildung) bilden. Bei dem bevorzugten Ausführungsbeispiel wird die Bestimmung, daß ein empfangenes Eingabefeld bei Schritt 1 Teil eines Bildes ist, vorgenommen, falls eine oder beide der folgenden zwei Bedingungen zutreffen. Die erste Bedingung besteht darin, ob die Anzahl der freiliegenden Pixelseiten (d. h. der Schwarz-Weiß-Übergänge) in einem Eingabefeld größer als eine bestimmte Schwelle ist. Falls dies zutrifft, ist es offensichtlich, daß die Minoritätspixel in dem Eingabefeld verstreut sind und Teil eines Bilds (z. B. eines Halbtonbilds) sind. Dies ist bei den Schritten 2, 3 und 4 dargestellt. Die zweite Bedingung besteht darin, ob der längste schwarze horizontale Verlauf in allen Zeilen des Eingabefelds ein Pixel beträgt, oder der längste weiße horizontale Verlauf aus Pixeln in all diesen Zeilen ein Pixel beträgt (Schritt S). Diese zweite Bedingung entspricht der Anordnung von sehr schmalen Zeilen oder Spalten, die in Abbildungen jedoch nicht in einem Text verwendet werden. Falls die obigen Bedingungen erfüllt werden, werden die Glättungsschritte 5-7 in Fig. 2 übersprungen, wobei die Bilddaten gemäß den restlichen Schritten, die in Fig. 2 gezeigt sind, verarbeitet werden. Falls eine Nachschlagtabelle 18 zum Ausgeben verbesserter Ausgabefelder verwendet wird, können die Bilddaten die Nachschlagtabelle 18 umgehen und können entsprechend skaliert werden, um mit dem dpi-Wert des Druckers übereinzustimmen.
- Falls die obigen Bedingungen nicht erfüllt sind, würde der Prozess der Fig. 2 oder 4 zum Erzeugen eines modifizierten Ausgabefelds für dieses Eingabefeld fortgesetzt werden (Schritt 6 in Fig. 8). Der Prozessor 14 in Fig. 1 würde die notwendige Schaltungsanordnung enthalten, um zu bestimmen, ob das Eingabefeldmuster eine oder zwei der obigen Bedingungen erfüllt. Eine Form einer geeigneten Schaltungsanordnung kann eine Komparatorschaltung sein, die das Eingabefeldmuster mit mehreren gespeicherten Mustern vergleicht, die die obigen zwei Bedingungen erfüllen. Ein Fachmann könnte eine solche Schaltung problemlos herstellen oder einen Algorithmus entwickeln, um eine solche Bestimmung durchzuführen.
- Typischerweise können Faksimilegeräte entweder auf einen Standardmodus (98 · 203 dpi) oder einen feinen Modus (196 · 203 dpi) eingestellt werden. Falls es bei dem Standardmodus erwünscht wäre, sowohl in der vertikalen als auch in der horizontalen Richtung mit 300 dpi zu drucken, muß die vertikale Skalierung 3.0 und die horizontale Skalierung 1.5 betragen. Die resultierenden 3-Zeilen-Ausgabefelder, die jeweils 9 Pixel enthalten, würden 8.192 Bytes in der Nachschlagtabelle 18 erfordern. Für eine vertikale Skalierung von 2.0 würden 2-Zeilen-Ausgabefelder mit jeweils 6 Bits verwendet werden, wobei dieselben 4.096 Bytes in der Nachschlagtabelle 18 erfordern würden. Bei dem feinen Modus bei 300 dpi beträgt die vertikale Skalierung 1.5, so daß lediglich Ein- oder Zwei-Zeilen-Ausgabefelder erforderlich sind, die lediglich 4.096 Bytes in der Nachschlagtabelle 18 für jeden Satz von Ausgabefeldern verwenden. Um eine vertikale Skalierung von 1.5 zu erreichen, können ungeradzahlige Pixelzeilen vertikal mit 1.0 skaliert werden, wobei geradzahlige Pixelzeilen vertikal mit 2.0 skaliert werden können. Die oben erwähnten vier Skalierungs-Tabellen verbrauchen lediglich 20 Kbytes, um sowohl den Standardmodus als auch den feinen Modus in gewöhnlichen Faksimilegeräten unterzubringen.
- Die Schaltungsanordnung von Fig. 1 und der Algorithmus, der unter Bezugnahme auf die Fig. 2 bis 4 beschrieben ist, können von einem Fachmann hinsichtlich dieser Offenbarung lediglich unter Verwendung von herkömmlichen Schaltungsanordnungen und Programmiertechniken implementiert werden.
- Die Pixel, die unter Verwendung der obigen Verfahren erzeugt werden, können letztendlich auf einem beliebigen Medium, wie z. B. auf Papier oder auf einem Anzeigeschirm, angezeigt werden.
Claims (12)
1. Ein Verfahren zum Entfernen von vereinzelten Pixeln in
einem Zwei-Pegel-Pixelmuster (52), mit folgenden
Schritten:
Empfangen eines Blocks aus Pixeln (28/ 52) aus einem
ursprünglichen Pixelmuster, wobei der Block aus Pixeln
ein oder mehrere ursprüngliche Zielpixel (29/ 30), die
einen ersten Abschnitt des Pixelmusters bilden, und
benachbarte Pixel der Zielpixel enthält;
Erfassen, ob ein erstes Zielpixel ein Pixel eines
ersten Typs ist, das von Pixeln eines zweiten Typs in dem
Block aus Pixeln umgeben ist;
Durchführen einer Tiefpaßfilterung (Schritte 6/7) der
Pixel in dem ursprünglichen Pixelmuster (28/ 52), falls
das erste Zielpixel (29; 30) nicht von einem ersten Typ
ist, das von den Pixeln eines zweiten Typs umgeben ist;
Ersetzen des ersten Zielpixels, falls dasselbe als das
Pixel eines ersten Typs erfaßt wird, das von den Pixeln
des zweiten Typs umgeben ist, durch ein oder mehrere
Austauschpixel des zweiten Typs; und
Ausgeben der Austauschpixel (54) für eine nachfolgende
Anzeige auf einem Medium.
2. Das Verfahren gemäß Anspruch 1, bei dem der Schritt des
Ausgebens ein Speichern der Austauschpixel (54) in
einem Speicher (20) für eine spätere Anzeige aufweist.
3. Das Verfahren gemäß Anspruch 1, bei dem die
Austauschpixel (54) anfänglich in einer Nachschlagtabelle (18)
gespeichert und unter Verwendung des Blocks aus Pixeln
(28/ 52) als Index indexiert werden.
4. Ein Verfahren zum Verbessern der Qualität eines Zwei-
Pegel-Pixelmusters (28/56/60), das einen Liniensegment
mit einer Erhöhung (57) oder einer Vertiefung (61)
aufweist, mit den folgenden Schritten:
Empfangen eines Blocks aus Pixeln (28/56/60) aus einem
ursprünglichen Pixelmuster, wobei der Block aus Pixeln
Zeilen und Spalten aus Pixeln aufweist, wobei der Block
aus Pixeln ein oder mehrere Zielpixel (29/30/57/61),
die einen ersten Abschnitt eines Pixelmusters bilden,
und benachbarte Pixel der Zielpixel enthält, wobei
jedes der Zielpixel vier Seiten aufweist, wobei jede
Seite einem angrenzenden Pixel gegenüberliegt;
Erfassen, ob ein erstes Zielpixel (57/61) eine erste
Bedingung erfüllt, wobei die erste Bedingung darin
besteht, daß das erste Zielpixel ein Pixel eines ersten
Typs ist, bei dem drei seiner Seiten einem Pixel eines
zweiten Typs gegenüberliegen und eine seiner Seiten
einem weiteren Pixel des ersten Typs gegenüberliegt,
wobei sich das weitere Pixel des ersten Typs in einer der
Zeilen oder Spalten befindet, die ausschließlich Pixel
des ersten Typs enthalten;
Durchführen einer Tiefpaßfilterung (Schritte 6/7) der
Pixel in dem ursprünglichen Pixelmuster, falls erfaßt
wird, daß das erste Zielpixel (57/61) nicht die erste
Bedingung erfüllt;
Ersetzen der Zielpixel (29/30/57/61), falls erfaßt
wird, daß das erste Zielpixel die erste Bedingung
erfüllt, durch eine oder mehrere Linien aus
Austauschpixeln (58/62) des ersten Typs, wobei die eine oder
mehreren Linien aus Austauschpixeln des ersten Typs
parallel und angrenzend zu der einen der Zeilen oder
Spalten angeordnet sind, die ausschließlich Pixel des
ersten Typs aufweist, und durch eine oder mehrere
Linien aus Austauschpixeln (58/62) des zweiten Typs, die
sich parallel zu der einen oder mehreren Linien der
Austauschpixel des ersten Typs befinden; und
Ausgeben der Linien aus Austauschpixeln des ersten Typs
und des zweiten Typs zum Drucken.
5. Das Verfahren gemäß Anspruch 4, bei dem die eine oder
mehreren Linien aus Austauschpixeln (58/62) des ersten
Typs eine Linie aus Austauschpixeln aufweisen.
6. Das Verfahren gemäß Anspruch 5, bei dem die eine oder
mehreren Linien aus Austauschpixeln (58/62) des zweiten
Typs zwei oder mehr Linien aus Austauschpixeln
aufweisen.
7. Das Verfahren gemäß Anspruch 4, bei dem eine Linie der
Austauschpixel (58/62) des ersten Typs oder des zweiten
Typs drei oder mehr Austauschpixel aufweist.
8. Das Verfahren gemäß Anspruch 4, bei dem die
Austauschpixel (58/62) anfänglich in einer Nachschlagtabelle
(18) gespeichert und unter Verwendung des Blocks aus
Pixeln (28/56/60) als Index indexiert werden.
9. Das Verfahren gemäß Anspruch 4, bei dem das Pixel des
ersten Typs ein schwarzes Pixel ist, und das erste
Zielpixel eine Erhöhung (57) auf einer Linie aus
schwarzen Pixeln ist.
10. Das Verfahren gemäß Anspruch 4, bei dem das Pixel des
ersten Typs ein weißes Pixel ist, und das erste
Zielpixel eine Vertiefung (61) in einer Linie aus schwarzen
Pixeln ist.
11. Das Verfahren gemäß Anspruch 1 oder 4, bei dem ein
Fak
similegerät den Block aus Pixeln (28/56/60) mit
ursprünglichen Punkten-Pro-Zoll (dpi) von N, M empfängt,
wobei N eine horizontale dpi und M eine vertikale dpi
ist, und bei dem das Faksimilegerät die Austauschpixel
(58/62) mit einer dpi von U, V druckt, wobei U eine
horizontale dpi ist, die größer oder gleich N ist, und V
eine vertikale dpi ist, die größer oder gleich M ist.
12. Das Verfahren gemäß Anspruch 1 oder 4, bei dem das eine
oder die mehreren ursprünglichen Zielpixel (29/30) zwei
Zielpixel aufweisen, und bei dem die benachbarten Pixel
10 Pixel aufweisen, die die Zielpixel umgeben.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/212,100 US5483355A (en) | 1994-03-11 | 1994-03-11 | Pixel correctional and smoothing method |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69509691D1 DE69509691D1 (de) | 1999-06-24 |
DE69509691T2 true DE69509691T2 (de) | 1999-09-23 |
Family
ID=22789566
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69527215T Expired - Fee Related DE69527215T2 (de) | 1994-03-11 | 1995-03-09 | Verfahren zur Korrektur und Glättung von Bildelementen |
DE69509691T Expired - Fee Related DE69509691T2 (de) | 1994-03-11 | 1995-03-09 | Verfahren zur Korrektur und Glättung von Bildelementen |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69527215T Expired - Fee Related DE69527215T2 (de) | 1994-03-11 | 1995-03-09 | Verfahren zur Korrektur und Glättung von Bildelementen |
Country Status (4)
Country | Link |
---|---|
US (1) | US5483355A (de) |
EP (2) | EP0673152B1 (de) |
JP (1) | JPH07283947A (de) |
DE (2) | DE69527215T2 (de) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5611023A (en) * | 1992-09-02 | 1997-03-11 | Ricoh Company, Ltd. | Apparatus and method for processing two-tone image data so as to smooth and magnify image |
US6438273B1 (en) * | 1998-12-23 | 2002-08-20 | Xerox Corporation | Method and apparatus for using rotatable templates within look-up tables to enhance image reproduction |
JP3594831B2 (ja) * | 1999-02-26 | 2004-12-02 | シャープ株式会社 | 画像補正装置および方法、画像補正制御プログラムを記憶した媒体 |
JP3982979B2 (ja) * | 1999-08-19 | 2007-09-26 | 株式会社リコー | 画像形成装置 |
US6850339B1 (en) | 2000-03-23 | 2005-02-01 | Hewlett Packard Development Company | Resolution enhancement of half-toned black data transmitted with color data |
JP2002077599A (ja) * | 2000-08-24 | 2002-03-15 | Minolta Co Ltd | 画像処理装置 |
US6987588B2 (en) * | 2001-06-25 | 2006-01-17 | Xerox Corporation | Text and image quality enhancement |
US7483167B2 (en) * | 2003-08-27 | 2009-01-27 | Marvell International Ltd. | Image forming apparatus for identifying undesirable toner placement |
US20050248780A1 (en) * | 2004-05-05 | 2005-11-10 | Piatt Michael J | Digital printing highlights and image processing workflow |
US7697169B2 (en) * | 2004-10-29 | 2010-04-13 | Marvell International Technology Ltd. | Laser print apparatus with toner explosion compensation |
US7797356B2 (en) * | 2007-02-02 | 2010-09-14 | Microsoft Corporation | Dynamically detecting exceptions based on data changes |
US7797264B2 (en) * | 2007-02-02 | 2010-09-14 | Microsoft Corporation | Detecting and displaying exceptions in tabular data |
US8004714B2 (en) * | 2007-04-17 | 2011-08-23 | Xerox Corporation | System for replacing a portion of an image data stream in an ink jet printer |
CN106482739B (zh) * | 2016-11-30 | 2020-07-17 | 英华达(上海)科技有限公司 | 自动导引运输车导航方法 |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4003024A (en) * | 1975-10-14 | 1977-01-11 | Rockwell International Corporation | Two-dimensional binary data enhancement system |
CA1157143A (en) * | 1978-06-21 | 1983-11-15 | James C. Stoffel | Image interpolation system |
US4193092A (en) * | 1978-06-21 | 1980-03-11 | Xerox Corporation | Image interpolation system |
US4280144A (en) * | 1979-12-03 | 1981-07-21 | International Business Machines Corporation | Coarse scan/fine print algorithm |
US4389677A (en) * | 1980-12-08 | 1983-06-21 | Ncr Canada Ltd - Ncr Canada Ltee | Method and apparatus for removing erroneous elements from digital images |
US4437122A (en) * | 1981-09-12 | 1984-03-13 | Xerox Corporation | Low resolution raster images |
EP0187724B1 (de) * | 1985-01-10 | 1992-09-30 | Nippon Telegraph And Telephone Corporation | Halbtonbildverarbeitungseinrichtung |
US4646355A (en) * | 1985-03-15 | 1987-02-24 | Tektronix, Inc. | Method and apparatus for input picture enhancement by removal of undersired dots and voids |
US5001767A (en) * | 1987-11-30 | 1991-03-19 | Kabushiki Kaisha Toshiba | Image processing device |
JPH0832469B2 (ja) * | 1988-01-29 | 1996-03-29 | 富士通株式会社 | ビットマップフォントの横拡大方式 |
US4847641A (en) * | 1988-08-16 | 1989-07-11 | Hewlett-Packard Company | Piece-wise print image enhancement for dot matrix printers |
US5005139A (en) * | 1988-08-16 | 1991-04-02 | Hewlett-Packard Company | Piece-wise print image enhancement for dot matrix printers |
DE68927540T2 (de) * | 1988-08-25 | 1997-04-24 | Canon Kk | Datenverarbeitungsgerät |
JPH0286369A (ja) * | 1988-09-22 | 1990-03-27 | Toshiba Corp | 画像処理装置 |
JP2813196B2 (ja) * | 1989-04-12 | 1998-10-22 | 株式会社リコー | 画像処理装置 |
US4975785A (en) * | 1989-08-04 | 1990-12-04 | International Business Machines Corporation | Pel resolution addressing conversion |
US4967203A (en) * | 1989-09-29 | 1990-10-30 | Hewlett-Packard Company | Interlace printing process |
US5025325A (en) * | 1989-10-13 | 1991-06-18 | Hewlett-Packard Company | Graphics scaling method for high resolution printers |
JP2647226B2 (ja) * | 1990-03-23 | 1997-08-27 | 沖電気工業株式会社 | ドットパターン圧縮方法及び伸長方法 |
JP2861251B2 (ja) * | 1990-05-12 | 1999-02-24 | ブラザー工業株式会社 | 印字装置 |
JP2502175B2 (ja) * | 1990-08-18 | 1996-05-29 | 富士通株式会社 | 原画像パタ―ンデ―タ再生方法及び装置 |
US5029108A (en) * | 1990-09-24 | 1991-07-02 | Destiny Technology Corporation | Edge enhancement method and apparatus for dot matrix devices |
JP2756371B2 (ja) * | 1991-01-23 | 1998-05-25 | キヤノン株式会社 | 画像処理装置 |
JP2832089B2 (ja) * | 1991-01-28 | 1998-12-02 | キヤノン株式会社 | 画像処理装置 |
US5381522A (en) * | 1991-03-28 | 1995-01-10 | Canon Kabushiki Kaisha | Image processing apparatus and method |
US5270728A (en) * | 1991-04-17 | 1993-12-14 | Hewlett-Packard Company | Raster imaging device speed-resolution product multiplying method and resulting pixel image data structure |
US5267332A (en) * | 1991-06-19 | 1993-11-30 | Technibuild Inc. | Image recognition system |
JP3003318B2 (ja) * | 1991-09-18 | 2000-01-24 | セイコーエプソン株式会社 | シリアルプリンタ |
US5258854A (en) * | 1991-12-06 | 1993-11-02 | Xerox Corporation | Converting between write-white, write-black and neutral bitmaps |
-
1994
- 1994-03-11 US US08/212,100 patent/US5483355A/en not_active Expired - Lifetime
-
1995
- 1995-03-09 DE DE69527215T patent/DE69527215T2/de not_active Expired - Fee Related
- 1995-03-09 JP JP7078347A patent/JPH07283947A/ja active Pending
- 1995-03-09 EP EP95301539A patent/EP0673152B1/de not_active Expired - Lifetime
- 1995-03-09 EP EP98201612A patent/EP0862319B1/de not_active Expired - Lifetime
- 1995-03-09 DE DE69509691T patent/DE69509691T2/de not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US5483355A (en) | 1996-01-09 |
EP0673152A3 (de) | 1995-10-11 |
DE69527215D1 (de) | 2002-08-01 |
DE69509691D1 (de) | 1999-06-24 |
DE69527215T2 (de) | 2002-10-31 |
EP0673152B1 (de) | 1999-05-19 |
EP0862319B1 (de) | 2002-06-26 |
JPH07283947A (ja) | 1995-10-27 |
EP0862319A1 (de) | 1998-09-02 |
EP0673152A2 (de) | 1995-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69521448T2 (de) | Verfahren zur Bildelementkorrektur und -glättung | |
DE69419682T2 (de) | Raumfiltereinheit zur adaptiven Randverstärkung | |
DE69026041T2 (de) | Identifikation, Kennzeichnung und Segmentierung der halbtongerasterten oder punktierten Bereiche eines Binärbildes | |
DE69316477T2 (de) | Räumliche Farbfilterung für thermische Tintenstrahldrucker | |
DE69127187T2 (de) | Verfahren und Gerät zur Verbesserung von Bit-Bildern | |
DE3752300T2 (de) | Ein-/Ausgabegerät und Verfahren zur Verarbeitung von Bilddaten | |
DE69935120T2 (de) | Automatische Verbesserung der Druckqualität basiert auf Grösse, Form, Orientierung und Farbe von Strukturen | |
DE69706763T2 (de) | Verfahren und Vorrichtung zum selektiven Bearbeiten von abgetasteten Bildvorlagen | |
DE69211809T2 (de) | Bilddatenverarbeitungsverfahren und -gerät | |
DE69324653T2 (de) | Verfahren und gerät zur bildreproduktion mittels grautondruck | |
DE69910631T2 (de) | Bildanpassung um die Empfindlichkeit auf Falschregistrierung zu vermindern | |
DE69509691T2 (de) | Verfahren zur Korrektur und Glättung von Bildelementen | |
DE60035401T2 (de) | Gradientenbasierte Verbesserung von Farbtrennflächen mit Hilfe von gemusterten Bereichen | |
DE69306847T2 (de) | Bildverarbeitungssystem und -methode unter Anwendung adaptiver Abtastung von Halbtonvorlagen um besser druckbare Bilder zu erzeugen | |
DE68922674T2 (de) | Bildverarbeitungsverfahren und -anordnung. | |
DE10136423A1 (de) | Kantenverbesserung von Graustufenbildern | |
WO2000057632A1 (de) | Verfahren zur erzeugung von überfülllungskonturen in einer druckseite | |
DE60225761T2 (de) | Verfahren zum mehrstufigen drucken von digitalbildern mithilfe reduzierter farbmittelmengen | |
DE69209866T2 (de) | Verfahren zur Bildverarbeitung und Abtastsystem/Ausdrucksystem zur Durchführung dieses Verfahrens | |
DE4117038C2 (de) | Zeilenbereich-Segmentierungsverfahren | |
DE69511136T2 (de) | Pixelkorrektur und Glättungsverfahren | |
DE69525011T2 (de) | Vierquadrantenskalierung von Punktmatrixdaten | |
DE3935067A1 (de) | Punktbereich-unterscheidungsverfahren | |
DE69928775T2 (de) | Verfahren und vorrichtung zur interpolation von bilddaten sowie medium für ein bilddateninterpolationsprogramm | |
DE4436678A1 (de) | Multi-Tonabstufungs-Bildbearbeitungssystem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: HEWLETT-PACKARD CO. (N.D.GES.D.STAATES DELAWARE), |
|
8327 | Change in the person/name/address of the patent owner |
Owner name: HEWLETT-PACKARD DEVELOPMENT CO., L.P., HOUSTON, TE |
|
8339 | Ceased/non-payment of the annual fee |