Pixelinterpolation bei Bildtransformierungen
Anzeige Hier werben
Wie in dem Artikel Verluste bei Transformationen nachzulesen ist, gibt es bei jeder Bildtransformation in Photoshop Qualitätsverluste. Diese Verluste lassen sich ziemlich leicht erklären, wenn man bedenkt, dass nur begrenzt Bildinformationen im Ausgangsbild vorhanden sind.
Bei jeglichen Transformationen kommt es ständig dazu, das Pixel um Kommawerte (in Pixeleinheiten) verschoben werden. So kommt es, dass Photoshop für eine Ausgabe Pixel die zwischen den Eingabepixeln liegen errechnen muss. Diese Errechnung neuer Pixel nennt sich Pixelinterpolation.
In dem obigen Beispiel wird eine Transformation (stark vergrößert) beschrieben. In der ersten Abbildung sieht man die Pixel zu wie wir es kennen. In der zweiten Abbildung sind nun die Mittelpunkte der Pixel gezeigt, die zur Berechnung interpolierter Pixel verwendet werden. In Bild drei ist das Ursprungsbild jetzt verzerrt. Wie man sieht passen die Ursprungspixel nichtmehr in das Pixelraster.
Der rote Kreis markiert eine stelle, an der man sehr schön sehen kann, dass hier neue Pixel berechnet werden müssen. Photoshop errechnet hier einen Mittelwert aus den umliegenden Eingabepixeln, die diese präzise Position nurnoch temporär im Zwischenspeicher von Photoshop haben.
Photoshop bietet drei mathematische Alghoritmen zur Pixelinterpolation:
- Pixelwiederholung
- Bilinear
- Bikubisch.
Um zwischen diesen Interpolationsverfahren zu wechseln, muss man per Strg + K in den Voreinstellungen Dialog wechseln. Dort kann man dann unter "Interpolation" das Verfahren wählen.
Eine weitere Möglichkeit ist die Auswahl über den Dialog "Bild -> Bildgröße", diese Einstellung hat aber nur Auswirkungen auf das
Einstellen der Bildgröße und nicht auf jegliche anderen
Transformationen.
Die Alghoritmen: Pixelwiederholung, Bilinear und Bikubisch
Die Pixelwiederholung ist das wohl einfachste verfahren. Es übernimmt einfach den genauen Farbwert des dichtesten Eingabepixels. Die Pixelwiederholung eignet sich besonders, wenn ein Bild zum Beispiel auf genau 50% seiner Ursprungsgröße skaliert werden soll. Dabei erhält man durch Pixelwiederholung eine optimale Schärfe ohne jeglichen Qualitätsverlust. (sofern das Ursprungsbild nicht schon künstlich geschärft wurde)
In dem Bilinearen Verfahren wird einfach eine lineare Verbindung zwischen den Eingabepixeln errechnet, so kommt man auf mathematisch einfachem Weg zu einem relative guten Ergebnis. Das Verfahren heißt Bi-linear, weil es bidirektional durchgeführt wird. Das heißt, es wird gleichzeitig in zwei Richtungen: horizontal und vertikal angewandt.
Das Bikubische Verfahren basiert auf kubischen Splines. Diese ermöglichen die qualitativ (und universell) besten Interpolationen in Photoshop und sind dem bilinearen Verfahren in jedem Fall vorzuziehen. Mit Hilfe dieses Verfahrens erhalten Sie die weichste Interpolation.
Ein Experiment
In diesem Experiment habe ich ursprünglich ein Bild aus vier nebeneinander angeordneten Pixeln erstellt. Die Pixel wahren einfach schwarz - weiß - schwarz - weiß gefärbt.
In einem weitern Bild habe ich nun dieses Quellbild eingefügt und mit den drei Interpolationsverfahren hochskaliert. Die skalierten Versionen sieht man als schwarz-weiße Verläufe im Hintergrund.
Um die Interpolation (und die dahinter steckenden Spline-Funktionen) sichtbar zu machen, habe ich nun drei anfangs horizontale, gerade, rote Linien gezeichnet. Über den Filter "Filter->Verzerrungsfilter->Versetzen" habe ich nun die roten Linien so modifiziert, dass sie den Helligkeitswert der schwarz-weißen Verläufe auf der Y-Achse (vertikal) graphisch darstellen.
Schaut man sich das Bikubische Verfahren nun genau an, so erkennt man auch, dass Photoshop Randpixel anders behandelt, als Pixel die in der Mitte eines bildes liegen.