⇒ Tutorial mit Rausch-Vorlagen für eigenes Dithering zum Download

Schwache Farb- oder Grauverläufe erzeugen in der 8-Bit-Bilderwelt (vor allem JPG) sichtbare Stufen. Folgender Ausschnitt aus einem Bild, wie so etwas aussehen kann:

DSC02011_mitRechteck

Hier der Ausschnitt:

DSC02011_nurRechteck

Vorab noch eine wichtige Information

Falls Du einen für die Bildverarbeitung sehr gut abgeglichen Monitor und ein gutes Farbprofil für ihn besitzt, wirst Du unter Umständen Probleme haben, die Unterschiede in den Vergleichen der nachfolgenden Bilder zu sehen. 8-Bit-Farbkanäle reichen nämlich für eine nahezu stufenlose Darstellung, solange Dein Monitor alles so darstellt, wie ein klassischer Röhrenmonitor. Moderne Geräte haben aber ein deutlich höheres Kontrastverhältnis. Selbst Smartphones sind auf diesem Stand. 8-Bit pro Farbkanal reichen dann nicht mehr zur stufenfreien Darstellung eines Farb- oder Grautons, wenn das Bild absolut ohne Rauschen ist. Genau dieses „wenn“ auszunutzen ist der Trick, den ich hier beschreibe und den man Dithering nennt. 

Zur Aufnahme musste ich mit ausgestrecktem Arm und ohne Stativ bei relativ wenig Licht arbeiten. Es handelt sich um ein Objekt aus Marmor von Ai Weiwei zur Ausstellung Evidence im Gropius-Bau, Berlin. Aus diesem Grund habe ich mich mal für den Twilight-Modus meiner Sony Alpha-99 entschieden, um das Rauschen durch automatisches Zusammenfügen mehrerer Aufnahmen einigermaßen in den Griff zu bekommen. Leider bekommt man dann nur ein JPG aus der Kamera. Wir sehen, dass die Firmware mit derartigen Verläufen ihre Schwierigkeit hat. Statt Dithering einzusetzen, um Stufen zu vermeiden, bilden sich Helligkeits- und Farbstufen ab, lediglich vom Rauschen aus dem Sensor etwas ge-„dithered“.

Wie man solche Stufung einigermaßen entfernt, aber auch, wie man sie grundsätzlich bei der Ausgabe mit Gimp verhindert, beschreibe ich im folgenden Artikel. Vorwegnehmen muss ich allerdings, dass die Bearbeitung mit Programmen, die 16 Bit Farbtiefe unterstützen, noch zu einem deutlich besseren Resultat führen. Ganz am Ende habe ich die Bearbeitung zum Vergleich noch einmal mit PhotoLine nachvollzogen.

Für die Darstellung hier im Artikel in 1:1 Auflösung arbeite ich im Folgenden mit einer vorher durchgeführten Verkleinerung des Originals.

Download-Hinweis: Ganz unten, Überschrift Rauschvorlagen, habe ich Rauschvorlagen im PNG-Format zum Download bereitgestellt, die sich auch für 16Bit * 3-Farbtiefe eignen.

Entfernung der Stufung

Intro

Dieser Schritt ist nur notwendig, falls man bereits eine „versaute“ Vorlage hat. Hier geht es noch nicht um das eigentliche Dithering. Statt dessen müssen wir bei Vorlagen, die bereits deutlich sichtbare Stufungen enthalten, irgend etwas tun, um sie zuerst zu entfernen. Nur dann, wenn die Stufung sehr schwach ist, kann man das so lassen und den Rest gleich mit Dithering „wegmachen“. Allerdings muss man dazu beim Dithering ein etwas gröberes Rauschen verwenden. Also ein Rauschen mit niederfrequentem Anteil. Nicht umsonst habe ich in den Downloads Rauschen bereitgestellt, dass unterschiedlich gestaltet ist.

Geht los…

Mit diesem Schritt möchte ich die sichtbare Stufung unsichtbar machen. Wenn ein solcher Bereich, wie hier, keine bildwichtige Zeichnung enthält, kann man die Stufen durch Weichzeichnung entfernen. Damit bildwichtige Details nicht mit aufgeweicht werden, müssen sie maskiert werden.

Mit dem Zauberstab bei einem Schwellwert von 8 füge ich unter Festhalten der Schift-Taste step-by-step alle Bildteile zur Maske hinzu, die nicht zur Bewehrung aus Marmor und deren Schatten gehören. Stellenweise stelle ich den Schwellwert weiter herunter, wenn zu viel in die Maske übernommen wird. Mit dem Pinsel wird die Maske danach noch von kleinen Fehlern beseitigt. Gleichzeitig lasse ich das unbearbeitet Bild als Kopie eine Ebene darunter liegen:

AntiDithGimp_1

Wir wenden uns jetzt dem unten liegenden Bild zu und klonen die Bewehrung (auch „Armierungsstahl“; hier in Mamor) samt Schatten mit umliegenden Bildbereichen weg. Ziel: Wenn wir diese Ebene später weichzeichnen, soll die Bewehrung nicht mit weichgezeichnet werden. Es reicht, wenn die Konturen einigermaßen verschwinden:

AntiDithGimp_2

Jetzt vorsichtshalber diese Ebene kopieren (wir können sie somit später nochmal korrigieren, wenn uns das Ergebnis nicht befriedigt:

AntiDithGimp_3

Jetzt die hier markierte Ebene weichzeichnen. Ich nehme den Gaußchen Weichzeichner mit Radius von 60.

AntiDithGimp_4

Auch hier sehen wir immer noch Stufen. Kein Wunder. Nicht nur Gimp arbeitet immer noch mit 3×8 Bit. Auch der Export in JPG ist natürlich gleich schlecht aufgelöst und der Bildschirm gibt sein Teil dazu. Allerdings sind nach diesem Schritt die Stufen wieder so klein, wie mit 8 Bit möglich. Das Helligkeitsrauschen aus dem Original ist auch erst mal beseitigt, denn es bringt zum dithern nur wenig Effekt. Statt dessen werden wir gleich unser eigenes Rauschen drauf legen, dass aber nur so intensiv sein wird, wie es unbedingt sein muss.

Mit Software, die höher auflöst (z.B. Photoline), erreicht man im Bild eine stufenfreiere Auflösung. Allerdings wird sie in der Ansicht durch den Bildschirm wieder drüber gelegt. Aber in der weiteren Verrechnung mit dem noch hinzuzufügenden Rauschen wird der Verlauf dann auch auf dem Bildschirm nahezu glatt. Bei solchen Verläufen im Bild also möglichst mit einem Bildbearbeitungsprogramm arbeiten, dass 16 Bit pro Farbe beherrscht. Oder gleich Gleitkomma.

Dithering zufügen

Die nachfolgend beschriebene Lösung ist noch nicht optimal im Handling, weil sie das Bild geringfügig aufhellt, was man danach unter Umständen wieder korrigieren muss. Dafür ist diese Lösung sehr einfach vorzubereiten.

Ich bereite unterdessen zwei weitere Lösungen vor, die ich später hier vorstellen werde:

(1) Rauschen, dass symmetrisch ist und etwas anders zugemischt wird.

(2) Ein Tool, mit dem man das gesamte Finishing erledigen kann, ohne nochmals ins Bildverabeitungsprogramm zu müssen.


Dithering bedeutet, dass man die aktuelle Farbe durch eine Mischung aus unmittelbar benachbarter Pixeln erzeugt und sich damit viel mehr Abstufungen ergeben, als die Farbtiefen-Auflösung der Bilddatei oder des Wiedergabemediums eigentlich her geben.


Dieses Muster erzeugen wir hier durch ein überlagertes farbiges Rauschen. Damit das Rauschen nicht gar zu auffällig wird, reicht es, nur höherfrequentes Rauschen zu verwenden. Das gilt aber nur, wenn Sie später vom fertigen Bild keine Kopien mit verringerter Auflösung erzeugen wollen (oder im Web die Skalierung vom Server oder Client vornehmen lassen). In diesem Fall lassen sie unten die Schritte mit dem weichgezeichneten Rauschen weg. Besser ist jedoch, das Rauschen speziell für die gewünschte Auflösung zu erzeugen und mit dem Bild zu mischen.

Doch wie erzeugt man farbiges, hochfrequentes Rauschen?

Farbiges Rauschen erzeugen

Wir schaffen uns eine neue Ebene mit der Farbe Schwarz. In diese fügen wir nun RGB-Rauschen ein. Und zwar erst mal so richtig heftig. Dabei unbedingt „unabhängige RGB-Kanäle“ auswählen, sonst entsteht nur graues Rauschen:

AntiDithGimp_5

Wenn wir das Bild nun ansehen, ist im Rauschen natürlich auch ein Anteil größerer Muster:

AntiDithGimp_6

Um diese etwas zu entfernen, kopieren wir zuerst noch einmal dieses Rauschen und wenden darauf den Weichzeichnereffekt an. Den Radius nur auf 3 stellen:

AntiDithGimp_7

Wir subtrahieren nun dieses weichgezeichnete Rauschen vom originalen Rauschen in dem wir für diese Ebene „Abziehen“ als Modus einstellen. Ergebnis:

AntiDithGimp_8

Der höherfrequente Rauschanteil ist nun stärker sichtbar, während niederfrequente Anteile reduziert sind. Diese beiden Ebenen können wir nun miteinander verbinden (nach unten vereinen).

In diesem Rauschen sind teils große Helligkeitsunterschiede zwischen den Pixeln vorhanden, die dem Dithering nicht unbedingt gut tun. Aus dem Grund ändern wir die Gradation des Rauschens wie folgt:

Farben->Kurven wählen und in etwa diese Kurve einstellen:

AntiDithGimp_11

Dieses Rauschen addieren wir nun auf unser weichgezeichnetes Bild:

AntiDithGimp_10

Hinweis:

Wenn man so vor geht (Addition dieses auf der „Schwarz-Seite“ befindliche Rauschen), wird das Bild im Ganzen geringfügig heller. Das ist zu korrigieren. Vielleicht erkläre ich später mal noch eine andere Variante, bei der man aber auch „anderes Rauschen“ benötigt.

Allerdings ist nun noch die Deckkraft dieser Rauschebene zu reduzieren. Dazu wählt man sich in hoher Auflösung (100% oder höher) einen Bildbereich aus und variiert nun die Deckkraft, sodass von weitem betrachtet die Stufung verschwindet, das Rauschen aber so gering wie möglich bleibt. In 400-facher Auflösung ein Ausschnitt vorher und nachher bei 4,5% Deckkraft (Abbildungen mit gleicher Auflösung und nahezu der gleichen Bildstelle):

AntiDithGimp_12

AntiDithGimp_13

Das grieselige ist unser zugefügtes Rauschen. Im Bild, wie gesagt in 4-facher Vergrößerung.

Nun die Gegenüberstellung des weichgezeichneten Hintergrundes in voller Auflösung. Zuerst die Variante ohne Dithering von oben. Danach die mit Dithering:

AntiDithGimp_4

AntiDithGimp_14

Nur schwach komprimieren!

Die Stufung ist weitgehend aufgelöst. Wichtig ist dabei (bei JPG), das Bild nur extrem schwach zu komprimieren. Sonst zeichnet die Komprimierung den farbigen Anteil am Rauschen wieder weich. Denn die Komprimierung beim JPEG-Format basiert im Wesentlichen darauf, dass nur die Helligkeitsinformation in voller Auflösung gespeichert wird, die Farbebenen statt dessen weichgezeichet werden und in der Speicherung im Frequenzbereich damit weniger Informationen abgelegt werden müssen. Wenn JPG dabei bei einer Farbauflösung von 16 Bit pro Kanal bleiben würde (JPEG2000 kann das übrigens), wäre das für die Bilddaten selbst kein Beinbruch. Allerdings ist der Effekt dann auf dem Monitor wieder weg. Wir benötigen also den hohen Farbkontrast gerade im Detail, um das Dithering mit zu übertragen. Andernfalls wird es bei der Komprimierung bis auf das Helligkeitsrauschen tatsächlich wieder gelöscht!

Fertiges Bild

Darüber müssen wir nun wieder den ganz zu Beginn maskierten Teil vom Originalbild legen und schon fertig:

AntiDithGimp_fertig

Das war das Ausgangsbild:

AntiDithGimp_original

Qualitätssprung 16 Bit

Zum Vergleich habe ich die Weichzeichnung und die Mischung mit dem Rauschen mal in PhotoLine mit den dort vorhandenen 16 Bit pro Farbkanal durchgeführt. Da macht das Resultat dann richtig Freude:

AntiDithPhotoLine

Wichtig auch hier:

Das Dithering ist genau für diese Auflösung hier zugefügt. Wer das Bild skaliert ansieht, z.B. auf dem Smartphone, kann durchaus wieder die Farbabstufungen sehen. Um das zu vermeiden, hätte ich auch niederfrequente Rauschanteile im Bild belassen müssen. Das beißt sich allerdings in diesem Fall mit dem Anspruch ein absolut glatten Farbverlauf zu bekommen. Niederfrequente Rauschanteile sehen in etwa so aus, wie Filmkorn.

Rauschvorlagen

Im Folgenden stelle ich Rauschen in folgenden Varianten zum Download zur Verfügung:

  • Hochfrequentes (ausschließlich ganz feines) Rauschen
  • Feines Korn
  • Mittleres Korn
  • Grobes Korn

Jeweils in Paketen für 3 verschiedene Bildgrößen. Kleiner schneiden kann man es sich jederzeit. Anstückeln ist nicht unbedingt eine gute Idee. Das würde ich nur bei hochfrequentem Rausch empfehlen, oder wenn noch alle Rauschfrequenzanteile zusammen vorhanden sind.

Es handelt sich um PNGs mit 16 Bit Farbtiefe pro Kanal. 8-Bit-Programme, wie Gimp aktuell leider immer noch, können das importieren. Auch dort macht das Importresultat für den genannten Verwendungszweck viel Sinn. Allerdings sind Stufen damit nur verwischbar. Nicht komplett zu verhindern.

Für die Herstellung dazu ging ich einen leicht anderen Weg:

  • Rauschvorlage mit Gimp erstellt (farbiges Rauschen in 8 Bit pro Farbkanal) -> Export als 16Bit-PNG
  • Weiterverarbeitung in PhotoLine mit 16 Bit: Mittels Gradation-Funktion das Rausch-Histogramm passend umgeformt (vor allem Amplitude reduziert). Damit wird das Rauschen faktisch in die höhere Auflösung hinein gedrückt. Ab jetzt ist es deutlich feiner aufgelöst, als 8 Bit.-> Export als 16Bit-PNG
  • Weiterverarbeitung in RawTherapee:
    • Mit „Kontrast nach Detailstufen“ Varianten mit mehr oder weniger hoch- und niederfrequentem Rauschen erzeugt (also grobes und feines „Korn“). Das „verschmiert“ die Rauschpixel noch weiter in die 16-Bit-Auflösung hinein. Wir haben nun eine Rauschvorlage, die deutlich feiner aufgelöst ist, als die ursprünglich erzeugten 8 Bit.
    • verschieden große Formate exportiert

Vorlagen für bis zu 54M-Pixel mit 9000×6000 px (847 MByte)

Vorlagen für bis zu 24M-Pixel mit 6000×4000 px (392 MByte)

Vorlagen für bis zu 12M-Pixel mit 3000×2000 px (91 MByte)

Hinweise:

  • Die Variante „hochfrequent“ bevorzugt bei Bildern anwenden, die danach nicht mehr in der Auflösung umskaliert (verkleinert) werden. Diese Konstellation gibt für das Dithering in Bildverarbeitungsprogrammen mit 16-Bit-Verarbeitung (oder höher) die besten Ergebnisse.
  • Die Varianten „feinesKorn“, „mittleresKorn“ und „grobesKorn“ je nach Gefallen verwenden, wenn die Resultate entweder später herunterskaliert werden sollen oder im 8-Bit-Bildverarbeitungsprogramm (z.B. Gimp) bessere Resultate erzeugen. Hierzu am Besten einmalig einige Tests machen.
  • Anwendung: Das Rauschbild unskaliert zum Originalbild „addieren“ und die „Deckung“ so schwach einstellen, dass die gewünschte Stärke des Dithering eintritt. Siehe auch den Artikelinhalt oben. Das Resultat muss danach sehr gering in der Helligkeit reduziert werden. Das liegt daran, dass wir hier nur Pixelwerte addieren. Das Rauschen ist sozusagen einseitig positiv.