System zur Decoder-unabhängigen Reduktion von Blockartefakten
System zur Decoder-unabhängigen Reduktion von Blockartefakten
System zur Decoder-unabhängigen Reduktion von Blockartefakten
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
<strong>System</strong> <strong>zur</strong> <strong>Decoder</strong>-unabhängigen <strong>Reduktion</strong> <strong>von</strong> <strong>Blockartefakten</strong><br />
Dipl.-Ing. Patrick Piastowski, Arbeitsgebiet Schaltungen der Informationsverarbeitung * , Universität Dortmund<br />
E-Mail: patrick.piastowski@uni-dortmund.de<br />
Kurzfassung<br />
Aktuelle Videokompressionsverfahren, die in <strong>System</strong>en wie DVB, DVD, etc. eingesetzt werden, führen bei hohen<br />
Kompressionsraten zu Datenverlusten. Dadurch entstehen Kompressionsartefakte, insbesondere Blockartefakte,<br />
die die Bildqualität negativ beeinflussen. Dieser Beitrag stellt ein adaptives Verfahren <strong>zur</strong> <strong>Reduktion</strong> <strong>von</strong> <strong>Blockartefakten</strong><br />
vor, das eine lokale Bildanalyse <strong>zur</strong> Steuerung <strong>von</strong> zwei Filtern einsetzt. Da das Verfahren ausschließlich<br />
auf bereits decodierte Bilddaten zugreift, ist ein decoder-unabhängiger Einsatz, z.B. in Displays, möglich.<br />
Stichworte: Artefaktreduktion, Deblocking, adaptive Filterung, Videokompression<br />
1 Einleitung<br />
In nahezu allen aktuellen <strong>System</strong>en <strong>zur</strong> Übertragung<br />
und Speicherung <strong>von</strong> Videosequenzen (z.B. DVB,<br />
DVD, HD-DVD) werden moderne Videokompressionsverfahren<br />
(z.B. MPEG-2, MPEG-4, H.264) eingesetzt.<br />
Diese Videokompressionsverfahren nehmen bei<br />
der Verarbeitung <strong>von</strong> Intra-Bildern zunächst eine Einteilung<br />
der Bilder in Blöcke vor (z.B. 8x8 Pixel bei<br />
MPEG-2). Es schließt sich eine getrennte Transformation<br />
(meist DCT) der einzelnen Blöcke und eine<br />
Quantisierung der Transformationskoeffizienten an.<br />
Die Steuerung der Stärke der Quantisierung und somit<br />
der Datenrate der Verfahren ist über Quantisierungsparameter<br />
möglich.<br />
Quantisierung führt zwangsläufig zu Datenverlust. Da<br />
alle Blöcke unabhängig <strong>von</strong>einander verarbeitet werden,<br />
kann der Quantisierungsfehler bei der Decodierung<br />
in Form <strong>von</strong> Diskontinuitäten im Bereich <strong>von</strong><br />
Blockgrenzen sichtbar werden. Man spricht dann <strong>von</strong><br />
<strong>Blockartefakten</strong>. Derartige Artefakte in Videosequenzen<br />
werden <strong>von</strong> Betrachtern als störend wahrgenommen<br />
und beeinflussen Signalverarbeitungsalgorithmen,<br />
die der Decodierung nachfolgen, oft negativ. Je<br />
gröber die Quantisierung der Koeffizienten durchgeführt<br />
wird, umso stärker werden in einem decodierten<br />
Bild Blockartefakte sichtbar.<br />
In Inter-Bildern können durch Bewegungskompensation<br />
auch Blockartefakte an Stellen auftreten, die<br />
nicht durch das übliche Blockraster gegeben sind.<br />
Durch Addition eines Differenzsignals innerhalb typischer<br />
Videokompressionsverfahren wird diese Problematik<br />
jedoch deutlich verringert und soll hier nicht<br />
näher behandelt werden.<br />
Für nähere Informationen <strong>zur</strong> Videocodierung siehe<br />
z.B. [3]. Ein ausführlicher Beitrag zum Thema Kodierartefakte<br />
findet sich in [4].<br />
Blockartefakte treten in der Praxis häufig auf, da <strong>zur</strong><br />
Zeit hauptsächlich MPEG-2 basierte <strong>System</strong>e eingesetzt<br />
werden, die im Standard keine Maßnahmen gegen<br />
derartige Störungen enthalten. Auch bei der Verwendung<br />
neuer Videokompressionsverfahren muss<br />
mit <strong>Blockartefakten</strong> gerechnet werden, da die in den<br />
Standards vorgesehenen Gegenmaßnahmen nicht in<br />
jedem Falle implementiert sein müssen und meist<br />
auch nicht alle Artefakte beseitigen.<br />
Dieser Beitrag stellt ein aufwandgünstiges Verfahren<br />
<strong>zur</strong> <strong>Reduktion</strong> <strong>von</strong> <strong>Blockartefakten</strong> vor, das eine lokale<br />
Analyse <strong>von</strong> Blockgrenzen in Bildsequenzen vornimmt,<br />
um mögliche Blockartefakte zu erkennen und<br />
zu klassifizieren. Abhängig <strong>von</strong> der Analyse wird eine<br />
Filterung, angepasst an die aktuelle Bildumgebung,<br />
vorgenommen. Das decoder-unabhängige Verfahren<br />
benötigt keinen Zugriff auf Zusatzinformationen (z.B.<br />
Quantisierungsparameter) und eignet sich daher hervorragend<br />
für einen Einsatz in reinen Postprocessing-<br />
Umgebungen wie z.B. LC-Displays, die Kodierartefakte<br />
oft besonders deutlich sichtbar werden lassen<br />
(siehe [8]). Gegenüber bekannten Lösungen mit<br />
Zugriff auf Zusatzinformationen müssen trotzdem<br />
keine Abstriche bzgl. der Wirksamkeit gemacht werden.<br />
In Abschnitt 2 wird das Verfahren vorgestellt und in<br />
Abschnitt 3 finden sich Simulationsergebnisse und<br />
Bildbeispiele. In Abschnitt 4 wird der Beitrag zusammengefasst.<br />
2 <strong>Decoder</strong>-unabhängige <strong>Reduktion</strong><br />
<strong>von</strong> <strong>Blockartefakten</strong><br />
An dieser Stelle soll ein neues Verfahren <strong>zur</strong> decoderunabhängigen<br />
<strong>Reduktion</strong> <strong>von</strong> <strong>Blockartefakten</strong> vorgestellt<br />
werden. In Bild 1 ist das Blockschaltbild des<br />
Verfahrens dargestellt.<br />
Auf der linken Seite ist eine lokale Bildanalyse erkennbar,<br />
die sich in mehrere Komponenten aufteilen<br />
lässt. Zweck der für jede horizontale und vertikale<br />
Blockgrenze durchzuführenden Bildanalyse sind ei-<br />
* Die Arbeiten wurden in Zusammenarbeit mit der Firma Micronas GmbH (München) durchgeführt. Ansprechpartner<br />
dort ist Herr Dipl.-Ing. Markus Schu.
nerseits die Entscheidung, ob Blockartefakte vorliegen<br />
und eine Filterung durchgeführt werden sollte,<br />
und andererseits die Auswahl eines <strong>von</strong> zwei an den<br />
Bildinhalt (homogen/nicht homogen) angepasster Filter.<br />
Input<br />
Berechnung<br />
Hauptgrad<br />
Berechnung<br />
Nebengrad<br />
Lokale Bildanalyse<br />
Blocking-Detekt./<br />
Bypass Steuerung<br />
Aktivitätsdetekt./<br />
Filterauswahl<br />
Filter für<br />
homogene<br />
Bereiche<br />
Filter für<br />
detaillierte<br />
Bereiche<br />
Output<br />
Bild 1: Artefaktreduktion mit lokaler Bildanalyse<br />
Zentrale Bestandteile der lokalen Bildanalyse sind die<br />
Ermittlung <strong>von</strong> so genannten Haupt- und Nebengradienten.<br />
Diese basieren auf der Summe absoluter Pixeldifferenzen<br />
im Bereich <strong>von</strong> Blockgrenzen. Dazu<br />
müssen Lage und Größe <strong>von</strong> Blöcken bekannt sein,<br />
was bei gängigen Videokompressionsverfahren der<br />
Fall ist.<br />
Zur Berechnung der lokalen Hauptgradientensumme<br />
werden die absoluten Pixelintensitätsdifferenzen<br />
zwischen den direkten Blockgrenzpixeln aufaddiert.<br />
Die Hauptgradientensumme ergibt sich beispielsweise<br />
für eine horizontal verlaufende Blockgrenze mit dem<br />
oberen linken Pixel des unteren betroffenen Blockes<br />
im Bild s an den Koordinaten (x 0 ,y 0 ) zu<br />
7<br />
∑<br />
HG = abssx (( + ny , −1) − sx ( + ny , )).<br />
x0, y0<br />
0 0 0 0<br />
n=<br />
0<br />
Die entsprechende lokale Nebengradientensumme,<br />
die sich aus Pixelintensitätsdifferenzen innerhalb der<br />
beiden betroffenen Blöcke ergibt, lässt sich durch<br />
7<br />
⎛<br />
⎞<br />
NGx0, y<br />
= 0,5 ⋅<br />
0 ⎜∑abssx ( (<br />
0<br />
+ ny ,<br />
0<br />
−2) − sx (<br />
0<br />
+ ny ,<br />
0<br />
−1))<br />
⎟<br />
⎝ n=<br />
0<br />
⎠<br />
7<br />
⎛<br />
⎞<br />
+ 0,5 ⋅ ⎜∑abs( s( x0 + n, y0) − s( x0 + n, y0<br />
+ 1)) ⎟<br />
⎝ n=<br />
0<br />
⎠<br />
berechnen.<br />
Auf Basis der Nebengradientensumme erfolgt, wie in<br />
Bild 1 dargestellt, direkt eine Aktivitätsdetektion. Mit<br />
Hilfe eines Schwellwertvergleichs wird entschieden,<br />
ob der untersuchte Bildbereich homogen ist (niedrige<br />
Aktivität) oder nicht (höhere Aktivität). Die Aktivitätsdetektion<br />
dient der Umschaltung zwischen zwei<br />
Filtern <strong>zur</strong> Blocking-<strong>Reduktion</strong>. Da die nachfolgenden<br />
Filterungen im direkten Blockgrenzbereich erfolgen,<br />
erstreckt sich die Aktivitätsdetektion zweckmäßigerweise<br />
auf denselben Bildbereich, was auch die<br />
notwendigen Zeilenspeicher minimiert.<br />
Die im Verfahren vorgesehene Blocking-Detektion<br />
basiert auf dem Verhältnis <strong>von</strong> Hauptgradientensumme<br />
zu Nebengradientensumme. In natürlichen unkomprimierten<br />
Bildern ist dieses Verhältnis etwa Eins,<br />
da Haupt- und Nebengradienten im Schnitt gleich<br />
groß sind. Folgen einer Bildkompression sind eine<br />
Vergrößerung der Hauptgradienten durch Diskontinuitäten<br />
an Blockgrenzen und eine Verkleinerung der<br />
Nebengradienten durch Informationsverlust innerhalb<br />
<strong>von</strong> Blöcken. Dies führt mit steigender Kompression<br />
zu einer Vergrößerung des Verhältnisses, das somit als<br />
lokales Blocking-Maß dient. Durch einen Schwellwertvergleich<br />
kann nun entschieden werden, ob eine<br />
Filterung durchgeführt wird, oder nicht.<br />
Die Zuverlässigkeit des lokalen Blocking-Maßes kann<br />
durch einige Erweiterungen und Behandlung <strong>von</strong><br />
Sonderfällen noch gesteigert werden, worauf hier<br />
nicht näher eingegangen werden soll.<br />
Für homogene Bildbereiche wird ein Filter mit einer<br />
Wirkungsbreite <strong>von</strong> 6 Pixeln eingesetzt, das in Bild 2<br />
dargestellt ist.<br />
Bild 2: Filter für homogene Bildbereiche<br />
Für jede Blockgrenzposition wird die Höhe des Signalsprungs<br />
über die Blockgrenze gemessen. Die Ausgangspixelintensitäten<br />
des Filters ergeben sich nun<br />
durch Addition bzw. Subtraktion des mit festen Faktoren<br />
gewichteten Signalsprungs zu bzw. <strong>von</strong> den Intensitäten<br />
der Originalpixel. Die ungewollte Filterung<br />
kontrastreicher „echter“ Kanten, die sich durch einen<br />
großen Intensitätssprung äußern, kann durch einen<br />
weiteren Schwellwertvergleich vermieden werden.<br />
In detaillierten Bildbereichen wird ein Filter mit kleiner<br />
Wirkungsbreite eingesetzt, da möglichst viele Details<br />
erhalten werden sollen. Dazu wird an den Blockgrenzpositionen<br />
eine 4-Punkt-DCT senkrecht <strong>zur</strong><br />
Blockgrenze durchgeführt. In Bild 3 ist exemplarisch<br />
dargestellt, auf welche Pixel zugegriffen werden<br />
muss.<br />
DCT<br />
Bild 3: Filter für detaillierte Bildbereiche<br />
Der errechnete hochfrequente antisymmetrische DCT-<br />
Koeffizient ist hauptsächlich für das Auftreten <strong>von</strong><br />
<strong>Blockartefakten</strong> verantwortlich (siehe [2]). Dieser<br />
Koeffizient wird um einen festen Faktor vermindert,<br />
bevor eine unvollständige IDCT durchgeführt wird,<br />
die nur die beiden inneren Pixel neu berechnet. Die<br />
Intensitätsänderung der beiden Blockgrenzpixel darf<br />
nicht größer als die halbe Signalsprunghöhe an der<br />
Blockgrenze ausfallen.<br />
Es sei an dieser Stelle erwähnt, dass die mit einfachen<br />
Operationen implementierbare lokale Bildanalyse für<br />
eine Unabhängigkeit <strong>von</strong> sämtlichen Seiteninformationen<br />
wie Quantisierungsparametern sorgt und somit<br />
eine decoder-unabhängige <strong>Reduktion</strong> <strong>von</strong> <strong>Blockartefakten</strong><br />
ermöglicht.
Blocking-Messung<br />
1,60<br />
Blocking-Wert<br />
1,40<br />
1,20<br />
1,00<br />
0,80<br />
0,60<br />
0,40<br />
0,20<br />
unkompr.<br />
kompr.<br />
[1]<br />
[2]<br />
[7]<br />
[5]<br />
UniDo<br />
0,00<br />
football<br />
1,5 MBits/s<br />
football<br />
3 MBits/s<br />
matphone_lauf0<br />
1,5 MBit/s<br />
matphone_lauf0<br />
3 MBit/s<br />
wheel<br />
1,5 MBit/s<br />
wheel<br />
3 MBit/s<br />
Bild 4: Ergebnisse der Blocking-Messungen<br />
3 Simulationsergebnisse<br />
Neben dem vorgestellten Verfahren (UniDo) wurden<br />
im Rahmen der durchgeführten Untersuchungen weitere<br />
Verfahren implementiert, um die Wirksamkeit bei<br />
der <strong>Reduktion</strong> <strong>von</strong> <strong>Blockartefakten</strong> in MPEG-2 codierten<br />
Sequenzen vergleichen zu können. Dies waren<br />
ein Verfahren mit statischer Tiefpassfilterung <strong>von</strong><br />
Blockgrenzen nach [1], ein adaptives Filterverfahren<br />
mit Auswertung <strong>von</strong> Quantisierungsinformationen<br />
nach [2], ein Wavelet-basiertes Verfahren nach [5]<br />
und ein Verfahren mit Subtraktion <strong>von</strong> Fehlervektoren<br />
nach [7].<br />
Objektiv wurden die Verfahren mit Hilfe eines an [6]<br />
angelehnten Blocking-Maßes bewertet, das die Summe<br />
aller Hauptgradienten einer ganzen Bildsequenz<br />
<strong>zur</strong> Summe aller Nebengradienten ins Verhältnis setzt<br />
(siehe Abschnitt 2), da der üblicherweise gemessene<br />
PSNR kaum <strong>zur</strong> Bewertung <strong>von</strong> Artefaktreduktionsverfahren<br />
geeignet ist (siehe [9]). Eine natürliche unkomprimierte<br />
Bildsequenz liefert bei diesem Maß einen<br />
Wert <strong>von</strong> ungefähr Eins.<br />
In Bild 4 ist das Ergebnis der Blocking-Messungen<br />
für verschiedene Sequenzen dargestellt.<br />
Es ist zunächst erkennbar, dass eine Bildkompression<br />
grundsätzlich dazu führt, dass mit sinkender Datenrate<br />
größere Blocking-Werte gemessen werden, während<br />
unkomprimierte Bildsequenzen den zu erwarteten<br />
Wert <strong>von</strong> ca. Eins aufweisen. Werte kleiner als<br />
Eins deuten auf zu starke oder unnötige Filterungen<br />
im Bereich <strong>von</strong> Blockgrenzen hin. Hiermit ist auch<br />
eine große Wahrscheinlichkeit <strong>von</strong> Unschärfebildung<br />
verbunden.<br />
Das Verfahren nach [1] führt zu einer deutlichen Verringerung<br />
des Blocking-Wertes, da bei diesem Verfahren<br />
alle Blockgrenzen statisch gefiltert werden. Auch<br />
das Verfahren nach [7] führt offensichtlich zu einer zu<br />
starken oder zu häufigen Filterung <strong>von</strong> Blockgrenzen.<br />
Die übrigen Verfahren führen zu Blocking-Werten,<br />
die wesentlich besser denen <strong>von</strong> unkomprimierten<br />
Sequenzen entsprechen (ca. Eins), was einer deutlichen<br />
Verringerung <strong>von</strong> <strong>Blockartefakten</strong> bei gleichzeitiger<br />
Vermeidung <strong>von</strong> zu starken Filterungen entspricht.<br />
Diese Tendenz gilt auch bei unterschiedlichen Datenraten,<br />
was für eine zuverlässige Adaption der Verfahren<br />
an die Datenrate bzw. die Stärke und Häufigkeit<br />
<strong>von</strong> <strong>Blockartefakten</strong> spricht.<br />
Auch subjektiv konnte die Wirksamkeit des vorgestellten<br />
Verfahrens, aber auch der anderen Verfahren,<br />
bei der <strong>Reduktion</strong> <strong>von</strong> <strong>Blockartefakten</strong> nachgewiesen<br />
werden. In Bild 5 ist das Ergebnis der Anwendung<br />
mehrerer Artefaktreduktionsverfahren an einem vergrößerten<br />
Ausschnitt aus einem Frame der Sequenz<br />
football dargestellt.<br />
Der unbearbeitete Bildausschnitt enthält eine Vielzahl<br />
an <strong>Blockartefakten</strong> sowohl in detaillierten, als auch in<br />
homogenen Bildbereichen. Die statische Filterung<br />
<strong>von</strong> Blockgrenzen nach [1] verringert die Sichtbarkeit<br />
dieser Artefakte, weist aber deutliche Defizite in homogenen<br />
Bildbereichen auf.<br />
Eine subjektiv wesentlich bessere Wirksamkeit bei<br />
der <strong>Reduktion</strong> <strong>von</strong> <strong>Blockartefakten</strong> bietet das Verfahren<br />
nach [2] und das in diesem Artikel vorgestellte<br />
<strong>System</strong>. Blockartefakte werden sowohl in detaillierten<br />
als auch in homogenen Bildbereichen zuverlässig verringert,<br />
wobei das Verfahren nach [2] tendenziell<br />
mehr relevante Details in homogenen Bereichen zerstört.<br />
Das neu vorgestellte Verfahren ist also in Bezug auf<br />
die Wirksamkeit mit dem Verfahren nach [2], das als<br />
Teil des MPEG-4 Standards in den durchgeführten<br />
Untersuchungen als Referenz diente, mindestens e-<br />
benbürtig. Es besteht jedoch keine Notwendigkeit des<br />
Zugriffs auf Quantisierungsparameter, was eine flexiblere<br />
Einsetzbarkeit bedeutet. Der Rechenaufwand<br />
der beiden Verfahren ist vergleichbar, der Speicheraufwand<br />
des neu vorgestellten Verfahrens ist geringer.<br />
Es konnte eine Implementierung entwickelt werden,<br />
die nur fünf Zeilenspeicher benötigt. In diesem Zusammenhang<br />
ist ein großer Nachteil bei dem ebenfalls<br />
sehr wirksamen Verfahren nach [5] darin zu sehen,<br />
dass ein kompletter Bildspeicher benötigt wird.
Bild 5: <strong>Reduktion</strong> <strong>von</strong> <strong>Blockartefakten</strong> am Beispiel der Sequenz football (1,5 MBit/s MPEG-2),<br />
oben links: unbearbeitet, oben rechts: [1], unten links: [2], unten rechts: UniDo<br />
4 Zusammenfassung<br />
In diesem Artikel wurde ein neues Verfahren <strong>zur</strong> <strong>Decoder</strong>-unabhängigen<br />
<strong>Reduktion</strong> <strong>von</strong> <strong>Blockartefakten</strong><br />
vorgestellt. Zentraler Bestandteil des Verfahrens ist<br />
eine lokale Analyse <strong>von</strong> Blockgrenzbereichen, auf<br />
deren Basis einerseits entschieden wird, ob eine Filterung<br />
notwendig ist, und andererseits ein an den Bildinhalt<br />
angepasstes Filter ausgewählt wird. Da das Verfahren<br />
ausschließlich auf bereits decodierte Bilddaten<br />
zugreift und sich sämtliche Teilkomponenten mit einfachen<br />
Operationen und wenigen Zeilenspeichern<br />
implementieren lassen, ist ein flexibler Einsatz in<br />
Endgeräten wie z.B. Displays möglich.<br />
Die Wirksamkeit des Verfahrens wurde objektiv mit<br />
Hilfe eines Blocking-Maßes nachgewiesen.<br />
Auch subjektiv konnte eine hohe Wirksamkeit bei der<br />
<strong>Reduktion</strong> <strong>von</strong> <strong>Blockartefakten</strong> gezeigt werden. Dies<br />
gilt auch im Vergleich mit anderen untersuchten Verfahren<br />
<strong>zur</strong> Verringerung derartiger Störungen.<br />
5 Literatur<br />
[1] C. Avril & T. Nguyen-Trong: „Linear Filtering<br />
for reducing blocking effects in orthogonal<br />
transform image coding”, Journal of Electronic<br />
Imaging, Vol. 1(2), April 1992<br />
[2] S. D. Kim, J. Yi, H. M. Kim und J. B. Ra: „A<br />
Deblocking Filter with Two Separate Modes in<br />
Block-Based Video Coding”, IEEE Transactions<br />
on Circuits & <strong>System</strong>s for Video Technology,<br />
Vol. 9, No. 1, Februar 1999<br />
[3] I. E. G. Richardson: „Video Codec Design“,<br />
Wiley, ISBN 0471485535, 2000<br />
[4] M. Yuen, H. R. Wu: „A survey of hybrid<br />
MC/DPCM/DCT video coding distortions“, Signal<br />
Processing, Vol. 10, pp 247-278, 1998<br />
[5] N. C. Kim, I. H. Jang, D. H. Kim und W. H.<br />
Hong: „Reduction of Blocking Artifacts in<br />
Block-Coded Images Using Wavelet Transform”,<br />
IEEE Transactions on Circuits & <strong>System</strong>s for<br />
Video Technology, Vol. 8, No. 8, Juni 1998<br />
[6] H. R. Wu und M. Yuen: „A Generalized Block-<br />
Edge Impairment Metric for Video Coding“,<br />
IEEE Signal Processing Letters, Vol. 4, No. 11,<br />
1997<br />
[7] J. Yang, H. Choi und T. Kim: „Noise Estimation<br />
for Blocking Artifacts Reduction in DCT Coded<br />
Images”, IEEE Transactions on Circuits & <strong>System</strong>s<br />
for Video Technology, Vol. 10, No. 7,<br />
Okto-ber 2000<br />
[8] S. Winkler: „Digital Video Quality – Vision Models<br />
and Metrics”, pp. 48-51, Wiley, ISBN<br />
0470024066, 2005<br />
[9] P. Piastowski: „Adaptive <strong>Reduktion</strong> <strong>von</strong> <strong>Blockartefakten</strong><br />
mit lokaler Bildanalyse“, 3. Thüringer<br />
Medienseminar, Erfurt, 2005