DE60027955T2 - Verfahren und Vorrichtung zur kontextbasierten Inter/Intra Kodierungsmodeauswahl - Google Patents

Verfahren und Vorrichtung zur kontextbasierten Inter/Intra Kodierungsmodeauswahl Download PDF

Info

Publication number
DE60027955T2
DE60027955T2 DE60027955T DE60027955T DE60027955T2 DE 60027955 T2 DE60027955 T2 DE 60027955T2 DE 60027955 T DE60027955 T DE 60027955T DE 60027955 T DE60027955 T DE 60027955T DE 60027955 T2 DE60027955 T2 DE 60027955T2
Authority
DE
Germany
Prior art keywords
frame
current
coding
previously reconstructed
frames
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE60027955T
Other languages
English (en)
Other versions
DE60027955D1 (de
Inventor
Alireza Farid Fair Haven Faryar
Moushumi Sen
Kyeong Ho Freehold Yang
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nokia of America Corp
Original Assignee
Lucent Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lucent Technologies Inc filed Critical Lucent Technologies Inc
Publication of DE60027955D1 publication Critical patent/DE60027955D1/de
Application granted granted Critical
Publication of DE60027955T2 publication Critical patent/DE60027955T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/507Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction using conditional replenishment

Description

  • Gebiet der Erfindung
  • Die Erfindung betrifft die Videokompression und insbesondere Verfahren und eine Vorrichtung zur kontextbasierten Codierungsmodusauswahl in einem Videokompressionssystem.
  • Allgemeiner Stand der Technik
  • Hybridcodierungsverfahren werden weithin benutzt, um Videosequenzen effizient wiederzugeben, wobei zuerst eine zeitliche Vorhersage getroffen wird, um die zeitliche Redundanz in einer Videosequenz zu verringern, woraufhin die resultierenden Vorhersagefehler codiert werden, siehe beispielsweise: Draft of MPEG-2: Test Model 5, ISO/IEC JTC1/SC29/WG11, April 1993; Draft of ITU-T Recommendation H.263, ITU-T SG XV, Dezember 1995; A. N. Netravali und B. G. Haskell, Digital Pictures: Representation, Compression, and Standards, 2. Ausgabe, Plenum Press, 1995; und B. Haskell, A. Puri und A. N. Netravali, "Digital Video: An Introduction to MPEG-2", Chapman und Hall, 1997, deren Offenbarungen durch Bezugnahme in den vorliegenden Text aufgenommen werden. Die zeitliche Vorhersage ist gewöhnlich sehr hilfreich bei der Kompression von Videosignalen. Es ist allerdings auch möglich, dass der zeitliche Vorhersagefehler schwieriger zu codieren ist als das ursprüngliche Signal, insbesondere in Regionen des Vollbildes, wo die zeitliche Vorhersage nicht sonderlich gut funktioniert. Beispielsweise könnte es einem Codierer nicht gelingen, einen guten zeitlichen Vorhersageblock zu finden, wenn die Realbewegung außerhalb des Suchbereichs liegt. Deshalb arbeiten viele Videocodierer nach einem Verfahren der adaptiven Codierung zwischen Vollbildern (Interframe-Codierung) oder einem Verfahren der adaptiven Codierung innerhalb eines Vollbildes (Intraframe-Codierung), wobei eine Codierung zwischen Vollbildern auf die Bereiche (Blöcke oder Pixel) angewendet wird, wenn die zeitliche Vorhersage wahrscheinlich zu einer besseren Kompression führt, und wobei ansonsten eine Codierung innerhalb eines Vollbildes angewendet wird. Es gibt also zwei Betriebsarten: die Codierung zwischen Vollbildern (Interframe-Codierung) und die Codierung innerhalb eines Vollbildes (Intraframe-Codierung). Den Prozess der Entscheidung, welcher Codierungsmodus zur Codierung jedes Blocks (oder Pixels) verwendet wird, nennt man "Codierungsmodusauswahl".
  • Die herkömmliche Vorgehensweise bei der Codierungsmodusauswahl erfordert aber bekanntlich Verwaltungsbits, die Codierungsmodusinformationen darstellen, die an den Decodierer gesandt werden müssen, da die Abtastungen in dem momentanen Vollbild, die für die Codierungsmodusauswahl verwendet werden, im Decodierer nicht zur Verfügung stehen, vor allem, wie noch erläutert wird, der momentane Block oder die momentane Abtastung. Dieser Verwaltungsaufwand kann gewaltig sein, wenn eine Modusauswahl an einem kleinen Block oder auf Pixelbasis durchgeführt wird. Es wäre somit überaus wünschenswert, über ein Codierungsmodusauswahlverfahren zu verfügen, bei dem keine Codierungsmodusinformationen an einen Decodierer übermittelt zu werden brauchen.
  • X. Wu und Mitarbeiter, "Lossless Interframe Image Compression via Context Modeling", Proceedings of Data Compression Conference 1998, Seiten 378–387, März 1998, offenbaren einen kontextbasierten, adaptiven, verlustfreien Zwischenband-Bildcodec, der sowohl statistische Interframe- als auch Intraframe-Redundanzen ausnutzen kann und Kompressionsvorteile gegenüber kontextbasierten, adaptiven, verlustfreien Intraframe-Bildcodecs aufweist.
  • Kurzdarstellung der Erfindung
  • Die vorliegende Erfindung wird durch die unabhängigen Ansprüche definiert, auf die der Leser nun verwiesen wird. Bevorzugte Merkmale sind in den abhängigen Ansprüchen dargelegt.
  • Die vorliegende Erfindung stellt eine Codierungsmodusauswahl für eine Videosequenz bereit, wobei die Entscheidung zur Durchführung einer Codierung zwischen Vollbildern (Interframe-Codierung) oder einer Codierung innerhalb eines Vollbildes (Intraframe-Codierung) an einem momentanen Abschnitt der Videosequenz lediglich auf zuvor rekonstruierte Abtastungen, die mit der Videosequenz verbunden sind, gestützt wird. Vorteilhafterweise braucht ein Codierer, der nach der erfindungsgemäßen Methodologie arbeitet, keine Codierungsmodus-Verwaltungsinformationen an einen entsprechenden Decodierer zu senden.
  • Gemäß einem Aspekt der Erfindung beinhaltet ein Verfahren zur Auswahl eines Codierungsmodus in einem Videoverarbeitungssystem zum Verarbeiten eines momentanen Abschnitts einer Videosequenz das Identifizieren von zuvor rekonstruierten Abtastungen, die dem momentanen Abschnitt zugeordnet sind, anhand eines momentanen Vollbildes und eines Referenzvollbildes der Videosequenz. Dann erfolgt eine Auswahl zwischen einer Codierung zwischen Vollbildern und einer Codierung innerhalb eines Vollbildes zum Verarbeiten des momentanen Abschnitts auf der Grundlage von Vergleichen, die mit den zuvor rekonstruierten Abtastungen verbunden sind. Die Vergleiche hängen von der konkreten Anwendung ab, die mit der erfindungsgemäßen Methodologie arbeitet. Beispielsweise kann die Erfindung in einem pixelbasierten prädiktiven Codierungssystem oder einem blocktransformationsbasierten Codierungssystem implementiert werden. Bei der erstgenannten Ausführungsform ist der momentane Abschnitt ein Pixel, und es werden Intensitätswerte, die zu zuvor rekonstruierten Abtastungen gehören, für den Vergleich verwendet. Bei der letztgenannten Ausführungsform ist der momentane Abschnitt ein Block, und es werden Gleichstrom- und Wechselstromkoeffizienten, die zu zuvor rekonstruierten Blöcken gehören, für den Vergleich verwendet. Des Weiteren befinden sich die zuvor rekonstruierten Abtastungen vorzugsweise in Abtastungssätzen, die als Schablonen bezeichnet werden. Eine Schablone, die lediglich zuvor rekonstruierte Abtastungen aufweist, wird eine kausale Schablone genannt.
  • Da eine Codierungsmodusauswahl in einem Codierer auf erfindungsgemäße Weise mittels Sätzen oder Schablonen erfolgt, die lediglich zuvor rekonstruierte Abtastungen enthalten, versteht es sich, dass solche Sätze oder Schablonen ebenfalls im Decodierer zur Verfügung stehen. Infolge dessen braucht ein erfindungsgemäßer Codierer keine Codierungsmodusinformationen an den entsprechenden Decodierer zu übermitteln, weil der Decodierer eben diesen Entscheidungsprozess mittels der gleichen kausalen Sätze oder Schablonen durchführen kann, die im Codierer verwendet werden. Vorteilhafterweise werden Übertragungsbandbreite und/oder Speicherkapazität eingespart.
  • Kurze Beschreibung der Zeichnungen
  • 1 ist ein Blockschaubild eines Videocodierers, der eine herkömmliche Codierungsmodusauswahl implementiert.
  • 2A und 2B sind Schaubilder, welche die Abschnitte eines Referenzvollbildes bzw. eines momentanen Vollbildes veranschaulichen, die zur Durchführung einer herkömmlichen Codierungsmodusauswahl verwendet werden.
  • 3 ist ein Blockschaubild eines Videocodierers, der eine Codierungsmodusauswahl gemäß einem Ausführungsbeispiel der vorliegenden Erfindung implementiert.
  • 4A und 4B sind Schaubilder von beispielhaften kausalen Schablonen für ein Referenzvollbild bzw. ein momentanes Vollbild, die zur Durchführung einer Codie rungsmodusauswahl gemäß der vorliegenden Erfindung verwendet werden.
  • 5A und 5B sind Schaubilder von beispielhaften kausalen Schablonen für ein Referenzvollbild bzw. ein momentanes Vollbild, die zur Durchführung einer Codierungsmodusauswahl gemäß der vorliegenden Erfindung in Verbindung mit pixelbasierter prädiktiver Codierung verwendet werden.
  • 6A und 6B sind Schaubilder von beispielhaften kausalen Schablonen für ein Referenzvollbild bzw. ein momentanes Vollbild, die zur Durchführung einer Codierungsmodusauswahl gemäß der vorliegenden Erfindung in Verbindung mit einer blocktransformationsbasierten Codierung verwendet werden.
  • 6C ist ein Schaubild, das eine Zickzack-Abtastreihenfolge für Blocktransformationskoeffizienten veranschaulicht.
  • 7 ist ein Flussdiagramm, das eine Codierungsmodusauswahl gemäß einem Ausführungsbeispiel der vorliegenden Erfindung veranschaulicht.
  • 8 ist ein Blockschaubild eines Videodecodierers, der eine Codierungsmodusauswahl gemäß einem Ausführungsbeispiel der vorliegenden Erfindung implementiert.
  • Detaillierte Beschreibung bevorzugter Ausführungsformen
  • Im Sinne des vorliegenden Textes beinhaltet der Begriff "Video" oder "Videosequenz" jegliche Vollbild- oder Feldsequenz, die eine Form hat, die für ein Codieren gemäß Standards wie beispielsweise H.261, H.263, Motion-JPEG, MPEG-1 und MPEG-2 geeignet ist. Der Begriff "Block" im Sinne der vorliegenden Erfindung meint nicht nur Makroblöcke, wie er in den oben genannten Kompressionsstandards definiert ist, sondern allgemeiner jede Gruppierung von Pixelelementen in einem Videovollbild oder -feld. Es versteht sich, dass eine solche Gruppierung einen Satz Pixel oder einen einzelnen Pixel enthalten kann. Ausführungsformen, die ausdrücklich eine pixelbasierte Verarbeitung und eine blockbasierte Verarbeitung implementieren (beispielsweise 8 × 8-Elemente-Block), werden als solche bezeichnet. Des Weiteren meint der Begriff "Abtastung" im Sinne der vorliegenden Erfindung einen Pixel oder eine Teilmenge von Informationen, beispielsweise eine Komponente, die zu einem Pixel gehören. Des Weiteren meint der Begriff "Kontext" einen Wert, der zur Beschreibung der Umgebung eines momentanen Blocks oder Pixels dient, die gemäß der Erfindung aus zuvor rekonstruierten Abtastungen abgeleitet wird. Es versteht sich, dass die erfindungsgemäßen Codierungsmodusauswahltechniken sowohl in einem Videocodierer als auch einem entsprechenden Videodecodierer ausgeführt werden, so dass keine codierungsmodusauswahlbezogenen Daten vom Codierer an den Decodierer übermittelt zu werden brauchen.
  • Wenden wir uns zunächst den 1, 2A und 2B zu, wo ein herkömmliche Vorgehensweise zur Durchführung einer Auswahl zwischen einer Codierung zwischen Vollbildern und einer Codierung innerhalb eines Vollbildes gezeigt ist. Ein herkömmlicher Videocodierer 10 enthält eine Codierungsmodusauswahleinrichtung 12, die operativ steuert, ob der gesamte momentane Block eines momentanen Vollbildes codiert und an einen Decodierer übertragen wird (Codierung innerhalb eines Vollbildes) oder ob ein zeitlicher Vorhersagefehler, der für den momentanen Block erzeugt wird, codiert und an einen Decodierer übertragen wird (Codierung zwischen Vollbildern). Die Codierungsmodusauswahleinrichtung 12 verwendet Schalter 12A und 12B zum Steuern der Implementierung der Auswahl.
  • Im Fall der Codierung innerhalb eines Vollbildes codiert der Codierer 14 den momentanen Block, der direkt vom Videoeingang empfangen wurde, mittels einer Codierungstechnik A. Der codierte Block wird dann durch den Decodierer 16 mittels Umkehrung der Codierungstechnik A, d. h. A–1, rekonstruiert. Der rekonstruierte Block wird bekanntermaßen im Speicher 18 für momentane Vollbilder gespeichert, so dass eine rekonstruierte Darstellung des momentanen Vollbildes entsteht. Es ist ein Referenzvollbildspeicher 22 vorhanden, der die rekonstruierte Darstellung des Vollbildes, das dem momentanen Vollbild voranging, speichert. Der Vollbildverzögerungsblock 20, der zwischen dem Momentbildspeicher 18 und einem Referenzbildspeicher 22 dargestellt ist, zeigt lediglich an, dass es eine Verzögerung über den Zeitraum eines einzelnen Vollbildes zwischen Blöcken in dem Speicher für momentane Vollbilder und Blöcken in dem Referenzvollbildspeicher gibt.
  • Im Fall der Codierung zwischen Vollbildern codiert der Restcodierer 28 ein zeitliches Vorhersagefehlersignal, das von der Signalsubtraktionseinrichtung 26 empfangen wurde, mittels einer Codierungstechnik B. Die Signalsubtraktionseinrichtung erzeugt bekanntermaßen das Vorhersagefehlersignal durch Subtrahieren eines Prädiktorsignals, das bekanntermaßen durch den zeitlichen Prädiktor 24 erzeugt wird, von dem momentanen Block. Der Vorhersagefehler stellt die Differenz zwischen dem momentanen Block und einem Block von dem Referenzvollbild dar, der dafür vorgesehen ist, den momentanen Block am besten zu schätzen. Der momentane Block wird dann rekonstruiert, indem zuerst die Codierungstechnik B, die auf das Vorhersagefehlersignal angewendet wurde, im Decodierer 30 mittels der Umkehrcodierungstechnik B–1 umgekehrt wird und dann sein Ausgangssignal zu dem Prädiktorsignal zurück addiert wird, so dass sich der momentane Block ergibt. Der rekonstruierte Block wird dann während der Verarbeitung des momentanen Vollbildes in dem Speicher für momentane Vollbilder gespeichert. Das rekonstruierte momentane Vollbild wird dann in dem Referenzvollbildspeicher – zur Verwendung durch den zeitlichen Prädiktor – unmittelbar vor der Verarbeitung des nächsten Vollbildes gespeichert.
  • Es ist wichtig festzustellen, dass – wie aus 1 zu erkennen ist – die herkömmliche Codierungsmodusauswahleinrichtung 12 als Eingangssignal sowohl das momentane Vollbild, einschließlich des momentanen Blocks, direkt vom Videoeingang als auch das Referenzvollbild vom Referenzvollbildspeicher 22 empfängt. Eine solche Codierungsmodusauswahleinrichtung verwendet sowohl den momentanen Block als auch einen Block in dem Referenzvollbild zum Treffen der Codierungsmodusauswahl. Beispielsweise kann die Auswahleinrichtung einen Block in dem Referenzvollbild an der gleichen räumlichen Position wie der momentane Block oder der bewegungskompensierte Block, wenn mit Bewegungsschätzung/-kompensation gearbeitet wird, verwenden. Wie in den 2A und 2B gezeigt, stellt Xn den momentanen Block in dem momentanen Vollbild FC dar, und Xn-1 stellt den Block in dem Referenzvollbild FR dar, der räumlich dem momentanen Block entspricht. Anhand dieser Eingangssignale entscheidet die Modusauswahleinrichtung, ob eine Codierung zwischen Vollbildern oder eine Codierung innerhalb eines Vollbildes auszuführen ist. Beispielsweise wird durch Vergleichen des momentanen Blocks mit einem räumlich entsprechenden Block in dem Referenzvollbild eine Feststellung getroffen, ob es besser wäre, den momentanen Block direkt zu codieren (Intraframe-Codierung) oder den zeitlichen Vorhersagefehler, der zu dem momentanen Block gehört, zu codieren (Interframe-Codierung). Unabhängig davon, welcher Block aus dem Referenzvollbild benutzt wird, muss die herkömmliche Auswahleinrichtung ebenfalls den momentanen Block benutzen, um die Modusauswahlfeststellung zu treffen.
  • Es versteht sich, dass – um den momentanen Block richtig zu decodieren – der Decodierer wissen muss, welcher Codierungsmodus im Codierer benutzt wurde. Das heißt, der herkömmliche Decodierer muss Kenntnis darüber erlangen, welche Codierungstechnik im Codierer verwendet wurde – A oder B –, bevor er den momentanen Block mit der entsprechenden Decodierungstechnik A–1 oder B–1 decodieren kann. Weil aber die herkömmliche Technik den momentanen Block zum Treffen von Codierungsmodusentscheidungen für den momentanen Block verwendet, kann der zum Stand der Technik gehörende Decodierer nicht unabhängig die gleiche Feststellung treffen, da er den momentanen Block noch nicht verarbeitet hat. Unvorteilhafterweise muss der Codierer in dem herkömmlichen Codierungssystem deshalb Codierungsmodusinformationen zusammen mit dem Signal, das den codierten Block darstellt, an den Decodierer übermitteln, um den Decodierer wissen zu lassen, wie das übertragene Signal zu decodieren ist.
  • Im Vergleich zu den zum Stand der Technik gehörenden Codierungssystemen verfährt ein Codierer der vorliegenden Erfindung deutlich anders, indem er die Codierungsmodusauswahl lediglich anhand zuvor rekonstruierter Abtastungen trifft. Das heißt, anstatt den momentanen Block zum Treffen der Interframe- oder Intraframe-Codierungsmodusentscheidung zu verwenden, wie es zum Stand der Technik gehörende Codierer tun, verwendet ein erfindungsgemäßer Videocodierer zuvor rekonstruierte Abtastungen, die dem momentanen Block benachbart sind, zum Treffen der Entscheidung. Diese zuvor rekonstruierten Abtastungen aus dem momentanen Vollbild werden mit entsprechenden zuvor rekonstruierten Abtastungen aus einem Referenzvollbild in Vergleichen verwendet, wie noch erläutert wird, um zu entscheiden, ob eine Codierung zwischen Vollbildern oder eine Codierung innerhalb eines Vollbildes auszuführen ist. Da sich der Entscheidungsprozess allein auf Werte stützt, die bereits rekonstruiert wurden, braucht der Codierer keine Codierungsmodus-Verwaltungsinformationen an einen Decodierer zu übermitteln. Das heißt, ein entsprechender Decodierer, der mit dem gleichen Codierungsmodusauswahlprozess arbeitet, kann für den momentanen Block unabhängig die gleiche Feststellung treffen, wie sie im Codierer getroffen wurde. Infolge dessen werden Übertragungsbandbreite und/oder Speicherkapazität eingespart.
  • 3 zeigt ein Blockschaubild eines Videocodierers, der eine kontextbasierte Codierungsmodusauswahl gemäß einem Ausführungsbeispiel der Erfindung implementiert. Wie zu erkennen ist, enthält der erfindungsgemäße Codierer 100 ähnliche Funktionskomponenten wie der Codierer 10 von 1. Es ist jedoch wichtig festzuhalten, dass die Codierungsmodusauswahleinrichtung 112 des erfindungsgemäßen Codierers im Gegensatz zu der Auswahleinrichtung 12 des Codierers 10 nicht direkt mit dem Codierer-Videoeingang verbunden ist, sondern statt dessen mit dem Speicher 118 für momentane Vollbilder verbunden ist. Auf diese Weise, wie weiter unten erläutert wird, empfängt die Codierungsmodusauswahleinrichtung lediglich zuvor rekonstruierte Werte aus dem Speicher für momentane Vollbilder und dem Referenzvollbildspeicher, um die Codierungsmodusentscheidung zu treffen.
  • Angesichts der oben dargelegten Interkonnektivität von Komponenten in dem beispielhaften Codierer 100 erfolgt nun ein Beschreibung einer entsprechenden Codierungsoperation. Es versteht sich, dass der Codierer 100 dafür verwendet werden kann, eine Videosequenz Block für Block zu codieren. Der Begriff "Block" kann aber in dem Sinne, wie er im vorliegenden Text allgemein verwendet wird, einen Pixel, eine Gruppe von Pixeln oder einen sonstigen Abschnitt eines Vollbildes meinen. Ein Beispiel für eine pixelbasierte Codierung wird in Verbindung mit den 5A und 5B erläutert, während ein Beispiel für eine blocktransformationsbasierte Codierung in Verbindung mit den 6A und 6B erläutert wird.
  • Das Konzept des Verwendens lediglich zuvor rekonstruierter Abtastungen ist allgemein beispielhaft in den 4A und 4B veranschaulicht. 4A und 4B zeigen jeweils Sätze von zuvor rekonstruierten Abtastungen, die zum Treffen der Codierungsentscheidung herangezogen werden können. Es ist zu beachten, dass die Sätze die Form von Schablonen haben können. Schablonen, die lediglich zuvor rekonstruierte Abtastungen enthalten, werden im vorliegenden Text als kausale Schablonen bezeichnet. Xn (4B) ist der momentane Block in dem momentanen Vollbild FC, das zu codieren ist, und Xn-1 (4A) ist ein räumlich entsprechender Block in dem Referenzvollbild FR. Xn-1 kann alternativ der bewegungskompensierte Block sein. Wie gezeigt, wird eine kausale Schablone Rn aus Abtastungen neben dem momentanen Block Xn in dem momentanen Vollbild FC gebildet. Es wird angenommen, dass Abtastungen des momentanen Vollbildes von der oberen linken Ecke des Vollbildes zur unteren rechten Ecke des Vollbildes verarbeitet, beispielsweise codiert und rekonstruiert, werden. Somit enthält die Schablone Rn lediglich Abtastungen aus dem momentanen Vollbild, die bereits codiert und rekonstruiert wurden. Auf ähnliche Weise wird eine Schablone Rn-1 aus Abtastungen neben dem Block Xn-1 in dem Referenzvollbild FR gebildet, der selbst lediglich zuvor rekonstruierte Abtastungen enthält. Es versteht sich, dass rekonstruierte Abtastungen in Block Xn dann Teil der kausalen Schablone sein können, die in der nächsten Codierungsiteration für den nächsten Block verwendet wird.
  • Wie in Beispielen, die in den 5A und 5B und in den 6A und 6B gezeigt sind, veranschaulicht wird, werden zuvor rekonstruierte Abtastungen in der kausalen Schablone Rn und zuvor rekonstruierte Abtastungen in der kausalen Schablone Rn-1 in Vergleichen zum Treffen der Codierungsmodusentscheidung verwendet. Da solche zuvor rekonstruierten Abtastungen zu der Zeit, da der momentane Block zu decodieren ist, in einem entsprechenden Decodierer zur Verfügung stehen, d. h. da sie bereits decodiert und im Decodiererspeicher gespei chert wurden, brauchen keine Codierungsmodus-Verwaltungsinformationen mit dem codierten Bitstrom übertragen und/oder gespeichert zu werden.
  • Es wird nun anhand der 5A und 5B im Kontext des Codierers 100 ein beispielhafter Vorgang einer Codierungsmodusauswahl gemäß der Erfindung in Verbindung mit einer pixelbasierten prädiktiven Codierung erläutert. Es ist zu beachten, dass in diesem Beispiel der momentane Abschnitt des momentanen Vollbildes, der zu verarbeiten ist, ein einzelner Pixel Xn ist. Somit ist der entsprechende Abschnitt des Referenzvollbildes ebenfalls ein einzelner Pixel Xn-1. Der Codierer 100 empfängt ein Eingangsvideosignal. Von dem Codierer ist eine Entscheidung zu treffen, ob der Codierer Xn mittels der Codierungstechnik A (über den Codierer 114) codiert oder einen zeitlichen Vorhersagefehler, der zu Xn gehört, mittels der Restcodierungstechnik B (über den Codierer 128) codiert. Diese Entscheidung wird durch die Codierungsmodusauswahleinrichtung 112 getroffen. Die Auswahleinrichtung bildet die Schablonen Rn bzw. Rn-1 aus dem Speicher 118 für momentane Vollbilder und dem Referenzvollbildspeicher 122 und vergleicht bestimmte Pixelintensitätswerte mit bestimmten anderen Pixelintensitätswerten, wobei die Pixelintensitätswerte den Pixeln in den Schablonen zugeordnet sind. In diesem Beispiel, wo eine Modusauswahl auf Pixelbasis getroffen wird, werden die Werte der vier zuvor rekonstruierten Abtastungen bezüglich der Pixel Xn in dem momentanen Vollbild und Xn-1 in dem Referenzvollbild für die Modusauswahl verwendet. Somit kann im Fall der Auswahleinrichtung 112, welche die kausalen Schablonen Rn und Rn-1, die in den 5A und 5B gezeigt sind, bildet und dann verwendet, die Modusauswahl auf der Grundlage eines Vergleichs von Intraframe-Codierungs- und Interframe-Codierungsdifferenzen getroffen werden, und zwar wie folgt: intra_differenz = |Rn(i – 1, j + 1) – Rn(i – 1, j)| + |Rn(i – 1, j) – Rn(i – 1, j – 1)| + |Rn(i – 1, j – 1) – Rn(i, j – 1|; inter_differenz = |Rn(i – 1, j + 1) – Rn – 1(i – 1, j + 1)| + |Rn(i – 1, j) – Rn – 1(i – 1, j)| + |Rn(i – 1, j – 1) – Rn – 1(i – 1, j – 1|| + |Rn(i, j – 1) – Rn – 1(i, j – 1)|;wenn (inter_differenz < intra_differenz),
    dann Interframe-Codierungsmodus;
    sonst Intraframe-Codierungsmodus.
  • Bei der oben beschriebenen Codierungsmodusauswahltechnik ist |x| der absolute Wert von x. Somit wird, wie oben, ein Intraframe-Differenzwert (intra_differenz) aus den vier zuvor rekonstruierten Abtastungen in dem momentanen Vollbild berechnet, während eine Interframe-Differenz (inter_differenz), wie oben, aus den vier zuvor rekonstruierten Abtastungen in dem momentanen Vollbild und den vier zuvor rekonstruierten Abtastungen in dem Referenzvollbild berechnet wird. Dann wird der Intraframe-Differenzwert mit dem Interframe-Differenzwert verglichen. Wenn der Interframe-Differenzwert kleiner ist als der Intraframe-Differenzwert, dann wird am Pixel Xn eine Codierung zwischen Vollbildern durchgeführt; andernfalls wird eine Codierung innerhalb eines Vollbildes durchgeführt. Es versteht sich, dass, obgleich die Schablonen Rn und Rn-1 aus den vier zuvor rekonstruierte Abtastungen gebildet werden, die Schablonen auch mit mehr oder weniger Abtastungen gebildet werden können. Des Weiteren brauchen die Abtastungen nicht unbedingt an die zu codierenden momentanen Pixel anzugrenzen. Es ist aber bevorzugt, Abtastungen (oder Blöcke) zu verwenden, die an den momentanen Block angrenzen, da sie eine höhere Korrelation mit der momentanen Abtastung haben als jene, die nicht angrenzen.
  • Auf der Basis der Modusentscheidung informiert die Auswahleinrichtung 112 den entsprechenden Codierer (114 oder 128) und Decodierer (116 oder 130), dass sie ein von ihnen empfangenes Eingangssignal zu codieren bzw. zu decodieren haben. Im Fall der Auswahl der Codierung innerhalb eines Vollbildes codiert der Codierer 114 Xn, und die Auswahleinrichtung veranlasst, dass die Schalter 112A in eine solche Position gesetzt werden, dass das Ausgangssignal vom Codierer 114 als der zu übertragende oder zu speichernde Bitstrom ausgegeben werden kann. Des Weiteren decodiert der Decodierer 116 den codierten Pixel, so dass eine rekonstruierte Abtastung entsteht. Die Auswahleinrichtung veranlasst, dass der Schalter 112B in eine solche Position gesetzt wird, dass die rekonstruierte momentane Abtastung in dem Speicher 118 für momentane Vollbilder gespeichert werden kann, um sie eventuell in die Schablone einzubinden, die während des Modusauswahlprozesses für den nächsten Pixel Xn+1, der durch den Codierer zu verarbeiten ist, gebildet wird.
  • Im Fall der Auswahl der Codierung zwischen Vollbildern codiert der Codierer 128 einen zeitlichen Vorhersagefehler, der für Xn erzeugt wird, und die Auswahleinrichtung veranlasst, dass die Schalter 112A in eine solche Position gesetzt werden, dass das Ausgangssignal vom Codierer 128 als der zu übertragende oder zu speichernde Bitstrom ausgegeben werden kann. Um den zeitlichen Vorhersagefehler für den momentanen Pixel zu erzeugen, erzeugt der zeitliche Prädiktor 124 bekanntlich ein Prädiktorsignal aus dem Referenzvollbildspeicher 122, und das Prädiktorsignal wird von dem momentanen Pixel in der Subtraktionseinrichtung 126 subtrahiert. Das resultierende Signal ist der Vorhersagefehler, der die Differenz zwischen dem momentanen Pixel und dem Pixel in dem Referenzvollbild, der zur besten Vorhersage des momentanen Pixels dienen soll, darstellt. Es versteht sich, dass der zeitliche Prädiktor auch eine Bewegungsschätzung und -kompensation vornehmen kann, um die vorhandene zeitliche Korrelation zwischen aufeinanderfolgenden Vollbilder effektiver auszunutzen. Des Weiteren decodiert der Decodierer 130 den codierten Vorhersagefehler, und das Prädiktorsignal wird zu dem decodierten Vorhersagefehler zurück addiert, so dass eine rekonstruierte Abtastung entsteht. Die Auswahleinrichtung veranlasst, dass der Schalter 112B in eine solche Position gesetzt wird, dass die rekonstruierte momentane Abtastung im Speicher 118 für momentane Vollbilder gespeichert werden kann, um sie eventuell in die Schablone einzubinden, die während des Modusauswahlprozesses für den nächsten Pixel Xn+1, der durch den Codierer zu verarbeiten ist, gebildet wird. Die Erfindung spezifiziert nicht die Codierer A und B, sondern bei den Codierern A und B kann es sich um einen beliebigen Codierungsalgorithmus handeln. Beispielsweise kann der Codierer A durch einen sehr komplexen Intraframe-Codierungsprädiktor implementiert werden, gefolgt von einem Entropiecodierungssystem, und der Codierer B kann ein kontextbasiertes Entropiecodierungssystem sein.
  • Es wird nun anhand der 6A bis 6C die erfindungsgemäße Codierungsmodusauswahlmethodologie in Verbindung mit einer blocktransformationsbasierten Codierung erläutert. Für die Zwecke dieser Ausführungsform wird angenommen, dass das Videoeingangssignal zum Codierer 100 blocktransformiert und quantisiert wurde. Beispielsweise wird die erfindungsgemäße Modusauswahlmethodologie angewendet, nachdem jedes Vollbild/Feld mittels einer 8 × 8-Hadamard-Transformation blocktransformiert und quantisiert wurde. Es kann aber auch jede andere umkehrbare Blocktransformation verwendet werden.
  • 6A und 6B zeigen die kausalen Schablonen, die zur Modusauswahl verwendet werden, wobei Xn(.), Rn(.)'s und Rn-1(.)'s Blöcke sind, die durch Anwenden einer Blocktransformation mit anschließender Quantisierung erhalten wurden. Bei dieser Ausführungsform ist eine kausale Schablone ein Satz aus relativen Positionen von Blöcken, die auf diese Weise erhalten wurden, bezüglich des momentanen Blocks Xn(i, j) in dem momentanen Vollbild FC und des rekonstruierten Blocks Rn – 1(i, j) in dem vorherigen Vollbild FR. Der erfindungsgemäße Modusauswahlalgorithmus verwendet rekonstruierte Blöcke Rn und Rn-1 in dem momentanen bzw. dem vorherigen Vollbild. Insbesondere entscheidet die erfindungsgemäße Methodologie, ob der momentane Block aus transformationscodierten Koeffizienten einer Codierung zwischen Vollbildern (Interframe-Codierung) zu unterziehen ist, d. h. anhand eines entsprechenden Blocks in dem vorherigen Vollbild FR vorhergesagt werden soll, oder einer Codierung innerhalb eines Vollbildes (Intraframe-Codierung) zu unterziehen ist. Im Fall eines Intraframe-codierten Blocks muss eine Entscheidung getroffen werden, ob der Block von seiner kausalen Schablone in dem momentanen Vollbild räumlich vorhergesagt werden soll oder ob er ohne Vorhersage codiert werden soll. In der ersten Phase des erfindungsgemäßen Modusauswahlprozesses, der von der Codierungsmodusauswahleinrichtung 112 durchgeführt wird, verwenden wir lediglich die Gleichstromwerte der Blöcke in der Schablone, um den Codierungsmodus des Gleichstromkoeffizienten xn dc(i, j) des momentanen Blocks zu bestimmen.
  • Somit ist: SumIntra = max{|rdcn (i, j – 1) – rdcn (i – 1, j – 1)|, |rdcn (i – 1, j – 1) – rdcn (i – 1, j)|, |rdcn (i – 1, j) – rdcn (i, j – 1)|} SumInter = max{|rdcn (i, j – 1) – rdcn-1 (i, j – 1)|, |rdcn (i – 1, j – 1) – rdcn-1 (i – 1, j – 1), |rdcn (i – 1, j) – rdcn-1 (i – 1, j)|}wobei rn dc(.) und rn-1 dc(.) die Gleichstromwerte der rekonstruierten Blöcke in dem momentanen bzw. dem vorherigen Vollbild sind. Dann gilt:
    wenn (SumInter < SumIntra & SumInter < ThreshInter) pdcn (i, j) = rdcn-1 (i, j)sonst, wenn (SumIntra < ThreshIntra) pdcn (i, j) = avg{rdcn (i, j – 1), rdcn (i – 1, j – 1), rdcn (i – 1, j)}sonst
    x dc / n(i, j) direkt codieren,
    wobei ThreshIntra und ThreshInter geeignet ausgewählte Schwellenwerte sind und pn dc(i, j) der Prädiktor für xn dc(i, j) ist. Wenn xn dc(i, j) weder räumlich noch zeitlich vorhergesagt wird, so werden die übrigen 63 Wechselstromkoeffizienten des Blocks, xn k(i, j), k = 1, 2, ... 63, ebenfalls nicht vorhergesagt. Wenn wir uns andererseits entscheiden, xn dc(i, j) vorherzusagen, so treten wir in die zweite Phase des erfindungsgemäßen Verfahrens ein: das Auswählen des Codierungsmodus' xn k(i, j), k = 1, 2, ... 63. Der Codierungsmodus eines Wechselstromkoeffizienten xn k(i, j) richtet sich nach der Abtastreihenfolge der Koeffizienten in dem Block und nach der Größenordnung des Vorhersagefehlers en k-1(i, j) des unmittelbar vorangegangenen Koeffizienten. Die verwendete Abtastreihenfolge ist die standardmäßige Zickzack-Abtastreihenfolge aus 6C. Wenn xn k(i, j) der k-te Wechselstromkoeffizient des momentanen Blocks (in der Abtastreihenfolge) ist und rn k-1(i, j) und en k-1(i, j) der rekonstruierte bzw. der Vorhersagefehler-Wert des vorangegangenen (k – 1)-ten Koeffizienten sind, so gibt das Codierungsmodusauswahlverfahren Folgendes vor:
    wenn (abs(r k-1 / n(i, j) > abs(e k-1 / n(i, j)))
    x k / n(i, j) vorhersagen
    sonst
    x m / n(i, j) direkt codieren, m = k, k + 1, ... 63
    wobei k = 1, 2, ..., 63. Jeder Wechselstromkoeffizient xn k(i j), k = 1, 2, ..., 63 falls vorhergesagt, verwendet den gleichen Vorhersagetyp – räumlich oder zeitlich – wie der Gleichstromkoeffizient xn dc(i, j) des gerade verarbeiteten Blocks. Es ist zu beachten, dass, wenn wir an irgend einem Punkt im Prozess feststellen, dass xn k(i, j) nicht anhand eines zuvor rekonstruierten Koeffizienten vorhergesagt zu werden braucht, die übrigen Koeffizienten in dem Block, xn m(i, j) m = k + 1, k + 2, ..., 63, ebenfalls nicht vorhergesagt werden, sondern direkt als PCM-Werte (Pulse Code Modulated) codiert werden.
  • Es versteht sich, dass auf jeder Stufe in dem erfindungsgemäßen Codierungsmodusauswahlprozess der Decodierer immer Zugang zu den gleichen Informationen hat wie der Codierer, und beide kommen zu identischen Entscheidungen bezüglich der Codierungsmodusauswahl für jeden Transformationsblock, wodurch es nicht mehr nötig ist, zusätzliche Bits zu senden, die den in jedem Block verwendeten Codierungsmodus anzeigen.
  • Wenden wir uns nun 7 zu, wo ein allgemeines Flussdiagramm einer Ausführungsform eines Codierungsmodusauswahlverfahrens 200 gemäß der Erfindung gezeigt ist. In Schritt 210 wird ein Eingangsvideosignal empfangen, das den zu verarbeitenden Abschnitt des momentanen Vollbildes darstellt. Es versteht sich, dass das Eingangssignal vor dem Empfang blocktransformiert und quantisiert worden sein kann, wie in dem Beispiel, das oben im Zusammenhang mit den 6A bis 6C erläutert wurde. Jedoch braucht der zu verarbeitende Abschnitt des momentanen Vollbildes kein typischer Block zu sein (beispielsweise ein 8 × 8-Elemente-Block), sondern kann vielmehr auch ein Pixel sein, wie in dem Beispiel, das oben im Zusammenhang mit den 5A und 5B erläutert wurde.
  • In Schritt 220 werden kausale Schablonen aus zuvor rekonstruierten Abtastungen gebildet, die aus dem Speicher für momentane Vollbilder und dem Referenzvollbildspeicher entnommen wurden. Schritt 230 vergleicht die Abtastungen vom den Schablonen in einer Weise, die durch die konkrete Ausführungsform vorgeschrieben wird, beispielsweise pixelbasierte prädiktive Codierung oder transformationsbasierte Codierung, wie oben erläutert. In Schritt 240 wird dann der momentane Abschnitt des momentanen Vollbildes je nach dem Ergebnis des Vergleichs in Schritt 230 mittels Codierung innerhalb eines Vollbildes oder Codierung zwischen Vollbildern codiert. Vorteilhafterweise wird dann der codierte Abschnitt des momentanen Vollbildes für späteres Decodieren durch einen entsprechenden Decodierer ohne Codierungsmodusauswahlinformationen übertragen und/oder gespeichert. Weil lediglich Sätze von zuvor rekonstruierten Abtastungen für das Treffen der Modusauswahl verwendet werden, kann der Decodierer – wie erläutert – unabhängig zu der gleichen Entscheidung kommen, indem er den gleichen Entscheidungsprozess auf der Basis der gleichen Sätze von zuvor rekonstruierten Abtastungen ausführt.
  • Wenden wir uns nun 8 zu, wo ein Blockschaubild eines Decodierers gezeigt ist, der eine kontextbasierte Codierungsmodusauswahl gemäß einem Ausführungsbeispiel der vorliegenden Erfindung implementiert. Der Decodierer enthält Elemente ähnlich denen, die die in Verbindung mit dem Codierer 100 von 3 verwendet und beschrieben wurden. Das heißt, die Decodierer 304 und 306 sind den Decodierern 116 und 130 von 3 vergleichbar. Des Weiteren sind auch der Speicher 308 für momentane Vollbilder, die Vollbildverzögerung 310, der Referenzvollbildspeicher 312, der zeitliche Prädiktor 314 und der Signaladdierer 316 mit ihren funktionalen Gegenstücken in 3 vergleichbar. Insbesondere empfängt eine Codierungsmodusauswahleinrichtung 302, die der Auswahleinrichtung 112 von 3 vergleichbar ist, ein Eingangssignal von dem Speicher für momentane Vollbilder und dem Referenzvollbildspeicher, um die gleichen kausalen Schablonen, wie sie zum Codieren des momentanen Signals verwendet wurden, bei der Entscheidung, wie das empfangene momentane Signal zu decodieren ist (A–1 oder B–1), bilden zu können.
  • Es versteht sich, dass, weil der Decodierer die zuvor rekonstruierten Abtastungen, die vom Codierer benutzt werden, in seinen Vollbildspeichern gespeichert hat, die Codierungsmodusauswahleinrichtung 302 unabhängig den gleichen Entscheidungsprozess ausführt wie im Codierer. Beispielsweise verwendet die Auswahleinrichtung 302 die Schablonen aus den 5A und 5B in der Weise, die in Verbindung mit diesen Figuren beschrieben wurde, zum Treffen der Modusauswahl. Alternativ verwendet die Auswahleinrichtung 302, wenn eine Blocktransformierungscodierung implementiert wird, die Schablonen aus den 6A und 6B in der Weise, die in Verbindung mit diesen Figuren beschrieben wurde, zum Treffen der Modusauswahl.
  • Sobald die Entscheidung getroffen ist, informiert die Auswahleinrichtung 302 den entsprechenden Decodierer und veranlasst, dass die Schalter 302A und 302B in eine solche Position gesetzt werden, dass die Entscheidung implementiert wird, d. h. dass der Eingang und der Ausgang des Decodierers 304 oder 306 gewählt wird. Wenn eine Codierung innerhalb eines Vollbildes gewählt wird, so decodiert der Decodierer 304 den empfangenen Bitstrom direkt, und der decodierte Block wird im Speicher 308 für momentane Vollbilder als der rekonstruierte Block zur Verwendung beim Erzeugen von Schablonen zum Decodieren des nächsten Eingabeabschnitts gespeichert. Wenn eine Codierung zwischen Vollbildern ausgewählt wird, was bedeutet, dass das empfangene Signal einen Vorhersagefehler darstellt, dann decodiert der Decodierer 306 das Vorhersagefehlersignal, und ein Prädiktorsignal, das durch den zeitlichen Prädiktor 314 erzeugt wird, wird dem decodierten Signal im Addierer 316 hinzugefügt, so dass der rekonstruierte Block zur Verwendung beim Erzeugen von Schablonen zum Decodieren des nächsten Eingabeabschnitts entsteht.
  • Wie aus dem obigen Beispiel zu erkennen ist, benötigt der Decodierer vorteilhafterweise keine codierungsmodusauswahlbezogenen Daten vom Codierer dank der erfindungsgemäßen Art und Weise, in der der Modusauswahlprozess durchgeführt wird, d. h. lediglich unter Verwendung von zuvor rekonstruierten Abtastungen. Daher werden Übertragungsbandbreite und/oder Speicherkapazität zwischen einem erfindungsgemäßen Codierer und Decodierer eingespart.
  • Es ist zu beachten, dass die Elemente des Codierers 100 und des Decodierers 300 jeweils unter Verwendung einer zentralen Verarbeitungseinheit, eines Mikroprozessors, eines anwendungsspezifischen integrierten Schaltkreises oder sonstiger Datenverarbeitungsvorrichtungen in einem Computer, einem Videosender, einer Kabelsystem-Kopfstelle, einer Fernseher-Settop-Box oder einem sonstigen Typ eines Videosignalprozessors implementiert werden können. Der zentralen Verarbeitungseinheit, dem Mikroprozessor, dem anwendungsspezifischen integrierten Schaltkreis oder den sonstigen Datenverarbeitungsvorrichtungen kann erforderlichenfalls auch ein Speicher zugeordnet sein, um Daten und Ergebnisse zu speichern, die mit der Funktion eines jeden Elements verbunden sind. Die Erfindung kann in Verbindung mit zahlreichen Typen von Videoverarbeitungs- oder -übertragungssystemen verwendet werden. Das heißt, obgleich die Erfindung oben unter Verwendung eines beispielhaften Videocodierungssystems veranschaulicht wurde, versteht es sich, dass die Erfindung nicht auf die Verwendung mit einem bestimmten Typ eines Videosignalformats, eines Videocodierungsstandards oder einer Codierungssystemkonfiguration beschränkt ist. Die Erfindung kann vielmehr in allgemeinerem Sinne auf jedes beliebige Videocodierungssystem angewendet werden, das eine Intra- /Interframe-Codierungsmodusauswahl implementiert und in dem es wünschenswert ist, eine solche Modusauswahl in einem Codierer zu treffen, ohne dass modusauswahlbezogene Verwaltungsinformationen an einen entsprechenden Decodierer übermittelt werden müssen.

Claims (15)

  1. Verfahren zur Auswahl eines Codierungsmodus, das für ein Videoverarbeitungssystem zum Verarbeiten eines momentanen Abschnitts einer Videosequenz geeignet ist, wobei das Verfahren Folgende Schritte aufweist: Identifizieren von zuvor rekonstruierten Abtastungen, die dem momentanen Abschnitt zugeordnet sind, anhand eines momentanen Vollbildes und eines Referenzvollbildes der Videosequenz; und Auswählen zwischen einem ersten Codierungsmodus und einem zweiten Codierungsmodus zum Verarbeiten des momentanen Abschnitts, wobei die Auswahl lediglich auf Vergleiche, die mit zuvor rekonstruierten Abtastungen verbunden sind, und nicht auf den momentanen Abschnitt der gerade verarbeiteten Videosequenz gestützt zu werden braucht; wobei es sich bei dem ersten Codierungsmodus um eine Codierung innerhalb eines Vollbildes (Intraframe) handelt und wobei es sich bei dem zweiten Codierungsmodus um eine Codierung zwischen Vollbildern (Interframe) handelt, dadurch gekennzeichnet, dass der Auswahlschritt des Weiteren Folgendes beinhaltet: Berechnen eines Differenzwertes innerhalb eines Vollbildes aus Intensitätswerten, die den zuvor rekonstruierten Abtastungen zugeordnet sind, aus dem momentanen Vollbild; Berechnen eines Differenzwertes zwischen Vollbildern aus Intensitätswerten, die den zuvor re konstruierten Abtastungen zugeordnet sind, aus dem momentanen Vollbild und dem Referenzvollbild; und Vergleichen des Differenzwertes innerhalb eines Vollbildes mit dem Differenzwert zwischen Vollbildern.
  2. Verfahren nach Anspruch 1, wobei die zuvor rekonstruierten Abtastungen einen oder mehrere zuvor rekonstruierte Abtastungssätze bilden.
  3. Verfahren nach Anspruch 2, wobei der eine oder die mehreren zuvor rekonstruierten Abtastungssätze die Form einer oder mehrerer entsprechender Schablonen aufweisen.
  4. Verfahren nach Anspruch 1, wobei das Verfahren in einem Videocodierer des Systems durchgeführt wird und die Verarbeitung das Codieren des momentanen Abschnitts enthält.
  5. Verfahren nach Anspruch 1, wobei das Verfahren in einem Videodecodierer des Systems durchgeführt wird und die Verarbeitung das Decodieren des momentanen Abschnitts enthält.
  6. Verfahren nach Anspruch 1, wobei der Auswahlschritt des Weiteren das Auswählen des Codierungsmodus der Codierung zwischen Vollbildern enthält, wenn der Differenzwert zwischen Vollbildern nicht größer ist als der Differenzwert innerhalb eines Vollbildes.
  7. Verfahren nach Anspruch 1, wobei der zu verarbeitende Abschnitt der Videosequenz wenigstens ein Pixel enthält.
  8. Vorrichtung zum Auswählen eines Codierungsmodus, die für ein Videoverarbeitungssystem zum Verar beiten eines momentanen Abschnitts einer Videosequenz geeignet ist, wobei die Vorrichtung Folgendes aufweist: wenigstens eine Verarbeitungsvorrichtung, die dafür konfiguriert ist: (i) zuvor rekonstruierte Abtastungen, die dem momentanen Abschnitt zugeordnet sind, anhand eines momentanen Vollbildes und eines Referenzvollbildes der Videosequenz zu identifizieren, und (ii) zwischen einem ersten Codierungsmodus und einem zweiten Codierungsmodus zum Verarbeiten des momentanen Abschnitts zu wählen, wobei die Auswahl lediglich auf Vergleiche, die mit zuvor rekonstruierten Abtastungen verbunden sind, und nicht auf den momentanen Abschnitt der gerade verarbeiteten Videosequenz gestützt zu werden braucht; wobei es sich bei dem ersten Codierungsmodus um eine Codierung innerhalb eines Vollbildes (Intraframe) handelt und wobei es sich bei dem zweiten Codierungsmodus um eine Codierung zwischen Vollbildern (Interframe) handelt, dadurch gekennzeichnet, dass der Auswahlschritt des Weiteren Folgendes beinhaltet: Berechnen eines Differenzwertes innerhalb eines Vollbildes aus Intensitätswerten, die den zuvor rekonstruierten Abtastungen zugeordnet sind, aus dem momentanen Vollbild; Berechnen eines Differenzwertes zwischen Vollbildern aus Intensitätswerten, die den zuvor rekonstruierten Abtastungen zugeordnet sind, aus dem momentanen Vollbild und dem Referenzvollbild; und Vergleichen des Differenzwertes innerhalb eines Vollbildes mit dem Differenzwert zwischen Vollbildern.
  9. Vorrichtung nach Anspruch 8, wobei die zuvor rekonstruierten Abtastungen einen oder mehrere zuvor rekonstruierte Abtastungssätze bilden.
  10. Vorrichtung nach Anspruch 9, wobei der eine oder die mehreren zuvor rekonstruierten Abtastungssätze die Form einer oder mehrerer entsprechender Schablonen aufweisen.
  11. Vorrichtung nach Anspruch 8, wobei die Codierungsmodusauswahl in einem Videocodierer des Systems durchgeführt wird und die Verarbeitung das Codieren des momentanen Abschnitts enthält.
  12. Vorrichtung nach Anspruch 8, wobei die Codierungsmodusauswahl in einem Videodecodierer des Systems durchgeführt wird und die Verarbeitung das Decodieren des momentanen Abschnitts enthält.
  13. Vorrichtung nach Anspruch 8, wobei die Auswahloperation des Weiteren das Auswählen des Codierungsmodus der Codierung zwischen Vollbildern enthält, wenn der Differenzwert zwischen Vollbildern nicht größer ist als der Differenzwert innerhalb eines Vollbildes.
  14. Vorrichtung nach Anspruch 8, wobei der zu verarbeitende Abschnitt der Videosequenz wenigstens ein Pixel enthält.
  15. Vorrichtung, die für ein Videoverarbeitungssystem geeignet ist, wobei die Vorrichtung eine Vorrichtung zum Auswählen eines Codierungsmodus nach Anspruch 8 aufweist.
DE60027955T 1999-06-07 2000-05-31 Verfahren und Vorrichtung zur kontextbasierten Inter/Intra Kodierungsmodeauswahl Expired - Lifetime DE60027955T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/326,872 US6625215B1 (en) 1999-06-07 1999-06-07 Methods and apparatus for context-based inter/intra coding mode selection
US326872 1999-06-07

Publications (2)

Publication Number Publication Date
DE60027955D1 DE60027955D1 (de) 2006-06-22
DE60027955T2 true DE60027955T2 (de) 2007-01-25

Family

ID=23274090

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60027955T Expired - Lifetime DE60027955T2 (de) 1999-06-07 2000-05-31 Verfahren und Vorrichtung zur kontextbasierten Inter/Intra Kodierungsmodeauswahl

Country Status (5)

Country Link
US (1) US6625215B1 (de)
EP (1) EP1059812B1 (de)
JP (1) JP4077135B2 (de)
CA (1) CA2310341A1 (de)
DE (1) DE60027955T2 (de)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6499060B1 (en) 1999-03-12 2002-12-24 Microsoft Corporation Media coding for loss recovery with remotely predicted data units
US6680974B1 (en) 1999-12-02 2004-01-20 Lucent Technologies Inc. Methods and apparatus for context selection of block transform coefficients
KR100377190B1 (ko) * 1999-12-24 2003-03-26 한국전자통신연구원 블록별 생성 비트스트림 크기에 따른 채널 오류 발생가능성 예측에 의한 인트라 갱신 블록 결정 기법을 이용한 영상 부호화 방법
FR2827054B1 (fr) * 2001-07-06 2003-12-12 Nec Technologies Uk Ltd Procede de controle et de gestion de l'etat de la batterie d'un appareil multimedia portable
KR20030009669A (ko) * 2001-07-23 2003-02-05 삼성전자주식회사 다채널 영상 부호화기 및 그 부호화 방법
ATE358947T1 (de) * 2002-01-22 2007-04-15 Koninkl Philips Electronics Nv Berechnung von komprimierten videoinformationen
US7577198B2 (en) * 2003-09-07 2009-08-18 Microsoft Corporation Number of reference fields for an interlaced forward-predicted field
US8085844B2 (en) * 2003-09-07 2011-12-27 Microsoft Corporation Signaling reference frame distances
JP4842265B2 (ja) * 2004-07-14 2011-12-21 エージェンシー フォー サイエンス,テクノロジー アンド リサーチ 信号の状況(コンテキスト)ベース符号化及び復号化
KR20060008523A (ko) * 2004-07-21 2006-01-27 삼성전자주식회사 영상의 인트라 예측 방법 및 그 장치
US8634413B2 (en) 2004-12-30 2014-01-21 Microsoft Corporation Use of frame caching to improve packet loss recovery
JP4411220B2 (ja) * 2005-01-18 2010-02-10 キヤノン株式会社 映像信号処理装置、及びその映像信号処理方法
JP2007043651A (ja) * 2005-07-05 2007-02-15 Ntt Docomo Inc 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号装置、動画像復号方法及び動画像復号プログラム
US8774272B1 (en) 2005-07-15 2014-07-08 Geo Semiconductor Inc. Video quality by controlling inter frame encoding according to frame position in GOP
US8711925B2 (en) 2006-05-05 2014-04-29 Microsoft Corporation Flexible quantization
US8711372B2 (en) * 2006-08-31 2014-04-29 Ricoh Co., Ltd. Techniques for image segment accumulation in document rendering
US7456760B2 (en) * 2006-09-11 2008-11-25 Apple Inc. Complexity-aware encoding
US8238424B2 (en) 2007-02-09 2012-08-07 Microsoft Corporation Complexity-based adaptive preprocessing for multiple-pass video compression
KR20090132629A (ko) * 2007-04-09 2009-12-30 가부시키가이샤 엔.티.티.도코모 화상 예측 부호화 장치, 화상 예측 부호화 방법, 화상 예측 부호화 프로그램, 화상 예측 복호 장치, 화상 예측 복호 방법 및 화상 예측 복호 프로그램
JP5372352B2 (ja) * 2007-04-09 2013-12-18 株式会社エヌ・ティ・ティ・ドコモ 画像予測符号化装置、画像予測符号化方法、画像予測符号化プログラム、画像予測復号装置、画像予測復号方法および画像予測復号プログラム
JP5372341B2 (ja) * 2007-05-18 2013-12-18 株式会社エヌ・ティ・ティ・ドコモ 画像予測符号化装置、画像予測符号化方法、画像予測符号化プログラム、画像予測復号装置、画像予測復号方法および画像予測復号プログラム
JP4799477B2 (ja) * 2007-05-08 2011-10-26 キヤノン株式会社 画像符号化装置及び画像符号化方法
JP5188875B2 (ja) 2007-06-04 2013-04-24 株式会社エヌ・ティ・ティ・ドコモ 画像予測符号化装置、画像予測復号装置、画像予測符号化方法、画像予測復号方法、画像予測符号化プログラム、及び画像予測復号プログラム
KR101403343B1 (ko) 2007-10-04 2014-06-09 삼성전자주식회사 부화소 움직임 추정을 이용한 인터 예측 부호화, 복호화방법 및 장치
US8750390B2 (en) * 2008-01-10 2014-06-10 Microsoft Corporation Filtering and dithering as pre-processing before encoding
US8160132B2 (en) * 2008-02-15 2012-04-17 Microsoft Corporation Reducing key picture popping effects in video
US8897359B2 (en) 2008-06-03 2014-11-25 Microsoft Corporation Adaptive quantization for enhancement layer video coding
US9571856B2 (en) 2008-08-25 2017-02-14 Microsoft Technology Licensing, Llc Conversion operations in scalable video encoding and decoding
WO2010044754A1 (en) * 2008-10-15 2010-04-22 Agency For Science, Technology And Research Methods for encoding a digital picture, encoders, and computer program products
TWI405469B (zh) * 2009-02-20 2013-08-11 Sony Corp Image processing apparatus and method
US20100246675A1 (en) * 2009-03-30 2010-09-30 Sony Corporation Method and apparatus for intra-prediction in a video encoder
JP2014500692A (ja) * 2010-12-23 2014-01-09 サムスン エレクトロニクス カンパニー リミテッド 映像予測単位についてのイントラ予測モード符号化方法及び装置、並びに映像予測単位についてのイントラ予測モード復号化方法及び装置
CN102404570B (zh) * 2011-11-16 2014-06-04 浙江工业大学 基于率失真敏感度的多视点视频编码快速模式选择方法
CN103051894B (zh) * 2012-10-22 2015-09-09 北京航空航天大学 一种基于分形和h.264的双目立体视频压缩与解压缩方法
CN103037218B (zh) * 2012-10-22 2015-05-13 北京航空航天大学 一种基于分形和h.264的多目立体视频压缩与解压缩方法
CN103501437B (zh) * 2013-09-29 2016-06-22 北京航空航天大学 一种基于分形和h.264的高光谱图像压缩方法
US10341650B2 (en) * 2016-04-15 2019-07-02 Ati Technologies Ulc Efficient streaming of virtual reality content

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0595540A (ja) * 1991-09-30 1993-04-16 Sony Corp 動画像符号化装置
FR2702917B1 (fr) * 1993-03-16 1995-04-21 Thomson Csf Codeur-décodeur pour un codage compatible sous-bande d'images de télévision, et son application au codage de mouvement hiérarchique par des structures arborescentes .
JPH0846971A (ja) * 1994-07-29 1996-02-16 Sharp Corp 動画像符号化装置
KR0153671B1 (ko) * 1995-06-30 1998-11-16 배순훈 고선명 텔레비젼 엔코더의 레이트 콘트롤러
US5940131A (en) * 1995-12-15 1999-08-17 Kokusai Denshin Denwa Co. Ltd. Method and apparatus for coding moving pictures
US5825680A (en) * 1996-06-21 1998-10-20 Digital Equipment Corporation Method and apparatus for performing fast division

Also Published As

Publication number Publication date
DE60027955D1 (de) 2006-06-22
JP4077135B2 (ja) 2008-04-16
EP1059812A3 (de) 2003-10-29
US6625215B1 (en) 2003-09-23
CA2310341A1 (en) 2000-12-07
JP2001028756A (ja) 2001-01-30
EP1059812B1 (de) 2006-05-17
EP1059812A2 (de) 2000-12-13

Similar Documents

Publication Publication Date Title
DE60027955T2 (de) Verfahren und Vorrichtung zur kontextbasierten Inter/Intra Kodierungsmodeauswahl
DE69738494T2 (de) Videokodierungs- und Videodekodierungsvorrichtung
DE10190285B4 (de) Verfahren und System zur Verarbeitung von komprimierten Videosignalen
DE69635369T2 (de) Videokodierungsvorrichtung
DE69913990T2 (de) System zum editieren komprimierter bildsequenzen
DE69535228T2 (de) Bildumsetzungsvorrichtung
DE60215241T2 (de) Verfahren und Vorrichtung zur Reduzierung von Störungen in dekodierten Bildern mit Nachfilterung
DE102004059993B4 (de) Vorrichtung und Verfahren zum Erzeugen einer codierten Videosequenz unter Verwendung einer Zwischen-Schicht-Bewegungsdaten-Prädiktion sowie Computerprogramm und computerlesbares Medium
DE69233620T2 (de) Adaptive Kodierung und Dekodierung von Vollbildern und Halbbildern von Videosignalen
DE60309375T2 (de) Parametrisierung für verlauf-kompensation
DE60312960T2 (de) Kodierungsverfahren und Dekodierungsverfahren für bewegliche Bilder
DE102004021854A1 (de) Vorrichtung für sowohl eine Block-Matching Motion Compensation als auch eine Global Motion Compensation sowie Verfahren hierfür
DE112018005899T5 (de) System und Verfahren zum Konstruieren einer Ebene für planare Prädiktion
DE10343220B3 (de) Verfahren und Vorrichtung zur Transcodierung eines Datenstroms, der ein oder mehrere codierte digitalisierte Bilder umfasst
DE102016125604A1 (de) Intelligente Sortierung der rekursiven Blockaufteilung für die erweiterte Intra-Prädiktion bei der Videocodierung
DE10204617B4 (de) Verfahren und Vorrichtungen zur Kompression und Dekompression eines Videodatenstroms
DE10296787B4 (de) Selektive Prädikation für ein Intra-Codieren eines Videodatenblocks
DE112015001531T5 (de) Datenkodierung und Dekodierung
WO2006042612A1 (de) Vorrichtung und verfahren zum erzeugen einer codierten videosequenz und zum decodieren einer codierten videosequenz unter verwendung einer zwischen-schicht-restwerte-praediktion
DE10022520A1 (de) Verfahren zur örtlichen skalierbaren Bewegtbildcodierung
DE60210757T2 (de) Vorrichtung zur videokodierung und -aufzeichnung
DE69824983T2 (de) Verfahren und Gerät zur Codierung durch Luminanzschätzung
EP1285537B1 (de) Verfahren und eine anordnung zur codierung bzw. decodierung einer folge von bildern
DE10219640A1 (de) Verfahren zum Codieren und Decodieren von Videosequenzen und Computerprogrammprodukt
DE102004011421B4 (de) Vorrichtung und Verfahren zum Erzeugen eines skalierten Datenstroms

Legal Events

Date Code Title Description
8364 No opposition during term of opposition