Vermutlich kennt das jeder von Euch: Man sitzt ewig an einem Bild, retuschiert sich die Finger wund und wenn man es dann zeigen möchte entstehen ganz komische Ringe in Farbverläufen.
Diese Ringe nennen sich Banding und sind nichts anderes als Tonwertabrisse. Bevor ich erkläre woher diese Tonwertabrisse kommen und wie man sie vermeiden kann, möchte ich Euch ein kleines Beispiel zeigen:

Wie ihr im Hintergrund sehen könnt, haben wir hier – gerade auf der rechten Seite keinen sauberen Verlauf, sondern eher eine Treppe im Helligkeitsverlauf. Das ist Banding.

Wie entsteht Banding?

Man kann es sehr einfach herunterbrechen auf: Sind mehr Pixel als Helligkeitsstufen vorhanden, kann Banding entstehen.

Sehen wir uns mal an, wie ein Bild zusammen gesetzt ist. Wir haben drei Kanäle – Rot, Grün und Blau. Jeder dieser Kanäle hat bis zu 256 Abstufungen und damit wird ein farbiges Bild zusammen gesetzt. Es sind also 256*256*256 verschiedene Pixelwerte möglich. Verschiedene Pixelwerte heisst: Sie unterscheiden sich in Luminanz, Farbton oder Farbsättigung.

In unserem Beispiel haben wir auf allen 3 Kanälen den gleichen Wert, denn es ist ein Schwarz-Weiss-Bild. Juhu – also nur noch 256 Werte verfügbar.
Der Punkt eins (also der helle in der Bildmitte) hat einen RGB-Wert von 78, der zweite Punkt einen RGB-Wert von 28, die Entfernung beträgt 452px. Rein rechnerisch bedeutet das: 50 Stufen auf 450px, also alle 9px sollte sich der Wert um einen Schritt verändern. Das sollte in der Theorie noch ein sauberer Verlauf mit unsichtbaren Stufen sein – ist es aber nicht.

 

Das gemessene ist natürlich der Optimalfall – also das, was am Ende heraus kommt. Während der Bearbeitung wurde aber viel hin und her geschoben, hier ein bisschen heller gemacht, dort ein bisschen dunkler. Dadurch verändert sich natürlich der nutzbare Bereich und es entstehen Löcher im Histogram.

Mit einer Tonwertkorrektur habe ich den genutzten Bereich vergrößert und die Löcher markiert – so wird es besser sichtbar:

Diese Löcher sind Abrisse in den Tonwerten und zeigen sich dann als unsaubere Verläufe.

Banding durch Komprimierung

Um zu verstehen, warum gerade beim Upload in’s Web Banding entstehen kann, muss man sich mal kurz und sehr oberflächlich mit dem JPEG-Algorithmus auseinander setzen.
Wie werden Bilder komprimiert?

  1. Komprimierung durch Wandlung in das  YCbCr-Farbmodell

Das Bild wird nicht als RGB-Kanäle (Rot-Grün-Blau) gespeichert, sondern als Y-Cb-Cr (Luminanz, Blau-Gelb, Rot-Grün). Während der Luminanzkanal in voller Auflösung gespeichert wird, werden die anderen beiden kleiner gerechnet.
Das sieht also dann stark vereinfacht so aus:

Das RGB-Bild wird zerlegt in eine 100%-Version der Luminanz (Y), und je eine skalierte Version für die Rot-Grün-Farbinformation (Cb) und die Blau-Gelb-Information (Cr). Man hat herausgefunden, dass dieser Prozess sehr viele Daten erspart und gleichzeitig noch sehr gut aussieht – bis auf das Banding ist das auch richtig so.

*Anmerkung: Der Prozess ist sehr viel komplexer, wer sich damit auseinander setzen möchte, findet hier noch mehr Informationen die wir aber an dieser Stelle einfach unter den Teppich kehren um Euch nicht mit Subsamling und Pixelneuanordnung etc zu langweilen. 

Als nächstes werden diese drei Kanäle in Blöcke zerlegt – typischerweise erstmal in 8×8 Pixel. Diese Blöcke werden dann noch etwas geglättet und so werden innerhalb der Blöcke die Tonwertunterschiede weiter verkleinert. Da nicht der absolute Wert, sondern der Unterschied zum vorherigen Wert gespeichert wird, spart das auch nochmal ordentlich Daten.

Das Bild wird dadurch sehr viel kleiner und wer die Effizienz dieses Verfahrens sehen möchte, soll einfach mal ein unkomprimiertes TIF gegen ein JPG vergleichen und dabei auf die Dateigröße achten.

Diese Blockbildung und Glättung führt aber natürlich zu weiteren Löchern in unserem Farbverlauf – das Banding wird dadurch stärker. Je höher die Komprimierung, desto mehr Banding.

Ich könnte noch Stunden weiter schreiben, aber die Zerlegung und unterschiedliche Skalierung, die Blockbildung und das Verhältnis Pixel zu Tonwert sind die stärksten Faktoren für Tonwertabrisse.

Mit diesem Hintergrund kann man einen interessanten Rückschluss auf Kameras ziehen:

Je höher die Auflösung und je besser das Rauschverhalten, desto größer die Neigung zum Banding.

Was kann man gegen Banding tun?

Wenn man ein Bild bearbeitet, sieht man schon bei der Raw-Konvertierung ob es zu Banding neigen könnte: Immer dann, wenn großflächige, sanfte Verläufe stattfinden heisst es “lieber in 16bit bearbeiten”.
In 16bit stehen nämlich statt der 256 Werte pro Kanal stolze 65.536 mögliche Werte zur Verfügung. Bei der Bearbeitung dürften damit also keine Löcher im Histogram entstehen.

Einen ausführlichen Artikel zu 8bit vs 16 bit findet ihr übrigens hier.

Vor dem speichern als JPG kann man mit einem leichten rauschen gegen die Blöckebildung vorbeugen. Rauschen bedeutet nämlich: mehr unterschied zwischen den Pixeln.
Wir vergleichen mal eine 8×8-Pixel große Fläche vor und nach der “berauschung”:

Wie ihr seht, sind die einzelnen Pixel jetzt unterschiedlicher und eine Glättung wird hier weniger erfolgreich sein – der JPG-Algorithmus wurde überlistet.

So ein Rauschen erzeugt man am besten, in dem man eine neue Ebene anlegt und diese über “Bearbeiten -> Füllen” mit 50% Grau füllt. Nun wird mit “Filter -> Rauschen -> Rauschen hinzufügen” das Rauschen erzeugt. Die neue Ebene setzt man nun in den Ebenenmodus “weiches Licht” und variiert die Stärke über die Ebenentransparenz. Wichtig ist hier natürlich, dass dieses Rauschen ganz am Ende des Workflows erzeugt wird – erst verkleinern, dann nachschärfen, dann berauschen. Verändert man die Reihenfolge, schärft man entweder das Rauschen mit (und verstärkt es dadurch) oder man verhindert das Rauschen durch die Verkleinerung. Also: ganz am Ende machen, direkt vor dem Speichern.

Zum Thema “Für Facebook speichern” haben wir hier auch noch einen ausführlichen Artikel.

Wie entfernt man Banding?

Will man bei einem schon gespeicherten Bild das Banding entfernen, so ist das ein relativ einfacher Prozess:
Zuerst wird das Bild in 16bit gewandelt um mehr Spielraum in den Tonwerten zu erhalten. Anschließend kann mit dem Gausschen Weichzeichner das Banding entfernt werden – somit werden die Löcher im Histogram geschlossen.
Die weitere Speicherung erfolgt dann wie oben beschrieben, besser ist aber natürlich schon bei der Raw-Konvertierung auf die richtige Farbtiefe zu achten und sehr vorsichtig mit großen, weichen Pinseln um zu gehen.

Weitere Tipps:

Die Umwandlung zu 16bit und anschließendem reduzieren auf die Hintergrundebene kann auch helfen. Das und noch ein paar weitere Tipps zeigt Jan Wischermann hier im Video:

 

 

Schreibe einen Kommentar