专利摘要:
EineVorrichtung zum Verarbeiten einer Gruppe von Bildern umfasst einesteuerbare Einrichtung zum bewegungskompensierten Filtern der Gruppe vonBildern, um ein Basisbild und wenigstens ein Erweiterungsbild zuerhalten, wobei das Basisbild Tiefpassinformationen aus der Gruppevon Bildern aufweist und wobei das Erweiterungsbild Hochpassinformationenaus der Gruppe von Bildern oder Tiefpassinformationen aus der Gruppevon Bildern aufweist. Die Vorrichtung umfasst ferner eine Einrichtungzum Berechnen eines Nutzens einer Bewegungskompensation für einenBlock von Werten sowie eine Steuereinrichtung zum Steuern der Einrichtung zumbewegungskompensierten Filtern, um für einen Block von Werten indas Erweiterungsbild statt der Hochpassinformationen Tiefpassinformationeneinzufügen.Damit kann fürBlöcke,die füreine Bewegungskompensation nicht geeignet sind, sowohl der Prädiktionsoperatorals auch der Aktualisierungsoperator deaktiviert werden, um keineCodiergewinneinbußenhinnehmen zu müssen.
公开号:DE102004011422A1
申请号:DE200410011422
申请日:2004-03-09
公开日:2005-11-10
发明作者:Detlev Marpe;Heiko Schwarz;Thomas Wiegand
申请人:Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV;
IPC主号:H04N7-26
专利说明:
[0001] Dievorliegende Erfindung bezieht sich auf Videocodierer und insbesondereauf die Verarbeitung von zeitlich aufeinander folgenden Bildernzur Erlangung einer zeitliche Skalierbarkeit.
[0002] DerStandard H.264/AVC ist Ergebnis eines Videostandardisierungs-Projektsder ITU-T-Videocodier-Expertengruppe (VCEG) und der ISO/IEC-Bewegbild-Expertengruppe(MPEG). Die Hauptziele dieses Standardisierungsvorhabens bestehendarin, ein übersichtlichesVideocodier-Konzept mit sehr gutem Kompressionsverhalten zu schaffen,und gleichzeitig eine Netzwerk-freundliche Videodarstellung zu erzeugen,die sowohl Anwendungen mit „Konversationscharakter", wie beispielsweisedie Video-Telefonie, sowie Anwendungen ohne Konversationscharakter(Speichern, Rundfunk, Stream-Übertragung)umfassen.
[0003] Esexistiert neben dem oben-zitierten Standard ISO/IEC 14496-10 aucheine Vielzahl von Publikationen die sich auf den Standard beziehen.Lediglich beispielhaft wird auf „The Emerging H.264-AVC Standard", Ralf Schäfer, ThomasWiegand und Heiko Schwarz, EBU Technical Review, Januar 2003, verwiesen.Zudem umfasst die Fachveröffentlichung „Overviewof the H.264/AVC Video Coding Standard", Thomas Wiegand, Gary J. Sullivan,Gesle Bjontegaard und Ajay Lothra, IEEE Transactions on Circuitsand System for Video Technology, July 2003, sowie die Fachveröffentlichung „Context-basedadaptive Binary Arithmethic Coding in the H.264/AVC Video CompressionStandard", DetlevMarpe, Heiko Schwarz und Thomas Wiegand, IEEE Transactions on Circuitsand Systems for Video Technology, September 2003, einen detaillierten Überblickverschiedener Aspekte des Video-Codier-Standards.
[0004] Zumbessren Verständniswird jedoch nachfolgend anhand der 9 bis 11 ein Überblick über den Videocodierer/Decodierer-Algorithmusgegeben.
[0005] 9 zeigt einen komplettenAufbau eines Videocodierers, welcher allgemein aus zwei unterschiedlichenStufen besteht. Allgemein gesagt, erzeugt die erste Stufe, die prinzipiellVideo-bezogen arbeitet, Ausgangsdaten, die schließlich voneiner zweiten Stufe, die in 9 mit 80 bezeichnetist, einer Entropy-Codierung (Entropy Coding) unterzogen werden.Die Daten sind Daten 81a, quantisierte Transformations-Koeffizienten 81b sowieBewegungsdaten 81c, wobei diese Daten 81a, 81b, 81c demEntropie-Codierer 80 zugeführt werden, um ein codiertesVideosignal am Ausgang des Entropie-Codierers 80 zu erzeugen.
[0006] ImEinzelnen wird das Eingangsvideosignal (Input Video Signal) in Makroblöcke aufgeteilt,bzw. gesplittet, wobei jeder Makroblock 16 × 16 Pixel hat. Dann wird dieZuordnung der Makroblöckezu Slice-Gruppen und Slices (slice = Scheibe) ausgewählt, wonachjeder Makroblock jedes Slices durch das Netz von Betriebsblöcken, wiesie in 8 gezeigt sind,verarbeitet wird. Es sei darauf hingewiesen, dass eine effizienteParallel-Verarbeitung von Makroblöcken möglich ist, wenn verschiedeneSlices in einem Videobild sind. Die Zuordnung der Makroblöcke zu Slice-Gruppenund Slices wird mittels eines Blocks Codiersteuerung (Coder Control) 82 in 8 durchgeführt. Esexistieren verschiedene Slices, die folgendermaßen definiert sind: I-Slice:Der I-Slice ist ein Slice, in dem alle Makroblöcke des Slices unter Verwendungeiner Intra-Prediction codiert werden.
[0007] P-Slice:Zusätzlichzu dem Codiertypen des I-Slices können bestimmte Makroblöcke desP-Slices ebenfalls unter Verwendung einer Inter-Prädiktionmit zumindest einem Bewegungs-Kompensierten-Prädiktionssignal(Motion Compensated Prediction Signal) pro Prädiktionsblock codiert werden.
[0008] B-Slice:Zusätzlichzu den Codiertypen, die im P-Slice verfügbar sind, können bestimmteMarkoblöcke desB-Slices ebenfalls unter Verwendung einer Inter-Prädiktionmit zwei Bewegungs-Kompensierten-Prädiktionssignalen pro Prädiktionsblockcodiert werden.
[0009] Dieobigen drei Codiertypen sind sehr ähnlich zu denen in früheren Standards,jedoch mit der Ausnahme der Verwendung von Referenzbildern, wiees nachfolgend beschrieben wird. Die folgenden zwei Codiertypenfür Slicessind im Standard H.264/AVC neu: SP-Slice: Es wird auch alsSchalt-P-Slice bezeichnet, der so codiert wird, dass ein effizientesUmschalten zwischen unterschiedlichen vorkodierten Bildern möglich wird.
[0010] SI-Slice:Der SI-Slice wird auch als Schalt-I-Slice bezeichnet, der eine genaueAnpassung des Makroblocks in ei nem SP-Slice für einen direkten beliebigenZugriff und fürFehler-Wiederherstellungszwecke erlaubt.
[0011] Insgesamtsind Slices eine Sequenz von Makroblöcken, die in der Reihenfolgeeines Raster-Scans verarbeitet werden, wenn nicht eine ebenfallsim Standard definierte Eigenschaft der flexiblen Makroblock-AnordnungFMO (FMO = Flexible Macro Block Ordering) verwendet wird. Ein Bildkann in einen oder mehrere Slices aufgeteilt werden, wie es in 11 dargestellt ist. EinBild ist daher eine Sammlung von einem oder mehreren Slices. Slicessind in dem Sinn selbstständigvoneinander, da ihre Syntaxelemente aus dem Bitstrom analysiert(geparst) werden können,wobei die Werte der Abtastwerte in dem Bereich des Bildes, der durch denSlice dargestellt wird, korrekt decodiert werden können, ohnedass Daten von anderen Slices benötigt werden, vorausgesetzt,dass verwendete Referenzbilder sowohl im Codierer als auch im Decodiereridentisch sind. Bestimmte Informationen von anderen Slices können jedochnötig sein,um das Deblocking-Filter über Slice-Grenzenhinweg anzuwenden.
[0012] DieFMO-Eigenschaft modifiziert die Art und Weise, wie Bilder in Slicesund Makroblöckepartitioniert werden, indem das Konzept der Slice-Gruppen verwendetwird. Jede Slice-Gruppeist ein Satz von Makroblöcken,die durch eine Makroblock-zu-Slice-Gruppen-Abbildung definiert ist,die durch den Inhalt eines Bildparametersatzes und durch bestimmteInformationen von Slice-Headern spezifiziert ist. Diese Makroblock-zu-Slice-Gruppen-Abbildungbesteht aus einer Slice-Gruppen-Identifikationszahl für jedenMakroblock in dem Bild, wobei spezifiziert wird, zu welcher Slice-Gruppeder zugeordnete Makroblock gehört.Jede Slice-Gruppe kann in eine oder mehrere Slices partitioniertwerden, so dass ein Slice eine Sequenz von Makroblöcken innerhalbderselben Slice-Gruppe hat, die in der Reihenfolge einer Rasterabtastunginnerhalb des Satzes von Makroblöckeneiner speziellen Slice-Gruppe verarbeitet wird.
[0013] JederMakroblock kann in einem von mehreren Codiertypen abhängig vondem Slice-Codiertyp übertragenwerden. In all den Slice-Codiertypen werden die folgenden Typeneiner Intra-Codierung unterstützt,die als intra-4×4 oder intra-16×16 bezeichnetwerden, wobei zusätzlichein Chroma-Prädiktions-Modusund auch ein I-PCM Prädiktionsmodus unterstützt werden.
[0014] Derintra-4×4 Modusbasiert auf der Prädiktionvon jedem 4 × 4Chroma-Block separat und ist gut geeignet zum Codieren von Teileneines Bildes mit herausragenden Details. Der intra-16×16 -Modusführt aufder anderen Seite eine Prädiktiondes gesamten 16 × 16-Chroma-Blocksdurch und ist mehr geeignet zum Codieren von „weichen" Bereichen eines Bildes.
[0015] Zusätzlich zudiesen zwei Chroma-Prädiktions-Typenwird eine getrennte Chroma-Prädiktiondurchgeführt.Als Alternative fürintra-4×4 undintra-16×16 erlaubtder I-4×4 Codiertyp,dass der Codierer einfach die Prädiktionsowie die Transformationscodierung überspringt und statt dessendie Werte de codierten Abtastwerte direkt überträgt. Der I-PCM-Modusdient den folgenden Zwecken: Er ermöglicht es dem Codierer, dieWerte der Abtastwerte präzisedarzustellen. ER liefert eine Art und Weise, um die Werte von sehranormalem Bildinhalt ohne Datenvergrößerung genau darzustellen.Er ermöglichtes ferner, fürdie Anzahl von Bits eine harte Grenze vorzugeben, die ein Codiererfür eineMakroblockhandhabung haben muss, ohne dass die Codiereffizienz leidet.
[0016] ImGegensatz zu früherenVideocodierstandards (nämlichH.263 plus und MPEG-4 Visual), wo die Intra-Prädiktion im Transformationsbereichdurchgeführtworden ist, wird die Intra-Prädiktionbei H.264/AVC immer im Raumbereich (Spatial Domain) durchgeführt, undzwar indem auf benachbarte Abtastwerte von vorher codierten Blöcken bezuggenommen wird, die links bzw. oberhalb des zu prädizierenden Blocks liegen (10). Dies kann in bestimmtenUmgebungen, bei denen Übertragungsfehlerauftreten, eine Fehlerfortpflanzung mit sich bringen, wobei dieseFehlerfortpflanzung aufgrund der Bewegungskompensation (Motion Compensation)in intercodierten Makroblöckenstattfindet. Daher kann ein begrenzter Intra-Codiermodus signalisiertwerden, der eine Prädiktionnur von intra-codierten benachbarten Makroblöcken ermöglicht.
[0017] Wennder intra-4×4-Modusverwendet wird, wird jeder 4 × 4-Block aus räumlich benachbartenAbtastwerten vorhergesagt. Dei 16 Abtastwerte des 4 × 4-Blockswerden unter Verwendung von vorher decodierten Abtastwerten in benachbartenBlöckenvorhergesagt. Fürjeden 4 × 4-Blockkann einer von 9 Prädiktionsmodi verwendetwerden. Zusätzlichzur „DC-Prädiktion(wo ein Wert verwendet wird, um den gesamten 4 × 4-Block vorher zu sagen),werden 8 Richtungs-Prädiktions-Modispezifiziert. Diese Modi sind geeignet, um Richtungsstrukturen ineinem Bild, wie beispielsweise Kanten bei verschiedenen Winkelnvorherzusagen.
[0018] Zusätzlich zuden Intra-Makroblock-Codiertypen werden verschiedene prädiktiveoder bewegungs-kompensierte Codiertypen als P-Makroblocktypen spezifiziert.Jeder P-Makroblock-Typentspricht einer spezifischen Aufteilung des Makro blocks in dieBlockformen, die füreine bewegungs-kompensiertePrädiktion verwendetwerden. Aufteilungen mit Luma-Blockgrössen von 16 × 16, 16 × 8, 8 × 8 Abtastwertenwerden durch die Syntax unterstützt.Im Falle von Aufteilungen von 8 × 8 Abtastwerten wird ein zusätzlichesSyntaxelement fürjede 8 × 8-Aufteilung übertragen.Dieses Syntaxelement spezifiziert, ob die entsprechende 8 × 8-Aufteilung fernerin Aufteilungen von 8 × 4,4 × 8oder 4 × 4Luma-Abtastwerten und entsprechenden Chroma-Abtastwerten weiterpartitioniert wird.
[0019] DasPrädiktionssignalfür jedenprädiktiv-codiertenM × M-Lumablock wird erhalten,indem ein Bereich des entsprechenden Referenzbildes der durch einenTranslations-Bewegungsvektorund einen Bildreferenzindex spezifiziert ist, verschoben wird. Wennsomit ein Makroblock unter Verwendung von vier 8 × 8-Aufteilungen codiertwird, und wenn jede 8 × 8-Aufteilungferner in vier 4 × 4-Aufteilungenaufgeteilt wird, kann eine maximale Menge an 16 Bewegungsvektorenfür eineneinzigen P-Makroblock im Rahmen des sogenannten Bewegungsfelds bzw.Motion Field übertragenwerden.
[0020] DerQuantisierungsparameter-Slice QP wird verwendet, um die Quantisierungder Transformationskoeffizienten bei H.264/AVC festzulegen. DerParameter kann 52 Werte annehmen. Diese Werte sind so angeordnet,dass eine Zunahme von 1 im Hinblick auf den Quantisierungsparametereine Erhöhungder Quantisierung schrittweise um etwa 12 % bedeutet. Dies bedeutet,dass eine Erhöhungdes Quantisierungsparameters um 6 eine Zunahme der Quantisierer-Schrittweiteum genau einen Faktor von 2 mit sich bringt. Es sei darauf hingewiesen,dass eine Änderungder Schrittgröße um etwa12 % ebenfalls in etwa eine Reduktion der Bitrate um etwa 12 % bedeutet.
[0021] Diequantisierten Transformationskoeffizienten eines Blocks werden allgemeinin einem Zick-Zack-Weg abgetastet und unter Verwendung von Entropie-Codierverfahrenweiter verarbeitet. Die 2 × 2-DC-Koeffizientender Chroma-Komponente werden in Raster-Scan-Reihenfolge abgetastetund alle Invers-Transformations-Operationeninnerhalb H.264/AVC könnenunter Verwendung von nur Additionen und Shift-Operationen von 16-Bit-Ganzzahlwertenimplementiert werden. Auf ähnlicheArt und Weise werden nur 16-Bit-Speicherzugriffe für eine guteImplementierung der Vorwärtstransformationenund des Quantisierverfahrens im Codierer benötigt.
[0022] Bezugnehmendauf 9 wird das EingangssignalzunächstBild fürBild in einer Videosequenz, jeweils für jedes Bild gesehen, in dieMakroblöckemit 16 × 16Pixeln aufteilt. Hierauf wird jedes Bild einem Subtrahierer 84 zugeführt, derdas ursprünglicheBild subtrahiert, das von einem Decodierer 85 geliefertwird. Der im Encodierer enthalten ist. Das Subtraktionsergebnis,also die Restsignale im Raum-Bereich(Spatial Domain), werden nunmehr transformiert, skaliert und quantisiert(Block 86), um die quantisierten Transformationskoeffizientenauf der Leitung 81b zu erhalten. Zur Erzeugung des Subtraktionssignals,das in den Subtrahierer 874 eingespeist wird, werden diequantisierten Transformationskoeffizienten zunächst wieder skaliert und inverstransformiert (Block 87), um einem Addierer 88 zugeführt zu werden,dessen Ausgang das Deblocking-Filter 89 speist, wobei amAusgang des Deblocking-Filters das Ausgangsvideosignal, wie es z.B.ein Decodierer decodieren wird, z.B. zu Kontrollzwecken überwachtwerden kann (Ausgang 90).
[0023] UnterVerwendung des decodierten Ausgangssignals am Ausgang 90 wirddann eine Bewegungsschätzung(Motion Estimation) in einem Block 91 durchgeführt. ZurBewegungsschätzungin Block 91 wird, wie es aus 9 ersichtlichist, ein Bild des ursprünglichenInput-Videosignals zugeführt.Der Standard erlaubt zwei verschiedene Bewegungsschätzungen,nämlicheine Vorwärts-Bewegungs-Schätzung undeine Rückwärts-Bewegungs-Schätzung. Beider Vorwärts-Bewegungs-Schätzung wirddie Bewegung des aktuellen Bilds im Hinblick auf das vorhergehendeBild abgeschätzt.Dagegen wird bei der Rückwärts-Bewegungs-Schätzung dieBewegung des vergangenen Bilds unter Verwendung des aktuellen Bildsabgeschätzt. DieErgebnisse der Bewegungsschätzung(Block 91) werden einem Bewegungskompensations-Block (Motion Compensation) 92 zugeführt, derinsbesondere dann, wenn ein Schalter 93 auf den Inter-Prädiktions-Modus geschaltetist, wie es in 9 derFall ist, eine bewegungs-kompensierte Inter-Prädiktion durchgeführt. Steht derSchalter 93 dagegen auf Intra-Frame-Prädiktion, so wird eine Intra-Frame-Prädiktionunter Verwendung eines Blocks 490 durchgeführt. Hierzuwerden die Bewegungsdaten nicht benötigt, da für eine Intra-Frame-Prädiktionkeine Bewegungskompensation ausgeführt wird.
[0024] DerBewegungsschätzungsblock 91 erzeugtBewegungsdaten bzw. Bewegungsfelder, wobei Bewegungsdaten bzw. Bewegungsfelder,die aus Bewegungsvektoren (Motion Vectors) bestehen, vom Decodierer übertragenwerden, damit eine entsprechende inverse Prädiktion, also Rekonstruktionunter Verwendung der Transformationskoeffizienten und der Bewegungsdatendurchgeführtwerden kann. Es sei darauf hingewiesen, dass im Falle einer Vorwärts-Prädiktionder Bewegungsvektor aus dem unmittelbar vorhergehenden Bild bzw. auchaus mehreren vorhergehenden Bildern berechnet werden kann. Darüber hinaus seidarauf hingewiesen, dass im Falle einer Rückwärts-Prädiktionein aktuelles Bild unter Verwendung des unmittelbar angrenzenden zukünftigenBildes und natürlichauch unter Verwendung von weiteren zukünftigen Bildern berechnet werden kann.
[0025] Nachteiligan dem in 9 dargestelltenVideocodierer-Konzeptist, dass es keine einfache Skalierbarkeitsmöglichkeit bietet. Wie es inder Technik bekannt ist, versteht man unter dem Ausdruck „Skalierbarkeit" ein Codierer/Decodier-Konzept,bei dem der Codierer einen skalierten Datenstrom liefert. Der skalierteDatenstrom umfasst eine Basis-Skalierungsschicht sowie eine odermehrere Erweiterungs-Skalierungsschichten. Die Basis-Skalierungsschichtumfasst eine Darstellung des zu codierenden Signals allgemein gesagtmit geringerer Qualität,jedoch auch mit geringerer Datenrate. Die Erweiterungs-Skalierungsschichtenthälteine weitere Darstellung des Videosignals, die typischerweise zusammenmit der Darstellung des Videosignals in der Basis-Skalierungsschichteine Darstellung mit verbesserter Qualität im Hinblick auf die Basis-Skalierungsschichtliefert. Dagegen hat die Erweiterungs-Skalierungsschicht selbstverständlich eineneigenen Bitbedarf, so dass die Anzahl der Bits zur Darstellung deszu codierenden Signals mit jeder Erweiterungsschicht zunimmt.
[0026] EinDecodierer wird je nach Ausgestaltung bzw. nach Möglichkeitentweder nur die Basis-Skalierungsschicht decodieren, um eine vergleichsweisequalitativ schlechte Darstellung des durch das codierte Signal dargestelltenBildssignals zu liefern. Mit jeder „Hinzunahme" einer weiteren Skalierungsschichtkann der Decodierer jedoch schrittweise die Qualität des Signals(zu Lasten der Bitrate und der Verzögerung) verbessern.
[0027] Jenach Implementierung und nach Übertragungskanalvon einem Codierer zu einem Decodierer wird immer wenigstens dieBasis-Skalierungsschicht übertragen,da die Bitrate der Basis-Skalierungsschicht typischerweise so geringist, dass auch ein bisher begrenzter Übertragungskanal ausreichendsein wird. Erlaubt der Übertragungskanalnicht mehr Bandbreite fürdie Anwendung, so wird nur die Basis-Skalierungsschicht, nicht aber eineErweiterungs-Skalierungsschicht übertragen.Dies hat zur Folge, dass der Decodierer lediglich eine niederqualitativeDarstellung des Bildsignals erzeugen kann. Im Vergleich zum unskaliertenFall, bei dem die Datenrate so hoch gewesen wäre, dass eine Übertragungdas Übertragungssystem überhauptnicht möglichgewesen wäre,ist die niederqualitative Darstellung von Vorteil. Erlaubt der Übertragungskanaldie Übertragungvon einer oder mehrerer Erweiterungsschichten, so wird der Codiererauch eine oder mehrere Erweiterungsschichten zum Decodierer übertragen,so dass dieser je nach Anforderung schrittweise die Qualität des ausgegebenenVideosignals erhöhenkann.
[0028] ImHinblick auf die Codierung von Videosequenzen kann man zwei unterschiedlicheSkalierungen unterscheiden. Die eine Skalierung ist die zeitlicheSkalierung, dahingehend, dass z.B. nicht alle Video-Einzelbildereiner Videosequenz übertragenwerden, sondern dass- zur Reduzierung der Datenrate – beispielsweise nurjedes zweite Bild, jedes dritte Bild, jedes vierte Bild, etc. übertragenwird.
[0029] Dieandere Skalierung ist die SNR-Skalierbarkeit (SNR = Signal to NoiseRatio), bei der jede Skalierungsschicht, also sowohl die Basis-Skalierungsschichtals auch die erste, zweite, dritte... Erweiterungs-Skalierungsschichtsämtlichezeitlichen Information umfasst, jedoch mit einer unterschiedlichenQualität.So hätte dieBasis-Skalierungsschichtzwar eine niedrige Datenrate, jedoch ein geringes Signal/Rausch-Verhältnis, wobeidieses Signal/Rausch-Verhältnisdann, mit Hinzunahme jeweils einer Erweiterungs-Skalierungsschicht schrittweiseverbessert werden kann.
[0030] Dasin 9 dargestellte Codierer-Konzeptist dahingehend problematisch, dass es darauf basiert, dass lediglichRestwerte durch den Subtrahierer 84 erzeugt werden, unddann weiter verarbeitet werden. Diese Restwerte werden aufgrundvon Prädiktionsalgorithmenberechnet, und zwar in der in 9 gezeigtenAnordnung, die unter Verwendung der Blöcke 86, 87, 88, 89, 93, 94 und 84 einegeschlossene Schleife bildet, wobei in der geschlossenen Schleifeein Quantisierungs-Parameter eingeht, und zwar in den Blöcken 86, 87.Würde nunmehreine einfache SNR-Skalierbarkeit dahingehend implementiert werden,dass z.B. jedes prädizierte Restsignalzunächstmit einer groben Quantisierer-Schrittweite quantisiert wird, unddann, schrittweise, unter Verwendung von Erweiterungsschichten mitfeineren Quantisierungs-Schrittweitenquantisiert werden würde, sowürde diesfolgende Konsequenzen haben. Aufgrund der inversen Quantisierungund der Prädiktioninsbesondere im Hinblick auf die Bewegungsschätzung (Block 91) unddie Bewegungskompensation (Block 92), die unter Verwendungdes ursprünglichenBildes einerseits und des quantisierten Bildes andererseits stattfinden, ergibtsich ein „Auseinanderlaufen" der Quantisie rungs-Schrittweiten" sowohl im Encodiererals auch im Decodierer. Dies führtdazu, dass die Erzeugung der Erweiterungs-Skalierungsschichten aufEncoder-Seite sehr problematisch wird. Ferner wird die Verarbeitungder Erweiterungs-Skalierungsschichtenauf der Decodiererseite zumindest im Hinblick auf die im StandardH.264/AVC definierten Elemente unmöglich. Grund hierfür ist dieanhand von 9 dargestelltegeschlossene Schleife im Video-Encodierer, in der die Quantisierungenthalten ist.
[0031] ImStandardisierungsdokument JVT-I 032 t1 mit dem Titel „SNR-ScalableExtension of H.264/AVC, Heiko Schwarz, Detlev Marpe und Thomas Wiegand,vorgestellt beim neunten JVT-Meetingvom 2. bis zum 5. Dezember 2003 in San Diego wird eine skalierbareErweiterung zu H.264/AVC vorgestellt, die eine Skalierbarkeit sowohlhinsichtlich der Zeit als auch des Signal/Rausch-Verhältnisses(bei gleicher oder unterschiedlicher Zeitgenauigkeit) umfasst. Hierzuwird eine Lifting-Darstellung zeitlicher Subbandzerlegungen eingeführt, die dieVerwendung bekannter Verfahren zur Bewegungskompensierten Prädiktionerlaubt.
[0032] Wavelet-basierteVideocodier-Algorithmen, bei denen Lifting-Implementierungen für die Wavelet-Analyseund fürdie Wavelet-Synthese eingesetzt werden, sind in J.-R. Ohm, „Complexityand delay analysis of MCTF interframe wavelet structures", ISO/IECJTC1/WG11Doc.M8520, July 2002, beschrieben. Anmerkungen zur Skalierbarkeitfinden sich auch in D. Taubman, „Successive refinement ofvideo: fundamental issues, past efforts and new directions", Proc. of SPIE (VCIP'03), vol. 5150, pp.649-663, 2003, wobei hierfürjedoch erhebliche Änderungenan Codiererstrukturen nötigsind. Erfindungsgemäß wird dagegenein Codierer/Decodierer- Konzepterreicht, das einerseits die Skalierbarkeitsmöglichkeit hat und das andererseitsauf standardkonformen Elementen, insbesondere z.B. für die Bewegungskompensation,aufbauen kann.
[0033] Bevordetailliert auf einen Encoder/Docoder-Aufbau anhand von 3 eingegangen wird, seizunächstanhand von 4 ein grundsätzlichesLifting-Schema auf Seiten des Codierers bzw. ein Invers-Lifting-Schemaauf Seiten des Decodierers dargestellt. Detaillierte Ausführungenzu den Hintergründender Kombination von Lifting-Schemen und Wavelet-Transformationen finden sich in W. Sweldens, „A customdesign construction of biorthogonal wavelets", J. Appl. Comp. Harm. Anal., vol. 3(no. 2), pp. 186-200, 1996 und I. Daubechies und W. Sweldens, „Factoringwavelet transforms into lifting Steps", J. Fourier Anal. Appl., vol. 4 (no.3),pp. 247-269, 1998. Im allgemeinen besteht das Lifting-Schema aus drei Schritten,dem Polyphasen-Zerlegungsschritt,dem Prädiktions-Schrittund dem Update-Schritt(Aktualisierungs-Schritt), wie es anhand des Codierers in 1a dargestellt ist. DerPolyphasen-Zerlegungsschrittwird durch einen ersten Bereich I dargestellt, der Prädiktions-Schrittwird durch einen zweiten Bereich II dargestellt, und der Aktualisierungs-Schrittwird durch einen dritten Bereich III dargestellt.
[0034] DerZerlegungs-Schritt umfasst eine Aufteilung des eingangsseitigenDatenstroms in eine identische erste Kopie für einen unteren Zweig 40a sowieeine identische Kopie füreinen oberen Zweig 40b. Ferner wird die identische Kopiedes oberen Zweigs 40b um eine Zeitstufe (z-1)verzögert,so dass ein Abtastwert s2k+1 mit einem ungeradzahligenIndex k zum gleichen Zeitpunkt wie ein Abtastwert mit einem geraden Indexs2k durch einen jeweiligen Dezimierer bzw.Downsampler 42a, 42b läuft. Der Dezimierer 42a bzw. 42b reduziertdie Anzahl der Samples im oberen bzw. im unteren Zweig 40b, 40a durchEliminieren jedes jeweils zweiten Abtastwerts.
[0035] Derzweite Bereich II, der sich auf den Prädiktion-Schritt bezieht, umfassteinen Prädiktionsoperator 43 sowieeinen Subtrahierer 44. Der dritte Bereich, also der Aktualisierungs-Schrittumfasst einen Aktualisierungs-Operator 45 sowie einen Addierer 46.Ausgangsseitig existieren noch zwei Normierer 47, 48,zum Normieren des Hochpass-Signals hk (Normierer 47)und zum Normieren des Tiefpass-Signals lk durchden Normierer 48.
[0036] Imeinzelnen führtdie Polyphasenzerlegung dazu, dass die geradzahligen und ungeradzahligenAbtastwerte einen gegebenen Signals s[k] getrennt werden. Da dieKorrelationsstruktur typischerweise eine Lokalcharakteristik zeigt,sind die geraden und ungeraden Polyphasenkomponenten hochkorreliert.Daher wird in einem anschließendenSchritt eine Prädiktion(P) der ungeraden Abtastwerte unter Verwendung der geraden Abtastwertedurchgeführt.Der entsprechende Prädiktions-Operator (P) für jedenungeraden Abtastwert sodd[k] = s[2k + 1]ist eine lineare Kombination der benachbarten geraden Abtastwerteseven[k] = s[2k], d.h.
[0037] AlsErgebnis des Prädiktions-Schrittswerden die ungeradzahligen Abtastwerte durch ihre entsprechendenPrädiktions-Restwerte h[k] = sodd[k] – P(seven)[k].ersetzt. Es sei darauf hingewiesen,dass der Prädiktionsschritt äquivalentzum Durchführeneines Hochpass-Filterseiner Zwei-Kanal-Filterbank ist, wie es in I. Daubechies und W.Sweldens, „Factoringwavelet transforms into lifting steps", J. Fourier Anal. Appl. vol 4 (no.3),pp. 247-269, 1998 dargelegt ist.
[0038] Imdritten Schritt des Lifting-Schemas wird eine Tiefpass-Filterung durchgeführt, indemdie geraden Abtastwerte seven[k] durch einelineare Kombination der Prädiktions-Restwerteh[k] ersetzt werden. Der entsprechende Aktualisierungs-Operator U ist gegebendurch
[0039] DurchErsetzen der geraden Abtastwerte mit l[k] = seven[k] + U(h)[k]kann das gegebene Signals[k] schließlichdurch l(k) und h(k) dargestellt werden, wobei jedes Signal jedoch diehalbe Abtastrage hat. Da sowohl der Aktualisierungs-Schritt alsauch der Prädiktions-Schrittvollständiginvertierbar sind, kann die entsprechende Transformation als kritischabgetastete Perfekt-Rekonstruktions-Filterbank interpretiert werden.In der Tat kann gezeigt werden, dass jegliche biorthogonale Familievon FIR-Filtern durch eine Sequenz von einem oder mehreren Prädiktions-Schrittenund einem oder mehreren Aktualisierungs-Schritten realisiert werden kann.Für eineNormierung der Tiefpaß-und Hochpass-Komponentenwerden, wie es ausgeführtworden ist, die Normierer 47 und 48 mit geeignetgewähltenSkalierungsfaktoren Fl und Fh versorgt.
[0040] DasInvers-Lifting-Schema, das der Synthese-Filterbank entspricht, istin 4, auf der rechtenSeite, gezeigt. Es besteht einfach aus der Anwendung des Prädiktions-und Aktualisierungs-Operators in umgekehrter Reihenfolge und mitumgekehrten Vorzeichen, gefolgt von der Rekonstruktion unter Verwendungder geraden und ungeraden Polyphasenkomponenten. Im einzelnen umfasstder in 4 rechte gezeigteDecodierer somit wieder einen ersten Decodiererbereich I, einenzweiten Decodiererbereich II sowie einen dritten DecodiererbereichIII. Der erste Decodiererbereich macht die Wirkung des Aktualisierungs-Operators 45 rückgängig. Diesgeschieht dadurch, dass das durch einen weiteren Normierer 50 zurück-normierteHochpass-Signal dem Aktualisierungs-Operator 45 zugeführt wird.Das Ausgangssignal des decodierseitigen Aktualisierungs-Operators 45 wirddann nun, im Gegensatz zum Addierer 46 in 4, einem Subtrahierer 52 zugeführt. Entsprechendwird mit dem Ausgangssignal des Prädiktors 43 vorgegangen,dessen Ausgangssignal nunmehr nicht, wie auf Codiererseite einemSubtrahierer zugeführtwird, sondern dessen Ausgangssignal nunmehr einem Addierer 53 zugeführt wird.Nunmehr findet ein Upsampling des Signals in jedem Zweig um denFaktor 2 statt (Blöcke 54a, 54b).Hierauf wird der obere Zweig um einen Abtastwert in die Zukunftgeschoben, was äquivalentzum Verzögerndes unteren Zweigs ist, um dann eine Addition der Datenströme auf demoberen Zweig und dem unteren Zweig in einem Addierer 55 durchzuführen, umdas rekonstruierte Signal sk am Ausgangder Synthese-Filterbank zu erhalten.
[0041] Durchden Prädiktor 43 bzw.den Aktualisierer 45 könnenverschiedene Wavelets implementiert werden. Falls das sogenannteHaar-Wavelet implementiert werden soll, sind der Prädiktions-Operatorund der Aktualisierungs-Operator durch folgende Gleichung gegeben
[0042] ImFalle des 5/3-Biorthogonal-Spline-Wavelets haben das Tiefpaß- und dasHochpaß-Analyse-Filter diesesWavelets 5 bzw. 3 Filtertaps, wobei die entsprechende Skalierungsfunktionein B-Spline der Ordnung 2 ist. In Codieranwendungen für nicht-bewegteBilder (Still-Images, wie beispielsweise JPEG 2000) wird diesesWavelet fürein zeitliches Subband-Codierschemaverwendet. In einer Lifting-Umgebung sind die entsprechenden Prädiktions-und Aktualisierungs-Operatoren der 5/3-Transformation folgendermaßen gegeben
[0043] 3 zeigt ein Blockschaltbildeiner erfindungsgemäßen Codierer/Decodierer-Strukturmit beispielhaften vier Fil terebenen sowohl auf Seiten des Codierersals auch auf Seiten des Decodierers. Aus 3 ist zu ersehen, dass die erste Filterebene,die zweite Filterebene, die dritte Filterebene und die vierte Filterebene bezogenauf den Codierer identisch sind. Die Filterebenen bezogen auf denDecodierer sind ebenfalls identisch. Auf Codiererseite umfasst jedeFilterebene als zentrale Elemente einen Rückwärts-PrädiktorMi0 sowie einen Vorwärts-Prädiktor Mi1 61.Der Rückwärts-Prädiktor 60 entsprichtprinzipiell dem Prädiktor 43 von 4, während der Vorwärts-Prädiktor 61 demAktualisierer von 4 entspricht.
[0044] ImUnterschied zu 4 seidarauf hingewiesen, dass sich 4 aufeinen Strom von Abtastwerten bezieht, bei denen ein Abtastwert einenungeradzahligen Index 2k+1 hat, während ein anderer Abtastwerteinen geradzahligen Index 2k hat. Die Notation in 3 bezieht sich jedoch, wie es bereitsanhand von 1 dargelegt worden ist,auf eine Gruppe von Bildern anstatt auf eine Gruppe von Abtastwerten.Hat ein Bild beispielsweise eine Anzahl von Abtastwerten bzw. Pixeln,so wird dieses Bild insgesamt eingespeist. Dann wird das nächste Bildeingespeist etc. Es existieren somit nicht mehr ungeradzahlige undgeradzahlige Abtastwerte, sondern ungeradzahlige und geradzahligeBilder. Erfindungsgemäß wird dasfür ungeradzahligeund geradzahlige Abtastwerte beschriebene Lifting-Schema auf ungeradzahligebzw. geradzahlige Bilder, von denen jedes eine Vielzahl von Abtastwertenhat, angewendet. Aus dem abtastwert-weisen Prädiktor 43 von 4 wird nunmehr die Rückwärts-Bewegungskompensations-Prädiktion 60,währendaus dem abtastwert-weisen Aktualisierer 45 die BildweiseVorwärts-Bewegungskompensations-Prädiktion 61 wird.
[0045] Essei darauf hingewiesen, dass die Bewegungsfilter, die aus Bewegungsvektorenbestehen, und die Koeffizienten für die Blöcke 60 und 61 darstellen,jeweils fürzwei aufeinander bezogene Bilder berechnet und als Seiteninformationenvom Codierer zum Decodierer übertragenwerden. Von wesentlichem Vorteil beim erfindungsgemäßen Konzeptist jedoch die Tatsache, dass die Elemente 91, 92,wie sie anhand von 9 beschriebensind und im Standard H.264/AVC standardisiert sind, ohne weiteresdazu verwendet werden können,um sowohl die Bewegungsfelder Mi0 als auchdie Bewegungsfelder Mi1 zu berechnen. Für das erfindungsgemäße Konzeptmuss daher kein neuer Prädiktor/Aktualisierereingesetzt werden, sondern es kann der bereits bestehende, untersuchteund auf Funktionalitätund Effizienz überprüfte im Videostandardgenannte Algorithmus fürdie Bewegungskompensation in Vorwärtsrichtung oder in Rückwärtsrichtungeingesetzt werden.
[0046] Insbesonderezeigt die in 3 dargestellteallgemeine Struktur der verwendeten Filterbank eine zeitliche Zerlegungdes Videosignals mit einer Gruppe von 16 Bildern, die an einem Eingang 64 eingespeistwerden. Die Zerlegung ist eine dyadische zeitliche Zerlegung desVideosignals, wobei bei dem in 3 gezeigten Ausführungsbeispielmit 4 Ebenen 24 = 16 Bilder, also eine Gruppengröße von 16Bildern benötigtwird, um auf der Darstellung mit der kleinsten zeitlichen Auflösung, alsoauf den Signalen am Ausgang 28a und am Ausgang 28b anzukommen.Werden daher 16 Bilder gruppiert, so führt dies zu einer Verzögerung von16 Bildern, was das in 3 gezeigteKonzept mit vier Ebenen fürinteraktive Anwendungen eher problematisch macht. Wird daher aufinteraktive Anwendungen abgezielt, so wird es bevorzugt, kleinereGruppen von Bildern zu bilden, wie bei spielsweise vier oder achtBilder zu gruppieren. Dann wird die Verzögerung entsprechend reduziert,so dass auch der Einsatz fürinteraktive Anwendungen möglichwird. In Fällen,in denen Interaktivitätnicht benötigtwird, beispielsweise zu Speicherzwecken etc. kann die Anzahl derBilder in einer Gruppe, also die Gruppengröße, entsprechend erhöht werden,beispielsweise auf 32, 64, etc. Bilder.
[0047] Erfindungsgemäß wird esbevorzugt, die interaktive Anwendung des Haar-basierten bewegungs-kompensiertenLifting-Schemaszu verwenden, das aus einer Rückwärts-Bewegungskompensations-Prädiktion (Mi0), wie in H.264/AVC besteht, und das fernereinen Aktualisierungs-Schritt umfasst, der eine Vorwärtsbewegungskompensation(Mi1) umfasst. Sowohl der Prädiktions-Schrittals auch der Aktualisierung-Schritt verwenden den Bewegungskompensationsprozess,wie er in H.264/AVC dargestellt it. Ferner wird es bevorzugt, nicht nurdie Bewegungskompensation zu verwenden, sondern auch das in 9 mit dem Bezugszeichen 89 bezeichnetDeblocking-Filter 89 einzusetzen.
[0048] Diezweite Filterebene umfasst wieder Downsampler 66a, 66b,einen Subtrahierer 69, einen Rückwärts-Prädiktor 67, einen Vorwärts-Prädiktor 68 sowieeinen Addierer 70 und, wie es bereits anhand von 1 dargestellt worden ist, die Weiterverarbeitungseinrichtung 18,um an einem Ausgang der Weiterverarbeitungseinrichtung 18,wie es bereits anhand von 1 dargestelltworden ist, das erste und das zweite Hochpass-Bild der zweiten Ebeneauszugeben, währendam Ausgang des Addierers 70 das erste und das zweite Tiefpass-Bild der zweitenEbene ausgegeben werden.
[0049] Dererfindungsgemäße Codiererin 3 umfasst zusätzlich einedritte Ebene sowie eine vierte Ebene, wobei in den Eingang 64 dervierten Ebene eine Gruppe von 16 Bildern eingespeist wird. An einemHochpass-Ausgang 72 der vierten Ebene, der auch als HP4bezeichnet ist, werden mit einem Quantisierungs-Parameter Q quantisierteund entsprechend weiterverarbeitete acht Hochpass-Bilder ausgegeben.Entsprechend werden an einem Tiefpass-Ausgang 73 der viertenFilterebene acht Tiefpass-Bilder ausgegeben, die in einem Eingang 74 derdritten Filterebene eingespeist wird. Die Ebene ist wiederum wirksam,um an einem Hochpass-Ausgang 75, der auch mit HP3 bezeichnetist, vier Hochpass-Bilder zu erzeugen und um einem Tiefpass-Ausgang 76 vierTiefpass-Bilderzu erzeugen, die in den Eingang 10 der zweiten Filterebeneeingespeist werden und zerlegt werden, wie es anhand von 3 bzw. anhand von 1 dargelegt worden ist.
[0050] Essei besonders darauf hinzuweisen, dass die durch eine Filterebeneverarbeitete Gruppe von Bildern nicht unbedingt Videobilder seinmüssen,die von einer ursprünglichenVideosequenz stammen, sondern auch Tiefpass-Bilder sein können, dievon einer nächsthöheren Filterebenean einem Tiefpass-Ausgang der Filterebene ausgegeben worden sind.
[0051] Fernersei darauf hingewiesen, dass das in 3 gezeigteCodierer-Konzept fürsechszehn Bilder ohne weiteres auf acht Bilder reduziert werdenkann, wenn einfach die vierte Filterebene weggelassen wird und dieGruppe von Bildern in den Eingang 74 eingespeist wird.Genauso kann das in 3 gezeigteKonzept auch ohne weiteres auf eine Gruppe von zweiunddreißig Bildernerweitert werden, indem eine fünfteFilterebene hinzugefügtwird, und indem die dann sechszehn Hochpass-Bilder an einem Hochpass-Ausgangder fünftenFilterebene ausgegeben werden und die sechzehn Tiefpass-Bilder amAusgang der fünftenFilterebene in den Eingang 64 der vierten Filterebene eingespeistwerden.
[0052] AufDecodiererseite wird ebenfalls das baumartige Konzept der Codiererseiteangewendet, jedoch nun nicht mehr, wie auf Codiererseite von derhöherenEbene zur niedrigeren Ebene, sondern nunmehr, auf der Decodiererseite,von der niedrigeren Ebene zur höherenEbene. Hierzu wird von einem Übertragungsmedium,das schematisch als Network Abstraction Layer 100 bezeichnetist, der Datenstrom empfangen und der empfangene Bitstrom wird zunächst einerInvers-Weiterverarbeitungunter Verwendung der Invers-Weiterverarbeitungseinrichtungen 30a, 30b unterzogen,um eine rekonstruierte Version des ersten Hochpass-Bildes der erstenEbene am Ausgang der Einrichtung 30a und eine rekonstruierteVersion des Tiefpass-Bildes der ersten Ebene am Ausgang des Blocks 30b von 3 zu erhalten. Dann wird,in Analogie zur rechten Hälftevon 4, zunächst dieVorwärts-Bewegungskompensations-Prädiktionmittels des Prädiktors 61 rückgängig gemacht,um dann das Ausgangssignal des Prädiktors 61 von derrekonstruierten Version des Tiefpass-Signals zu subtrahieren (Subtrahierer 101).
[0053] DasAusgangssignal des Subtrahierers 101 wird in einen Rückwärts-Kompensations-Prädiktor 60 eingespeist,um ein Prädiktionsergebniszu erzeugen, das in einem Addierer 102 zur rekonstruiertenVersion des Hochpass-Bildes addiert wird. Hierauf werden beide Signale,also die Signale im unteren Zweig 103a, 103b aufdie doppelte Abtastrate gebracht, und zwar unter Verwendung derUpsampler 104a, 104b, wobei dann das Signal aufdem oberen Zweig je nach Imple mentierung verzögert bzw. „beschleunigt" wird. Es sei daraufhingewiesen, dass das Upsampling durch die Brücke 104a, 104b einfachdurch Einfügenvon einer Anzahl von Nullen, die gleich der Anzahl von Samples für ein Bildentspricht, durchgeführtwird. Die Verschiebung um die Verzögerung eines Bildes durch dasmit z–1 gezeigteElement im oberen Zweig 103b gegenüber dem unteren Zweig 103a bewirkt,dass die Addition durch einen Addierer 106 dazu führt, dassausgangsseitig bezüglichdes Addierers 106 die beiden Tiefpass-Bilder der zweitenEbene nacheinander vorliegen.
[0054] Dierekonstruierte Version des ersten und des zweiten Tiefpass-Bildesder zweiten Ebene werden dann in das decodiererseitige Invers-Filterder zweiten Ebene eingespeist und dort, zusammen mit den übertragenenHochpaß-Bildernder zweiten Ebene wieder durch die identische Implementierung derInvers-Filterbank kombiniert, um an einem Ausgang 108 derzweiten Ebene eine Folge von vier Tiefpass-Bildern der dritten Ebenezu haben. Die vier Tiefpass-Bilder der dritten Ebene werden in einerInvers-Filterebene der dritten Ebene mit den übertragenen Hochpaß-Bildernder dritten Ebene kombiniert, um an einem Ausgang 110 desInvers-Filters der dritten Ebene acht Tiefpass-Bilder der viertenEbene in aufeinanderfolgendem Format zu haben. Diese acht Tiefpass-Bilder der drittenEbene werden dann, in einem Invers-Filter der vierten Ebene mit den achtHochpaß-Bildernder vierten Ebene, die vom Übertragungsmedium 100 über denEingang HP4 empfangen werden, wieder wie anhand der ersten Ebenebesprochen, kombiniert, um an einem Ausgang 112 des Invers-Filtersder vierten Ebene eine rekonstruierte Gruppe von 16 Bildern zu erhalten.
[0055] Injeder Stufe der Analyse-Filterbank werden somit zwei Bilder, alsoentweder ursprünglicheBilder oder Bilder die Tiefpaß-Signaledarstellen und in einer nächsthöheren Ebeneerzeugt worden sind, in ein Tiefpass-Signal und in ein Hochpass-Signalzerlegt. Das Tiefpass-Signal kann als Darstellung der Gemeinsamkeitender Eingangsbilder betrachtet werden, während das Hochpass-Signal alsDarstellung der Unterschiede zwischen den Eingangsbildern betrachtetwerden kann. In der entsprechenden Stufe der Synthese-Filterbank werdendie beiden Eingangsbilder unter Verwendung des Tiefpass-Signalsund des Hochpass-Signals wieder rekonstruiert. Da im Syntheseschrittdie inversen Operationen des Analyseschritts durchgeführt werden,garantiert die Analyse/Synthese-Filterbank (ohne Quantisierung selbstverständlich)eine perfekte Rekonstruktion.
[0056] Dieeinzigen auftretenden Verluste kommen aufgrund der Quantisierungin den Weiterverarbeitungseinrichtungen z.B. 26a, 26b, 18 vor.Wird sehr fein quantisiert, so wird ein gutes Signal-Rausch-Verhältnis erreicht.Wird dagegen sehr grob quantisiert, so wird ein relativ schlechtesSignal-Rausch-Verhältnis, jedochbei niedriger Bitrate, also bei niedrigem Bedarf, erreicht.
[0057] OhneSNR-Skalierbarkeit könntebereits mit dem in 3 dargestelltenKonzept zumindest eine Zeit-Skalierungssteuerungimplementiert werden. Hierzu wird bezugnehmend auf 5 eineZeit-Skalierungs-Steuerung 120 eingesetzt, die ausgebildetist, um eingangsseitig die Hochpaß- bzw. Tiefpass-Ausgänge bzw.die Ausgängeder Weiterverarbeitungseinrichtungen (26a, 26b, 18 ...)zu erhalten, um aus diesen Teildatenströmen TP1, HP1, HP2, HP3, HP4einen skalierten Datenstrom zu erzeugen, der in einer Ba sis-Skalierungsschichtdie weiterverarbeitende Version des ersten Tiefpass-Bildes und desersten Hochpass-Bildes hat. In einer ersten Erweiterungs-Skalierungsschichtkönntedann die weiterverarbeitende Version der zweiten Hochpass-Bildesuntergebracht sein. In einer zweiten Erweiterungs-Skalierungsschichtkönntendann die weiterverarbeiteten Versionen der Hochpass-Bilder dritterEbene untergebracht sein, währendin einer dritten Erweiterungs-Skalierungsschichtdie weiterverarbeitenden Versionen der Hochpass-Bilder vierter Ebeneeingebracht sind. Damit könnteein Decodierer allein aufgrund der Basis-Skalierungsschicht bereits eine zeitlichgering qualitative Sequenz von Tiefpass-Bildern niedriger Ebeneerzeugen, also pro Gruppe von Bildern, zwei Tiefpass-Bilder ersteEbene. Mit Hinzunahme jeder Erweiterungs-Skalierungsschicht kanndie Anzahl der rekonstruierten Bilder pro Gruppe immer verdoppeltwerden. Die Funktionalitätdes Decodierers wird typischerweise von einer Skalierungs-Steuerunggesteuert, die ausgebildet ist, um zu erkennen, wie viel Skalierungsschichtenim Datenstrom enthalten sind bzw. wie viele Skalierungsschichtenvom Decodierer beim Decodieren berücksichtigt werden sollen.
[0058] DasJVT-Dokument JVT-J 035, mit dem Titel „SNR-Scalable Extension ofH.264/AVC" HeikoSchwarz, Detlev Marpe und Thomas Wiegand, vorgestellt beim zehntenJVT-Treffen in Waikoloa Hawaii, 8. bis 12. Dezember 2003, zeigteine SNR-skalierbareErweiterung des in den 3 und 4 dargestellten zeitlichenZerlegungsschemas. Insbesondere wird eine zeitliche Skalierungsschichtin einzelne "SNR-Skalierungsunterschichten" aufgeteilt, wobeieine SNR-Basisschichtdahingehend erhalten wird, dass eine bestimmte zeitliche Skalierungsschichtmit einer ersten, gröberen Quantisiererschrittweitequantisiert wird, um die SNR-Basisschichtzu erhalten. Dann wird unter anderem eine inverse Quantisierungdurchgeführt,und das Ergebnissignal aus der inversen Quantisierung wird von demursprünglichenSignal subtrahiert, um ein Differenzsignal zu erhalten, das dannmit einer feineren Quantisiererschrittweite quantisiert wird, umdie zweite Skalierungsschicht zu erhalten. Die zweite Skalierungsschichtwird jedoch wieder unter anderem requantisiert mit der feinerenQuantisiererschrittweite, um das nach der Requantisierung erhalteneSignal von dem ursprünglichenSignal zu subtrahieren, um ein weiteres Differenzsignal zu erhalten,das, wieder nach Quantisierung nun jedoch mit einer feineren Quantisiererschrittweiteeine zweite SNR-Skalierungsschicht bzw. eine SNR-Enhancement-Layer darstellt.
[0059] Nachteiligan dem anhand von 3 beschriebenenKonzept ist, dass es Fällegibt, bei denen die Bewegungskompensierte Prädiktion nicht optimal arbeitet.Diese Fällesind dann gegeben, wenn Bilder vorliegen, die nicht gut durch eineBewegungskompensation dargestellt werden können. Ein solcher Fall trittbeispielsweise dann auf, wenn von einem Bild zum nächsten Bildein Bereich im Bild, der im einen Bild verdeckt war, im nächsten Bildnicht mehr verdeckt ist. Die Bewegungskompensation wird zwar sicherlicheinen Bewegungsvektor fürden Makroblock ausrechnen, in dem der vorher abgedeckte Bereichund der nachher aufgedeckte Bereich liegen. Dieser Bewegungsvektorwird jedoch im Sinne einer Datenkomprimierung nichts bringen, da ervon vorneherein eine Bewegungskompensation für einen Block innerhalb einesBildes ausführenmöchte, dessenInhalt nicht auf eine Bewegung eines Blocks im vorherigen Bild zurückgeht,sondern dessen Inhalt einfach neu entstanden ist.
[0060] Andererseitsbasiert das Konzept der Bewegungskompensierten zeitlichen Zerlegung,um Hochpassbilder, also Erweiterungsbilder einerseits und Tiefpassbilder,also Basisbilder andererseits zu erzeugen, gerade auf dem Konzeptder Bewegungskompensation, zumal eine „Verrechnung" von zwei Bildernder Gruppe von Bildern, um ein Hochpassbild und ein Tiefpassbildzu erzeugen, ohne Bewegungskompensation keinen Sinn machen würde, dadann das Hochpassbild nicht nur die Unterschiede zwischen zwei Bildernumfassen würde,sondern zusätzlichnoch auf eine Bewegung zurückgeführte Anteile.
[0061] Einezeitliche Zerlegung einer Gruppe von Bildern wird somit dann, wenndie Bewegungskompensation nicht effektiv arbeiten kann, weil etwasBewegungs-kompensiert werden soll, das einer Bewegung nicht unterworfenwar, zumindest fürdiese Bildausschnitte, also diese Blöcke, bzw. Makroblöcke, indenen solche problematischen Bilder und Teile aufzufinden sind,eine erhöhteBitrate liefern. Dies liegt daran, dass mit dem Bewegungsvektor,den das Bewegungskompensationsmodul ohnehin liefert, prädiziert/aktualisiertwird, und dass dann die Werte in dem Makroblock des Erweiterungsbildesrelativ großeWerte annehmen, die ohne weiteres größer als die ursprünglichenWerte oder sogar die ursprünglichenDifferenzen in dem Bild werden können.
[0062] Aufgrundder größeren Werteim Erweiterungsbild wird die nachfolgend typischerweise stattfindende Entropie-Codierungimmer weniger effizient, da die Entropie-Codierung generell gesagtdie Eigenschaft hat, dass kleinere Werte effizienter als größere Wertecodiert werden können,da kleinere Werte typischerweise häufiger auftreten als größere Werte.
[0063] DieAufgabe der vorliegenden Erfindung besteht darin, ein Konzept zurBildverarbeitung zu schaffen, das einerseits flexibel und andererseitsdennoch effizient ist.
[0064] DieseAufgabe wird durch eine Vorrichtung zum Verarbeiten einer Gruppevon Bildern gemäß Patentanspruch1, ein Verfahren zum Verarbeiten einer Gruppe von Bildern gemäß Patentanspruch16, eine Vorrichtung zum Verarbeiten eines Basisbildes und einesoder mehrerer Erweiterungsbilder gemäß Patentanspruch 17, ein Verfahrenzum Verarbeiten eines Basisbildes und einer oder mehrerer Erweiterungsbildergemäß Patentanspruch23 oder ein Computerprogramm gemäß Patentanspruch24 gelöst.
[0065] Dervorliegenden Erfindung liegt die Erkenntnis zugrunde, dass dann,wenn der Nutzen der Bewegungskompensation nicht gegeben ist, wennalso z.B. Bildbereiche vorliegen, die einer sehr schnellen Bewegungunterzogen worden sind, oder wenn Bildbereiche vorliegen, die ineinem vorherigen Bild nicht-aufgedeckt waren, und die in einem nachfolgendenBild aufgedeckt worden sind, die Bewegungskompensation deaktiviert wird.Damit jedoch im zeitlichen Zerlegungsschema geblieben werden kann,das ausgangsseitig Basisbilder und Erweiterungsbilder erzeugt, wirdeine Tiefpassinformation aus dem entsprechenden Bild der Gruppevon zu zeitlich filternden Bildern in das Erweiterungsbild eingetragen.Erfindungsgemäß wird somitbei Blöckeninnerhalb von Bildern, bei denen eine Bewegungskompensation nichtsbringt, in die Hochpassbilder nicht Hochpassinformationen eingetragen,sondern fürdiesen Block Tiefpassinformationen, so dass ein erfindungsgemäß erzeugtesErweiterungsbild im Unterschied zum Stand der Technik an bestimmtenidentifizierten Blöcken Tiefpassinformationenumfasst.
[0066] Beieinem bevorzugten Ausführungsbeispielder vorliegenden Erfindung wird die Bewegungs-kompensierte zeitlicheFilterung durch ein Lifting-Schema durchgeführt, das aus drei Schrittenbesteht, nämlichder Polyphasenzerlegung, der Prädiktionund der Aktualisierung. Insbesondere wird das Hochpassbild dadurcherzeugt, dass – blockweisebetrachtet – voneinem Bild eine Bewegungs-kompensierte und prädizierte Version des anderenBildes subtrahiert wird. Das Basisbild wird dadurch erzeugt, dasseine mit einem Aktualisierungsoperator beaufschlagte Version desHochpassbildes, das ebenfalls einer Bewegungskompensation unterzogenworden ist, zu dem einen Bild hinzuaddiert wird.
[0067] Wennerfindungsgemäß festgestelltworden ist, dass die Bewegungskompensation keinen Nutzen bringt,so wird der Prädiktionsoperatordeaktiviert. Vorzugsweise wird gleichzeitig auch der Aktualisierungsoperatordeaktiviert, so dass ein Makroblock eines Bildes direkt in den entsprechendenBlock des Erweiterungsbildes geschrieben wird, wobei dieser Blockmit Tiefpassinformationen, also vorzugsweise mit dem Ausschnitt desursprünglichenBildes von Blöckenmit Hochpassinformationen, also Bildinformationen, die aus den zwei zusammenverarbeiteten Bildern abgeleitet worden sind, umgeben sein kann.
[0068] ZurEntscheidung, ob füreinen Block Tiefpassinformationen in das Erweiterungsbild geschriebenwerden sollen, oder ob tatsächlichHochpassinformationen in das Erweiterungsbild geschrieben werdensollen, ist erfindungsgemäß eine Einrichtungzur Berechnung eines Nutzens der Bewegungskompen sation für einen Blockvon Werten vorgesehen, die mit einer Steuereinrichtung zum Steuernder Einrichtung zum Bewegungskompensierten Filtern zusammenarbeitet,um füreinen Block von Werten in dem Erweiterungsbild statt der HochpassinformationenTiefpassinformationen einzufügen.
[0069] Decodiererseitigist die erfindungsgemäße Vorrichtungausgebildet, um aus einem empfangenen Datenstrom für jedenBlock Steuerinformationen zu extrahieren, um zu erkennen, ob für einenBlock im Erweiterungsbild Tiefpassinformationen stecken, um dann,wenn dies der Fall ist, die Prädiktionsoperationim Decodierer zu deaktivieren, so dass die Tiefpassinformationenim Erweiterungsbild wieder unmittelbar zurück in den entsprechenden Makroblockdes entsprechenden Ausgabebildes geschrieben wird.
[0070] BevorzugteAusführungsbeispieleder vorliegenden Erfindung werden nachfolgend Bezug nehmend aufdie beiliegenden Zeichnungen detailliert erläutert. Es zeigen:
[0071] 1a eineVorrichtung zum Verarbeiten einer Gruppe von Bildern gemäß einembevorzugten Ausführungsbeispielder vorliegenden Erfindung;
[0072] 1b eineVorrichtung zum Verarbeiten eines Basisbildes und eines oder mehrererErweiterungsbilder gemäß einembevorzugten Ausführungsbeispielder vorliegenden Erfindung auf Decodiererseite;
[0073] 2a eineschematische Darstellung eines bevorzugten Ausführungsbeispiels der erfindungsgemäßen Vorrichtungauf Codiererseite;
[0074] 2b einebevorzugte Ausführungsformder erfindungsgemäßen Vorrichtungauf Decodiererseite.
[0075] 3 einBlockschaltbild eines Decodierers mit vier Ebenen;
[0076] 4 einBlockschaltbild zur Veranschaulichung der Lifting-Zerlegung einerzeitlichen Subband-Filterbank;
[0077] 5a eineDarstellung der Funktionalitätdes in 4 gezeigten Lifting-Schemas;
[0078] 5b eineDarstellung von zwei bevorzugten Lifting-Vorschriften mit unidirektionaler Prädiktion (Haar-Wavelet)und bidirektionaler Prädiktion(5/3-Transformation);
[0079] 5c einebevorzugte Ausführungsformder Prädiktions- und Aktualisierungs-Operatorenmit Bewegungskompensation und Referenzindizes zur beliebigen Wahlder zwei durch das Liftung-Schema zu verarbeitenden Bilder;
[0080] 5d eineDarstellung des Intramodus, bei dem ursprüngliche Bildinformationen Makroblock-weise inHochpassbilder eintragbar sind;
[0081] 6a einebevorzugte Ausführungsformzum Verarbeiten der Bilder mit zeitlicher und SkalierungsschichtübergreifenderPrädiktion;
[0082] 6b einebevorzugte Ausführungsformeiner Einrichtung zum inversen Weiterverarbeiten auf Decodiererseite;
[0083] 7 ein Übersichtsdiagrammzur Veranschaulichung der zeitlichen Verlegung einer Gruppe vonbeispielsweise 8 Bildern;
[0084] 8 einebevorzugte zeitliche Plazierung von Tiefpass-Bildern für eine Gruppevon 16 Bildern;
[0085] 9 ein Übersichts-Blockschaltbildzur Veranschaulichung der grundsätzlichenCodierstruktur füreinen Codierer gemäß dem StandardH.264/AVC füreinen Makroblock;
[0086] 10 eineKontext-Anordnung, die aus zwei benachbarten Pixelelementen A undB links bzw. oberhalb eines gegenwärtigen Syntaxelements C besteht;und
[0087] 11 eineDarstellung der Aufteilung eines Bildes in Slices;
[0088] 12 einbevorzugtes Ausführungsbeispielder zeitlichen Skalierbarkeit der Bilder für die zweite örtlicheSkalierungsschicht;
[0089] 13 einedetailliertere Darstellung der Berechnung der zweiten örtlichenSkalierungsschicht mit Skalierungsschicht-übergreifender Prädiktionsowohl des Basisbildes als auch von Intra-Blöcken in den Erweiterungsbildern;
[0090] 14 eineDarstellung der Prädiktionvon Basisbildern in zeitlicher Hinsicht innerhalb einer Skalierungsschicht;
[0091] 15 eineschematische Darstellung mehrerer Skalierungsschichten codiertenSignals zur Veranschaulichung einer kombinierten Skalierbarkeit.
[0092] 16 eineschematische Darstellung einer erfindungsgemäßen Vorrichtung zum Erzeugeneines skalierten Datenstroms;
[0093] 17a eine schematische Darstellung einer Vorrichtungzum Erzeugen eines skalierten Datenstroms mit binär-gewichtetenAuflösungen;und
[0094] 17b eine schematische Darstellung einer Vorrichtungzum inversen Verarbeiten eines örtlichen skaliertenDatenstroms.
[0095] 1a zeigteine erfindungsgemäße Vorrichtungzum Verarbeiten einer Gruppe von Bilder, die über einen Eingang 1100 derVorrichtung zugeführtwerden. Die Gruppe von Bildern wird einer Einrichtung 1102 zumBewegungs-kompensierten Filtern der Gruppe von Bildern zugeführt. DieEinrichtung 1102 ist überein Steuersignal von einer Steuereinrichtung 1104 steuerbar.Insbesondere ist die Einrichtung 1102 zum blockweisen Bewegungs-kompensiertenFiltern ausgebildet, um ein Basisbild und wenigstens ein Erweiterungsbildzu erzeugen, wobei das Basisbild Tiefpassinformationen aus der Gruppevon Bildern aufweist, und wobei das Erweiterungsbild Hochpassinformationenaus der Gruppe von Bildern oder Tiefpassinformationen aus der Gruppevon Bildern aufweist. Die Erweiterungsbilder werden ebenso wie dasoder die Basisbilder am Ausgang der Einrichtung 1102 erhalten.Die Gruppe von Bildern wird ebenso wie Bewegungskompensationsdaten 1106 einerEinrichtung 1108 zum Berechnen eines Nutzens einer Bewegungskompensationfür einenBlock von Werten zugeführt.Die Einrichtung 1108 ist wirksam, um über ein Nutzensignal auf einerSignalleitung 1110 die Steuereinrichtung 1104 zuaktivieren, damit sie der Einrichtung 1102 signalisiert,dass füreinen bestimmten Block des Erweiterungsbildes mit Hochpassinformationenstatt der normalerweise eingetragenen Hochpassinformationen ausnahmsweiseTiefpassinformationen einzutragen sind. Dies ist dann der Fall,wenn die Bewegungskompensation zu keinem Prädiktionsgewinn führt, dabeispielsweise in dem Block Dinge vorhanden sind, die in einem Bildder Gruppe von Bildern verdeckt sind und im anderen Bild der Gruppevon Bildern nicht mehr verdeckt sind, derart, dass Veränderungenvon einem Bild zum nächstennicht aufgrund einer Bewegung vorhanden sind.
[0096] Nachfolgendwird Bezug nehmend auf 1b eine erfindungsgemäße Vorrichtungauf Decodiererseite dargestellt, die die in 1a gezeigteVerarbeitung wieder rückgängig macht.
[0097] Andieser Stelle sei darauf hingewiesen, dass die Erweiterungsbildermit Hochpass- oder Tiefpassinformationen sowie die Basisbilder mitTiefpassinformationen am Ausgang der Einrichtung 1102 in 1a typischerweiseeiner nachfolgenden Transformation/Skalierung/Quantisierung undEntropie-Codierung gemäß H.264/AVCunterzogen werden, um schließlichausgangsseitig einen komplett codierten Datenstrom zu bilden, derneben den Erweiterungsbildern mit Hochpass- oder Tiefpassinformationenund den Basisbildern und den Bewegungskompensationsdaten auch eineInformation darüberumfasst, in welchem Block eines Erweiterungsbildes Tiefpassinformationenstehen. Auf Decodiererseite wird dann dieser Datenstrom zunächst auseinandergefügt und einerDecodierung unterzogen einschließlich einer Requantisierungund Rücktransformation, umdann, gewissermaßennach dieser „inneren" Decodiererstufekomplette Basisbilder oder Erweiterungsbilder oder aber wenigstensBlöckevon Basisbilder und Blöckevon Erweiterungsbildern, welche in H.264/AVC auch Makroblöcke genanntwerden, zu erhalten.
[0098] Daserfindungsgemäße Konzeptkann jedoch gewissermaßenum jeden beliebigen „Kerncodierer" herum gelegt werden,es wird jedoch besonders bevorzugt, die erprobten und standardisiertenH.264/AVC-Algorithmen einzusetzen.
[0099] 1b zeigteinen Datenstromdemultiplexer 1130, dessen Funktionalität generelldarin besteht, Basisbilder, Erweiterungsbilder und Steuerinformationenzu trennen. Diese Informationen werden einer Einrichtung 1132 zumBewegungskompensierten inversen Filtern zugeführt. Die Einrichtung 1032 zumBewegungs-kompensierten inversen Filtern ist ausgebildet, um ausden Basisbildern und den Erweiterungsbildern wieder die ursprünglichenin den Eingang 1100 von 1a gezeigtenBilder zu machen, die in 1b auch alsGruppe von Ausgangsbilder an einem Ausgang 1134 bezeichnetwerden. Die Steuerinformationen, die von dem Block 1030 über eineSteuerleitung 1136 der Einrichtung 1132 zum Bewegungskompensierten inversen Filtern zugeführt werden, umfassen Informationendarüber,ob in einem Block eines Erweiterungsbildes Tiefpassinformationenoder Hochpassinformationen existieren. In dem Fall, in dem die Steuerinformationenanzeigen, dass in einem Block von Werten eines ErweiterungsbildesTiefpassinformationen statt Hochpassinfor mationen enthalten sind,wird bewirkt, dass in der Einrichtung 1132 bei der Erzeugungeines Blocks von Werten eines Ausgabebildes am Ausgang 1134 eineVerwendung eines Blocks von Werten des Basisbildes, der dem Blockin dem Erweiterungsbild zugeordnet ist, unterdrückt wird.
[0100] 2a zeigtein bevorzugtes Ausführungsbeispielder in 1a gezeigten codiererseitigenVorrichtung zum Verarbeiten einer Gruppe von Bildern. Insbesonderezeigt 2a einen bevorzugten Aufbauder Einrichtung 1102 zum blockweisen Bewegungs-kompensiertenFiltern, die prinzipiell dem in 3 oder 4 gezeigtenAufbau entspricht, die sich jedoch darin unterscheidet, dass derPrädiktoroperatorP und vorzugsweise gleichzeitig auch der AktualisierungsoperatorU pro Block selektiv abgeschaltet werden, was unmittelbar darin resultiert,dass in ein Erweiterungsbild bzw. in einem Block eines Erweiterungsbildeshk Tiefpassinformationen geschrieben werden,also Informationen eines Bildes der ursprünglichen Gruppe von Bilder,ohne dass die Prädiktoroperationstattfindet, da dann das Signal am Ausgang des PrädiktoroperatorsP gleich Null ist.
[0101] DieEinrichtung 1102 umfasst insbesondere zunächst einePrädiktionseinrichtung,die zum einen den PrädiktorblockP 43, sowie den Addierer 44 umfasst. Ferner istdie Einrichtung 1102 mit einer Aktualisierungseinrichtungversehen, die den Aktualisierungsoperatorblock 45 sowieden Addierer 46 umfasst. Die anderen Elemente entsprechenden in 4 gezeigten Elementen und haben die gleichen Funktionalitäten.
[0102] Beidem bevorzugten Ausführungsbeispielder vorliegenden Erfindung wird dem Prädiktoroperator 43, wiees nachfolgend noch ausgeführtwird, pro Block ein Bewegungsvektor m zugeführt, der von einer Bewegungsvektorermittlungseinrichtungpro Block, die in 2a mit 1140 bezeichnetist, stammt. Prinzipiell hat eine Folge von „Bewegungsvektorinformationen" ein Aussehen, wiees in einer Tabelle 1142 in 2a dargestelltist. Einem Blockindex i, j, k ist ein Signal mi, „Null", mk zugeordnet.Wird von dem Lifting-Schema 1102 gerade ein Block verarbeitet,für denherausgefunden worden ist, dass eine Bewegungskompensation einen Nutzenhat, wird also von der Nutzenberechnungseinrichtung 1108 signalisiert,dass die Bewegungskompensation in Ordnung ist, so erhält der Bewegungsvektormi den berechneten Wert, und der Prädiktoroperator 43 führt eineentsprechende Prädiktionunter Verwendung der Bewegungsvektorinformationen, also eine Bewegungs-kompensiertePrädiktiondurch. Wird dagegen fürden Block mit dem Index j von der Nutzenberechnungseinrichtung eineMakroblockmodus-Flag übereine Flag-Leitung 1144 der Steuereinrichtung 1104 signalisiert,so ist diese wirksam, um statt des Bewegungsvektors m oder als Prädiktor-Informationein Null-Signal dem Block zuzuordnen. Dieses Null-Signal signalisiertdem Prädiktoroperator 43,dass er ausgangsseitig keine Werte bzw. Null-Werte ausgeben soll,so dass von dem Signal am oberen Eingang des Addierers 44 nichts subtrahiertwird. Damit wird der beobachtete Block unmittelbar von dem Eingang 1100 über denvorzugsweise vorgesehenen Multiplizierer 47 in den entsprechendenBlock des Erweiterungsbildes eingetragen. Damit wird die Prädiktionunterdrückt,und es werden Tiefpassinformationen in einen Block des Erweiterungsbildesgeschrieben, das normalerweise Hochpassinformationen habe würde.
[0103] Vorzugsweisewird keine separate Aktualisierungsoperator-Information für den Aktualisierungsoperator 45 erzeugt. Stattdessen wird der Aktualisierungsoperator, wie es in 2a durcheine gestrichelte Linie 1146 dargestellt ist, vom Prädiktionsoperatorabgeleitet. In diesem Fall würdedann der Aktualisierungsoperator 45 ebenfalls ein Null-Signal erhalten,so dass der entsprechende Block des anderen Bildes der beiden Bilder,die durch die Einrichtung 1102 zusammen verarbeitet werden,unverändert,also ohne Aktualisierung in das Basisbild eingetragen wird. Nachdembei dem bevorzugten Ausführungsbeispielder Aktualisierungsoperator unmittelbar aus dem Prädiktionsoperatorabgeleitet wird, genügtes, nur einen zu-Null-gesetzten Prädiktionsoperator zu signalisieren,so dass automatisch mit einem Null-signalisierten Prädiktionsoperatorauch der zugeordnete Aktualisierungsoperator für diesen Block zu Null gesetztwird.
[0104] 2b zeigtdas entsprechende Szenario auf Decodiererseite. Der von der Steuereinrichtung 1104 in 2a beidem bevorzugten Ausführungsbeispielausgegebene Datenstrom wird entsprechend wieder dem Prädiktionsoperator 43 zugeführt, derwiederum dazu verwendet wird, um den entsprechenden Aktualisierungsoperator 45 abzuleiten,wie es durch eine gestrichelte Linie 1150 dargestellt ist.Erhältder Prädiktionsoperator 43 für den Blockmit dem Blockindex i ein Bewegungsvektorsignal mi,so führter zusammen mit dem Aktualisierungsoperator für diesen Block seine normaleOperation durch. Wird dagegen fürden Block mit dem Index j beispielsweise ein Null-Signal dem Prädiktionsoperator 43 zugeführt, soführt diesdazu, dass die Additionen durch die Addierer 52 und 53 wirkungslossind, so dass bei einer Erzeugung eines Blocks von Werten einesAusgabebildes eine Verwendung eines Blocks von Werten des Basisbildeslk unterdrückt wird, da im Erweiterungsbildhk bzw. in dem be trachteten Block des Erweiterungsbildesohnehin schon Tiefpassinformationen stehen.
[0105] Wiees späternoch dargelegt werden wird, zeigt 5a bis 5d verschiedeneAusgestaltungen der Prädiktionsoperatoren,die, wie es insbesondere in c zu sehenist, bei der Berechnung des Prädiktoroperatorsdie Bewegungsvektoren m berücksichtigen.Es sei darauf hingewiesen, dass dann, wenn ein „Null-Wert" signalisiert wird, sowohl der PrädiktionsoperatorP als auch der Aktualisierungsoperator U komplett zu Null gesetztwerden, wie es in 5d dargestellt ist.
[0106] Nachfolgendwird zunächstBezug nehmend auf die 16, 17a und 17b eine bevorzugte Anwendung der vorliegendenErfindung fürein System mit örtlicherSkalierbarkeit dargestellt. Insbesondere anhand der 6a und 6b wirdauf ein bevorzugtes Ausführungsbeispielder vorliegenden Erfindung Bezug genommen, bei dem dann, wenn Tiefpassinformationenin einem Block des Erweiterungsbildes bestehen, wenn das Erweiterungsbildalso Intra-Blöckeumfasst, zur weiteren Datenkomprimierung eine Prädiktion von einer niedrigerenSkalierungsschicht zu einer höherenSkalierungsschicht durchgeführtwird, so dass als Tiefpassinformation im Erweiterungsbild nichtgenau der Bildausschnitt des ursprünglichen Bildes der Gruppevon Bildern übertragenwird, sondern lediglich ein Prädiktionsrestsignal,wie es späternoch dargelegt wird.
[0107] 16 zeigteine schematische Darstellung einer Vorrichtung zum Erzeugen einesskalierten Datenstroms aus einer Gruppe von zeitlich aufeinanderfolgendenBildern, mit einer ersten Auflösung,die an einem Eingang 1000 anliegen. Die Gruppe von zeitlichaufeinanderfolgenden Bildern wird einer Einrichtung 1002 zum Umsetzender Bilder in eine zweite Auflösungzugeführt.Die in die zweite Auflösungumgesetzten Bilder, wobei die zweite Auflösung kleiner als die ersteAuflösungist, werden einer Einrichtung 1004 zum Codieren zugeführt, wobeidie Einrichtung 1004 zum Codieren ausgebildet ist, um gemäß dem StandardH.264/AVC zu arbeiten, also eine Makroblock-weise Transformation,Skalierung und Quantisierung mit einer bestimmten Quantisiererschrittweiteund eine nachfolgende Entropie-Codierung durchzuführen, sodass sich ausgangsseitig die erste Skalierungsschicht mit den Makroblock-weisetransformierten Transformationskoeffizienten samt den entsprechendenSeiteninformationen ergibt.
[0108] Dieerste Skalierungsschicht am Ausgang 1006 kann nunmehr einerEinrichtung 1008 zum Dekodieren zugeführt werden, wobei die Einrichtung 1008 ausgebildetist, um eine zur Einrichtung 1004 inverse Verarbeitungdurchzuführen.Es kann jedoch auch die mit der zweiten Auflösung vorliegende Gruppe vonBildern am Ausgang der Einrichtung 1002 einer Einrichtung 1010 zumUmsetzen der Bilder in eine dritte Auflösung zugeführt werden, wobei die Einrichtung 1010 eineHilfsdarstellung der Bilder mit der dritten Auflösung liefert, wobei die dritteAuflösunggrößer alsdie zweite Auflösungund kleiner oder gleich der ersten Auflösung ist. Ist die Einrichtung 1010 ausgebildet,um die Bilder in eine dritte Auflösung umzusetzen, die nichtgleich der ersten Auflösungist, so ist auch eine Einrichtung 1012 vorgesehen, um dieursprünglicheGruppe von Bildern am Eingang 1000 in eine Version derBilder mit der dritten Auflösungumzusetzen. Die Hilfsdarstellung am Ausgang der Einrichtung 1010 wirdnicht unbedingt zur Erzeugung der 2. Skalierungsschicht benötigt. Diesist der Fall, wenn die Einrichtung 1016 keine Prädiktiondurchführt.Es wird jedoch bevorzugt, dass die Einrichtung 1016 einePrädiktionder Tiefpassbilder und auch von Intra-Blöcken in Hochpassbildern vornimmt,so dass die Einrichtungen 1010 und ggf. 1008 benötigt werden.
[0109] DieVersion mit der dritten Auflösung,die eine reduzierte örtlicheAuflösunghat, wenn die dritte Auflösungkleiner als die erste Auflösungist, oder die dieselbe Auflösunghat, wie die ursprünglicheGruppe von Bildern, wenn die dritte Auflösung gleich der ersten Auflösung ist,wird einer Einrichtung 1014 zum Bewegungs-kompensiertenzeitlichen Filtern zugeführt.Die Einrichtung 1014 zum Bewegungskompensierten zeitlichenFiltern der Gruppe von Bildern in der ersten Auflösung odereiner Gruppe von Bildern mit einer bezüglich der ersten Auflösung reduziertendritten Auflösungliefert ein Basisbild und wenigstens ein Erweiterungsbild, wobeidas Basisbild Tiefpassinformationen aus der Gruppe von Bildern aufweist,und wobei das Erweiterungsbild Hochpassinformationen aus der Gruppevon Bildern aufweist.
[0110] DieEinrichtung 1014 liefert somit das "Rohmaterial" fürdie zweite Skalierungsschicht, wobei dieses Rohmaterial einer Einrichtung 1016 zumVerarbeiten zugeführtwird, um schließlichan einem Ausgang 1018 eine zweite Skalierungsschicht zuerhalten.
[0111] 17a zeigt eine schematische Darstellung der in 16 gezeigtenVorrichtung zum Erzeugen des skalierten Datenstroms für binär-gewichteteAuflösungen.Dabei ist die Einrichtung 1002 ausgebildet, um eine Dezimierungum den Faktor 4 durchzuführen.Die Einrichtung 1010 zum Umsetzen in die dritte Auflösung ist ausgebildet,um ein Upsampling vorzugsweise durch ein Interpolationsfilter umden Faktor 2 durchzuführen. Dadie Auflösungder Bilder am Ausgang der Einrichtung 1010 halb so groß ist wiedie ursprünglicheAuflösung derBilder am Eingang 1000, liefert die Einrichtung 1012 einDownsampling um den Faktor 2, so dass die zweite Skalierungsschichtam Ausgang des Codierers 1016 bereits eine Darstellungder Gruppe von Bildern mit der örtlichenAuflösung1/2 liefert. Ferner sind in 17a optionaleDecodierer 1005, 1015 gezeigt, die vorzugsweisedann verwendet werden, wenn in den Codierern 1004 und 1016 eineverlustbehaftete Codierung eingesetzt wird. Wird dagegen eine verlustloseCodierung eingesetzt, so müssendie Decodierer nicht unbedingt verwendet werden.
[0112] Einedritte Skalierungsschicht wird – wennim Codierer 1024 eine Layer-übergreifende Prädiktioneingesetzt wird, dadurch erreicht, dass das Eingangssignal in denCodierer 1016 wiederum in einem Upsampler 1020 umden Faktor 2 in der Auflösungheraufgesetzt wird, wieder beispielsweise durch Interpolation. DasAusgangssignal der Einrichtung 1020 wird dann dem Codierer 1024 zuPrädiktionszweckenzugeführt.Aus der MCTF-Einrichtung 1022 erhält der Codierer 1024 nunmehrBasisbilder und Erweiterungsbilder, die aus der bewegungskompensiertenzeitlichen Filterung der am Eingang 1000 anliegenden Bildererhalten werden. Die dritte Skalierungsschicht hat (abgesehen vonder vorzugsweise durchgeführtenLayer-übergreifendenPrädiktion)sämtlicheInformationen, um die volle 1/1-Auflösung zu erreichen. Aus diesemGrunde werden die zweite und die dritte Skalierungsschicht auchals Enhancement-Layers bezeichnet, während die erste Skalierungsschichtals Basis-Layer bezeichnet wird.
[0113] Andieser Stelle sei darauf hingewiesen, dass die erste Skalierungsschichtam Ausgang 1006 in 17a nichtunbedingt die Basisschicht sein muss, sondern z.B. eine Erweiterungsschichteines übergeordnetenzeitlichen Skalierungsschema oder natürlich auch die Basisschichtdes übergeordnetenzeitlichen Skalierungsschemas. Ein solches Szenario würde sichergeben, wenn mehrere aufeinanderauffolgende Tiefpassbilder am Ausgang 28b desskalierbaren zeitlichen Codierers in 3 dem Eingang 1000 zugeführt würden. Selbstverständlich kanndas in 16 und 17a danngezeigte Konzept auch dazu verwendet werden, um z.B. eine Folgevon zeitlich aufeinanderfolgenden Hochpassbildern beispielsweiseder dritten Ebene am Ausgang 75 von 3 einer örtlichenSkalierung zu unterziehen.
[0114] Selbstverständlich könnte daserfindungsgemäße Konzeptder örtlichenSkalierbarkeit auch mit einer übergeordnetenSNR-Skalierungsschichtkombiniert werden, die sich von einer darunter- oder darüberliegendenSNR-Skalierungsschicht dahingehend unterscheiden würde, dasseine andere Quantisiererschrittweite eingestellt worden ist, alseine darunterliegende Skalierungsschicht (gröbere Quantisiererschrittweite)oder eine darüberliegendeSkalierungsschicht (eine feinere Quantisiererschrittweite). Diesesbevorzugte Ausführungsbeispielwird durch den weiteren Decodierer 1021, den Subtrahierer 1023 undden weiteren Codierer 1025 in 17a dargestellt.Der Codierer 1024 und der Codierer 1025 unterscheidensich durch unterschiedlich grobe Quantisiererschrittweiten (QSW),wobei q1 eine grobe Schrittweite darstelltund wobei q2 eine feine Schrittweite darstellt.Die 4. SNR-Schicht hat also die gleich örtliche Auflösung wiedie dritte Schicht, wurde aber gröber quantisiert. Ferner istin der 4. Schicht im Gegensatz zu den anderen Schichten ein Differenzsignal (Element 1023)enthalten, das auf Decodiererseite durch Summation mit der decodiertenVersion der 3. Schicht addiert wird, um mit dem Ergebnis der Additiondann die inverse zeitliche Filterung durchzuführen.
[0115] Darüber hinaussei darauf hingewiesen, dass die Umsetzung in verschiedene Auflösungen nichtunbedingt durch geradzahlige Faktoren oder Potenzen von 2 durchgeführt werdenmuss. Prinzipiell könnenbeliebige Auflösungs-Umsetzungenerreicht werden, wenn entsprechende Dezimierungs/Interpolations-Filter eingesetztwerden.
[0116] Fernersei darauf hingewiesen, dass es erfindungsgemäß bevorzugt wird, für das Downsamplingeine Tiefpaßfilterungmit nachfolgender Unterabtastung zu verwenden.
[0117] Entsprechendwird es bevorzugt, das Upsampling durch Interpolation durchzuführen. Damitwird ein interpolierter Abtastwert aus einem oder mehreren benachbartenvorhandenen Abtastwerten berechnet. Daraus ist zu sehen, dass durchDezimierung selbstverständlichInformation verloren geht (und damit auch eine Skalierungsschichtmit geringerer Datenrate erzeugt wird), und dass durch das Rekonstruierendiese Information nicht wiedergewonnen werden kann, sondern nurirgendwie approximiert wird.
[0118] 17b zeigt ein schematisches Blockschaltbild einesDecodierers bzw. einer Vorrichtung zum inversen Verarbeiten einesskalierten Datenstroms mit mehreren Skalierungsschichten an Eingängen 1030, 1032, 1034 und 1035.Es sei darauf hingewiesen, das in normalen Anwendungen den Eingängen 1030, 1032, 1034, 1035 einBitstrom-Demultiplexer vor geschaltet ist, der aus einem gemeinsamenskalierten Datenstrom die einzelnen Schichten extrahiert. War derKanal nur so schmalbandig, dass nur z.B. die erste und die zweiteSkalierungsschicht im Bitstrom enthalten sind, würde der dritte Eingang 1034 imHinblick auf die Einspeisung von Bilddaten "leer" ausgehen.
[0119] Dieerste Skalierungsschicht wird einem Decodierer DEC1 1036 zugeführt. DerDecodierer 1036 ist ausgebildet, um genauso wie ein Decodierer 1038 dieentsprechende empfangene Skalierungsschicht zu decodieren, alsodie zu den Codierern 1004 und 1016 von 17a dann inversen Verarbeitungsschritte durchzuführen. DieseSchritte umfassen eine inverse Skalierung, eine Requantisierungund eine inverse Transformation.
[0120] Jenach Ausführungsformist dem Decodierer 1038 und möglicherweise auch dem Decodierer 1036 eineInvers-Weiterverarbeitungseinrichtung(WV) 1040 nachgeschaltet, die abhängig von bestimmten SteuerinformationenCTRL, wie sie im Nachfolgenden noch erläutert werden, z. B. eine Intra-Prädiktionfür Basisbilderoder ggf. Erweiterungsbilder rückgängig macht.Die Ausgangssignale der Weiterverarbeitungseinrichtung 1040 werdendann einer Einrichtung (1042) zum Bewegungs-kompensierteninversen Filtern des Basisbildes und des Erweiterungsbildes, umdie Gruppe von Ausgangsbildern zu erhalten, zugeführt.
[0121] DerUmsetzer ist in 17b als einfacher Upsamplergezeigt und hat das Bezugszeichen 1044. Damit ergibt sicham Ausgang der Einrichtung 1042 eine Folge von Bildernmit halber Auflösungbei dem in 17b gezeigten Ausführungsbeispiel,währendvom Ausgang des ersten Decodierers 1036 lediglich eineFolge der Bilder mit der viertelten Auflösung vorhanden ist.
[0122] Umschließlichdie Bilder mit voller Auflösungwieder zu gewinnen, sind ein weiterer Decodierer 1046, einweiterer ggf. vorgesehener Upsampler 1048 sowie eine weitereMCTF-1-Einrichtung 1050 undeine Weiterverarbeitungseinrichtung WV 1041 vorgesehen,wobei die Einrichtung 1050 ausgangsseitig die Bilder mitder vollen Auflösungwiedergibt. Es sei darauf hingewiesen, dass möglicherweise erforderlicheDelays, damit die Prädiktorensynchron bezogen auf die Abtastwerte arbeiten, in 17b (sowie in 17a oder 16)aus Übersichtlichkeitsgründen nichteingezeichnet sind.
[0123] Essei darauf hingewiesen, dass die Weiterverarbeitungseinrichtungen 1040 und 1041 dannbenötigt werden,wenn eine Prädiktionvon Tiefpassbildern oder Intra-Blöcken in Hochpassbildern der2. Skalierungsschicht unter Verwendung von Daten (Bildern) der erstenSkalierungsschicht verwendet werden soll.
[0124] 17b zeigt ferner die Wiedergewinnung der in 17a gezeigten 4. Skalierungsschicht, wobei hierfür der Addierer 1049 unddie weitere MCTF-1-Einrichtung 1051 vorgesehensind, und wobei die beim Encodieren verwendeten Quantisierer-Schrittweitenq1 und q2 in denDecodierern 1046 und 1047 benötigt werden.
[0125] Nachfolgendwird Bezug nehmend auf die 4 und dienachfolgenden 5a–5d aufdie bevorzugte Ausführungsformdes bewegungskompensierten Prädiktionsfilterseingegangen. Wie es bereits ausgeführt worden ist, besteht dasbewegungskompensierte zeitliche Filter (MCTF; MCTF = motion compensated temporalFilter) aus einem allgemeinen Liftingschema mit drei Schritten,nämlichder Polyphasenzerlegung, der Prädiktionund der Aktualisierung. In 4 ist dieentsprechende Analyse/Synthese-Filterbankstruktur gezeigt. Auf derAnalysesseite werden die ungeraden Abtastwerte eines gegebenen Signalsdurch eine lineare Kombination der geradzahligen Abtastwerte unterVerwendung des PrädiktionsoperatorsP und eines Hochpassignals H auf die Prädiktionsrestwerte gefiltert.Ein entsprechendes Tiefpassignal 1 wird durch Addieren einer Linearkombinationder Prädiktionsrestwerteh mit den geradzahligen Abtastwerten des Eingangssignals s unterVerwendung des Aktualisierungsoperators gebildet. Der gleichungsmäßige Zusammenhangder in 4 gezeigten Größen h undl sowie der prinzipiellen Ausführungsformender Operatoren P und U ist in 5a gezeigt.
[0126] Dasowohl der Prädiktionsschrittals auch der Aktualisierungsschritt vollständig invertierbar sind, kann dieentsprechende Transformation als kritisch abgetastete Perfektrekonstruktionsfilterbankbetrachtet werden. Die Synthesefilterbank umfasst die Anwendungdes Prädiktionsoperatorsund des Aktualisierungsoperators in umgekehrter Reihenfolge mitden invertieren Vorzeichen im Summationsprozess, wobei die geradenund die ungeraden Polyphasenkomponenten verwendet werden. Für eine Normierungder Hochpass/Tiefpass-Komponentenwerden entsprechende Skalierungsfaktoren Fl undFh verwendet. Diese Skalierungsfaktorenmüssen nichtunbedingt verwendet werden, sie können jedoch eingesetzt werden,wenn Quantisiererschrittgrößen während derCodierung ausgewähltwerden.
[0127] Eszeigt f[x,k] ein Videosignal mit den Raumkoordinaten x = (x,y)T, wobei k die Zeitkoordinate ist. Der PrädiktionsoperatorP und der Aktualisierungsoperator U für die zeitliche Zerlegung unterVerwendung der Liftingdarstellung des Haar-Wavelets ist gegeben, wie es links in 5b gezeigtist. Fürdie 5/3-Transformation ergeben sich die entsprechenden Operatorenso, wie es rechts in 5b gezeigt ist. Die Erweiterungauf die bewegungskompensierte zeitliche Filterung wird durch Modifikationdes Prädiktionsoperatorsund des Aktualisierungsoperators wie in 5c gezeigt,erreicht. Besonders sei auf die Referenzindizes r > 0 verwiesen, die eineallgemeine Bild-adaptive bewegungskompensierte Filterung erlauben.Durch diese Referenzindizes kann sichergestellt werden, dass beidem in 4 dargestellten Szenario nicht immer lediglichzwei zeitlich unmittelbar aufeinanderfolgende Bilder in ein Hochpassbildund in ein Tiefpassbild zerlegt werden, sondern dass zum Beispielein erstes Bild mit einem dritten Bild einer Sequenz bewegungskompensiertgefiltert werden kann. Alternativ ermöglich die geeignete Wahl derReferenzindizes, dass z. B. auch ein und dasselbe Bild einer Folgevon Sequenzen dazu verwendet werden kann, als Basis für den Bewegungsvektorzu dienen. Dies bedeutet, dass die Referenzindizes beispielsweisebei einer Folge von acht Bildern ermöglichen, dass alle Bewegungsvektorenz. B. auf das vierte Bild dieser Folge bezogen sind, so dass sicham Ende durch Verarbeitung dieser acht Bilder durch das Filterschemain 4 ein einziges Tiefpassbild ergibt, und dass sichsieben Hochpassbilder (Erweiterungsbilder) ergeben, und dass sämtlicheBewegungsvektoren, wo bei jedem Bewegungsvektor ein Erweiterungsbildzugeordnet ist, auf ein- und dasselbe Bild der ursprünglichenSequenz beziehen.
[0128] Wennsomit ein- und dasselbe Bild einer Sequenz als Referenz für die Filterungmehrerer weiterer Bilder verwendet wird, führt dies zu einer nicht demFaktor 2 gehorchenden zeitlichen Auflösungsskalierung, was für bestimmteAnwendungen von Vorteil sein kann. Es wird in den unteren Zweigder Analyse-Filterbank in 4 immerdasselbe Bild, nämlichbeispielsweise das vierte Bild der Folge aus acht Bildern, eingespeist.Das Tiefpassbild ist bei jeder Filterung dasselbe, nämlich dasletztendlich erwünschteeinzige Tiefpassbild der Folge von Bildern. Wenn der AktualisierungsparameterNull ist, wird das Basisbild einfach durch den unteren Zweig gewissermaßen "durchgeschleust". Dagegen ist dasHochpassbild immer abhängigvon dem entsprechenden anderen Bild der ursprünglichen Folge und dem Prädiktionsoperator,wobei der zu diesem Eingangsbild zugehörige Bewegungsvektor bei derPrädiktionverwendet wird. In diesem Fall kann man daher sagen, dass das letztendlicherhaltene Tiefpassbild einem bestimmten Bild der ursprünglichenFolge von Bildern zugeordnet ist, und dass auch jedes Hochpassbildeinem Bild der ursprünglichenFolge zugeordnet ist, wobei genau die Abweichungen des ursprünglichenBilds der Folge (einer Bewegungskompensation) von dem gewählten Basisbildder Folge (das in dem unteren Zweig der Analyse-Filterbank von 4 eingespeistwird) entspricht. Wenn jeder Aktualisierungsparameter M01,M11, M21 und M31 gleich Null ist, führt dies dazu, dass das in denunteren Zweig 73 der vierten Ebene eingespeiste Bild einfachnach unten „durchgeschleift" wird. Das TiefpassbildTP1 wird gewissermaßen "wiederholt" in die Filterbankeingespeist, währenddie anderen Bilder – gesteuertdurch die Referenzindizes – nachund nach in den Eingang 64 von 3 eingeführt werden.
[0129] Wiees aus den vorstehenden Gleichungen zu sehen ist, liefern die Prädiktions-bzw. Aktualisierungsoperatoren fürdie bewegungskompensierte Filterung für die zwei verschiedenen Waveletsunterschiedliche Prädiktionen.Wenn das Haar-Wavelet verwendet wird, wird eine unidirektionalebewegungskompensierte Prädiktionerreicht. Wird dagegen das 5/3-Spline-Wavelet eingesetzt, so spezifizierendie beiden Operatoren eine bidirektionale bewegungskompensiertePrädiktion.
[0130] Dadie bidirektionale kompensierte Prädiktion allgemein die Energiedes Prädiktionsrestwertsreduziert, jedoch die Bewegungsvektorrate im Vergleich zu einerunidirektionalen Prädiktionerhöht,ist es wünschenswert,dynamisch zwischen der unidirektionalen und der bidirektionalenPrädiktionhin- und herzuschalten, was bedeutet, dass zwischen einer Liftingdarstellungdes Haar-Wavelets und des 5/3-Splin-Wavelets abhängig von einem bildabhängigen Steuersignalhin- und hergeschaltet werden kann. Das erfindungsgemäße Konzept,das keine geschlossene Rückkopplungsschleifezur zeitlichen Filterung verwendet, erlaubt ohne weiteres diesemakroblockweise Hin- und Herschaltung zwischen zwei Wavelets, waswiederum der Flexibilität undinsbesondere der Datenrateneinsparung dient, die optimal signalangepasstdurchführbarist.
[0131] Umdie Bewegungsfelder oder allgemeiner gesagt die PrädiktionsdatenfelderMP und MU darzustellen, kannvorteilhafterweise auf die bestehende Syntax der B-Slices in H.264/AVCzurückgegriffenwerden.
[0132] Fernerwird es bevorzugt, die Aktualisierungsoperatoren und die Prädiktionsoperatorenmakroblockweise zu deaktivieren.
[0133] Jenach Gestalt des Makroblocks, insbesondere eines Bildes (am Ausgangder Einrichtung 1014 in 16) istbevorzugt, diese beiden Operatoren durch Null-Setzung zu deaktivieren,wie es in 5d gezeigt ist. Diese Betriebsweisewird das INTRA-Makroblock-Modus bezeichnet. Ein solcher Modus imPrädiktionsdatenarrayMP spezifiziert, dass in dem entsprechendenPrädiktionsschrittauf Analyseseite die Makroblockabtastwerte des ursprünglichenTiefpasssignals in das Hochpassbild platziert werden. Für den Aktualisierungsschrittzeigt der INTRA-Makroblock-Modus im Prädiktionsdatenarray MU an, dass auf die Aktualisierung des Tiefpasssignalsverzichtet wird, und zwar fürden entsprechenden signalisierten Makroblock. Es sei darauf hingewiesen,dass Bewegungsvektoren des PrädiktionsdatenarraysMU, die in den Aktualisierungsschrittenverwendet werden, einen Bereich in Hochpassbildern (Erweiterungsbildern)referenzieren können,der teilweise oder vollständigeinen INTRA-Makroblock umfasst. Da die INTRA-Makroblöcke in demHochpassbild nicht zum Aktualisieren der Tiefpassbilder verwendetwerden sollten, werden alle Abtastwerte in den INTRA-Makroblöcken für die Verwendungim Aktualisierungsprozess auf Null gesetzt. Die Verwendung des INTRA-Makroblock-Moduserhöhtdie Codiereffizienz, besonders fürSequenzen mit starker lokaler Bewegung oder für Sequenzen, bei denen voneinem Bild zum anderen bild ein Bildbereich aufgedeckt wird, derim vorherigen Bild verdeckt war.
[0134] DieVerwendung des INTRA-Makroblock-Modus erlaubt ferner, wie es nochbezugnehmend auf die 6a, 6b undinsbesondere 13 erläutert wird, die Erweiterungder Prädiktionnicht nur auf Basisbilder (Tiefpassbilder) (L1),sondern auch auf INTRA-Makroblöckein Hochpassbildern (Erweite rungsbildern), für die normalerweise keine PrädiktionSinn machen würde.
[0135] Beieinem bevorzugten Ausführungsbeispielwird die Bitrate reduziert, indem nur die Prädiktionsdatenarrays MP übertragenwerden, nicht jedoch die PrädiktionsdatenarraysMU, die in den Aktualisierungsschrittenverwendet werden. Statt dessen werden sie von den PrädiktionsdatenarraysMP, die in den Prädiktionsschritten derselbenZerlegung/Zusammensetz-Stufeverwendet werden, abgeleitet.
[0136] ZurVerwendung des zeitlichen Zerlegungsschemas, das Bezug nehmend aufdie 3 bis 5d erläutert wordenist, und das n Zerlegungsstufen hat, wird eine Gruppe von no Eingangsbildernin Nn > 0Tiefpassbilder und N0 – Nn Hochpassbilderzerlegt. Der Prädiktionsprozessfür dieGruppe von Eingangsbildern wird durch N0 – Nn PrädiktionsdatenfelderMP spezifiziert, die in den Prädiktionsschrittenund fürdie Ableitung der Aktualisierungsdatenfelder MU für die Aktualisierungsschritteverwendet werden. Ferner werden mehrere Steuerparameter mit Blickauf die Tiefpasspartitionierung, die Unterdrückung des Aktualisierungsschrittsund die Anzahl von aktiven Referenzindizes für jedes Prädiktionsdatenarray MP benötigt.Ferner werden neben den Steuerparametern, die als Teil innerhalbder Slice-Header codiert werden, die N0 – Nn Prädiktionsdatenfelder MP und Approximierungen für die Nn Tiefpassbilderund die N0 – Nn Hochpassbilder übertragen.Um diese Daten auf sogenannte NAL-Einheiten abzubilden, wird vorzugsweiseauf die Slice-Layer-Syntax von H.264/AVC zurückgegriffen.
[0137] ImBlick auf die Hochpassbilder wird darauf hingewiesen, dass die Hochpassbilderoder Erweiterungsbilder INTRA- Makroblöcke undnormale Residual-Makroblöckeumfassen, wobei die Position der INTRA-Makroblöcke auf das entsprechende PrädiktionsdatenfeldMP spezifiziert ist. Da die Residualmakroblöcke Prädiktionsfehlerdarstellen, wird die Restwertecodierung, wie sie im H.264/AVC Standardspezifiziert ist, einschließlichder Transformation, Skalierung und Quantisierung verwendet. DieINTRA-Makroblöckestellen dagegen gewissermaßenursprünglicheAbtastwerte dar, weshalb die INTRA-Codierung, wie sie in H.264/AVCspezifiziert ist, verwendet wird, einschließlich der INTRA-Prädiktionund Transformation, Skalierung und Quantisierung. Für die Codierungder INTRA-Makroblöckewerden alle INTRA-Makroblock-Modi,die in H.264/AVC spezifiziert sind. Da jedoch INTRA-Makroblöcke nichtaus benachbarten Residual-Makroblöcken prädiziert werden sollen, wirdein entsprechendes Flag gesetzt.
[0138] Tiefpassbilderkönnenals Originalbilder interpretiert werden, und sie werden allgemeingesagt unter Verwendung der Syntax von H.264/AVC codiert. In dereinfachsten Version werden alle Tiefpassbilder unabhängig alsINTRA-Bilder unter Verwendung von lediglich I-Slices codiert. Allgemeinkann auch nur das erste Tiefpassbild einer Gruppe von Bildern alsINTRA-Bild codiert werden, und alle verbleibenden Tiefpassbilder innerhalbdieser Gruppe von Bildern werden als prädiktive Bilder unter Verwendungirgendeiner Kombination von I-, P- und B-Slices codiert, wobei vorhergehendeTiefpassbilder derselben Gruppe von Bildern als Referenz für die bewegungskompensiertePrädiktionverwendet werden können.Falls die Zerlegung einer Gruppe von Bildern derart durchgeführt wird,dass mehr als ein Tiefpassbild erhalten wird, wird eine erhöhte Codiereffizienzerreicht, wobei immer noch eine Zugriffsmöglichkeit auf Ebene der Gruppevon Bildern geschaffen wird, da ein beliebig wählbarer Zugriff nur für ein INTRA-Bildstattfinden kann.
[0139] Besondersfür Sequenzenmit hohem örtlichenDetail und langsamer Bewegung kann die Codiereffizienz erhöht werden,wenn Korrelationen zwischen aufeinanderfolgenden Gruppen von Bildernausgenutzt werden. Somit werden allgemein gesagt alle Tiefpassbilderals prädiktiveBilder (I-, P- oder B-Slices) codiert, wobei rekonstruierte Tiefpassbildereinschließlichder Tiefpassbilder der vorhergehenden Gruppe als Referenz verwendetwerden. IDR-Bilder (INTRA-Bilder) werden in regelmäßigen Intervalleneingefügt,um direkt Zugriffspunkte zu liefern. Auf Decodiererseite werdenTiefpassbilder decodiert und rekonstruiert, wie es gemäß H.264/AVCspezifiziert ist, und zwar einschließlich der Deblocking-Filter-Operation.
[0140] Wiees bereits ausgeführtworden ist, liefert die zeitliche Zerlegung, die im Hinblick auf 3 und 4 dargestelltworden ist, eine zeitliche Skalierbarkeit. Wenn n Zerlegungsstufen(in 3 ist n gleich 4) verwendet werden, können biszu n Ebenen einer zeitlichen Skalierbarkeit geschaffen werden.
[0141] Für Gruppenvon N0 > 2Bildern ist es im Allgemeinen vorteilhaft, eine Multikanalzerlegunganstatt einer Zweikanalzerlegung zu verwenden. Daher wird die dargestellteZweikanalzerlegung iterativ auf den Satz von Tiefpassbildern angewendet,bis ein einziges Tiefpassbild erhalten wird, oder bis eine gegebeneAnzahl von Zerlegungsstufen angewendet worden ist. Das Anwendenvon n-Zerlegungsstufen kann bis zu n Ebenen einer zeitlichen Skalierbarkeitrealisiert werden. Bei dem in 12 gezeigtenBeispiel werden vier zeitliche Skalierbarkeitsebenen verwendet.Insbesondere wird eine zeitliche Zerlegung von einer Gruppe vonzwölf Bildernzur Verwendung von drei Stufen erreicht, wobei die Basisschichtals Skalierbarkeitsstufe mitgezähltwird.
[0142] Wennnur die Tiefpassbilder L3 verwendet werden,die nach der dritten (höchsten)Zerlegungsstufe ermittelt werden, hat die Bildsequenz aus lediglichden Bildern L3 für mehrere Gruppen 1/12 derzeitlichen Auflösungder Eingangssequenz. Diese Bildsequenz wird auch als zeitliche Basisschichtbezeichnet. Durch zusätzliches Übertragender Hochpassbilder H3 und der entsprechendenPrädiktionsdatenfelder,die diesen Hochpassbildern (Erweiterungsbildern) zugeordnet sind,kann der Decodierer eine Approximation der Bildsequenz rekonstruieren,die ein Viertel der zeitlichen Auflösung der Eingangssequenz hat.Die Hochpassbilder und die entsprechenden Prädiktionsdatenarrays MP 3 werden auch alserste zeitliche Verbesserungsschicht bezeichnet.
[0143] Durchweiteres Hinzufügender Hochpassbilder H2 und der PrädiktionsdatenarraysMP 2 kann eine Bildsequenzmit der halben zeitlichen Auflösungrekonstruiert werden. Schließlich,wenn auch die verbleibenden Hochpassbilder H1 unddie PrädiktionsdatenarraysM1 übertragenwerden, kann eine rekonstruierte Version der ursprünglichenEingangssequenz mit der vollen zeitlichen Auflösung erhalten werden. Allgemeinkann durch Verwendung von n Zerlegungsstufen die Zerlegungsstrukturderart entworfen werden, dass n Ebenen einer zeitlichen Skalierbarkeitgeliefert werden, mit zeitlichen Auflösungs-Umwandlungsfaktoren von1/m0, 1/(m0 m1), ..., 1/(m0 m1 ... mn-1), wobeimi irgend eine Ganzzahl größer als0 darstellt. Daher kann eine Bildsequenz in Gruppen von N0 = (j m0 m1 ... mn-1) Bilderncodiert werden, wobei j eine ganze Zahl größer als 0 ist. Es sei darauf hingewiesen,dass die Größe der Gruppevon Bildern innerhalb der Bildsequenz nicht unbedingt konstant sein muss.
[0144] Wenndie Abtastperiode zwischen aufeinander folgenden Bildern einer rekonstruiertenBildsequenz nicht konstant ist, ist auch eine zeitliche Skalierbarkeitmit mittleren zeitlichen Auflösungsumwandlungsfaktorenvon k0/m0, (k0 k1)/(m0 m1), ... (k0 k1... kn-1)/m0 m1 ... mn-1) möglich,wobei ki irgendeine ganze Zahl größer als 0darstellt, und wobei mi eine ganze Zahlgrößer alski und kleiner als 2 ki darstellt.In dem oben beschriebenen Fall muss eine Bildsequenz in Gruppenvon n0 = (j m0 m1 ... mn-1) Bilderncodiert werden, wobei j eine ganze Zahl größer als 0 ist.
[0145] DieStruktur mit offener Schleife des oben dargestellten Subband-Lösungsansatzeszur zeitlichen Skalierbarkeit liefert auch die Möglichkeit, eine SNR-Skalierbarkeiteffizient einzubauen. 14 zeigt den Fall verschiedenerSNR-Skalierungsschichtenund auch verschiedener örtlicher(spatial) Skalierungsschichten, bei dem sowohl in der Basisschichtals auch in den Erweiterungsschichten eine Prädiktion innerhalb der Skalierungsschichtender Basisbilder (Tiefpass-Bilder) durchgeführt werden kann. Besondersfür Videosequenzen miteinem hohen örtlichenDetail und langsamer Bewegung dient die Prädiktion zur Verbesserung derCodiereffizienz, wenn nicht nur für die Basisschicht, sondernauch fürdie Erweiterungsschichten fürdie Tiefpass-Bilder eine bewegungs-kompensierte Prädiktionzugelassen wird.
[0146] Während dieErweiterungsschicht-Darstellungen der Hochpass-Bilder ausschließlich von der unteren Skalierungsschichtprädiziertwerden, wie es durch die senkrechten gestrichel ten Pfeile in 14 dargestellt ist,könnenMakroblöckeder Tiefpassbilder in den Erweiterungsschichten sowohl aus der darunterliegenden Skalierungsschicht als auch aus vorher rekonstruiertenTiefpass-Bildern derselben Skalierungsschicht prädiziert werden. Alternativkönnenauch die INTRA-Modi, die im Standard vorgesehen sind, verwendetwerden. In 14 ist die Basisschicht-Prädiktiondurch gestrichelte Pfeile dargestellt, während die durchgezogenen Pfeileeine Bewegungs-kompensierte Prädiktiondarstellen, wobei die Prädiktionzwischen zeitlich aufeinander folgenden Basisbildern L durchgeführt werdenkann, oder wobei auch eine Prädiktionzwischen zeitlich weiter voneinander beabstandeten Basisbilderndurchgeführtwerden kann, wie es durch den langen durchgezogenen Pfeil bei jederSkalierungsschicht in 14 dargestellt ist. Es sei daraufhingewiesen, dass alternativ zu der in 14 dargestelltenAusführungsform,bei der eine Base-Layer-Prädiktionvon Tiefpaß-und Hochpassbildern der nächsten örtlich feinerenoder genauer quantisierten Skalierungsschicht aus entsprechendenTiefpaß-und Hochpassbildern der niedrigeren Schicht durchgeführt wird,auch insbesondere fürdie örtlicheSkalierungsschicht eine Rekonstruktion der niedrigeren Schicht durchinverse bewegungskompensierte Filterung durchgeführt werden kann, um dann mitden rekonstruierten Bildern das Tiefpassbild der höheren Schichtund Intra-Blöcke in denErweiterungsbildern der höherenSchicht zu prädizieren.
[0147] Dieerfindungsgemäße örtlicheSkalierbarkeit wird nachfolgend bezugnehmend auf die in 13 gezeigteDarstellung erläutert. 13 zeigteine örtlicheBasisschicht als Form einer rekonstruierten Sequenz ganz oben in 13 undeiner rekonstruierten und hochgetasteten Sequenz, wie sie am Ausgangder Einrichtung 1010 in 16 zumBeispiel vorliegt. Die Rekonstruktion der örtlichen Basisschicht hat beispielsweise unterVerwendung des Lifting-Schemas, wie es in 3 und 4 dargestelltworden ist, stattgefunden.
[0148] Alternativhat die Codierung der örtlichenBasisschicht auch unter Verwendung der normalen Standard H.264/AVC-Codierung stattgefunden.Die rekonstruierten Bilder L0 der Basisschichtwerden örtlichum den Faktor k/m abgetastet (k>m>1), so dass die rekonstruiertenBilder L0* mit derselben örtlichenAuflösungvorliegen wie die Bilder der nächsten örtlichenErweiterungsschicht. Diese abgetasteten Bilder werden erfindungsgemäß nunmehrzum Prädizierender INTRA-Makroblöckein den Subband-Bildern der nächsten örtlichenSkalierungsschicht verwendet. Es sei darauf hingewiesen, dass dieserfindungsgemäß immerfür dieMakroblöcke derTiefpass-Bilder durchgeführtwird, also zur Prädiktionvon L1. Aufgrund des erfindungsgemäß ermöglichten INTRA-Modus, bei dem dieOperatoren P und O deaktiviert werden können, können auch mehrere Makroblöcke innerhalbder Hochpass-Bilder im INTRA-Modus codiert werden. Diese INTRA-Makroblöcke sindin 13 als graue Rechtecke in den zeitlichen Subband-Bildern,also in den Erweiterungsbildern H1 gezeigt. Aus 13 istauch die Zuordnung zwischen einem Hochpass-Bild und einem rekonstruiertenund hoch-abgetastetenBild der Basisschicht gezeigt, derart, dass ein INTRA-Makroblockin einem Hochpass-Bild aus dem entsprechenden Makroblock des Bildsder Basisschicht vorhergesagt werden kann.
[0149] Somitkann ein beliebiger Pegel an örtlicherSkalierbarkeit erreicht werden. Die INTRA-Makroblöcke verwendendie hoch-abgetastete örtlicheBasisschicht als Prädiktions-Signal verwenden,wobei jedoch im Falle der örtlichenSkalierbarkeit das Basis-Layer-Signal unter Verwendung einer inversenbewegungskompensierten Filterung rekonstruiert und dann hoch-abgetastetwird, bevor es als Prädiktions-Signalfür höhere Skalierungsschichteneingesetzt wird. Ferner sei noch einmal darauf hingewiesen, dassvorzugsweise die Positionen der INTRA-Makroblöcke in einem Hochpass-Bilddurch das entsprechende Prädiktionsdaten-ArrayMP signalisiert werden. Ferner werden inden örtlichenSkalierungsschichten dann, wenn gleichzeitig eine Subband-Zerlegungangewendet worden ist, neben den Prädiktionsdaten-Arrays MP auch die Erweiterungsschicht-Darstellungder entsprechenden Subbandbilder übertragen.
[0150] Vorzugsweisewerden die Tiefpass-Bilder der örtlichenErweiterungsschicht unter Verwendung einer spezifizierten Syntaxcodiert. Ferner sei darauf hingewiesen, dass mit dem dargestelltenKonzept die örtliche Auflösung voneiner Schicht zur nächstendurch einen beliebigen Faktor k/m erhöht werden kann, wobei k>m>1 gilt. Es ist jedoch dann nötig, einenSatz von entsprechenden Interpolationsfiltern zu definieren und, wenndie Interpolationsfilter nicht zwischen Codierer und Decodiererfest vereinbart sind, zu übertragen.Im Falle eines örtlichenAuflösungs-Umwandlungsfaktorsvon 2 wird es bevorzugt, ein 6-Tap-Interpolationsfilter ⎨1,-5,20,20-5,1⎬ zunehmen, das in H.264/AVC fürdie Halb-Abtastwert-Interpolation definiert ist.
[0151] Nachfolgendwird bezugnehmend auf 6a das anhand der 13 und 14 dargestellteKonzept noch einmal erläutert.Insbesondere stellt 6a eine Kopplung der MCTF-Einrichtung 1014 miteiner Prädiktorstufe 1016a inder Ein richtung 1016 zum Verarbeiten dar. Insbesondereist die Einrichtung 1014, wie sie in 16 gezeigtist, eine Einrichtung zur Bewegungs-kompensierten zeitlichen Filterung,wobei die Einrichtung ausgebildet ist, wie es anhand der 3, 4 undder in 5a bis 5d gezeigtenGleichungen dargestellt ist. Insbesondere erhält die Einrichtung 1014 somitdie Referenzindizes aus 5c, Prädiktor-Steuerungssignaleund Aktualisierer-Steuerungssignale, um in bestimmten Makroblöcken einenINTRA-Modus zu aktivieren, derart, dass im Erweiterungsbild anstattder eigentlich dort stehenden Hochpass-Informationen Tiefpass-Informations-Makroblöcke eingefügt werden.Ferner wird der Einrichtung 1014 ein Satz von Bewegungsfeldernfür dieErweiterungsbilder, die die Hochpass-Informationen erhalten sollen,zugeführt.Diese Bewegungsfelder werden auch als Seiteninformationen zum Decodierer übertragen.Der Decodierer erhältferner als Seiteninformationen auch P- oder U-Steuerungssignale, die wie es ausgeführt wordenist, vorzugsweise in den Bewegungsarrays MP enthaltensind. Ausgangsseitig liefert die Einrichtung 1014 Basisbildermit Tiefpass-Informationen und Erweiterungsbilder mit Hochpass-Informationen, die,wie es ausgeführtworden ist, vorzugsweise auch INTRA-Blöcke umfassen. Diese Bilderwerden einer nachgeschalteten Prädiktorstufe 1016a zugeführt, diesowohl einen Prädiktorfür dasbzw. die Basisbilder als auch einen Prädiktor für möglicherweise vorhandene INTRA-Blöcke in denErweiterungsbildern umfasst, um die in 13 gezeichneten senkrechtengestrichelten Pfeile zu implementieren. Zur Berechnung des Prädiktions-Restsignalserhältder Prädiktor 1016a auchein korrespondierendes Bild aus der ersten Skalierungsschicht, dasin 13 jeweils durch die Pfeilspitze signalisiertist. Um die Skalierungsschicht-interne Prädiktion zu implementieren,erhältder Prädiktor 1016a auchein zeitlich früheresoder bei Nicht-Echtzeitanwendungenauch ein zeitlich späteresBild aus der z.B. zweiten Skalierungsschicht, also aus derselbenSkalierungsschicht, fürdie die Einrichtung 1016a die Basisbilder und die Erweiterungsbildererzeugt.
[0152] Ausgangsseitigwird die Einrichtung 1016a somit ebenfalls prädizierteBasisbilder und Erweiterungsbilder mit gegebenenfalls prädiziertenINTRA-Blöckenliefern, die dann Makroblock-weise, wie es im Video-Standard H.264/AVCspezifiziert ist, transformiert, skaliert/quantisiert und schließlich Entropie-codiertwerden, um die zweite Skalierungsschicht am Ausgang 1018 von 16 zuliefern.
[0153] 6b zeigteinen zu 6a inversen Schaltungsaufbaufür denDecodierer. Im einzelnen ist in 6b somiteine spezielle Implementierung der Weiterverarbeitungseinrichtung 1040 gezeigt.Die Weiterverarbeitungseinrichtung 1040 umfasst wiedereine Prädiktionsstufe.Nachgeschaltet ist wieder die Filterstufe 1042. Die Prädiktorstufeerhältdie decodierten Basisbilder sowie die decodierten Erweiterungsbilder,wobei im Falle einer Prädiktionkorrespondierende Bilder aus der unteren Skalierungsschicht oderbereits rekonstruierte Bilder aus derselben Skalierungsschicht,die zur Prädiktionverwendet werden, zugeführtwerden, um die Verwendung der bezüglich der Einrichtung 1040 eingangsseitigvorhandenen Restwerte die Prädiktionrückgängig zumachen. Dies gilt sowohl fürdie prädiziertenBasisbilder als auch fürdie Erweiterungsbilder mit den prädizierten INTRA-Blöcken. ImFalle einer vorhandenen Prädiktionvon INTRA-Blöcken inErweiterungsbildern wird die Prädiktorstufe 1040 beidem bevorzugten Ausführungsbeispielauch Bewegungsfeld-Array-Informationen MP erhalten, da vorzugsweise in diesen Bewegungsfelderndie Position der INTRA-Blöckein den Erweiterungsbildern spezifiziert ist.
[0154] AmAusgang der Prädiktorstufe 1040 liegensomit wieder rekonstruierte Bilder vor, die jedoch Tiefpass-Bilderund Hochpass-Bilder sind. Um zu den rekonstruierten Bildern zu kommen,werden diese Bilder der Einrichtung 1042 zur Bewegungskompensierten inversen zeitlichen Filterung zugeführt, dievorzugsweise so ausgebildet ist, wie in 4 (Decodierer)und 3 (Decoder) dargestellt ist. Nach der Einrichtung 1042 liegensomit wieder rekonstruierte Bilder der entsprechenden Skalierungsschichtvor.
[0155] Nachfolgendwird zur Darstellung der Flexibilität der vorliegenden Erfindungein Beispiel füreine kombinierte Skalierbarkeit gegeben. Die Konzepte der zeitlichen,Signal/Rausch- und örtlichenSkalierbarkeit könnenerfindungsgemäß kombiniertwerden, um ein allgemeines skalierbares Codierschema zu schaffen,das eine großeMenge an zeitlicher, SNR- und örtlicheSkalierbarkeit hat. In 15 ist ein Beispiel für eine kombinierteSkalierbarkeit dargestellt. Bei diesem Beispiel ist die örtlicheBasisschicht QCIF unter Verwendung des üblichen H.264/AVC-Codierschemascodiert, wobei jedes zweite Bild als Nicht-Referenz-Bild unter Verwendungder B-Slice-Syntax übertragenwird. Somit ergibt sich bereits für die örtliche Basisschicht eine zeitliche Skalierbarkeitsebene.Wenn nur die Basisbilder I, P übertragenund decodiert werden (Layer 0), kann eine rekonstruierte Sequenzmit einer Framerate (Bildrate) von 7,5 Hz erhalten werden. Diesehat jedoch eine erste geringe Auflösung in örtlicher Hinsicht. Durch zusätzliches Übertragender Nicht-Referenz-Bilder B kann die Framerate der rekonstruiertenSequenz auf 15 Hz erhöhtwerden, jedoch ebenfalls noch mit der geringen örtlichen Auflösung. Esist benfalls noch mit der geringen örtlichen Auflösung. Esist zu sehen, dass die gesamte Ebene an zeitlicher Skalierbarkeiterreicht werden kann, wenn die örtlicheBasisschicht unter Verwendung des flexibleren MCTF-Codierschemas,das in den 3 und 4 dargestelltist, codiert wird.
[0156] ZumCodieren der örtlichenVerbesserungsschicht mit einer CIF-Auflösung und einer maximalen Frameratevon 30 Hz wird das MCTF-Codierschema mit n-Zerlegungsstufen verwendet.Zunächstwird eine Darstellung der dritten skalierbaren Schicht (Schicht2) erhalten, und zwar durch örtlichesUpsampeln, ggf. Prädizierenund zeitliches Zerlegen etc., wie es in 16 und 17a, 17b dargestelltist. Zur Veranschaulichung der verbesserten örtlichen Auflösung sinddie Bilder mit der besseren örtlichenAuflösungin 15 als größere Rautengezeichnet. Ferner werden, wie es rechts in 15 gezeigtist, die zu den Erweiterungsbildern gehörenden Bewegungs-Arrays MP übertragen.Für dienächsteVerbesserungsschicht (Layer 3) werden verfeinerte Signale für die Tiefpass-Bilderund die Hochpass-Bilder hinzugefügt.Die Schicht 3 ist somit eine reine SNR-Skalierungsschicht, die dieselbe örtlicheAuflösungund zeitliche Auflösunghat wie Schicht 2, wobei jedoch Schicht 3 eine feinere Quantisierer-Schrittweiteals Schicht 2 hatte. Die vierte Schicht stellt die nächste zeitlicheund SNR-Verbesserungsschicht dar, wobei weitere Verfeinerungen derSubband-Bilder und zusätzlicherste Approximationen fürdie Hochpass-Bilder codiert werden, und wobei natürlich dieentsprechenden Prädiktions-DatenfelderMP benötigtwerden. Fürdie letzte Verbesserungsschicht, die lediglich eine SNR-Verbesserungsschichtdarstellt, werden Verfeinerungssignale aller Subband-Bilder übertragen.
[0157] Abhängig vonden Gegebenheiten kann ein erfindungsgemäßes Verfahren in Hardware oderin Software implementiert werden. Die Implementierung kann auf einemdigitalen Speichermedium, insbesondere einer Diskette oder CD mitelektronisch auslesbaren Steuersignalen erfolgen, die so mit einemprogrammierbaren Computersystem zusammenwirken können, dass das Verfahren ausgeführt wird.Allgemein besteht die Erfindung somit auch in einem Computer-Programm-Produktmit einem auf einem maschinenlesbaren Träger gespeicherten Programmcodezur Durchführungdes Verfahrens, wenn das Computer-Programm-Produkt auf einem Rechnerabläuft.In anderen Worten ausgedrücktkann die Erfindung somit als ein Computer-Programm mit einem Programmcodezur Durchführungdes Verfahrens realisiert werden, wenn das Computer-Programm aufeinem Computer abläuft.
权利要求:
Claims (24)
[1] Vorrichtung zum Verarbeiten einer Gruppe vonBildern, die eine zeitliche Reihenfolge aufweisen, mit folgendenMerkmalen: einer steuerbaren Einrichtung (1102) zumBewegungskompensierten Filtern der Gruppe von Bildern, um ein Basisbildund wenigstens ein Erweiterungsbild zu erhalten, wobei das BasisbildTiefpassinformationen aus der Gruppe von Bildern aufweist, und wobeidas Erweiterungsbild Hochpassinformationen aus der Gruppe von Bildernoder Tiefpassinformationen aus der Gruppe von Bildern aufweist; einerEinrichtung (1108) zum Berechnen eines Nutzens einer Bewegungskompensationfür einenBlock von Werten eines Bildes der Gruppe von Bilder; und einerSteuereinrichtung (1104) zum Steuern der Einrichtung (1102)zum Bewegungs-kompensierten Filtern, um für einen Block von Werten indem Erweiterungsbild statt der Hochpassinformationen Tiefpassinformationeneinzufügen.
[2] Vorrichtung nach Anspruch 1, bei der die Einrichtung(1102) zum Bewegungs-kompensierten Filtern folgende Merkmaleaufweist: eine Prädiktionseinrichtung(43, 44) zum Berechnen eines Blocks von Wertendes Erweiterungsbildes unter Verwendung eines Blocks von einer Bewegungskompensationunterzogenen Werten eines Bildes und eines Blocks von Werten einesanderen Bildes der Gruppe von Bildern; eine Aktualisierungseinrichtung(45, 46) zum Berechnen eines Blocks von Wertendes Basisbildes unter Verwendung eines Blocks von Werten des einenBildes und unter Verwendung eines Blocks von einer Bewegungskompensationunterzogenen Werten des anderen Bildes, wobei die Prädiktionseinrichtungoder die Aktualisierungseinrichtung ausgebildet sind, um durch dieSteuereinrichtung (1104) deaktiviert zu werden, so dassder Block von Werten des Erweiterungsbildes gleich dem Block vonWerten des anderen Bildes ist, oder der Block von Werten des Basisbildesgleich dem Block von Werten des einen Bildes ist.
[3] Vorrichtung nach Anspruch 2, bei der die Prädiktionseinrichtungfolgende Merkmale aufweist: einen Subtrahierer (44)zum Subtrahieren des Blocks von einer Bewegungskompensation unterzogenenWerten des einen Bildes von einem Block von Werten des anderen Bildes;und einen Prädiktionsoperator(43), der ausgebildet ist, um den Block von Werten deseinen Bildes mit einem Bewegungsvektor zu kombinieren.
[4] Vorrichtung nach Anspruch 2 oder 3, bei der die Aktualisierungseinrichtungfolgende Merkmale aufweist: einen Addierer (46) zumAddieren eines Blocks von Werten des einen Bildes mit einem einerPrädiktionmit dem Block von Werten des einen Bildes unter Berücksichtigungeiner Bewegungskompensation unterzogenen Werten Block des anderenBildes; und einen Aktualisierungsoperator (45) zumKombinieren des Blocks von prädiziertenWerten des anderen Bildes mit dem Bewegungsvektor.
[5] Vorrichtung nach Anspruch 3, bei der der PrädiktionsoperatorP ausgebildet ist, um folgende Operation durchzuführen: PHaar(s[x, 2k + 1]) =s[x + mP0, 2k – 2rP0]wobeis [x,k] ein Videosignal mit der Raumkoordinate x = x,y)T undder Zeitkoordinate k ist, wobei mP0 einBewegungsvektor füreinen Block ist, und wobei rP0 ein Referenzindexfür einenBlock ist.
[6] Vorrichtung nach Anspruch 4, bei der der AktualisierungsoperatorU (45) ausgebildet ist, um die folgende Operation durchzuführen:
[7] Vorrichtung nach Anspruch 3, bei der der PrädiktionsoperatorP ausgebildet ist, um folgende Operation durchzuführen
[8] Vorrichtung nach Anspruch 4, bei der der Aktualisierungsoperatorausgebildet ist, um folgende Operation durchzuführen:
[9] Vorrichtung nach Anspruch 3, 5 oder 7, bei der dieSteuereinrichtung (1104) ausgebildet ist, um den Prädiktionsoperatorzu Null zu setzen.
[10] Vorrichtung nach Anspruch 4, 6, 8, bei der die Steuereinrichtung(1104) ausgebildet ist, um den Aktualisierungsoperatorzu Null zu setzen.
[11] Vorrichtung nach einem der vorhergehenden Ansprüche, dieausgebildet ist, um ausgangsseitig einen Bitstrom zu erzeugen, derdas Basisbild und das Erweiterungsbild aufweist, und der fernerSeiteninformationen umfasst, die anzeigen, ob ein Block von Wertendes Erweiterungsbildes Tiefpassinformationen umfasst.
[12] Vorrichtung nach einem der vorhergehenden Ansprüchen, beider die steuerbare Einrichtung (1102) zum BewegungskompensiertenFiltern ausgebildet ist, um als Tiefpassinformationen einen Blockvon Werten eines Bildes der Gruppe von Bildern als Block von WertendesErweiterungsbildes zu verwenden.
[13] Vorrichtung nach einem der vorhergehenden Ansprüche, beider die Einrichtung (1108) zum Berechnen des Nutzens ausgebildetist, um eine Bewegungs-kompensierte Version eines Blocks von Werteneines Bildes mit einem Block von Werten des anderen Bildes zu vergleichen,und bei der die Steuereinrichtung (1104) ausgebildet ist,um bei Überschreiteneiner bestimmten Abweichung die Einrichtung (1102) zumBewegungs-kompensierten Filtern anzusteuern.
[14] Vorrichtung nach Anspruch 13, bei der die Einrichtung(1108) zum Berechnen des Nutzens ferner ausgebildet ist,um eine geschätzteBitmenge, die zum Codieren einer Abweichung zwischen den beidenBlöcken vonWerten benötigtwird, bei der Berechnung des Nutzens zu berücksichtigen.
[15] Vorrichtung nach einem der vorhergehenden Ansprüche, beider ein Bild in eine Vielzahl von Blöcken aufge teilt ist, und beider die steuerbare Einrichtung (1102) zum Filtern, dieEinrichtung (1108) zum Berechnen des Nutzens und die Steuereinrichtung(1104) ausgebildet sind, um blockweise zu arbeiten.
[16] Verfahren zum Verarbeiten einer Gruppe von Bildern,die eine zeitliche Reihenfolge aufweisen, mit folgenden Schritten: Bewegungs-kompensiertesFiltern (1102) der Gruppe von Bildern, um ein Basisbildund wenigstens ein Erweiterungsbild zu erhalten, wobei das BasisbildTiefpassinformationen aus der Gruppe von Bildern aufweist, und wobeidas Erweiterungsbild Hochpassinformationen aus der Gruppe von Bildernoder Tiefpassinformationen aus der Gruppe von Bildern aufweist; Berechnen(1108) eines Nutzens einer Bewegungskompensation für einenBlock von Werten eines Bildes der Gruppe von Bilder; und Steuern(1104) des Schritts zum Bewegungskompensierten Filtern(1102), um füreinen Block von Werten in dem Erweiterungsbild statt der HochpassinformationenTiefpassinformationen einzufügen.
[17] Vorrichtung zum Verarbeiten eines Basisbildes undeines oder mehrerer Erweiterungsbilder, um eine Gruppe von Ausgangsbildernzu erzeugen, die eine zeitliche Reihenfolge aufweisen, wobei dasBasisbild Tiefpassinformationen aus der Gruppe von Bildern aufweist,und wobei das Erweiterungsbild Hochpassinformationen oder Tiefpassinformationenaus der Gruppe von Bildern auf weist, und wobei Steuerinformationengegeben sind, die anzeigen, ob in einem Block von Werten des Erweiterungsbildesstatt Hochpassinformationen Tiefpassinformationen vorhanden sind,mit folgenden Merkmalen: einer Einrichtung (1132)zum Bewegungs-kompensierten inversen Filtern des Basisbildes unddes Erweiterungsbildes, um die Gruppe von Ausgangsbildern zu erhalten,wobei die Einrichtung (1132) zum Bewegungskompensierteninversen Filtern ausgebildet ist, um in einen Fall, in dem die Steuerinformationenanzeigen, dass ein Block von Werten des Erweiterungsbildes Tiefpassinformationenstatt Hochpassinformationen hat, bei einer Erzeugung eines Blocksvon Werten eines Ausgabebildes eine Verwendung eines Blocks vonWerten des Basisbildes zu unterdrücken.
[18] Vorrichtung nach Anspruch 17, bei der die Einrichtung(1132) zum Bewegungs-kompensierten Filtern eine Prädiktionseinrichtung(43, 53) zum Berechnen eines Blocks von Werteneines Ausgabebildes unter Verwendung eines Blocks von Werten desErweiterungsbildes und eines Blocks von Werten des Basisbildes aufweist,und bei der die Vorrichtung ferner eine Aktualisierungseinrichtung(45, 52) zum Berechnen eines Blocks des anderenBildes unter Verwendung eines Blocks von Werten des Basisbildesund eines Blocks von Werten des Erweiterungsbildes aufweist.
[19] Vorrichtung nach Anspruch 18, bei der die Prädiktionseinrichtungfolgende Merkmale aufweist: einen Prädiktionsoperator (43)zum Durchführeneiner Prädiktionunter Verwendung eines aktualisierten Blocks des Basisbildes, umeinen prädiziertenBlock des Basisbildes zu erhalten; und einen Addierer zum Addierendes prädiziertenBlocks des Basisbildes zu einem Block des Erweiterungsbildes, umeinen Block eines Ausgabebildes zu erhalten.
[20] Vorrichtung nach Anspruch 18, bei der die Aktualisierungseinrichtungfolgende Merkmale aufweist: einen Aktualisierungsoperator zumBerechnen eines Blocks von Werten des Erweiterungsbildes unter Verwendungvon Bewegungsinformationen, um einen aktualisierten Block des Erweiterungsbildeszu erhalten; und einen Subtrahierer (52) zum Subtrahierendes aktualisierten Blocks von Werten des Erweiterungsbildes von einemBlock von Werten des Basisbildes, um einen Block eines anderen Ausgabebildeszu erhalten.
[21] Vorrichtung nach Anspruch 19 oder 20, bei der derPrädiktionsoperator(43) oder der Aktualisierungsoperator (45) ausgebildetsind, um in einem Fall, in dem das Erweiterungsbild Tiefpassinformationenumfasst, Null-Ausgangswertezu liefern.
[22] Vorrichtung nach einem der Ansprüche 17 bis 21, die ferner folgendeMerkmale aufweist: einen Extrahierer (1130) zum Extrahierender Steuerinformationen aus einem Datenstrom; und eine Steuereinrichtung(1133) zum Steuern der Einrichtung (1132) zumBewegungs-kompensierten Filtern ansprechend auf die Steuerinformationen.
[23] Verfahren zum Verarbeiten eines Basisbildes undeines oder mehrerer Erweiterungsbilder, um eine Gruppe von Ausgangsbilderzu erzeugen, die eine zeitliche Reihenfolge aufweisen, wobei dasBasisbild Tiefpassinformationen aus der Gruppe von Bildern aufweist,und wobei das Erweiterungsbild Hochpassinformationen oder Tiefpassinformationenaus der Gruppe von Bildern aufweist, und wobei Steuerinformationengegeben sind, die anzeigen, ob in einem Block von Werten des Erweiterungsbildesstatt Hochpassinformationen Tiefpassinformationen vorhanden sind,mit folgendem Schritt: einer Einrichtung (1132) zumBewegungs-kompensierten inversen Filtern des Basisbildes und desErweiterungsbildes um die Gruppe von Bildern zu erhalten, wobeidie Einrichtung (1132) zum Bewegungs-kompensierten inversenFiltern ausgebildet ist, um in einen Fall, in dem die Steuerinformationenanzeigen, dass ein Block von Werten des Erweiterungsbildes Tiefpassinformationenstatt Hochpassinformationen hat, bei einer Erzeugung eines Blocksvon Werten eines Ausgabebildes eine Verwendung eines Blocks vonWerten des Basisbildes zu unterdrücken.
[24] Computerprogramm mit einem Programmcode zum Durchführen desVerfahrens zum Verarbeiten gemäß Patentanspruch16 oder des Verfahrens zum Verarbeiten gemäß Patentanspruch 23, wenn dasComputerprogramm auf einem Rechner abläuft.
类似技术:
公开号 | 公开日 | 专利标题
US10812808B2|2020-10-20|Intra prediction method and encoding apparatus and decoding apparatus using same
US20200014957A1|2020-01-09|Video encoding method for encoding division block, video decoding method for decoding division block, and recording medium for implementing the same
US10142658B2|2018-11-27|Method of decoding moving pictures in intra prediction
US20190215515A1|2019-07-11|Method for determining predictor blocks for a spatially scalable video codec
KR102051083B1|2019-12-02|주변 블록이 갖는 방향성을 기초로 인트라 예측을 수행하는 비디오 인코딩 장치, 비디오 디코딩 장치 및 비디오 디코딩 방법
JP5819347B2|2015-11-24|Skip macroblock coding
JP5590574B2|2014-09-17|Resampling and image resizing operations for multi-resolution video encoding and decoding
US8520962B2|2013-08-27|Method and apparatus for effectively compressing motion vectors in video coder based on multi-layer
EP2422521B1|2013-07-03|Filterauswahl für videovorverarbeitung bei videoanwendungen
JP5270166B2|2013-08-21|多階層基盤のビデオエンコーディング方法、デコーディング方法及び前記方法を利用した装置
JP4902642B2|2012-03-21|複数層を使用するマルチメディア・データのスケーリング可能なエンコーディング及びデコーディングのためのシステム及び方法
US7379496B2|2008-05-27|Multi-resolution video coding and decoding
EP2324638B1|2016-11-23|System und verfahren zur videokodierung mithilfe eines adaptiven schleifenfilters
US6496216B2|2002-12-17|Method and system for multimedia communication control
CN102055986B|2012-11-21|用中间层运动数据预测产生编码的视频序列的设备和方法
US5764805A|1998-06-09|Low bit rate video encoder using overlapping block motion compensation and zerotree wavelet coding
Bankoski et al.2011|Technical overview of VP8, an open source video codec for the web
KR100679011B1|2007-02-05|기초 계층을 이용하는 스케일러블 비디오 코딩 방법 및 장치
US6873655B2|2005-03-29|Codec system and method for spatially scalable video data
KR100621581B1|2006-09-13|기초 계층을 포함하는 비트스트림을 프리디코딩,디코딩하는 방법, 및 장치
JP4647980B2|2011-03-09|スケーラブルビデオコーディング及びデコーディング方法と装置
KR101003435B1|2010-12-23|영상 블록을 디코딩 하는 방법
EP2206353B1|2020-05-06|Verfahren zur auswahl eines codierungsmodus und entsprechendes system und computerlesbares medium
US8542750B2|2013-09-24|Deblocking control method considering intra BL mode and multilayer video encoder/decoder using the same
US8442108B2|2013-05-14|Adaptive updates in motion-compensated temporal filtering
同族专利:
公开号 | 公开日
DE102004011422B4|2006-02-23|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题
法律状态:
2005-11-10| OP8| Request for examination as to paragraph 44 patent law|
2006-08-17| 8364| No opposition during term of opposition|
优先权:
申请号 | 申请日 | 专利标题
DE102004063902A|DE102004063902B4|2004-03-09|2004-03-09|Computerprogramm mit einem Verfahren zum Verarbeiten einer Gruppe von Bildern und mit einem Verfahren zum Verarbeiten eines Basisbildes und eines oder mehrerer Erweiterungsbilder|DE102004063902A| DE102004063902B4|2004-03-09|2004-03-09|Computerprogramm mit einem Verfahren zum Verarbeiten einer Gruppe von Bildern und mit einem Verfahren zum Verarbeiten eines Basisbildes und eines oder mehrerer Erweiterungsbilder|
PCT/EP2005/001899| WO2005091641A1|2004-03-09|2005-02-23|Vorrichtung und verfahren zum verarbeiten einer gruppe von bildern und vorrichtung und verfahren zum verarbeiten eines basisbildes und eines oder mehrerer erweiterungsbilder|
[返回顶部]