-
Die
Erfindung betrifft ein Verfahren zur Erzeugung mindestens eines
Schwellwertgebirges für
die frequenzmodulierte Rasterung. Des weiteren betrifft die Erfindung
die Schwellwertgebirge als solche sowie die Verwendung derselben.
-
Bei
der Wiedergabe, insbesondere beim Drucken, von Bildern oder Grafiken
kommen zur Wiedergabe kontinuierlicher Farbtonwerte sogenannte Rasterverfahren
zum Einsatz. Eine Hauptaufgabe solcher Rasterverfahren ist die Erzeugung
sogenannter Halbtöne,
welche die kontinuierlichen Farbtonwerte simulieren sollen. Eine
solche Rasterung ist notwendig, da die meisten Wiedergabegeräte, insbesondere
die meisten Drucker bzw. Druckmaschinen, lediglich binär arbeiten
können,
also nur die Möglichkeit
haben, Farbe oder keine Farbe zu übertragen.
-
Bei
den Rasterverfahren unterscheidet man prinzipiell die amplitudenmodulierte
Rasterung von der frequenzmodulierten Rasterung. Die hier vorliegende
Erfindung betrifft das Gebiet der frequenzmodulierten Rasterverfahren.
-
Bei
der frequenzmodulierten Rasterung wird zur Simulation von Halbtönen das
wiederzugebende Bild bzw. die wiederzugebende Grafik in sogenannte
Rasterzellen zerlegt, wobei innerhalb einer Rasterzelle mehrere
Rasterpunkte gesetzt werden können,
und wobei bei der frequenzmodulierten Rasterung der Abstand der Rasterpunkte
voneinander variabel ist. Die einzelnen Rasterpunkte können dabei
eine gleiche Größe sowie eine
gleiche Form aufweisen, wobei man dann von einer frequenzmodulierten
Rasterung erster Ordnung spricht. Ist neben dem Abstand der einzelnen
Punkte auch die Größe der Rasterpunkte
variabel, so spricht man von einer frequenzmodulierten Rasterung
zweiter Ordnung. Sind hingegen der Abstand der Rasterpunkte, die
Größe derselben
sowie auch die Form der Rasterpunkte variabel, so spricht man von
einer frequenzmodulierten Rasterung dritter Ordnung.
-
Die
Rasterpunkte innerhalb einer jeden Rasterzelle werden aus einzelnen
kleinen Bildelementen, sogenannten Pixeln, zusammengesetzt. Bei
einem Pixel handelt es sich um den kleinsten ansteuerbaren Bildpunkt.
Bei der frequenzmodulierten Rasterung eines wiederzugebenden Bildes
bzw. einer wiederzugebenden Grafik wird mithilfe sogenannter Schwellwertgebirge,
die aufgrund algorithmischer Pro zesse ermittelt werden, entschieden,
welche Pixel mit welchem Abstand voneinander gesetzt werden.
-
Die
DE 696 22 905 T2 zeigt
ein Bilddatenverarbeitungsverfahren zur Rasterung von Halbtonbildern
mit Hilfe von Schwellwertmatrizen bzw. Schwellwertgebirgen, bei
dem die Variation von hypothetischen Verteilungen von Dichten minimiert
werden soll, um zu verhindern, dass regelmäßige Muster bei der Anwendung
der Schwellwertmatrizen entstehen.
-
Die
aus dem Stand der Technik bekannten Algorithmen zur Erzeugung solcher
Schwellwertgebirge für die
frequenzmodulierte Rasterung verfügen allesamt über den
Nachteil, dass dieselben einerseits eine hohe Rechenleistung erfordern
und andererseits bei der Wiedergabe des Bildes bzw. der Grafik eine
Vorzugsrichtung aufweisen. Schwellwertgebirge mit Vorzugsrichtung
neigen zu einer Streifenbildung bei der Wiedergabe des Bildes bzw.
der Grafik, wodurch die Wiedergabequalität beeinträchtig wird.
-
Es
sind auch bereits beispielsweise aus „Ulichney R.: Void and Cluster
Finding Filters Proceedings of IS&T
11th Int. Congress on Non-Impact Printing Technologies 29.10. – 03.11.1995,
Seiten 1 bis 6." statistische Verfahren
zum Auffinden von Bereichen in einer Rastermatrix mit wenig gesetztem
Bildpixeln bekannt, wobei benachbarte Bildpunkte statistisch mittels
Gaußverteilungen
gesucht werden und entsprechend leere Bereiche mit zusätzlichen
Bildpunkten versehen werden.
-
Hiervon
ausgehend liegt der hier vorliegenden Erfindung das Problem zugrunde,
ein neuartiges Verfahren zur Erzeugung mindestens eines Schwellwertgebirges
für die
frequenzmodulierte Rasterung zu schaffen.
-
Dieses
Problem wird durch ein Verfahren gemäß Patentanspruch 1 gelöst. Erfindungsgemäß umfasst das
Verfahren zumindest die folgenden Schritte: a) für das oder jedes zu erzeugende
Schwellwertgebirge wird jeweils eine Rastermatrix mit einer definierten
Matrixgröße, nämlich mit
einer definierten Anzahl von Pixeln, festgelegt; b) in der oder
jeder Rastermatrix wird eine vorgegebene Anzahl von Pixeln zufällig gesetzt;
c) für die
oder jede Rastermatrix wird jeweils eine Nachbarschaftsmatrix ermittelt,
wobei die Größe der Nachbarschaftsmatrix
der Größe der jeweiligen
Rastermatrix entspricht, und wobei für jedes Pixel, nämlich für jedes gesetzte
und jedes nicht-gesetzte Pixel, der Rastermatrix eine statistische
Verteilung ermittelt wird, mit welcher Häufigkeit in Nachbarschaft jedes
Pixels gesetzte Pixel auftreten; d) in der oder jeder Nachbarschaftsmatrix wird
sodann das Pixel ermittelt, für
welches die ermittelte statistische Verteilung minimal ist; e) für das Pixel
mit der minimalen statistischen Verteilung wird in der Rastermatrix
ein zusätzliches
Pixel gesetzt; f) für
jedes in der Rastermatrix gesetzte Pixel wird der Wert eines entsprechendes
Feldes in einer Schwellwertmatrix inkrementiert, wobei die Größe der Schwellwertmatrix
der Größe der jeweiligen
Rastermatrix entspricht; g) die Schritte c) bis f werden solange
wiederholt, bis alle Pixel in der Rastermatrix gesetzt sind; h)
die nach dem Setzen des letzten Pixels ermittelte Schwellwertmatrix
wird als Schwellwertgebirge ausgegeben.
-
Im
Sinne der hier vorliegenden Erfindung wird ein Verfahren zur Erzeugung
von Schwellwertgebirgen für
die frequenzmodulierte Rasterung vorgeschlagen, welches einerseits
besonders einfach ist und daher geringe Rechenleistung benötigt, und
welches andererseits ein Schwellwertgebirge für die frequenzmodulierte Rasterung
ohne Vorzugsrichtung bereitstellt. Durch die Vermeidung einer Vorzugsrichtung
wird die Gefahr von Streifenbildungen minimiert und damit die Wiedergabequalität deutlich
verbessert.
-
Bevorzugte
Weiterbildungen des erfindungsgemäßen Verfahrens ergeben sich
aus den Unteransprüchen
und der nachfolgenden Beschreibung.
-
Das
erfindungsgemäße Schwellwertgebirge
ist in Patentanspruch 13 und die Verwendung desselben ist in Patentanspruch
14 definiert.
-
Ein
Ausführungsbeispiel
der Erfindung wird, ohne hierauf beschränkt zu sein, an Hand der Zeichnung näher erläutert. Dabei
zeigt:
-
1:
Ein Signalflussdiagramm des erfindungsgemäßen Verfahrens zur Erzeugung
von Schwellwertgebirgen für
die frequenzmodulierte Rasterung.
-
Nachfolgend
wird unter Bezugnahme auf 1 das erfindungsgemäße Verfahren
zur Erzeugung von Schwellwertgebirgen für die frequenzmodulierte Rasterung
in größerem Detail
beschrieben. 1 zeigt ein Signalflussdiagramm
des erfindungsgemäßen Verfahrens,
wobei mit einem Block 10 der Start des erfindungsgemäßen Verfahrens
und mit einem Block 11 des Ende des erfindungsgemäßen Verfahrens
visualisiert ist.
-
Nach
dem Start des erfindungsgemäßen Verfahrens
zur Erzeugung mindestens eines Schwellwertgebirges für die frequenzmodulierte
Rasterung im Sinne des Blocks 10, wird in einem ersten
Schritt gemäß Block 12 für ein zu
erzeugendes Schwellwertgebirge eine Rastermatrix mit einer definierten
Matrixgröße, nämlich mit einer
definierten Anzahl von Pixeln, festgelegt. Bei der Rastermatrix
handelt es sich vorzugsweise um eine Matrix, bei der die Anzahl
der Matrixspalten der Anzahl der Matrixzeilen entspricht. Die Rastermatrix
verfügt
dann bei einer Anzahl N Spalten und bei einer Anzahl N Zeilen über eine
Anzahl von N2 Pixeln. Es sei angemerkt, dass
selbstverständlich
auch die Anzahl der Matrixspalten von der Anzahl der Matrixzeilen
abweichen kann. Bevorzugt wird jedoch eine Rastermatrix mit gleicher
Anzahl von Spalten und Zeilen verwendet.
-
Es
sei an dieser Stelle darauf hingewiesen, dass die Matrixgröße der in
Block 12 festgelegten Rastermatrix von der Anzahl der wiederzugebenden
Graustufen abhängt.
Sollen zum Beispiel 4.096 Graustufen wiedergegeben werden, so muss
die Rastermatrix mindestens 64 Spalten sowie 64 Zeilen aufweisen.
Bei 16.000 wiederzugebenden Graustufen beträgt die Anzahl der Spalten sowie
die Anzahl der Zeilen der Rastermatrix mindestens 127. Bei 32.000
wiederzugebenden Graustufen hingegen beträgt die minimale Spaltenanzahl
sowie Zeilenanzahl der Rastermatrix 179. Bei einer derartigen „quadratischen" Rastermatrix mit
gleicher Anzahl von Zeilen und Spalten ist die minimale Anzahl von
Zeilen und Spalten demnach von der Quadratwurzel der wiederzugebenden
Graustufen abhängig.
-
Im
Sinne der hier vorliegenden Erfindung wird für jedes zu erzeugenden Schwellwertgebirge
eine Rastermatrix mit N Spalten sowie N Zeilen festgelegt, wobei
die Anzahl N von Spalten und Zeilen, wie bereits erwähnt, einerseits
von der Anzahl der wiederzugebenden Graustufen abhängt und
weiterhin eine Primzahl ist. Bedingt dadurch, dass die Dimension
der Rastermatrix von einer Primzahl bestimmt wird, können Interferenz-Effekte
oder Moire-Effekte minimiert werden.
-
Es
sei bereits an dieser Stelle darauf hingewiesen, dass die Matrixgröße der in
Block 12 festgelegten Rastermatrix weiterhin die Größe einer
Schwellwertmatrix sowie einer Nachbarschaftsmatrix bestimmt, die
für die
Erzeugung des Schwell wertgebirges benötigt werden. Auf die Funktion
der Schwellwertmatrix sowie Nachbarschaftsmatrix wird weiter unten
noch in größerem Detail
eingegangen. Im Schritt 12 wird lediglich die Dimension
der Rastermatrix und damit die Dimension der Schwellwertmatrix sowie
Nachbarschaftsmatrix bestimmt.
-
Im
Anschluss an Block 12 wird in einem Block 13 in
der festgelegten Rastermatrix mit einer bestimmter Matrixgröße eine
vorgegebene Anzahl von Pixeln zufällig gesetzt. Die Anzahl der
dabei zufällig
gesetzten Pixel entspricht 0,1% bis 2%, vorzugsweise 0,1 % bis 0,5%,
der Gesamtanzahl von Pixeln innerhalb der Rastermatrix. Sollen zum
Beispiel 16.000 Graustufen wiedergegeben werden und kommt demzufolge
eine Rastermatrix mit 127 Zeilen sowie 127 Spalten zum Einsatz,
die insgesamt 16.129 Pixel umfasst, so werden zwischen 0,1% und
2% dieser Anzahl von Pixeln zufällig
Pixel gesetzt, also zwischen 17 und 323 Pixel.
-
Nach
einer bevorzugten Ausführungsform
des erfindungsgemäßen Verfahrens
werden die im Block 13 zufällig gesetzten Pixel in den
Blöcken 14 und 15 entspannt.
Zur Entspannung der zufällig
gesetzten Pixel wird im Block 15 zuerst für alle Pixel
der Rastermatrix, also für
alle zufällig
gesetzten Pixel und alle nicht-gesetzten Pixel,
eine statistische Verteilung ermittelt, mit welcher Häufigkeit
in der Nachbarschaft eines zufällig
gesetzten Pixels weitere gesetzte Pixel auftreten. Anhand dieser
im Block 14 ermittelten statistischen Verteilung werden im
Block 15 die zufällig
gesetzten Pixel in der Rastermatrix derart entspannt, dass aus Rastermatrixbereichen mit
einer großen
Häufung
zufällig
gesetzter Pixel gesetzte Pixel entfernt werden, und dass eine der
entfernten Anzahl entsprechende Anzahl von Pixeln in Rastermatrixbereichen
mit einer geringen Häufung
zufällig
gesetzter Pixel gesetzt werden. Bei der Entspannung werden demnach
Pixel aus Bereichen dichter Packung bzw. großer Häufung entfernt und möglichst
weit von bereits gesetzten Pixeln gesetzt. Mit einer derartigen
Entspannung kann die Qualität
des zu erzeugenden Schwellwertgebirges verbessert werden. Die Entspannung
ist jedoch optional, sodass auch von Block 13 unmittelbar
auf Block 16 verzweigt werden kann.
-
Im
Block 16 wird für
die Rastermatrix mit im Sinne des Blocks 13 zufällig gesetzten
Pixeln und gegebenenfalls im Sinne der Blöcke 14 und 15 entspannten
Pixeln, eine Schwellwertmatrix bestimmt, wobei die Größe der Schwellwertmatrix
der Größe der Rastermatrix
entspricht, und wobei für
jedes in Block 13 zufällig gesetzte
Pixel und gegebenenfalls im Sinne der Blöcke 14 und 15 entspannte
Pixel der Wert eines entsprechendes Feldes in der Schwellwertmatrix
inkrementiert wird.
-
Anschließend wird
im Block 17 für
die Rastermatrix mit im Sinne des Blocks 13 zufällig gesetzten
Pixeln und gegebenenfalls im Sinne der Blöcke 14 und 15 entspannten
Pixeln, eine Nachbarschaftsmatrix bestimmt. Auch die Größe der Nachbarschaftsmatrix
entspricht dabei der Größe der Rastermatrix.
Bei der Ermittlung der Nachbarschaftsmatrix wird für jedes
Pixel der Rastermatrix, nämlich
für jedes
zufällig
gesetzte sowie gegebenenfalls entspannte Pixel und für jedes
nicht-gesetzte Pixel
eine statistische Verteilung ermittelt, mit welcher Häufigkeit
in der Nachbarschaft eines gesetzten Pixels weitere gesetzte Pixel
auftreten.
-
Diese
statistische Verteilung wird dabei bevorzugt mithilfe einer Gaußverteilung
ermittelt, wobei die Streuung der Gaußverteilung eine Funktion der
Abbildungseigenschaften eines Wiedergabegeräts, insbesondere eines Druckers,
ist. Hierbei ist die Streuung nicht notwendig für die gesamte Berechnung konstant.
Um eine bessere Clusterbildung und somit Darstellung eines kleinsten
Druckelements zu erhalten, wird die Streuung vorzugsweise als Funktion
der Koordinate und des abzubildenden Grauwerts um 0% bis 10% eines
Basiswerts variiert.
-
Sobald
im Sinne des Blocks 17 für alle Pixel der Rastermatrix
ein Wert der obigen statistischen Verteilung ermittelt worden ist,
wird ebenfalls im Block 17 in der Nachbarschaftsmatrix
das Pixel ermittelt, für
welches die ermittelte, statistische Verteilung minimal ist. Sodann
wird im Block 18 in der Rastermatrix ein zusätzliches Pixel
gesetzt, und zwar an der Position, die der in der Nachbarschaftsmatrix
ermittelten Minimum-Position entspricht. Liegen in der Nachbarschaftsmatrix
mehrere Minima vor, so wird eines dieser Minima zufällig ausgewählt.
-
Sodann
wird im Sinne des Blocks 19 für jedes in der Rastermatrix
gesetzte Pixel der Wert eines entsprechenden Feldes in der bereits
erwähnten
Schwellwertmatrix inkrementiert, wobei die Größe der Schwellwertmatrix wiederum
der Größe der Rastermatrix
und damit auch der Nachbarschaftsmatrix entspricht. Im Block 19 wird
demnach für
jedes in der Rastermatrix gesetzte Pixel, also für jedes bereites gesetzte und
das neu gesetzte Pixel, der Wert in der Schwellwertmatrix an der
entsprechenden Position inkrementiert, also um 1 erhöht.
-
Sodann
wird im Block 20 überprüft, ob in
der Rastermatrix alle Pixel gesetzt worden sind. Wird bei der Überprüfung im
Block 20 festgestellt, dass in der Rastermatrix noch nicht
alle Pixel gesetzt worden sind, so wird im Sinne der Verzweigung 21 auf
den Block 16 zurückverzweigt,
und die Blöcke 16, 17, 18 und 19 werden im
Sinne einer Schleife so lange durchlaufen, bis in der Rastermatrix
alle Pixel gesetzt worden sind. Wird bei der Überprüfung im Block 20 festgestellt,
dass alle Pixel in der Rastermatrix gesetzt sind, so wird auf den
Block 22 verzweigt, und die nach dem Setzen des letzten
Pixels im Block 19 ermittelte Schwellwertmatrix wird als Schwellwertgebirge
für die
frequenzmodulierte Rasterung ausgegeben.
-
Optional
kann im Block 22 das so ermittelte Schwellwertgebirge normiert
sowie gegebenenfalls durch einen Medianfilter oder einen Blurfilter
geglättet
werden. Die Normierung sowie Glättung
des auf diese Art und Weise ermittelten Schwellwertgebirges ist
jedoch optional.
-
Die
oben beschriebenen, erfindungsgemäßen Verfahrensschritte im Sinne
der Blöcke 12 bis 22 werden
zur Erzeugung eines einzigen Schwellwertgebirges durchlaufen, wobei
ein solches Schwellwertgebirge zur Wiedergabe einer Farbe verwendet
wird. Bei der Wiedergabe mehrfarbiger Grafiken bzw. Bilder wird
für jede
wiederzugebende Farbe ein derartiges Schwellwertgebirge ermittelt.
Nach dem Block 22 wird im Block 23 demnach überprüft, ob für alle Farben
ein entsprechendes Schwellwertgebirge ermittelt worden ist. Wird
bei der Überprüfung im
Block 23 festgestellt, dass noch nicht alle erforderlichen
Schwellwertgebirge ermittelt wurden, so wird im Sinne der Verzweigung
auf den Block 12 zurückverzweigt
und die Blöcke 12 bis 22 werden
im Sinne einer Schleife solange durchlaufen, bis alle Schwellwertgebirge
berechnet worden sind. Wird im Block 23 festgestellt, dass
alle Schwellwertgebirge vorliegen, so wird auf den Block 11 verzweigt
und das Verfahren beendet.
-
Wie
bereits erwähnt,
wird für
jede wiederzugebene Farbe ein Schwellwertgebirge ermittelt. Es sei
darauf hingewiesen, dass für
jede wiederzugebende Farbe dabei die Größe der Rastermatrix und damit
auch die Größe der Schwellwertmatrix
sowie die Größe der Nachbarschaftsmatrix
unterschiedlich ist.
-
Sollen
zum Beispiel bei 16.000 abzubildenden Graustufen vier Farben, insbesondere
Schwarz, Magenta, Cyan und Gelb, wiedergegeben werden, so wird die
Größe der Rastermatrix
und damit Schwellwertmatrix und Nachbarschaftsmatrix für jede der
zu druckenden Farben durch eine Primzahl festgelegt, wobei jede der
Primzahlen größer ist
als die Quadratwurzel der wiederzugebenden Graustufen, und wobei
jede der Primzahlen voneinander unterschiedlich ist. Besonders bevorzugt
ist zum Beispiel, wenn für
Cyan eine Rastermatrix mit 137 Spalten sowie Zeilen, für Magenta
eine Rastermatrix mit 139 Spalten sowie Zeilen, für Gelb eine Rastermatrix
mit 131 Spalten sowie Zeilen und für Schwarz eine Rastermatrix
mit 149 Spalten sowie Zeilen verwendet wird. Bedingt dadurch, dass
für jede
Farbe eine Rastermatrix unterschiedlicher Dimension verwendet wird
und die Dimension jeweils von einer Primzahl abhängen, können statistische Moire-Effekte
und Sichtbarkeit der Anschlusskanten der Schwellwertmatrizen bei
der Wiedergabe mehrfarbiger Vorlagen minimiert werden.
-
Weiterhin
sei im Zusammenhang mit der Erzeugung von Schwellwertgebirgen für die unterschiedlichen
Farben angemerkt, dass für
jede Farbe auch die Streuung der Gaußverteilung unterschiedlich
ist. Auch hierdurch kann die Wiedergabequalität verbessert werden. Durch
die unterschiedliche Wahl der Streuung in Abhängigkeit zur Druckfarbe wird
eine unterschiedliche Grundfrequenz und Clusterbildung der einzelnen Druckfarben
erreicht.
-
Im
Sinne der hier vorliegenden Erfindung wird ein besonders einfaches
Verfahren zur Erzeugung von Schwellwertgebirgen für die frequenzmodulierte
Rasterung vorgeschlagen, wobei die Schwellwertgebirge keine Vorzugsrichtung
aufweisen und damit eine besonders gute Wiedergabequalität ermöglichen.
-
Nachfolgend
wird das erfindungsgemäße Verfahren
an einem Beispiel verdeutlicht, bei welchen in Block
12 eine
Rastermatrix mit acht Spalten und einer Zeile festgelegt wird:
-
- 10
- Block
- 11
- Block
- 12
- Block
- 13
- Block
- 14
- Block
- 15
- Block
- 16
- Block
- 17
- Block
- 18
- Block
- 19
- Block
- 20
- Block
- 21
- Verzweigung
- 22
- Block
- 23
- Block
- 24
- Verzweigung