-
Die Erfindung geht aus von einem Verfahren zur bewegungskompensierenden Prädiktion von Bewegtbildern unter Verwendung einer Interpolation.
-
Standardisierte Verfahren zur Codierung von Bewegtbildern (H. 263, MPEG-2, MPEG-4, etc.) beruhen auf dem Prinzip der sogenannten hybriden Codierung [1]. 1 zeigt das Blockschaltbild eines hybriden Video-Encoders mit bewegungskompensierender Prädiktion. Dabei wird das aktuell zu codierende Bildsignal s(t) mit Hilfe der bewegungskompensierenden Prädiktion (motion compensation MC) aus dem vorangegangenen, bereits übertragenen Referenzbild s'(t – 1) vorhergesagt. Die bewegungskompensierende Prädiktion wird mit Hilfe sogenannter blockweiser Bewegungsvektoren d(t) durchgeführt, die mit Hilfe einer Bewegungsschätzung (motion estimation ME) ermittelt werden. Sie geben für jeden Block der Größe 8 × 8 bzw. 16 × 16 Bildpunkte des aktuellen Bildes die Position des zur Prädiktion benutzten Blockes in dem bereits übertragenen Referenzbild s'(t – 1) an. Das Resultat der bewegungskompensierenden Prädiktion ist das Prädiktionssignal ŝ(t). Der verbleibende Prädiktionsfehler e(t) = s(t) – ŝ(t) am Ausgang des Intraframe-Encoders IE sowie die Bewegungsvektoren d(t) werden codiert und übertragen. Zur Gewinnung des Referenzbildes s'(t – 1) wird der intraframe-encodierte Prädiktionsfehler e(t) wieder decodiert (intraframe decoder ID) und zum Prädiktionssignal ŝ(t) addiert. Mit Hilfe eines Bildspeichers z–1 wird das Referenzbild s'(t – 1) bereitsgestellt. Dieses Referenzbild s'(t – 1) dient sowohl als Eingangssignal zur Bewegungskompensation MC als auch zur Bewegungsschätzung ME. Die Bewegungsschätzung ME liefert an Hand des aktuellen Bildes s(t) und des Referenzbildes s'(t – 1) einen Bewegungsvektor für jeweils einen Block von Bildpunkten mit denen die Bewegungskompensation MC gesteuert wird; d. h. Bildpunkte eines Blockes werden an Hand des Bewegungsvektors verschoben.
-
In den bisher standardisierten Codierverfahren beträgt die Amplitudenauflösung der Bewegungsvektoren einen halben Bildpunkt. Für die Schätzung und Kompensation müssen daher im Bild s'(t – 1) Bildpunkte zwischen dem Abtastraster interpoliert werden, was einer Erhöhung der Abtastrate um den Faktor L = 2 entspricht. Zum Beispiel werden im MPEG-4 Verifikationsmodell [1] diese Bildpunkte durch eine bilineare Interpolationsfilterung aus den Bildpunkten auf dem Abtastraster erzeugt (siehe 2). Im folgenden wird das aus s'(t – 1) interpolierte Bild mit s'u(t – 1) bezeichnet.
-
Mit der Interpolatiosvorschrift: a = (A + B)//2, b = (A + B + C + D)//4, c = (A + C)//2 werden zwischen den Abtastwerten ”O” interpolierte Werte ”+” erzeugt. ”//” kennzeichnet eine gerundete Ganzzahl-Division.
-
Wie in [2], [3] und [4] beschrieben, wird die Interpolation und damit die bewegungskompensierende Prädiktion durch unterschiedliches Aliasing im Bildsignal s(t) und Prädiktionssignal ŝ(t) gestört, so daß eine höhere Genauigkeit der Bewegungsvektoren bei Verwendung der einfachen bilinearen Interpolation keine weitere Verbesserung der Codiereffizienz ermöglicht. Aus diesem Grund sind verbesserte Verfahren zur Erzeugung des Prädiktionssignals vorgeschlagen worden [2] und [4]. Dabei wird das Aliasing-Signal im Prädiktionssignal durch ein N-stufiges aliasingreduzierendes ”Finite Impulse Response” (FIR) Filter reduziert.
-
Mit den Maßnahmen des Anspruchs 1 oder des Anspruchs 4 kann das Prädiktionssignal ŝ(t) in einer Beziehung ähnlich dem Bildsignal s(t) erzeugt werden inklusive Aliasing korrekt präzisiert werden. Es werden dazu für die Interpolation neben den örtlich benachbarten auch zeitlich zurückliegende Bildpunkte verwendet. Eine Verringerung des Prädiktionsfehlers und somit eine Steigerung der Codiereffizienz ist die Folge.
-
Eine höhere Amplitudenauflösung der Bewegungsvektoren von bis zu ¼ oder 1/8 Bildpunkt kann mit den Maßnahmen der Erfindung erfolgreich eingesetzt werden und führt zu einer weiteren Verbesserung der Codiereffizienz. Die Abtastrate des bereits übertragenen Referenzbildes muß dabei um den Faktor L = 4 bzw. L = 8 in horizontaler und vertikaler Richtung erhöht werden.
-
Die Erfindung beruht auf folgenden Erkenntnissen:
Aufgrund nicht idealer Tiefpässe im Aufnahmeprozeß kommt es zu Aliasing im digitalen zu codierenden Bildsignal. Das Aliasing hat zur Folge, daß das Bildsignal an Bildpunkten zwischen dem Abtastraster durch eine rein örtliche Interpolation nicht perfekt rekonstruiert werden kann und die bewegungskompensierende Prädiktion das Bildsignal nicht korrekt prädizieren kann. Es verbleibt ein Prädiktionsfehler, der in codierter Form übertragen werden muß. Die Größe des Prädiktionsfehlers bestimmt die Übertragungsrate sowie die Codiereffizienz.
-
Neuere Ansätze reduzieren mit Hilfe eines FIR-Filters das Aliasing im Prädiktionssignal und verbessern dadurch die Codiereffizienz [4]. Da aber das zu codierende Bildsignal Aliasing enthält, sollte das Aliasing im Prädiktionssignal nicht reduziert werden, sondern mit dem des Bildsignals s(t) übereinstimmen, um dadurch die Größe des Prädiktionsfehler weiter zu verringern.
-
Der Erfindung liegen folgende Voraussetzungen zu Grunde:
Wird ein sich nicht bewegendes, analoges Bild an den selben Positionen zu verschiedenen Zeitpunkten abgetastet, so sind die korrespondierenden Abtastwerte identisch. Dies gilt auch für den Fall, daß die Abtastfrequenz nicht groß genug ist und das abgetastete Bildsignal Aliasing enthält. Bewegt sich der Inhalt des analogen Bildsignals um genau einen Bildpunkt, so sind die korrespondierenden Abtastwerte ebenfalls identisch und besitzen somit das gleiche Aliasing-Signal. Dies zeigt, daß das Aliasing eine Prädiktion eines um ganzzahlige Vielfache eines Bildpunktes verschobenen Bildinhalts nicht beeinflußt. Entsprechend bietet sich das erfindungsgemäße Verfahren zur Interpolation von Zwischenwerten an, welches vorangegangene, d. h. zeitlich zurückliegende Abtastwerte benutzt, um aktuelle Zwischenwerte zu rekonstruieren. Ist z. B. bekannt, daß sich der Bildinhalt von Bild zu Bild um ¼ eines Bildpunktabstandes bewegt, so kann ein Abtastwert benutzt werden um den zugehörigen um ¼ Bildpunktabstand verschobenen Bildinhalt im nächsten Bild zu rekonstruieren. Da dieser Abtastwert zu einem früheren Zeitpunkt bereits auf dem Abtastraster lag, enthält er das korrekte Bildsignal mit dem korrekten Aliasing.
-
Basierend auf diesen Voraussetzungen werden bei der Erfindung Abtastwerte aus vorangegangenen, d. h. zeitlich zurückliegenden Bildern benutzt, um aktuelle Zwischenwerte zu rekonstruieren. Der Filter kann somit das Bildsignal inklusive des Aliasings korrekt prädizieren. Es verringert den Prädiktionsfehler und steigert die Codiereffizienz.
-
An Hand der weiteren Zeichnungen werden Ausführungsbeispiele der Erfindung näher erläutert. Es zeigen
-
1 ein Blockschaltbild eines Video-Encoders mit bewegungskompensierender Prädiktion,
-
2 eine bilineare Interpolationsfilterung nach dem Stand der Technik,
-
3 ein Blockschaltbild für ein Interpolationsfilter zur Ausführung der Erfindung,
-
4 das Prinzip der Erhöhung der Abtastrate für L = 2,
-
5 die Veranschaulichung der Funktionsweise des Merging-Moduls,
-
6 die experimentell ermittelte Rate für die synthetische Testsequenz Syn Waves,
-
7 die experimentell ermittelte Rate für die Testsequenz ”mobile & calendar”.
-
In 3 ist das Blockschaltbild eines Interpolationsfilters dargestellt mit dem die Erfindung ausgeführt werden kann. Dabei wurde auf der in 1 dargestellten Struktur aufgebaut. Die dort aufgeführten Bezeichnungen, beispielsweise s'(t – 1) für das Referenzbild, werden auch nachfolgend verwendet.
-
In der Stufe 1 wird die Abtastrate des bereits übertragenen Referenzbildes s'(t – 1) um den Faktor L erhöht. Das Ergebnis der in 3 dargestellten Filterung ist das interpolierte Bild su'(t – 1). Da zur Filterung gemäß 3 ein zeitlich rekursives Filter benutzt wird, wird es im folgenden als TRI-Filter (time-recursive interpolation filter) bezeichnet.
-
Das TRI-Filter besteht aus drei Stufen. Die erste Stufe ist der sogenannte Expander 1. Die zweite Stufe umfaßt die rekursive Struktur mit der Bewegungskompensation (motion compensation) 4 sowie dem Merging-Modul 3. Die dritte Stufe ist eine herkömmliche örtliche Interpolation (spatial interpolation) 5. Diese drei Stufen werden im folgenden näher beschrieben.
-
Im ersten Teil, dem Expander 1 wird die Abtastrate des Eingangsbildes – Referenzbildes – s'(t – 1) um den Faktor L erhöht. Dies geschieht, indem Zwischenwerte des Abtastrasters aus dem Referenzbild s'(t – 1) mit Marker-Werten m gefüllt werden (4). Die Marker-Werte m kennzeichnen somit Zwischenwerte, die bisher noch nicht interpoliert worden sind.
-
Die folgende Gleichung beschreibt den Expander. In dieser Gleichung bezeichnen x und y die örtlichen Bildkoordinaten.
-
-
In der zweiten Stufe wird das zeitlich zurückliegende Bild stri(t – 2) dazu verwendet, um die im Bild mit erhöhter Abtastrate se(t – 1) markierten Werte zu ersetzen. Dies geschieht mit Hilfe einer Bewegungskompensation (motion compensation) 4 von Bildpunkten des zeitlich zurückliegenden Bildes stri(t – 2), bei der die Bildpunkte entsprechend ihres bereits übertragenen Bewegungsvektors L·d(t – 1) verschoben werden. Dabei ist zu beachten, daß die Bewegungsvektoren mit dem Faktor L multipliziert werden, da zur Kompensation ein Bild in einer um L erhöhten Auflösung verwendet wird. Im Merging-Modul 3 werden die im Bild se(t – 1) markierten Werte durch die entsprechenden Werte aus dem Bildsignal ŝtri(t – 1), welches am Ausgang der Bewegungskompensation 4 erscheint, ersetzt. Die folgende Gleichung beschreibt den Merging-Vorgang, dessen Ergebnis das Bild stri(t – 1) ist. Auch in dieser Gleichung bezeichnen x und y die örtlichen Bildkoordinaten.
-
-
5 veranschaulicht die Funktionsweise des Merging-Moduls. Die Gleichung sowie die 5 zeigen, wie die beiden Bilder se(t – 1) und ŝtri(t – 1) zum Bild stri(t – 1) verschmolzen werden. An den Positionen, wo sich im Bild se(t – 1) ein Marker-Wert m befindet, wird der entsprechende Bildpunkt aus dem prädizierten Bild ŝtri(t – 1) verwendet. Alle übrigen Werte aus Bild se(t – 1) werden im Bild stri(t – 1) übernommen. Somit werden die Abtastwerte aus dem bewegungskompensierten Bild ŝtri(t – 1) verwendet, um Bildpunkte (Marker-Werte) im Bild se(t – 1) zu interpolieren.
-
Die dritte Stufe stellt eine rein örtliche Interpolation (spatial interpolation) 5 entsprechend [4] dar, bei der ausschließlich die verbleibenden markierten Werte des Bildes stri(t – 1) interpoliert werden. Das Ergebnis ist das interpolierte Bild s'u(t – 1).
-
Zum Zeitpunkt t = 1, für den kein Bild stri(t – 2) existiert, wird Bild stri(t – 1) mit Bild se(t – 1) initialisiert. Die markierten Werte in Bild stri(t – 1) werden daraufhin durch eine örtliche Interpolation rekonstruiert. Dies entspricht einer herkömmlichen, rein örtlichen Interpolation.
-
Aufgrund der rekursiven Struktur, bei der Bildpunkte aus dem zeitlich zurückliegenden Bild stri(t – 2) benutzt werden, um Bild stri(t – 1) zu erzeugen, ist eine unbegrenzte Verweildauer einzelner Bildpunkte im Bildspeicher 6 (stri) der für die Bewegungskompensation benötigt wird, möglich. Um zu verhindern, daß Bildpunktinformationen zu lange im Bildspeicher 6 verbleiben, wird für jeden Bildpunkt im Speicher ein Zählindex bereitgestellt, der die Verweildauer der einzelnen Bildpunktinformationen angibt. Mit Hilfe dieser Indizes und eines zu Beginn festgelegten Schwellwertes werden Bildpunktinformationen, die eine gewisse Verweildauer überschreiten, aus dem Bildspeicher 6 entfernt. Die typische Verweildauer beträgt drei bis sechs Bilder.
-
Für die experimentellen Ergebnisse ist das TRI-Filter in die bestehende Software des Verifikationsmodells [1] integriert worden. Dabei werden zwei verschiedene Modi mit unterschiedlichen Auflösungen der Bewegungsvektoren unterstützt. Im ersten Fall werden Bewegungsvektoren mit einer Auflösung von einem halben Bildpunkt und einer bilinearen Interpolation verwendet. In diesem Fall wird das Referenzverfahren (ursprünglicher Coder) mit MPEG4-hp und das Verfahren mit dem neuen TRI-Filter mit TRI-hp bezeichnet (hp = half pel). Im zweiten Fall werden Bewegungsvektoren mit einer Auflösung von einem viertel Bildpunkt und einem aliasingreduzierenden Wiener-Filter verwendet. In diesem Fall wird das Referenzverfahren mit MPEG4-qp und das neue Verfahren mit TRI-qp bezeichnet (qp = quater pel). Für die rein örtliche Interpolation (spatial interpolation) im TRI-Filter wird dabei jeweils das entsprechende örtliche Interpolationsverfahren aus den Referenz-Codern verwendet.
-
Für die Erzeugung der Ergebnisse ist eine synthetische und eine reale Testsequenz verwendet worden. Die synthetische Sequenz wurde durch Abtastung zweier analoger Sinussignale erzeugt, wobei die Frequenz des ersten Sinussignal unterhalb und die des zweiten oberhalb der halben Abtastfrequenz liegt. Demzufolge verursacht das zweite Sinussignal Aliasing im abgetasteten Bildsignal. Weiterhin ist das analoge Bildsignal zwischen aufeinanderfolgenden Bildern um exakt einen halben Bildpunkt translatorisch verschoben. Diese Verschiebung kann durch die verwendeten Coder ohne Fehler geschätzt werden, so daß ein verbleibender Prädiktionsfehler auf eine unzureichende Interpolation zurückgeführt werden kann. Diese synthetische Sequenz wird mit Syn Waves bezeichnet. Bei der realen Testsequenz handelt es sich um die Testsequenz ”mobile & calendar”.
-
In 6 sind die Ergebnisse für die synthetische Sequenz Syn Waves zu sehen.
-
Obwohl die Bild-zu-Bild Verschiebung von einem halben Bildpunkt von allen Codern korrekt geschätzt werden kann, ist der Referenzcoder mit den konventionellen Interpolationsfiltern nicht in der Lage das Bildsignal korrekt zu prädizieren. Demzufolge muß noch eine erhebliche Datenrate für die Codierung des Prädiktionsfehlers bereitgestellt werden. Selbst der MPEG4-qp Coder, der mit einem Aliasing-reduzierenden Wiener-Filter arbeitet, kann das Bildsignal nur unzureichend prädizieren. Demgegenüber sind die Coder mit dem erfindungsgemäßen TRI-Filter in der Lage, das Bildsignal inklusive Aliasing korrekt zu prädizieren, so daß eine erheblich niedrigere Datenrate erforderlich ist. Der einzig verbleibende Prädiktionsfehler ist im Quantisierungsfehler begründet, der im Intraframe-Encoder entsteht.
-
In 7 sind die Ergebnisse für die reale Testsequenz ”Mobile and Calandar” zu sehen. Es ist eine signifikante Verbesserung bei der Verwendung des TRI-Filters erkennbar. Zwischen MPEG4-hp und TRI-hp ist eine Verbesserung von 0,8 dB zwischen MPEG4-qp und TRI-qp eine Verbesserung von 0,4 dB festzustellen. Der Grund für den geringeren Gewinn gegenüber der Testsequenz Syn Waves liegt zum einen darin, daß die bewegungskompensierte Prädiktion durch Diaplacementschätzfehler gestört ist. Zum anderen hat das Aliasing-Signal keinen so großen Anteil am Gesamtsignal wie bei der synthetischen Sequenz.
-
Literaturstellen:
-
- [1] ISO/IEC 14496-2: ”Final Draft International Standard of MPEG-4”, Atlantic City, October 1998, MPEG98/N2502.
- [2] ISO/IEC/SC29/WG11: ”Core Experiment an Motion and Aliasing-compensation Prediciton (P8)”, Stockholm, July 1997, MPEG97/N1180
- [3] U. Benzler, O. Werner, ”Improving multiresolution motion compensating hybrid coding by drift reduction”, Picture Coding Symposium 1996, March 1996, Melbourne.
- [4] WO99/04574 A1 .