Müssen Sie einen Tiefpassfilter verwenden, bevor Sie ein Bild verkleinern können?


8

Anscheinend ist die bikubische Pixelinterpolation gut, um ein Bild zu vergrößern oder zu verkleinern (in Echtzeit oder nicht).

Wird empfohlen, vor dem Downsizing einen Tiefpassfilter zu verwenden, oder werden bei der bikubischen Abtastung überhaupt Aliasing-Probleme behoben?


1
Ich bin ein bisschen verwirrt über Ihre Prämisse ... wie unterscheidet sich ein Tiefpassfilter qualitativ von Downsampling? Ich meine, ich verstehe, dass die Algorithmen unterschiedlich sind und alle, aber beide sammeln Samples von benachbarten Pixeln und unterdrücken hohe Frequenzen. Der große Unterschied ist die Auflösung des Ergebnisbildes, ansonsten sind die beiden Operationen isomorph. Es scheint, als wäre es überflüssig, beide anzuwenden.
Jorge Rodriguez

Nun, hier ist was mich verwirrt. Ich weiß, dass Sie ein Bild nicht einfach ohne Aliasing herunterrechnen können. Die bikubische Interpolation von Pixeln beim Vergrößern eines Bildes funktioniert sehr gut und sieht gut aus. Dasselbe zu tun, wenn ein Bild kleiner gemacht wird, scheint anständig zu funktionieren, aber ich war mir nicht sicher, ob das Ergebnis wahrscheinlich viel Aliasing zur Folge hat. Ich habe mich gefragt, ob Sie technisch gesehen vor der bikubischen Abtastung eine Art Tiefpassfilter für das Bild durchführen müssen oder ob die bikubische Abtastung in der Praxis gut genug ist. Ich konnte sehen, dass es vielleicht eine Art Tiefpassfilter für sich war.
Alan Wolfe

1
Das Mitchell-Netravali-Papier, das ich in der anderen Frage erwähnt habe, befasst sich speziell mit dieser Idee - er verallgemeinerte Kubik und fand dann die Parameter, die am wenigsten alias sind. Das bedeutet nicht, dass sie überhaupt keinen Alias ​​haben, aber vielleicht würde es Sie darauf hinweisen, welche Kubik verwendet werden soll, um das Aliasing zu minimieren.
Jorge Rodriguez

Antworten:


7

Wenn der Downsampling-Durchgang ordnungsgemäß ausgelegt ist, führt er im Rahmen des Downsamplings effektiv eine Tiefpassfilterung durch. Es ist kein separater Tiefpassfilter erforderlich.

Wenn Sie ein Downsampling durchführen, führen Sie im Wesentlichen einen Filter über die Quellbildpixel (hochauflösend) durch, werten ihn jedoch nur an den Positionen der Zielpixel (niedrigauflösend) aus. Der Footprint dieses Filters muss ungefähr dem Abstand zwischen den Zielpixeln entsprechen, um fehlende Informationen durch Überspringen zwischen den Quellpixeln zu vermeiden. Dies bedeutet jedoch, dass der Filter-Footprint mehrere Quellpixel breit ist, sodass die Quelle effektiv tiefpassiert wird.

Angenommen, Sie verkleinern ein Bild auf jeder Achse um genau das 10-fache. Mit einem Box-Filter (zum Beispiel) würden Sie jedes Zielpixel auf den Durchschnitt einer 10x10-Box mit Quellpixeln setzen. Das würde alle Funktionen auslöschen, die kleiner als 10px sind, also ist es effektiv ein Tiefpassfilter.

Sie erwähnen die bikubische Interpolation; wir müssen hier zwischen Filterung und Interpolation unterscheiden. Die Interpolation ist für das Upsampling und nicht für das Downsampling geeignet. Bei der bikubischen Interpolation wird ein bikubisches Spline-Patch an eine 4x4-Nachbarschaft von Pixeln angepasst und das Patch dann an interpolierten Punkten ausgewertet. Es funktioniert zwar gut genug, um Bilder um einen kleinen Faktor (bis zu 2x oder so) herunterzusampeln, aber es schlägt fehl, wenn Sie viel weiter gehen. Wenn Sie beispielsweise wie im vorherigen Beispiel um das 10-fache verkleinern, können Sie sehen, dass Bicubic die Mehrheit der Quellpixel verfehlt und das Ergebnis möglicherweise ziemlich aliasiert ist.

Andererseits ist die bikubische Filterung nur eine Standardfilterung unter Verwendung eines Kernels, der eine bikubische Funktion ist (im Gegensatz zu einem Kernel aus Box, Dreieck, Gauß, Lanczos usw.). Der Mitchell-Netravali-Kernel ist das klassische Beispiel für diesen Typ. Bei Verwendung für das Downsampling sollte der Kernel wie zuvor beschrieben für den Zielpixelabstand geeignet dimensioniert sein, und Sie würden alle Pixel im Footprint summieren, nicht nur eine 4x4- oder eine andere Nachbarschaft mit fester Größe.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.