Ein wesentlicher Bestandteil des Videocodecs H.264 ist der sogenannte In-Loop Deblocking Filter. In diesem Artikel wird gezeigt, wie sich der Filter auf die Bildqualität auswirkt und was dessen Einstellungen bewirken.
Block-Artefakte
Aktuelle Kompressionsverfahren unterteilen das Videobild zur Berechnung in einzelne Blöcke und führen eine diskrete Cosinustransformation (DCT) durch. Leider können dabei auch Artefakte entstehen, die in Form von eben diesen Blöcken im Bild zu sehen sind. Dies ist besonders bei niedrigen Bitraten ein Problem.
„blocking“ is generally considered to be one of the most visible artifacts with the present compression methods.
In-Loop Deblocking Filter
Bei Vorgängercodecs (z.B. in MPEG-2) war der Deblocking-Filter nur optional, bei H.264 ist er fester Bestandteil. Er sorgt dafür, die Blockbildung zu verringern.
Das Grundprinzip funktioniert so: Man nimmt zwei nebeneinanderliegende Blöcke. Wenn die Werte am jeweiligen Rande stark abweichen, ist es wahrscheinlich, dass hier ein Artefakt entfernt werden muss. Ist hingegen die Abweichung so stark, dass es nicht aus der Ungenauigkeit der Kompression herrühren kann, sind die Unterschiede so gewollt (= das Bild ist an dieser Stelle tatsächlich so).
Deutliche Qualitätsverbesserung
Consequently, the subjective quality is significantly improved. The filter reduces bit rate typically by 5-10% while producing the same objective quality as the non-filtered video.
Unter Strich resultiert dies in einer sichtbaren visuellen Verbesserung des Bildes. Der nachstehende Screenshot zeigt, wie sich fehlendes Deblocking bei den ansonsten gleichen Encoding-Einstellungen auswirkt (Bild anklicken zum Vergrößern).
Feintuning
Manchmal können auch die Parameter Alpha (strength) und Beta (threshold) des Deblockings konfiguriert werden.
Wichtig zu wissen: Die Standardeinstellung 0:0 bedeutet nicht, dass der Filter ausgeschaltet ist. Es handelt sich um einen Defaultwert, der durchschnittlich für alle Videos die (nach Meinung der Entwickler) beste Einstellung repräsentiert.
Möchte man einen etwas knackiges/schärferes Bild mit weniger Deblocking, kann man negative Werte versuchen (z.B. -1:-1 oder -2:-2). Positive Werte (z.B. 1:1, 1:2, 2:2) sorgen für mehr Deblocking mit einem etwas weicheren Bild.
Im Screenshot sieht man den Vergleich: Links die Einstellung -2:-2 und rechts 2:2.
Fazit
Das Deblocking sollte man niemals deaktivieren. Viele Encoder bieten diese Option deshalb auch gar nicht an. Bei Bedarf kann man noch etwas Feintuning mithilfe der Filtereinstellungen betreiben.
Link: In-loop Deblocking Filter for H.264/AVC Video (PDF)
Link: Overview of the H.264/AVC Video Coding Standard (PDF)
Link: How To Use Mpeg4 AVC Deblocking Effectively
[ad]
Was man auf Bildern in Briefmarkengröße erkennen soll, ist mir ein Rätsel…