PatentDe  


Dokumentenidentifikation DE102005029127A1 19.04.2007
Titel Verfahren und Vorrichtung zur optimierten prädiktiven Videocodierung
Anmelder On Demand Microelectronics AG, Wien, AT
Erfinder Schreier, Ralf Michael, 89077 Ulm, DE;
Rothermel, Albrecht, 89231 Neu-Ulm, DE
Vertreter derzeit kein Vertreter bestellt
DE-Anmeldedatum 23.06.2005
DE-Aktenzeichen 102005029127
Offenlegungstag 19.04.2007
Veröffentlichungstag im Patentblatt 19.04.2007
IPC-Hauptklasse H04N 7/32(2006.01)A, F, I, 20051017, B, H, DE
Zusammenfassung Für die komprimierte Videoübertragung wurde ein Verfahren entwickelt, mit dem die intracodierten Stützbilder eines komprimierten Videodatenstroms über mehrere prädiktiv codierte Bilder verteilt werden. Dieser sogenannte Intrarefresh ist notwendig, um Fortpflanzungsfehler im Videobild, die z. B. durch Übertragungsfehler entstehen können, aufzuheben. Das neu entwickelte Verfahren kann in alle derzeit gebräuchlichen Videostandards integriert werden und stellt die fehlerfreie Darstellung nach einem vollständigen fehlerfreien Refreshzyklus sicher. Durch eine zusätzliche Schätzung kann ein Videoencoder mit diesem Verfahren eine optimale Strategie für den Intrarefresh auswählen und dadurch im Vergleich mit einer normalen IP-Codierung praktisch ohne eine Erhöhung der Datenrate arbeiten. Die Zielanwendung liegt in der Videocodierung mit niedriger Latenzzeit.

Beschreibung[de]

Aktuelle Verfahren zur Videokompression verwenden eine zweistufige, hybride Codierung, wobei eine örtliche Transformationscodierung mit einer zeitlichen Prädiktion der aufeinander folgenden Bilder kombiniert werden [1]. Durch die Transformationscodierung (z.B. eine diskrete Kosinustransformation, DCT) wird eine starke, verlustbehaftete Kompression der Bildinformation erreicht, deren Charakteristik an die menschliche Wahrnehmung angepasst ist. Die zeitliche Prädiktion der Bilder ist im Prinzip verlustfrei, sie kann allerdings bei Übertragungsfehlern zu einer Fehlerfortpflanzung über die folgenden Bilder führen. Um eine unendliche Fehlerfortpflanzung zu verhindern, werden intracodierte Stützbilder (Intraframes) in den Datenstrom eingefügt, die ohne den Bezug zu vorhergehenden Bildern fehlerfrei decodiert werden können.

In einigen speziellen Anwendungen wie der Videotelefonie kann das beschriebene Standardverfahren wegen der geringen geforderten Latenzzeit bei der Encodierung nicht angewendet werden. Um trotzdem die Fehlerfortpflanzung zu verhindern werden stattdessen Bildbereiche innerhalb eines prädiktiv codierten Bildes intracodiert übertragen. Diese Verfahren werden z.B. in [2] und [4] beschrieben, wobei in jedem prädiktiven Bild ein ungefähr gleich großer Anteil an intracodierten Blöcken mit einer festgelegten Strategie übertragen wird (z.B. von oben nach unten oder links nach rechts).

Das Verfahren ist beispielhaft in Zeichnung 1 für einen Refreshzyklus mit 4 Bildern illustriert. In jedem Bild wird ein ungefähr gleich großer, vertikaler Streifen des Bildes intracodiert, d.h. ohne zeitliche Prädiktion, übertragen, während die anderen Bildbereiche intercodiert mit zeitlicher Prädiktion übertragen werden. Zu Beginn eines Refreshzyklus werden gehören alle Bildbereiche der Gruppe „Alter Bildbereich" an. Nachdem ein Bildbereich intracodiert übertragen wurde, wird er der Gruppe „Neuer Bildbereich" zugeordnet.

Das Problem bei diesem Verfahren besteht darin, dass die Prädiktion aus den „alten" Bildbereichen, die in dem aktuellen Zyklus noch nicht intracodiert übertragen wurden, in „neue" Bildbereiche verhindert werden muss. In dem Beispiel in Zeichnung 2 bewegt sich der Bildinhalt von rechts nach links. Bei einer bewegungskompensierten Prädiktion würde im Grenzbereich eine unerwünschte Prädiktion vom „alten" Bereich in den „neuen" Bereich erfolgen, womit sich evtl. vorhandene Bildfehler aus dem „alten" Bereich in den „neuen" Bereich ausbreiten könnten. Um dies zu verhindern wird in [2] vorgeschlagen, die Bewegungsschätzung im „neuen" Bildbereich auf den „neuen" Bildbereich zu beschränken. In der Praxis ergeben sich am Rand des „neuen" Bildbereichs wegen der eingeschränkten Prädiktion häufig unerwünschte intracodierte Blöcke, die ein höheres Datenaufkommen als prädiktive Blöcke erzeugen. Im Beispiel in Zeichnung 3 wird das Entstehen des intracodierten Übergangsbereichs vermieden, da wegen der übereinstimmenden Bewegungsrichtung von Intrarefresh und Prädiktion keine unerwünschte Prädiktion in den neuen Bildbereich hinein auftreten kann.

Bei einer ungünstigen Wahl der Refresh-Reihenfolge führen die resultierenden intracodierten Übergangsbereiche zwangsweise zu einem Anstieg der Datenrate bzw. zu einer Verschlechterung der Bildqualität wenn eine konstante Datenrate erzielt werden soll. Das zum Patent vorgeschlagene Verfahren reduziert das Auftreten der intracodierten Übergangsbereiche durch eine bewegungsbasierte Schätzung und verbessert so die Bildqualität.

Das in [3] beschriebene Verfahren erzielt eine fehlerfreie Darstellung des Bildes ebenfalls durch die sequenzielle Übertragung von intracodierten Bildbereichen. Durch die Überlappung der intracodierten Bereiche um mindestens die Größe des Suchbereiches für die Bewegungskompensation wird die Prädiktion vom „alten" in den „neuen" Bildbereich wirksam verhindert. Durch die Überlappung der Bereiche müssen aber zwangsweise mehr intracodierte Macroblöcke als bei dem Verfahren [2] übertragen werden, woraus ebenfalls ein höheres Datenaufkommen resultiert.

Beschreibung der Erfindung

Unser neues Verfahren verwendet intracodierte, nicht-überlappende Bildbereiche, die in prädiktiv codierte Bilder eingebettet werden. Durch eine geschickte Wahl der Reihenfolge in der die Bildbereiche intracodiert übertragen werden ist es allerdings möglich, den Anstieg der Datenrate wegen der eingeschränkten Bewegungsschätzung oder intracodierten Überlappungsbereichen zu verhindern. Der innovative Algorithmus geht dabei folgendermaßen vor:

  • (1) Das Bild wird örtlich in N nicht-überlappende Refreshbereiche eingeteilt. In jedem Bild sollen ein oder mehrere Refreshbereiche intracodiert übertragen werden, die anderen werden prädiktiv codiert. In einem kompletten Refreshzyklus von M ≤ N Bildern soll jeder Bereich mindestens einmal intracodiert übertragen werden.
  • (2) In einem oder mehreren aufeinanderfolgenden Bildern wird die bevorzugte Bewegungsrichtung jedes Refreshbereiches ermittelt. Dafür können beispielsweise die Bewegungsvektoren für die prädiktive Codierung verwendet werden.
  • (3) Ein neuer Refreshzyklus beginnt mit einer Schätzung welche die optimale Reihenfolge der Refreshbereiche für den neuen Zyklus ermittelt. Bei unserer Implementierung kann der Encoder z.B. aus einem vordefinierten Satz von möglichen Reihenfolgen („Refreshmuster") für das Vorgehen auswählen. Für die Ermittlung der optimalen Reihenfolge wird für jedes Refreshmuster schrittweise die Störung ermittelt, die an dem Übergang vom „alten" zum „neuen" Bildbereich auftreten würde.
  • (4) Das Refreshmuster mit der geringsten zu erwartenden Gesamtstörung wird für den nächsten Refreshzyklus ausgewählt. Alle Bildbereiche werden als „alter" Bildbereich markiert.
  • (5) Der Intrarefresh wird in den folgenden M Bildern mit der in Schritt (4) ausgewählten Reihenfolge durchgeführt, wobei kontinuierlich die Bewegung der Bildbereiche nach (2) ermittelt wird. Spätestens nach M Bildern ist der Refreshzyklus abgeschlossen. Nachdem ein Bildbereich intracodiert überbertragen wurde, wird er als „neuer" Bildbereich markiert.
  • (6) Unter Umständen kann der aktuelle Zyklus durch eine unvorhergesehene Veränderung der bevorzugten Bewegungsrichtung oder des Bildinhaltes vorzeitig abgebrochen werden. In diesem Fall wird ein neuer Refreshzyklus mit (3) begonnen.
  • (7) Wurde ein Refreszyklus abgeschlossen, kann mit (3) ein neuer Refreshzyklus beginnen oder es werden ein oder mehrere Bilder prädiktiv ohne Intra-Refresh übertragen.

Für die Ermittlung des optimalen Refreshmusters in Schritt (3) sei die „Störung" S wie folgt definiert:

  • • S > 0: Die bevorzugte Bewegungsrichtung eines Refreshbereichs im „alten" Bildbereiches zeigt in Richtung eines benachbarten Refreshbereichs im „neuen" Bildbereich.
  • • S = 0 für alle anderen Fälle.

Zur Ermittlung der Gesamtstörung eines ausgewählten Refreshmusters wird zunächst für jedes Bild entlang der Kanten benachbarter Refreshbereiche die Störung nach der obigen Definition von S aufsummiert. Anschließend werden die ermittelten Störungen der einzelnen Bilder zur Gesamtstörung eines Refreshmusters aufsummiert. Die Gesamtstörung wird für alle vorgegebenen Refreshmuster ermittelt und dann das Refreshmuster mit der geringsten geschätzten Störung ausgewählt.

Das Verfahren nach Patentansprüchen 1 bis 7 verhindert die Prädiktion vom alten in den neuen Bildbereich womit gewährleistet wird, dass das Bild nach einer eventuellen Störung spätestens nach einem vollständigen Refreshzyklus wieder fehlerfrei dargestellt wird. Durch die Steuerung der Übertragungsreihenfolge der intracodierten Bildbereiche anhand einer Bewegungsinformation wird der Anstieg der Datenrate der bekannten Verfahrens [2], [4] vermieden, wodurch die Bildqualität deutlich verbessert werden kann.

Das Verfahren nach den Patentansprüchen 8 bis 11 verzichtet auf die Unterbindung der Prädiktion vom alten in den neuen Bildbereich. Der beschriebene Algorithmus ermittelt in diesem Fall eine optimale Reihenfolge für den Intrarefresh, welche eine mögliche Fehlerausbreitung aus dem „alten" in den „neuen" Bildbereich minimiert. Unter Umständen bleiben aber nach einem kompletten Refreshzyklus geringfügige Fehler im Bild erhalten.

Ausführungs-Beispiel prädiktiver Video-Encoder

Die Funktionsweise einer Vorrichtung zur optimierten prädiktiven Videocodierung ist in Zeichnung 4 dargestellt. Das grundlegende Verfahren der hybriden Videocodierung ist in [1] ausführlich beschrieben.

Am Eingang von F1 liegt ein digitalisiertes Videosignal in Form eines kontinuierlichen Datenstroms an, welches in dem Funktionsblock „Vorverarbeitung" in Auflösung und Farbformat auf das benötigte Format umgerechnet wird.

Die weitere Verarbeitung erfolgt in der Regel auf Bildbereichen der Größe 16·16 Pixel (Makroblöcke), unser Verfahren ist jedoch auch für beliebige andere Blockgrößen geeignet. Die Makroblöcke werden sequenziell verarbeitet und die Bildinformation eines Macroblocks des aktuell zu verarbeitenden Bildes liege als Signal S1 vor.

Die Datenreduktion ohne zeitliche Prädiktion (intra-codierung) wird in dem Funktionsblock F2 vorgenommen, welcher z.B. eine 2-dimensionale Diskrete Cosinustransformation mit einer verlustbehafteten, frequenzabhängigen Quantisierung und einer verlustlosen Entropiecodierung kombiniert.

Für die effizientere prädiktive Datenreduktion (inter-codierung) ermittelt die Bewegungsschätzung F6 zunächst aus den vorliegenden Daten des letzten rekonstruierten Bildes im Bildspeicher F5 und den aktuellen Bilddaten S1 die Bewegungsvektoren S2, welche die Verschiebung der Bildteile (z.B. Makroblöcke) in horizontaler und vertikaler Richtung beschreiben. Die Bewegungsvektoren werden dem Prädiktor F7 zugeführt, welcher die Bildinformation im Bildspeicher F5 entsprechend den Bewegungsvektoren S2 verschiebt.

Anschließend wird das Ausgangssignal S3 des zeitlichen Prädiktors von dem Bildsignal S1 mit F4 subtrahiert und dem Komprimierungsblock F3 zugeführt. Dieser führt im Prinzip die gleiche Datenreduktion wie F2 aus, allerdings können die Parameter der Quantisierung und Entropiecodierung unterschiedlich gewählt werden. Zusätzlich werden die Bewegungsvektoren S2 des aktuellen Macroblocks verlustlos komprimiert und dem Datenstrom hinzugefügt.

Über den Schalter F8 kann zwischen dem intracodierten Ausgangssignal von F2 und dem prädiktiv codierten Ausgangssignal von F3 umgeschaltet werden. Der Mulitplexer F10 fügt diesen komprimierten Bildinformationen S4 noch die Information über die Art der verwendeten Komprimierung S3 (Intracodierung oder Intercodierung) hinzu und stellt am Ausgang den Datenstrom S5 für die Übertragung zum Decoder zur Verfügung.

Um eine Aufsummierung der Komprimierungsfehler von F2 und F3 zu verhindern, wird für die zeitliche Prädiktion das dekomprimierte Bildsignal verwendet. Dieses wird mittels F11 aus komprimierten Ausgangssignal S4 gewonnen und dem Addierer F12 zugeführt. F11 führt entsprechend der verwendeten Komprimierung die Dekomprimierung der Bilddaten von F2 oder F3 aus. Falls ein intracodierter Macroblock rekonstruiert werden soll, wird dem Addierer F12 über F9 ein Null-Signal zugeführt, ansonsten wird das Ausgangssignal S3 des Prädiktors verwendet. Das rekonstruierte Bildsignal S6 wird in dem Bildspeicher F5 für die Zeitdauer eines Bildes zwischengespeichert.

Die Steuerung des Intra-Refresh mit dem zum Patent vorgeschlagenen Verfahren erfolgt durch den Funktionsblock F20.

Die für die prädiktive Codierung ermittelten Bewegungsvektoren S2 werden in dem Speicher F21 abgelegt und dem Bewegungsschätzer F22 zugeführt. Dieser ermittelt über den Zuordnungsspeicher F23, welche Macroblöcke zu welchem Refreshbereich gehören und generiert daraus das Signal S21, welches die bevorzugte Bewegungsrichtung der einzelnen Refreshbereiche beschreibt. Eine mögliche Initialisierung des Zuordnungsspeichers ist in Zeichnung 5 dargestellt.

Der Refreshmusterspeicher F24 enthält zu allen vordefinierten Refreshmustern die Information, welche Refreshbereiche in welcher Reihenfolge intracodiert übertragen werden sollen. Eine beispielhafte Initialisierung ist in Zeichnung 6 abgebildet. Der Störungsschätzer F25 führt vor Beginn eines neuen Refreshzyklus anhand der bevorzugten Bewegungsrichtung S21 und der abgespeicherten Reihenfolgen in F24 eine Schätzung der Störungen für alle Schritte aller möglichen Reihenfolgen durch und ermittelt damit die optimale Reihenfolge S22 für den nächsten Refreshzyklus.

Nachdem das Refreshmuster für den nächsten Zyklus festgelegt wurde, übernimmt die Steuerung F26 die Kontrolle. Sie ermittelt für jeden Macroblock den Komprimierungsmodus S3, indem sie entsprechend S22 die Reihenfolge des gewählten Refreshmusters aus F23 ausliest und diese über den Zuordnungsspeicher F23 den einzelnen Macroblöcken zuordnet.

Über das Signal S23 kann die Intra-/Inter-Steuerung F26 die Bewegungsschätzung F6 beeinflussen, um eine Prädiktion von dem „alten" in den „neuen" Bildbereich zu verhindern. Dieses Kontrollsignal entfällt für das Verfahren nach Patentanspruch 9 bis 13.


Anspruch[de]
Verfahren und Vorrichtungen zur Codierung von digitalen Videosignalen, bei denen in einem Bild sowohl intracodierte Bereiche als auch prädiktiv codierte Bereiche übertragen werden, dadurch gekennzeichnet, dass das Bild in mindestens zwei Bereiche aufgeteilt wird und zyklisch mindestens einer dieser Bereiche intracodiert übertragen wird, und die Entscheidung in welcher Reihenfolge die Bildbereiche intracodiert übertragen werden, anhand einer Bewegungsinformation in der Bildsequenz gefällt wird. Verfahren und Vorrichtungen nach Anspruch 1, die zwischen dem „neuen" und „alten" Bildbereich unterschieden, wobei der „neue" Bildbereich in dem aktuellen Refreshzyklus bereits intracodiert übertragen wurde, während der alte Bildbereich im aktuellen Refreshzyklus noch nicht intracodiert übertragen wurde. Verfahren und Vorrichtungen nach Anspruch 1 und 2, die eine Prädiktion vom alten in den neuen Bildbereich durch entsprechende Vorkehrungen bei der Bewegungsschätzung verhindern und ein optimales Vorgehen für die intracodierte Übertragung anhand einer Schätzung der auftretenden Störungen zwischen dem alten und neuen Bildbereich ermitteln. Verfahren und Vorrichtungen nach Anspruch 3, die sicherstellen, dass das komplette Bild nach einer endlichen Zeitdauer fehlerfrei dargestellt wird. Verfahren und Vorrichtungen nach Anspruch 4, welche das optimale Vorgehen für einen Intra Refresh durch eine schrittweise Abschätzung der auftretenden Störungen entlang der Grenze zwischen dem alten und neuen Bildbereich bestimmen. Verfahren und Vorrichtungen nach Anspruch 5, die einen Zuordnungsspeicher verwenden, um kleine Bildbereiche einer größeren Gruppe zuzuordnen und einen vordefinierten Satz von mindestens zwei unterschiedlichen Reihenfolgen für den Intra-Refresh in einem Refreshmusterpeicher ablegen. Verfahren und Vorrichtungen nach Anspruch 6, welche die Bewegungsinformation für die Entscheidung aus den berechneten Bewegungsvektoren der prädiktiven Codierung gewinnen. Verfahren und Vorrichtungen nach Anspruch 1 und 2, welche mögliche Störungen durch eine Prädiktion vom alten in den neuen Bildbereich mittels einer vorherigen Schätzung minimieren. Verfahren und Vorrichtungen nach Anspruch 8, welche das optimale Vorgehen für einen Intra Refresh durch eine schrittweise Abschätzung der auftretenden Störungen entlang der Grenze zwischen dem alten und neuen Bildbereich bestimmen. Verfahren und Vorrichtungen nach Anspruch 9, die einen Zuordnungsspeicher verwenden, um kleine Bildbereiche einer größeren Gruppe zuzuordnen und einen vordefinierten Satz von mindestens zwei unterschiedlichen Reihenfolgen für den Intra-Refresh in einem Refreshmusterpeicher ablegen. Verfahren und Vorrichtungen nach Anspruch 10, welche die Bewegungsinformation für die Entscheidung aus den berechneten Bewegungsvektoren der prädiktiven Codierung gewinnen.






IPC
A Täglicher Lebensbedarf
B Arbeitsverfahren; Transportieren
C Chemie; Hüttenwesen
D Textilien; Papier
E Bauwesen; Erdbohren; Bergbau
F Maschinenbau; Beleuchtung; Heizung; Waffen; Sprengen
G Physik
H Elektrotechnik

Anmelder
Datum

Patentrecherche

Patent Zeichnungen (PDF)

Copyright © 2008 Patent-De Alle Rechte vorbehalten. eMail: info@patent-de.com