-
Die
vorliegende Erfindung bezieht sich auf eine digitale Bildverarbeitung
und insbesondere auf das Verarbeiten von Farbhalbtonbildern.
-
Einfarbige
Halbtonalgorithmen werden sorgfältig
entwickelt, um sichtbare Artefakte zu reduzieren. Gegenwärtige Farbhalbtongebungsalgorithmen
sind üblicherweise
ein kartesisches Produkt aus drei einfarbigen Halbtonebenen, die
den Farbkomponenten des Bildes entsprechen. Siehe z. B. A. Zakhor,
S. Lin und F. Eskafi, „A
New Class of B/W and Color Halftoning Algorithms", International Conference on Acoustics,
Speech and Signal Processing, 1991.
-
Um
einen guten Farbhalbton zu erzeugen, müssen farbige Punkte so plaziert
werden, dass die nachfolgenden Spezifikationen optimal erfüllt sind:
- (1) Das Plazierungsmuster ist visuell nicht
erkennbar.
- (2) Die lokale Durchschnittsfarbe ist die gewünschte Farbe.
- (3) Die verwendeten Farben reduzieren die Erkennbarkeit des
Musters.
-
Die
ersten zwei Entwurfskriterien werden einfach von Einfarben-Algorithmen übertragen.
Das dritte kann jedoch nicht durch eine einfache kartesische Produktverallgemeinerung
der Einfarben-Halbtongebung erfüllt
werden.
-
Einer
der dominantesten Faktoren beim Erzeugen von Halbtonrauschartefakten
ist die Abweichung bei der Helligkeit der Punkte. Bei einfarbigen
Halbtönen
(d. h. schwarz und weiß),
kann dieser Faktor nicht verringert werden. Bei der Farbhalbtongebung
liegen jedoch Farben vor, die unter Verwen dung unterschiedlicher Halbtonfarbsätze aufbereitet
werden könnten
(mit unterschiedlicher Helligkeitsabweichung). Um in der Lage zu
sein, jene spezifischen Halbtonfarben bei dem tatsächlichen
Aufbereiten der Farbebenen zu verwenden, müssten die Farbebenen korreliert
werden. Somit adressiert eine einfache kartesische Produktverallgemeinerung
der Einfarben-Halbtongebung dieses Problem nicht.
-
Bei
der U.S.-Patentanmeldung 08/641,304, eingereicht am 30. April 1996
mit dem Titel „Joint
Design of Dither Matrices for a Set of Colorants" und zugewiesen zu derselben Entität wie diese
Anmeldung, beschreiben Jan Allebach und Qian Lin ein Kriterium zum
Verwenden von Farben, die ausgewählt
sind, um die Erkennbarkeit des Musters zu reduzieren. Bei dieser
Implementierung wird die Verwendung bestimmter Halbtonfarben gesperrt,
wenn einige Farben aufbereitet werden. Die Interpretation des dritten
Kriteriums erfolgt jedoch nur teilweise und damit erreicht diese
Anmeldung nur einen Teil der möglichen
Halbtonrauschreduzierung.
-
Es
ist somit ersichtlich, dass Farbhalbtonbilderzeugungstechniken den
Halbtonbildausgabevorrichtungen Mustererkennbarkeitsgrenzen auferlegen
und die Verwendung dieser Vorrichtungen bei vielen Anwendungen behindern.
-
Daher
besteht ein ungelöster
Bedarf nach einer Technik, die bessere Farbhalbtonbilder erzeugen kann,
durch korrektes Integrieren des dritten Entwurfskriteriums (d. h.
durch Verwenden von Farben, die die Erkennbarkeit des Musters reduzieren).
-
Die
EP-A-0654940 offenbart einen Fehlerdiffusionsprozess, bei dem eine
bestimmte Kombination von Farben, die Luminanzabweichungen minimiert,
bestimmt werden kann. Zu diesem Zweck umfasst der offenbarte Prozess
einen „verzerrten
Farbwürfel", der verwendet wird,
um eine geeignete Farbkombination zu identifizieren, die Luminanzabweichungen
minimiert. Der Scheitelpunkt am nächsten zu dem Pixel, das umgewandelt
werden soll, wird bestimmt und verwendet. Die Offenbarung dieses
Dokuments entspricht allgemein dem Oberbegriff der unabhängigen Ansprüche.
-
Ein
Verfahren und eine Vorrichtung werden beschrieben zum Reduzieren
der Erkennbarkeit des Musters von Farbhalbtonbildern durch einen
Prozess der Farbdiffusion. Der Farbdiffusionsprozess transformiert Fehlerdiffusions-Halbtongebungsalgorithmen
so, dass sie Farbhalbtöne
erzeugen, die dem dritten Farbentwurfskriterium entsprechen, das
in dem Minimalhelligkeitsabweichungskriterium (MBVC; MBVC = Minimum Brightness
Variation Criterion) verkörpert
ist.
-
Fehlerdiffusionsalgorithmen,
wie z. B. der berühmte
Floyd-Steinberg-Fehlerdiffusionsalgorithmus,
sind Hochleistungs-Halbtongebungsverfahren,
bei denen Quantisierungsfehler zu „zukünftigen" Pixeln diffundiert werden. Ursprünglich vorgesehen
für Grauskalabilder,
werden sie herkömmlicherweise
auf Farbbilder ausgedehnt, durch Fehlerdiffundierung von jeder der
drei Farbebenen auf unabhängige
Weise (trennbare Fehlerdiffusion). Das Hinzufügen einer Entwurfsregel, die
auf bestimmten Charakteristika der menschlichen Farbwahrnehmung
basiert, zu dem Fehlerdiffusionsparadigma, führt zu einem Farbhalbtongebungsalgorithmus,
der eine Ausgabe einer bedeutend höheren Qualität aufweist,
im Vergleich zur trennbaren Fehlerdiffusion.
-
Diese
Vorteile werden erreicht, durch Hinzufügen des MBVC zu den Entwurfsregeln
der Farbfehlerdiffusions-Halbtongebungsverfahren. Halbtonwerte werden
gezwungen, Scheitelpunkte eines Minimalhelligkeitsabweichungsquadrupels
(MBVQ; MBVQ = Minimum Brightness Variation Quadruple) zu sein, das
jedem Pixel des Farbbildes zugeordnet ist, das verarbeitet wird.
Die vorgelegten Algorithmen erfordern keinen zusätzlichen Speicher und verursachen
eine tragbare Erhöhung
der Laufzeit.
-
Die
Erfindung ist am besten verständlich
durch die nachfolgende detaillierte Beschreibung in Verbindung mit
den beiliegenden Zeichnungen, in denen gleiche Bezugszeichen gleiche
strukturelle Elemente bezeichnen und in denen:
-
1 ein Blockdiagramm ist,
das eine Vorrichtung darstellt, zum Verarbeiten und Anzeigen eines Farbhalbton-Digitalbildes
unter Verwendung eines Fehlerdiffusions-Farbhalbtongebungsschemas,
das eine Lokalhelligkeitsabweichungsreduzierung gemäß der vorliegenden
Erfindung praktiziert;
-
2 ein Blockdiagramm ist,
das eine Farbdiffusions-Halbtongebungsvorrichtung
darstellt, die geeignet ist zum Anwenden einer Farbhalbton-Lokalhelligkeitsabweichungsreduzierung
gemäß der vorliegenden Erfindung;
-
3 eine Zeichnung ist, die
den RGB-Würfel
darstellt, mit Hauptdiagonalen, die sich bei 50% Grau treffen;
-
4A bis 4F Zeichnungen sind, die die Partitionierung
des RGB-Würfels
in sechs Klassen darstellen, wobei jede derselben die konvexe Hülle des
Minimalhelligkeitsabweichungsquadrupels ist, verwendet zum Aufbereiten
von Farben in dieser Klasse, wie gemäß einem Ausführungsbeispiel
der vorliegenden Erfindung praktiziert wird;
-
5 ein Entscheidungsbaum
zum Bestimmen der Pyramide ist, zu der ein beliebiges RGB-Triplett gehört, für eine Farbfehlerdiffusion
mit einer Lokalhelligkeitsabweichungsreduzierung, wie gemäß einem
Ausführungsbeispiel
der vorliegenden Erfindung praktiziert wird; und
-
6 ein Entscheidungsbaum
zum Bestimmen des Raummosaiks relativ zu den Scheitelpunkten der CMGB-Pyramide für eine Farbfehlerdiffusion
mit Lokalhelligkeitsabweichungsreduzierung ist, wie gemäß einem
Ausführungsbeispiel
der vorliegenden Erfindung praktiziert wird.
-
Ausführungsbeispiele
der Erfindung werden nachfolgend Bezug nehmend auf 1–6 erörtert. Fachleute auf dem Gebiet
werden ohne weiteres erkennen, dass die hierin gegebene detaillierte
Beschreibung im Hinblick auf die Figuren zu erklärenden Zwecken gegeben ist,
da sich die Erfindung über
diese einschränkenden
Ausführungsbeispiele
hinaus erstreckt.
-
1 ist ein Blockdiagramm,
das eine Vorrichtung zum Verarbeiten und Anzeigen eines Farbhalbton-Digitalbildes
unter Verwendung eines Fehlerdiffusions-Farbhalbtongebungsschemas
darstellt, das eine Lokalhelligkeitsabweichungsreduzierung gemäß der vorliegenden
Erfindung praktiziert. In 1 wird
ein digitales Farbbild 100 durch den Halbtongebungsprozessor 110 verarbeitet,
um ein Farbhalbtonbild 120 zu ergeben, das dann durch die
Ausgabevorrichtung 130 erzeugt wird. Der Halbtonprozessor 110 kann
unter Verwendung einer bekannten Fehlerdiffusions-Farbhalbtongebungstechnik
arbeiten. Wie jedoch nachfolgend detaillierter erörtert wird,
wurde die Fehlerdiffusionstechnik des Halbtonprozessors 110 modifiziert,
um die Lokalhelligkeitsabweichung zu reduzieren, wenn an einem digitalen
Farbbild 100 gearbeitet wird, um ein Halbtonbild 120 zu
erzeugen.
-
Zum
Beispiel ist der berühmte
Floyd-Steinberg-Fehlerdiffusionsalgorithmus ein Hochleistungs-Halbtongebungsverfahren,
bei dem Quantisierungsfehler auf „zukünftige" Pixel diffundiert werden. Ursprünglich für Grauskalabilder
vorgesehen, wird es üblicherweise
auf Farbbilder ausgeweitet, durch Fehlerdiffundieren von jeder der
drei Farbebenen auf unabhängige
Weise (trennbare Fehlerdiffusion). Wie nachfolgend beschrieben wird,
führt das
Hinzufügen
einer Entwurfsregel, die auf bestimmten Charakteristika der menschlichen
Farbwahrnehmung für
das Fehlerdiffusionsparadigma basiert, zu einem Farbhalbtongebungsalgorithmus
mit einer Ausgabe einer bedeutend höheren Qualität im Vergleich
zur trennbaren Fehlerdiffusion. Diese Vorteile werden erreicht,
durch Einschränken
der Helligkeitsabweichung des Ausgangshalbtons. Der vorgelegte Algorithmus erfordert
keinen zusätzlichen
Speicher und bringt eine tragbare Erhöhung der Laufzeit mit sich.
-
2 ist ein Blockdiagramm,
das eine Fehlerdiffusions-Halbtongebungsvorrichtung
darstellt, die zum Anwenden einer Farbhalbton-Lokalhelligkeitsabweichungsreduzierung
geeignet ist, wie bei Prozessor 110. Der RGB-Eingangsstrom 200 liefert
RGB-Werte 205 zu dem Summierer 210 und einem Minimalhelligkeitsabweichungsquadrupel-Computer
(MBVQ-Computer) 220. Ein Fehlerausdruck 250 aus
dem Fehlerpuffer 230 wird ebenfalls zu dem Summierer 210 geliefert,
der wiederum den RGB-Wert 205 und den Fehlerwert 250 kombiniert
(d. h. summiert), was zu dem RGB + Fehler-Wert 240 führt.
-
Wie
nachfolgend detaillierter beschrieben wird, berechnet der MBVQ-Computer 220 das
MBVQ 225 für
den RGB-Wert 205 aus dem RGB-Strom 200. Basierend
auf dem kombinierten RGB- und Fehler-Wert 240 wählt die
Scheitelpunktauswahleinrichtung 260 den nächsten Scheitelpunkt 270 des
MBVQ 225 aus.
-
Die
Farbe, die dem Scheitelpunkt 270 zugeordnet ist, wird in
dem Halbtonbild plaziert, um an der Position gedruckt 280 zu
werden, die dem RGB-Wert 240 zugeordnet ist. Ein revidierter
Fehlerausdruck wird durch einen Summierer 290 berechnet
und in dem Fehlerpuffer 230 gespeichert.
-
Alternativ,
anstelle unter Verwendung von RGB-Werten 205 aus dem RGB-Eingangsstrom 200 zu
arbeiten, kann der MBVQ-Computer 220 unter
Verwendung des kombinierten RGB- und Fehler-Werts 240 aus dem
Summierer 210 arbeiten. Bei diesem alternativen Ausführungsbeispiel
berechnet der MBVQ-Computer 220 das
Minimalhelligkeitsabweichungsquadrupel für die kombinierte Ausgabe des
RGB- und Fehler-Werts 240 aus dem Summierer 210.
-
Das
zu Grunde liegende Prinzip der Operation des Minimalhelligkeitsabweichungs-Halbtonprozessors 130 wird
am besten beispielhaft erklärt.
Es wird z. B. ein durchgehendes Stück aus 50% Grau genommen. Es sei
angenommen, dass ein Punktmuster (z. B. Schachbrett) ausgewählt wird.
Dieses Muster könnte
gleichermaßen
mit Schwarz-und-Weiß-Punkten
als auch mit Blau-und-Gelb-, Rot-und-Cyan- oder Grün-und-Magenta-Punkten aufbereitet
werden. 3 ist eine Zeichnung,
die den RGB-Würfel
und seine Hauptdiagonalen darstellt, die sich bei 50% Grau 310 treffen.
Wie in 3 ersichtlich
ist, ist die Farbe des Halbtonstücks
theoretisch in allen Fällen
die gleiche. Die Rauschwirkung ist jedoch unterschiedlich. Grün und Magenta,
die fast gleich hell sind, weisen eine niedrige Rauschwirkung auf,
zum Beispiel im Vergleich zu Schwarz und Weiß.
-
Das
Beispiel demonstriert die Vorteile des Hinzufügens des vorgeschlagenen MBVC
zu den Entwurfsregeln der Farbhalbtongebungsverfahren. Dieses zusätzliche
Kriterium wird analysiert, durch Untersuchen eines einfachen Falls
zum Aufbereiten von Stücken
einer beliebigen durchgehenden Farbe.
-
Natürliche Bilder
sind viel komplexer als Stücke
durchgehender Farbe, und Halbtongebungsalgorithmen sind sorgfältig entworfen,
um eine Vielzahl von Texturen und Mustern optimal aufzubereiten.
Jeder Halbtongebungsalgorithmus, z. B. Zittern oder Fehlerdiffusion,
verwendet unterschiedliche Techniken, die dieselben Entwurfskriterien
unterschiedlich interpretieren. Die Einlagerung des zusätzlichen
Farbkriteriums in jedes der Basishalbtonverfahren erfordert einen
getrennten Lösungsansatz.
Hierin wird das Modifizieren des Fehlerdiffusionsverfahrens vorgeschlagen,
um weniger rauschbehaftete Halbtöne
basierend auf dem MBVC zu erzeugen.
-
Ein
Nachverarbeiter, der dieses zusätzliche
Farbkriterium auf willkürliche
Farbtonbilder auferlegt, die unter Verwendung von einem der verschiedenen
Halbtongebungsverfahren erzeugt werden, verdient eine spezielle
Behandlung und ist in dem europäischen
Patent mit der Anmeldungsnummer 0895410 beschrieben, eingereicht
an demselben Datum hiermit. Darin wird eine Tintenverschiebung vorgelegt,
ein Nachverarbeitungsverfahren, das willkürliche Halbtöne in Halbtöne umwandelt,
die dem neuen Farbentwurfskriterium entsprechen.
-
Durchgehende
Farbstücke
-
In
diese Abschnitt wird das Farbentwurfskriterium in dem speziellen
Fall des Aufbereitens eines großen
Stücks
einer willkürlichen
durchgehenden Farbe analysiert. Es ist bekannt, dass bei einer Farbe
in dem RGB-Würfel
dieselbe unter Verwendung von acht Grundfarben aufbereitet werden
kann, die an den Scheitelpunkten des Würfels angeordnet sind. Die
Frage ist dann, wie existierende Fehlerdiffusionsalgorithmen die Farbpunkte
auswählen,
die verwendet werden sollen? Die Antwort ist, dass bei einer Fehlerdiffusion
praktisch alle acht Grundfarben beim Aufbereiten eines durchgehenden
Farbstücks
verwendet werden, wobei ihr Erscheinungsverhältnis eine abnehmende Funktion
ihrer Distanz von der gewünschten
Farbe ist.
-
Tatsächlich kann
eine Farbe unter Verwendung von nicht mehr als vier Farben aufbereitet
werden, wobei unterschiedliche Farben unterschiedliche Quadrupel
erfordern. Ferner ist das Quadrupel, das einer spezifischen Farbe
entspricht, im allgemeinen nicht eindeutig (in einem linearen Farbraum
kann ein Quadrupel, dessen konvexe Hülle die gewünschte Farbe enthält, verwendet
werden). Der Problempunkt, der in diesem Abschnitt betont wird,
ist: Angenommen, es soll ein Stück
einer durchgehenden Farbe gedruckt werden, welche Farben sollten
verwendet werden? Es wird darauf hingewiesen, dass bei allen bisherigen
Arbeiten, die über die
Halbtongebung durchgeführt
wurden, der Problempunkt war, in welchem Muster diese Punkte plaziert
werden sollten, und weniger häufig,
wie viele Punkte jeder Farbe verwendet werden sollten.
-
Es
wird das Grundprinzip der Halbtongebung betrachtet: Wenn Hochfrequenzmuster
vorgelegt werden, wendet das menschliche visuelle System ein Tiefpassfilter
an und nimmt nur ihren Mittelwert wahr. Gegenwärtige Tintenstrahldrucklösungen (bis
zu ungefähr
600 dpi) können
weiter durch das menschliche visuelle System aufgelöst werden,
wodurch noch höhere
Frequenzen erreicht werden müssen.
Relevant für
das vorliegende Problem ist die Tatsache, dass das menschliche visuelle
System empfindlicher gegenüber Änderungen
der Helligkeit als Änderungen
der Chrominanz ist, die bei viel niedrigeren Frequenzen mitteln.
Somit kommen wir zu dem Minimalhelligkeitsabweichungskriterium zur
Halbtongebung von durchgehenden Farbstücken:
-
Das Minimalhelligkeitsabweichungskriterium
(MBVC)
-
Um
das Halbtonrauschen zu reduzieren, wird aus allen Farbsätzen, durch
die die gewünschte
Farbe aufbereitet werden kann, derjenige ausgewählt, dessen Helligkeitsabweichung
minimal ist.
-
Es
gibt verschiedene standardmäßige „visuell
einheitliche" Farbräume und
Standardfarbdifferenzmaße.
Siehe z. B. G. Wyszecki und W. S. Stiles, Color Science: Concepts
and Methods, Quantitative Data and Formulae, zweite Auflage, John
Wiley and Sons, 1982. Das vorgeschlagene Minimalhelligkeitsabweichungskriterium
ist nicht notwendigerweise äquivalent
zu dem Auswählen
des Satzes, dessen Maximaldifferenzmaß minimal ist. Das Grundprinzip
hinter der Präferenz
einer offensichtlichen eindimensionalen Projektion (auf der Luminanzachse)
eines allgemeineren Maßes
ist, dass die visuell einheitlichen Farbräume und die resultierenden
Farbdifferenzmaße
für große durchgehende
Farbstücke
entwickelt wurden. Hier werden andererseits Farben in einem Hochfrequenzmuster
betrachtet. Chrominanzunterschiede zwischen beteiligten Farben spielen eine
Rolle, aufgrund des stärkeren
Tiefpasses in dem Chrominanzkanal sind sie jedoch viel weniger wichtig, als
in den Standardfarbdifferenzformeln verkörpert ist. Das Minimalhelligkeitsabweichungskriterium
bei der Auflösung
eines typischen CMYK-Druckers
ist trotzdem annehmbar. Das MBVC kann auf ein möglicherweise genaueres Farbkriterium
ausgedehnt werden, das minimal wahrnehmbare Rauschkriterium.
-
Um
die Helligkeitsabweichung von Farbsätzen zu berücksichtigen, müssen nur
die acht Grundfarben auf einer Helligkeitsskala geordnet werden.
In der Farbtheorie (siehe z. B. L. D. Grandis, Theory and Use of Color, übersetzt
von J. Gilbert, Prentice Hall, Inc. und Harry N. Abrams, Inc., 1984)
haben die Primärfarben (Cyan,
Magenta und Gelb) und die Sekundärfarben
(Rot, Grün
und Blau) eine spezifische Helligkeitsreihenfolge: Blau ist die
dunkelste Sekundärfarbe
und Grün
ist die hellste. Ihre komplementäre
Farbe Gelb (ergänzt Blau)
ist die hellste Primärfarbe
und Magenta (ergänzt
Grün) ist
die dunkelste. Somit liegen zwei Farbreihenfolgen vor: Die „dunklen" Farben, geordnet
als {KBRG}, und die „hellen", geordnet als {MCYW}.
Die Frage ist dann, was ist die kombinierte Helligkeitsreihenfolge.
-
Es
wäre nur
natürlich,
anzunehmen, dass die hellen Farben immer heller sind als die dunklen.
Tatsächlich
ist dies unter Verwendung der meisten Tinten der Fall. Wenn jedoch
andere Tinten (oder andere Medien für diesen Gegenstand) verwendet
werden, kann sich dies ändern.
Zum Beispiel weisen Farben, die auf einigen CRT-Bildschirmen aufbereitet
werden, eine unterschiedliche Helligkeitsreihenfolge auf: {KBRMGCYW}, bei
der Magenta dunkler ist als Grün.
Es ist ohne weiteres ersichtlich, dass diese Permutation tatsäch lich die einzig
mögliche
bei aktuellen Dreifarbensystemen ist. Die aktuelle Technik erzeugt
Rot als eine Zweitintentropfenüberlagerung
aus Magenta und Gelb. Auf ähnliche
Weise ist Blau eine Überlagerung
aus Magenta und Cyan. Somit kann Magenta nicht dunkler sein als
Rot oder Blau. Grün
kann nicht heller sein als Cyan oder Gelb, das es als eine Überlagerung
aus Cyan und Gelb erzeugt wird. Dieses Argument ist gültig in
einem subtraktiven Dreifarbensystem (z. B. Drucken). Ein ähnliches
Argument kann für
additive Farbsysteme formuliert werden (z. B. CRTs).
-
Ein
interessantes erwartetes Nebenprodukt der Verwendung des Minimalhelligkeitsabweichungskriteriums
ist, dass Farbstücke
gesättigter
aufbereitet werden. Dieses Phänomen
ist weitgehend abhängig
von dem Medium (z. B. Papiertyp) und der eingelagerten Farbkorrektur.
Eine verbesserte Farbsättigung
wird erwartet, weil, wenn das Minimalhelligkeitsabweichungskriterium
angewendet wird, neutrale Punkte (K oder W) verworfen werden und
gesättigte
Punkte (R, G, B, C, M oder Y) statt dessen verwendet werden. Somit
erscheinen aufbereitete Stücke
entfernt von der neutralen (Grau-)Achse (der K-W-Achse in 3).
-
Es
wird nun wiederum das einfache Beispiel von großen Stücken aus durchgehender Farbe
betrachtet. Bei der trennbaren Fehlerdiffusion werden praktisch
alle acht Grundfarben verwendet, die ein durchgehendes Farbstück aufbereiten,
wobei ihr Erscheinungsverhältnis
eine abnehmende Funktion ihrer Distanz von der gewünschten
Farbe ist. Die Verwendung von acht Farben jedoch (wo vier ausreichen
würden)
steht in extremen Gegensatz zu dem MBVC (da für fast jede durchgehende Farbe,
Schwarz und Weiß,
deren Helligkeitsabweichung maximal ist, verwendet wird). Somit
wird als ein erster Schritt der RGB-Würfel in sechs Pyramiden partitioniert,
wobei jede derselben die Eigenschaft aufweist, dass die Helligkeitsabweichung
zwischen den vier Scheitelpunkten minimal ist. Ein detailliertes
Ergebnis dieser Partition erscheint in der Beschreibung der mitanhängigen europäischen Patentanmeldung
0895410.
-
4A bis F zeigen
die Partition des RGB-Würfels
in sechs Volumen, wobei jedes derselben die konvexe Hülle des
Minimalhelligkeitsabweichungsquadrupels ist, das verwendet wird,
um Farben in dieser Pyramide aufzubreiten. Es wird darauf hingewiesen,
dass alle Pyramiden dasselbe Volumen aufweisen, aber nicht kongruent
sind. Namen werden für
eine zukünftige
Bezugnahme hinzugefügt.
-
Der Farbdiffusionsalgorithmus
-
Im
nachfolgenden bezeichnet RGB(i, j) den RGB-Wert bei Pixel (i, j)
und e(i, j) den akkumulierten Fehler bei Pixel (i, j). Der Farbdiffusionsalgorithmus
kann wie folgt formalisiert werden:
-
Für jedes
Pixel (i, j) in dem Bild ist folgendes auszuführen:
- 1.
Bestimmen des Minimalhelligkeitsabweichungsquadrupels (MBVQ) von
RGB(i, j) (d. h. 220 in 2).
- 2. Finden des Scheitelpunkts v ∈ MBVQ, der am nächsten an
RGB(i, j) + e(i, j) liegt (d. h. 260 in 2).
- 3. Berechnen des Quantisierungsfehlers RGB(i, j) + e(i, j) – v (d.
h. 260 in 2).
- 4. Verteilen des Fehlers auf „zukünftige" Pixel (d. h. 230 in 2).
-
Daher
erfolgt ein primärer
Unterschied zwischen trennbarer Fehlerdiffusion und Farbdiffusion
bei Schritt (2), wo der Algorithmus nach dem nächsten Scheitelpunkt
außerhalb
des MBVQ sucht, im Gegensatz zu dem nächsten Scheitelpunkt aus den
acht Scheitelpunkten des Würfels.
Somit kann ein trennbarer Algorithmus vom Fehlerdiffusionstyp (unabhängig von
der exakten Art und Weise, auf die Fehler berechnet oder verteilt
werden) zu einem Algorithmus vom Farbdiffusionstyp modifiziert werden.
Bei einem Ausführungsbeispiel
wird eine Vierpunktdiffusion verwendet, bei der 95% des Fehlers
mit anfänglich
randomisierten festen Nachschlagtabellen verteilt werden.
-
Im
Hinblick auf den Prozess des MBVQ-Computers 220, wobei
ein willkürliches
RGB-Triplett gegeben ist, erfordert das Bestimmen der Pyramide,
zu dem es gehört,
zwischen zwei und drei Vergleiche durchschnittlich. Der nachfolgende
Code kann verwendet werden, um die geeignete MBVQ-Pyramide für die Drei-Byte-RGB-Tripletts
zu bestimmen, kann aber ohne weiteres für andere Pixelwertdarstellungen
angepasst werden.
-
Reihenpyramidenposition
(Byte R, Byte G, Byte B)
-
5 entspricht dem obigen
Code und ist ein Entscheidungsbaum zum Bestimmen der Pyramide, zu der
ein willkürliches
RGB-Triplett gehört.
Somit wird bei dem Entscheidungsbaum 500 die Summe der
R- und G-Werte des Tripletts 505 bei Entscheidung 510 getestet,
um zu sehen, ob die Summe größer ist
als der Wert 255. Wenn die Antwort auf die Entscheidung 510 „ja" ist, dann wird die
Summe der G- und B-Werte des Tripletts bei der Entscheidung 530 getestet,
um zu sehen, ob diese Summe größer ist
als der Wert 255. Wenn die Antwort auf die Entscheidung 530 „nein" ist, dann gehört das RGB-Triplett
zu der RGMY-Pyramide. Andererseits, wenn die Antwort auf die Entscheidung 530 „ja" ist, dann wird die
Summe der R-, G- und B-Werte des Tripletts bei der Entscheidung 550 getestet,
um zu sehen, ob diese Summe größer ist
als 511. Wenn die Antwort auf die Entscheidung 550 „ja" ist, dann gehört das RGB-Triplett
zu der CMYW-Pyramide. Andererseits, wenn die Antwort auf die Entscheidung 550 „nein" ist, dann gehört das RGB-Triplett
zu der MYGC-Pyramide.
-
Zurück zu der
Entscheidung 510, wenn die Antwort auf die Entscheidung 510 „nein" ist, dann wird die Summe
der G- und B-Werte des Tripletts bei der Entscheidung 520 getestet,
um zu sehen, ob diese Summe größer ist
als der Wert 255. Wenn die Antwort auf die Entscheidung 520 „ja" ist, dann gehört das RGB-Triplett zu
der CMGB-Pyramide. Andererseits, wenn die Antwort auf die Entscheidung 520 „nein" ist, dann wird die Summe
der R-, G- und B-Werte des Tripletts bei der Entscheidung 540 getestet,
um zu sehen, ob diese Summe größer ist
als 255. Wenn die Antwort auf die Entscheidung 540 „ja" ist, dann gehört das RGB-Triplett
zu der RGMB-Pyramide.
Andererseits, wenn die Antwort auf die Entscheidung 540 „nein" ist, dann gehört das RGB-Triplett
zu der KRGB-Pyramide.
-
Der
Problempunkt des Findens des nächsten
Scheitelpunkts v ∈ MBVQ
(der Prozess der Scheitelpunktauswahleinrichtung 260) verdient
besondere Aufmerksamkeit. Wenn eine trennbare Fehlerdiffusion angewendet
wird, wird jede Komponente des RGB-Werts mit dem Schwellenwert 127 verglichen,
und ein Mosaik von R3 im Hinblick auf die
acht Scheitelpunkte wird gebildet. Es wird darauf hingewiesen, dass
die Norm, die verwendet wird, um das Mosaik zu bilden, nicht ausdrücklich erwähnt wird,
aber dass eine nähere
Betrachtung ergibt, dass dies nicht notwendig ist: Aufgrund der
Symmetrieeigenschaften zwischen den acht Scheitelpunkten verursacht
eine Norm Lp (1 ≤ p ≤ ∞) dasselbe Mosaik von R3 im Hinblick auf die acht Scheitelpunkte
des Würfels.
Dasselbe gilt nicht, wenn ein Mosaik relativ zu einem ordnungsgemäßen Teilsatz
der acht Scheitelpunkte angefordert wird: Obwohl, wenn es auf den
RGB-Würfel
selbst beschränkt
ist, ein gegebenes Quadrupel dasselbe Mosaik verursacht, unabhängig von
der verwendeten Lp-Norm, wobei sich diese
Mosaike trotzdem außerhalb
des Würfels
unterscheiden können.
Am leichtesten zu berechnen ist das L2-Mosaik,
bei dem die Entscheidungsebenen innerhalb des Würfels tatsächlich gültig sind für alle R3.
Somit umfasst für
jede der sechs Pyramiden das Bestimmen des nächsten Scheitelpunkts an einem
gegebenen Punkt das Durchqueren eines Entscheidungsbaums der Tiefe 3.
Eine Entscheidung von einem der Bäume ist in 6 gezeigt.
-
6 ist ein Entscheidungsbaum
zum Bestimmen des Mosaiks des Raums relativ zu den Scheitelpunkten
der CMGB-Pyramide des Farbdiffusionsalgorithmus, wie gemäß einem
Ausführungsbeispiel
der vorliegenden Erfindung praktiziert wird. Alle Vergleiche bei
Baum 600 sowie bei den Entscheidungsbäumen für die anderen fünf Pyramiden
sind vom Typ x > 127
oder x > y oder x – y + z > 127, und der dritte
Typ erscheint nur einmal in jedem Baum.
-
Es
wird darauf hingewiesen, dass der Entscheidungsbaum 600 in
dem Prozess der Scheitelpunktauswahleinrichtung 260 nur
angerufen wird, wenn die entsprechende MBVQ-Pyramide 225 CMGB
ist. Wenn die MBVQ-Pyramide 225 eine der anderen fünf Pyramiden
ist, wird ein ähnlicher,
aber unterschiedlicher Entscheidungsbaum angerufen. Der RGB-Wert 605 ist
somit der Wert 240 (d. h. die elementweise (trennbare) Akkumulation
des eingegebenen RGB 205 und des akkumulierten Fehlers 250).
-
Somit
wird der B-Wert des Tripletts 605 bei Entscheidung 610 getestet,
um zu sehen, ob er größer ist als
der Wert 127. Wenn die Antwort auf die Entscheidung 610 „ja" ist, dann wird der
R-Wert des Tripletts bei Entscheidung 615 getestet, um
zu sehen, ob er größer ist
als der Wert 127. Wenn die Antwort auf Entscheidung 615 „ja" ist, dann wird der
G-Wert des Tripletts bei Entscheidung 625 getestet, um
zu sehen, ob er größer ist
als der R-Wert. Wenn die Antwort auf Entscheidung 625 „ja" ist, dann ist der
C-Scheitelpunkt der Scheitelpunkt der CMGB-Pyramide, der am nächsten zu
dem RGB-Wert 605 ist (Block 645). Andererseits,
wenn die Antwort auf die Entscheidung 625 „nein" ist, dann ist der
M-Scheitelpunkt
der Scheitelpunkt der CMGB-Pyramide, der am nächsten zu dem RGB-Wert 605 ist
(Block 650).
-
Zurück zur Entscheidung 615,
wenn die Antwort auf Entscheidung 615 „nein" ist, dann wird der G-Wert des Tripletts
bei Entscheidung 630 getestet, um zu sehen, ob er größer ist
als der Wert 127. Wenn die Antwort auf Entscheidung 630 „ja" ist, dann ist der
C-Scheitelpunkt der Scheitelpunkt der CMGB-Pyramide am nächsten zu
dem RGB-Wert 605 (Block 655). Andererseits, wenn
die Antwort auf Entscheidung 630 „nein" ist, dann ist der B-Scheitelpunkt der
Scheitelpunkt der CMGB-Pyramide am nächsten zu dem RGB-Wert 605 (Block 660).
-
Auf ähnliche
Weise, wenn die Antwort auf Entscheidung 610 „nein" ist, dann wird der
R-Wert des Tripletts bei Entscheidung 620 getestet, um
zu sehen, ob er größer ist
als der Wert 127. Wenn die Antwort auf Entscheidung 615 „ja" ist, dann wird die
Summe der R- und B-Werte minus den G-Wert des Tripletts 605 bei Entscheidung 635 getestet,
um zu sehen, ob sie größer ist
als der Wert 127. Wenn die Antwort auf Entscheidung 635 „ja" ist, dann ist der
M-Scheitelpunkt der Scheitelpunkt der CMGB-Pyramide, der am nächsten zu dem
RGB-Wert 605 ist (Block 665). Andererseits, wenn
die Antwort auf die Entscheidung 635 „nein" ist, dann ist der G- Scheitelpunkt der Scheitelpunkt der
CMGB-Pyramide, der am nächsten
zu dem RGB-Wert 605 ist (Block 670).
-
Zurück zur Entscheidung 620,
wenn die Antwort auf die Entscheidung 620 „nein" ist, dann wird der G-Wert
des Tripletts bei Entscheidung 640 getestet, um zu sehen,
ob er größer ist
als der B-Wert. Wenn die Antwort auf die Entscheidung 640 „ja" ist, dann ist der
G-Scheitelpunkt der Scheitelpunkt der CMGB-Pyramide, der am nächsten zu
dem RGB-Wert 605 ist (Block 675). Andererseits,
wenn die Antwort auf Entscheidung 640 „nein" ist, dann ist der B-Scheitelpunkt der Scheitelpunkt der
CMGB-Pyramide, der am nächsten
zu dem RGB-Wert 605 ist (Block 680).
-
Entscheidungsbäume für die anderen
MBVQ-Pyramiden können
auf dieselbe Weise hergestellt werden wie die der CMGB-Pyramide aus 6. In jedem Fall, angenommen,
das Minimalhelligkeitsquadrupel wurde berechnet (2–3 Vergleiche),
kostet das Bestimmen des nächsten
Scheitelpunkts drei Vergleiche und zumindest zwei Additionen, im
Gegensatz zu drei Vergleichen für
eine trennbare Fehlerdiffusion. Es wird wiederum betont, dass das
resultierende Mosaik das ist, das durch die Norm L2 induziert
wird. Es fällt
mit einem Lp-Mosaik nur innerhalb des Würfels zusammen.
Unter Verwendung eines bestimmten Lp-Mosaiks
ist es nicht notwendigerweise vorteilhaft, da bekannt ist, dass
der RGB-Raum nicht wahrnehmbar einheitlich in dem Sinn ist, dass
visuelle Metriken und die Lp-Metrik dieselben
Mosaike verursachen.
-
Das
Bestimmen des optimalen Mosaiks bezieht sich auf Stabilitätsbetrachtungen
des Farbdiffusionsalgorithmus und auf zusätzliche Faktoren, einschließlich menschlicher
Farbwahrnehmung. Unsere Erfahrung zeigt jedoch die Stabilität des vorgeschlagenen
Algorithmus an.
-
Beispiele
-
Es
wurden durchgehende Farbstücke
betrachtet, die bei 75 dpi unter Verwendung unterschiedlicher Halbtongebungsverfahren
aufbereitet wurden. (A) Trennbare Fehlerdiffusion. (B) Der Tintenverschiebungsnachverarbeitungsprozess,
angewendet an trennbare Fehlerdiffusion. (C) Verwendete Farbdiffusionshalbtongebung.
Es wird auf die Verringerung des Halbtonrauschens von A zu C hingewiesen.
-
Bei
einem Fall wurde z. B. die Anwendung von verschiedenen Halbtongebungsalgorithmen
an ein durchgehendes Stück
mit dem Wert RGB – (127,
179, 78) untersucht und bei 75 dpi gedruckt. Dieser trennbare Fehlerdiffusionsalgorithmus
hat das Stück
mit acht Farben aufbereitet, und dunkle Tropfen benachbart zu hellen
waren häufig
vorhanden. Nach der Anwendung des Tintenverschiebungsnachverarbeitungsverfahrens wurde
das Aufbereiten weiterhin mit allen acht Farben durchgeführt, wobei
Schwarz jedoch nur einmal erschien (aufgrund von Grenzwirkungen)
und Weiß sehr
selten war. Eine Gesamtreduzierung des Halbtonrauschens war ersichtlich.
Als die Farbdiffusion an das Originalstück angewendet wurde, wurden
nur vier Farben (B, C, G, M) verwendet, und das Halbtonrauschen
wurde praktisch auf ein Minimum gebracht.
-
Es
wurde ferner die Anwendung derselben Halbtongebungsverfahren an
natürliche
Hochauflösungsbilder
untersucht. Zum Beispiel wurde ein Hochauflösungsbild untersucht, das unter
Verwendung unterschiedlicher Halbtongebungsverfahren aufbereitet
wurde: (A) Trennbare Fehlerdiffusion. (B) Das Tintenverschiebungsnachverarbeitungsverfahren
mit einer Halbtonschärfungsverbesserung,
angewendet an trennbare Fehlerdiffusion. (C) Farbdiffusionshalbtongebung.
Es wurde wiederum eine Verringerung des Halbtonrauschens von A zu
C erkannt.
-
Ferner
wurde die Laufzeit bei der Anwendung der verschiedenen Verfahren
untersucht. Die Ergebnisse sind wie folgt:
-
Unter
der Annahme, dass eine trennbare Fehlerdiffusion eine Zeiteinheit
benötigt,
hat sich herausgestellt, dass das Hinzufügen des Tintenverschiebungsnachverarbeitungsprozesses
ohne Halbtonschärfung
ungefähr
1,4 Einheiten benötigt,
das Durchführen
der Tintenverschiebung mit Halbtonschärfung ungefähr 1,85 Einheiten benötigt und
das Durchführen
des Farbdiffusionshalbtonalgorithmus ungefähr 1,55 Einheiten benötigt. Es
wird darauf hingewiesen, dass die Halbtonschärfung nicht benötigt wird,
wenn eine Farbdiffusion aufgerufen wird, da kein Nachverarbeitungsprozess
mit einem Unschärfe-Nebeneffekt
verwendet wird. Vergleichbare Laufzeiten hängen allgemein von Bild-Größe und -Geometrie,
von Bildinhalt und von hardwarespezifischen Problempunkten ab, wie
z. B. wie viele Scanlinien gleichzeitig zwischengespeichert werden
können.
Es hat sich jedoch herausgestellt, dass Erhöhungen der Speicheranforderungen
vernachlässigbar
sind.
-
Oben
erwähnte
Beispiele wurden durch eine HP-UX-Demo erzeugt, die von uns geschrieben
wurde. Die Demo wurde in C++ geschrieben, wurde unter Verwendung
des C++-Kompilierers CC auf HP-UX-Maschinen kompiliert und erfordert
zusätzlich
dazu nur grundlegende Bildformatumwandlungsfilter.
-
Obwohl
die obige Erörterung
innerhalb des Kontexts des Minimalhelligkeitsabweichungskriteriums
erstellt wurde, sollte darauf hingewiesen werden, dass das MBVC
ein Spezialfall eines minimal wahrnehmbaren Rauschkriteriums ist.
Somit sind das vorliegende Verfahren und die Vorrichtung ohne weiteres
auf ein MPNC (MPNC = Minimum Perceivable Noise Criterion) ausdehnbar,
um Abweichungen zu ermöglichen,
die z. B. lokale Rauminformationen umfassen (aus benachbarten Pixeln).
-
Die
vielen Merkmale und Vorteile der Erfindung sind aus der schriftlichen
Beschreibung offensichtlich, und es ist somit beabsichtigt, dass
die beiliegenden Ansprüche
alle solchen Merkmale und Vorteile der Erfindung abdecken. Ferner,
da zahlreiche Modifikationen und Änderungen für Fachleute auf dem Gebiet
offensichtlich sein werden, ist es nicht erwünscht, die Erfindung auf den
exakten Aufbau und die Operation einzuschränken, die dargestellt und beschrieben
ist. Somit können
alle geeigneten Modifikationen und Entsprechungen derart umgeordnet
werden, dass sie in den Schutzbereich der Erfindung fallen.