Interpolation (Fotografie)

Verfahren zur Erzeugung von Bildinhalten zwischen verschiedenen Pixeln eines Bildes oder innerhalb einzelner Pixel
(Weitergeleitet von Bildinterpolation)

Interpolation (wörtliche Übersetzung: „Zwischenrechnen“) bezeichnet in der digitalen Fotografie ein Verfahren zur Erzeugung von Bildinhalten

  1. zwischen verschiedenen Pixeln eines Bildes (Dichteinterpolation)
  2. innerhalb einzelner Pixel (Farbinterpolation).

Interpolation ist ein notwendiger Bestandteil des Signalverarbeitungsweges digitaler Bilder, da alle Änderungen an der Pixelmenge und der Farbe nur hiermit realisiert werden können. Im gesamten Verarbeitungsweg zwischen Bilderzeugung und -darstellung wird mehrfach interpoliert – dabei entsteht immer ein Schärfeverlust.

Grundlagen

Bearbeiten

Jedes Pixel transportiert auf zwei Arten Bildinformationen:

  1. Im Zusammenspiel mit anderen Pixeln (nur alle Pixel zusammen ergeben ein Bild). Dies wird durch die Punktdichte dargestellt.
  2. Innerhalb des Pixel (Helligkeit & Farbe). Dies wird durch die Farbtiefe dargestellt.
 
Gemeinsam mit der Punktdichte bildet die Farbtiefe die Matrix jeder Rastergrafik. Ein Pixel ist das kleinste Element jeder Rastergrafik.

In jeder Bildverarbeitungskette (Beispiel: Kamera – Bildschirm – Speicher – Drucker) wird die Punktdichte und Farbe jedes Bildes mehrfach geändert. Das ist u. a. durch die Anpassung des Bildes an das bilddarstellende Medium notwendig. Typisch dafür sind die Unterschiede zwischen Bildschirm und Drucker, da beide jeweils spezielle Punktdichten benötigen und unterschiedliche Farbräume benutzen.

Mittels Interpolation wird die Pixelmenge um den gewünschten Wert erhöht oder verringert sowie bei Farb- und Helligkeitsänderungen der neue Farbwert ermittelt. Durch dieses Zwischenrechnen entstehen keine neuen Bildinformationen, sondern immer nur Zwischenwerte auf Basis der ursprünglichen Informationen.

Dichteinterpolation

Bearbeiten

Die Pixelmenge aller digitalen Bilder muss mehrfach geändert werden. Exemplarisch kann das am nebenstehenden Fischbild beobachtet werden:

  • das Originalbild ist 800×300 Pixel groß
  • in der Darstellung eines durchschnittlichen Internetbrowsers wird dieses Bild gerade mit ca. 216×82 Pixel angezeigt
  • ein Ausdruck in 20 cm Breite bei 300dpi würde dagegen eine Menge von 2362×886 Pixeln notwendig machen.

Die Verringerung oder Erhöhung der Pixelmenge wird durch Interpolation erreicht.

Der Fisch im Musterbild besteht aus 25×20 Quadraten. Wie würde die Dichteinterpolation auf 17×13 Quadraten oder auf 27×21 Quadraten aussehen? Diese nicht-ganzzahligen Zwischenrechnungen stellen das Kernproblem aller Interpolationen dar und sind die Ursache für verschiedene Interpolationsmethoden.

Farbinterpolation

Bearbeiten
 
Musterbild mit Fisch

Die Farb- und Helligkeitsinformationen von Pixeln werden gemeinsam in der Farbtiefe eines Bildes gespeichert. In der Bildverarbeitungskette werden die Farbinformationen eines digitalen Bildes mehrfach geändert (innerhalb der Farbtiefe). Exemplarisch kann das erneut am nebenstehenden Fischbild beobachtet werden:

  • wird das Fischbild gedruckt, sieht die Farbe des Ausdrucks immer anders aus als die Darstellung der Farbe am Bildschirm
  • jeder Bildschirm stellt (zumindest geringfügig) die Farbe des Fischbildes anders dar, als ein anderer Bildschirm

Ein digital fotografiertes Bild wird meist mit 3 Farbkanälen in Rot, Grün und Blau bearbeitet. Im häufigsten Fall besitzt jeder Farbkanal 256 Abstufungen (= 8bit). Wie würde eine Farbänderung im Fischbild aussehen, beispielsweise eine Halbierung der Helligkeit?

  • der hellblaue Untergrund besitzt einen Cyanwert von 206; eine Halbierung ergibt 103
  • der blaue Fisch besitzt einen Blauwert von 255; eine Halbierung ist hier nicht möglich, da die Farbkanäle nur ganzzahlige Abstufungen zulassen. Es hängt vom verwendeten Interpolationsverfahren ab, welcher neue Blauwert nach der Helligkeitsänderung vorhanden ist.

Interpolationsmethoden

Bearbeiten

Aus mathematischer Sicht bedeutet Interpolation „Zwischenwertermittlung“. Dabei werden aus den bekannten Pixelwerten eines Bildes die neuen Werte mittels Interpolationsalgorithmen berechnet. Der wesentliche Unterschied bei den verschiedenen Interpolationsmethoden liegt in der Auswertung der bekannten Pixelwerte und der daraus resultierenden Festlegung der neuen Bildinhalte. Die Gemeinsamkeit aller Interpolationsmethoden ist Auswirkung auf den Inhalt von Punktdichte und Farbtiefe.

In jeder Bildverarbeitungskette wird oft mehrfach interpoliert. Dabei kommt es immer auch zu nicht-ganzzahligen Änderungen. Durch diese Art der Änderung entsteht ein Verlust an Information und damit ein Verlust an Schärfe. Durch diesen systembedingten Schärfeverlust dominiert bei der Wahl des Interpolationsverfahrens immer der Einfluss auf den Schärfeeindruck.

Typische Interpolationsmethoden sind Pixelwiederholung, bilineare Interpolation und bikubische Interpolation. Diese basieren auf dem Verfahren eines Rekonstruktionsfilters.

Pixelwiederholung

Bearbeiten

Bei der Pixelwiederholung, auch Nearest neighbor („nächster Nachbar“) genannt, wird jedem Pixel des Ausgabebildes der Farbwert des nächstgelegenen Pixels des Eingabebildes zugewiesen. Bei der Verringerung von Punktdichten oder nicht-ganzzahligen Änderungen werden einige der vorhandenen Pixelwerte gelöscht. Die Verkleinerung von Bildern mit dieser Methode kann zu starken Alias-Effekten führen, die sich als Bildartefakte äußern. Bei der Vergrößerung mittels Pixelwiederholung kommt es zu einer klötzchenartigen, „pixeligen“ Darstellung.

Bilineare Interpolation

Bearbeiten
 
Bei bilinearer Interpolation wird ein Farbwert aus den vier nächstgelegenen Farbwerten berechnet.

Bei der bilinearen Interpolation wird der Farbwert eines Pixels des Ausgabebildes aus den vier benachbarten Farbwerten des Eingabebildes interpoliert. Bei der Verringerung von Punktdichten oder nicht-ganzzahligen Änderungen werden dadurch einfache Wertetendenzen (Beispiel: starke Helligkeitsänderungen) berücksichtigt.

Bikubische Interpolation

Bearbeiten

Diese Methode benutzt analytische Funktionen (also die Berücksichtigung von Tendenzen über die Nachbarpixel hinaus) zur Neuberechnung. Dabei wird ein Farbwert des Ausgabebildes aus den benachbarten Farbwerten des Eingabebildes mittels kubischen Splines interpoliert. Es gibt mehrere gebräuchliche kubische Splines mit unterschiedlichen Eigenschaften; der Begriff „bikubische Interpolation“ ist daher mehrdeutig. Bei der Verringerung von Punktdichten oder nicht-ganzzahligen Änderungen entstehen hierbei deutlich „weichere“ Übergänge zwischen den neuen Pixeln als bei der einfachen Pixelwiederholung.

Das Bildbearbeitungsprogramm GIMP (Version 2.7) verwendet Catmull-Rom-Splines. Bei diesem Spline-Typ kommt es zum Überschwingen der Farbwerte an Kanten, was sich als Schärfung des Bildes äußert. Das Bildbearbeitungsprogramm Paint.NET (Version 3.36) hingegen verwendet kubische B-Splines, welche zu einer verschwommeneren Darstellung führen.

Vergleiche verschiedener Interpolationsverfahren

Bearbeiten

Vergleich bei Dichteinterpolationen

Bearbeiten

Vergleich bei Farbinterpolationen

Bearbeiten
Bearbeiten