PatentDe  


Dokumentenidentifikation DE60313454T2 03.01.2008
EP-Veröffentlichungsnummer 0001510078
Titel VERFAHREN UND SYSTEME ZUR BILDINTRAPRÄDIKTIONSMODUSSCHÄTZUNG,KOMMUNIKATION UND ORGANISATION
Anmelder Sharp K.K., Osaka, JP
Erfinder SUN, Shijun, Vancouver, WA 98683, US;
KEROFSKY, Louis Joseph, Camas WA 98607, US
Vertreter Müller - Hoffmann & Partner Patentanwälte, 81667 München
DE-Aktenzeichen 60313454
Vertragsstaaten DE, ES, FR, GB, IT, NL
Sprache des Dokument EN
EP-Anmeldetag 27.05.2003
EP-Aktenzeichen 037306487
WO-Anmeldetag 27.05.2003
PCT-Aktenzeichen PCT/JP03/06623
WO-Veröffentlichungsnummer 2003101117
WO-Veröffentlichungsdatum 04.12.2003
EP-Offenlegungsdatum 02.03.2005
EP date of grant 25.04.2007
Veröffentlichungstag im Patentblatt 03.01.2008
IPC-Hauptklasse H04N 7/34(2006.01)A, F, I, 20051017, B, H, EP

Beschreibung[de]
Stand der Technik

Ausführungsformen der vorliegenden Erfindung betreffen eine Intraprädiktion für ein Bild.

Ein digitales Video erfordert eine große Datenmenge, um jeden Rahmen einer digitalen Videosequenz (z.B. eine Reihe von Rahmen) auf eine nicht-komprimierte Weise darzustellen. Es ist aufgrund von Bandbreitenbeschränkungen für die meisten Anwendungen nicht machbar, ein unkomprimiertes digitales Video über Computernetze zu übertragen. Zusätzlich erfordert ein unkomprimiertes digitales Video eine große Menge an Speicherplatz. Das digitale Video wird normalerweise auf eine bestimmte Weise codiert, um die Speicheranforderungen zu verringern und um die Bandbreitenanforderungen zu verringern.

Eine Technik zum Codieren eines digitalen Videos ist ein Interrahmen-Codieren. Das Interahmen-Codieren benutzt die Tatsache, dass unterschiedliche Rahmen eines Videos in typische Weise Bereiche von Pixeln enthalten, normalerweise als x-mal-x-Blöcke ausgewählt, die im Wesentlichen gleich bleiben. Während des Codierungsprozesses bezieht ein Bewegungsvektor die Bewegung eines Blocks von Pixeln in einem Rahmen auf einen Block von ähnlichen Pixeln in einem anderen Rahmen. Dementsprechend ist es nicht erforderlich, dass das System den Block von Pixeln zweimal codiert, es codiert vielmehr den Block von Pixeln einmal und stellt einen Bewegungsvektor bereit, um den anderen Block von Pixeln vorherzusagen.

Eine weitere Technik zum Codieren eines digitalen Videos ist ein Intrarahmen-Codieren. Das Intrarahmen-Codieren codiert einen Rahmen oder einen Abschnitt davon ohne Bezugnahme auf Pixeln in anderen Rahmen. In typischer Weise codiert ein Intrarahmen-Codieren den Rahmen, oder Abschnitte davon, auf einer Block-zu-Block-Grundlage. Beispielsweise verwendet das Intrarahmen-Codieren bei MEPG-2 diskrete Cosinus-Transformationen eines Blocks von Pixeln und ein nachfolgendes Codieren der transformierten Koeffizienten. Andere Intrarahmen-Codierungstechniken existieren, wie etwa beispielsweise ein Wavelet-Codieren. Im Allgemeinen setzen diese Techniken relativ große Datentabellen zum Referenzieren von Prädiktionsmodi ein. Speicher für diese Datentabellen können für viele Niedrigpreis-Geräte unannehmbar teuer sein. Außerdem ist es auch unannehmbar teuer, ausreichend Speicher innerhalb von Verarbeitungsvorrichtungen bereitzustellen, um die Datentabelle zu speichern. Ferner weist das resultierende System eine erhöhte Komplexität mit den großen Datentabellen auf.

Die Veröffentlichung "H.26L Test Model Long Term Number 6 (TML-6) draft0" ITU-TELECOMMUNICATIONS STANDARDIZATION SECTOR STUDY GROUP 16 VIDEO CODING EXPERTS GROUP (VCEG), 2001, S. 11-14, betrifft ein Verfahren zum Codieren von Bildern unter Verwendung von sechs Arten von Intraprädiktionsmodi. Ein DC-Prädiktionsmodus ist mit 0 bezeichnet, und die anderen Modi sind bezeichnet, wie auf S. 11 der D1 offenbart. Für einen Zielblock ist eine Reihenfolge von Modi gegeben, wie in Tabelle 2 offenbart, in Abhängigkeit von dem Prädiktionsmodus benachbarter Blöcke A und B. Die Reihenfolge wird als eine Reihenfolge der "wahrscheinlichsten, nächst wahrscheinlichen, etc. von C" Prädiktionsmodi auf der Grundlage der bekannten Prädiktionsmodi A und B angesehen.

Aspekte der Erfindung sind in den zugehörigen Ansprüchen offenbart.

Kurze Beschreibung der Zeichnungen

Die folgenden Zeichnungen veranschaulichen nur typische Ausführungsformen der vorliegenden Erfindung und sind deswegen nicht als einschränkend für ihren Umfang anzusehen, und die Erfindung wird in größerem Detail unter Heranziehung der zugehörigen Zeichnungen beschrieben und erläutert werden. In den Zeichnungen zeigen:

1 bestimmte Formen einer Blocknachbarschaft;

2 ein Block von Pixeln und benachbarten Pixeln für eine Prädiktion;

3 allgemeine Prädiktionsmodusrichtungen;

4 die allgemeinen Richtungen von Prädiktionsmodi in einer Ausführungsform der vorliegenden Erfindung;

5 die allgemeinen Richtungen von Prädiktionsmodi in einer Ausführungsform der vorliegenden Erfindung;

6 die allgemeinen Richtungen von Prädiktionsmodi in einer Ausführungsform der vorliegenden Erfindung;

7 die allgemeinen Richtungen von Prädiktionsmodi in einer Ausführungsform der vorliegenden Erfindung;

8 die allgemeinen Richtungen von Prädiktionsmodi in einer Ausführungsform der vorliegenden Erfindung;

9 ein Blockdiagramm, das eine Modusabschätzung in Ausführungsformen mit einem geordneten Satz von Prädiktionsmodi veranschaulicht;

10 ein Blockdiagramm, welches eine Modusabschätzung in Ausführungsformen mit einem geordneten Satz von Prädiktionsmodi veranschaulicht;

11 ein Blockdiagramm, das eine Modusschätzung mit geordneten Sätzen veranschaulicht, welchen numerische Werte zugeordnet sind;

12 ein Blockdiagramm, das Modusschätz-Betriebsschritte veranschaulicht, wenn bestimmte Blockdaten nicht verfügbar sind;

13 ein Blockdiagramm, das eine Modusreihenfolge-Modifikation in bestimmten Ausführungsformen der vorliegenden Erfindung zeigt;

14 ein Blockdiagramm, das die Verfahren einer Ausführungsform der vorliegenden Erfindung veranschaulicht, bei welchem ein Schätzmodus verwendet wird, um einen Modusreihenfolge-Gebrauch zu modifizieren; und

15 ein Blockdiagramm, das das Verfahren einer Ausführungsform der vorliegenden Erfindung veranschaulicht, bei welchem ein Schätzmodus verwendet wird, um eine Modusreihenfolge unter Verwendung spezifischer Designatoren zu modifizieren.

Detaillierte Beschreibung

Ausführungsformen der vorliegenden Erfindung umfassen Verfahren und Systeme, die eine Intraprädiktion von Bildern betreffen. Da sämtliche Ausführungsformen eine Intraprädiktion betreffen, können die Ausdrücke "Intraprädiktion" und "Prädiktion" austauschbar verwendet werden, um Intraprädiktionsprozesse zu bezeichnen.

Ausführungsformen der vorliegenden Erfindung verwenden ein Intrarahmen-Codieren oder ein Intra-Codieren, um räumliche Redundanzen innerhalb eines Videobildes auszunutzen. Weil benachbarte Blöcke im Allgemeinen ähnliche Eigenschaften aufweisen, wird die Effizienz des Codierungsprozesses durch Bezugnahme auf die räumliche Korrelation zwischen benachbarten Blöcken verbessert. Diese Korrelation kann durch eine Prädiktion eines Zielblocks auf der Grundlage von Prädiktionsmodi ausgenutzt werden, die in benachbarten Blöcken verwendet werden.

Ein digitales Bild kann in Blöcke für eine effizientere Verarbeitung oder aus anderen Gründen geteilt werden. Wie in 1veranschaulicht, kann ein Zielblock "C" 12 neben einem Block "A" 14 gelegen sein, der unmittelbar oberhalb des Zielblocks "C" 12 angeordnet ist. Ein weiterer Block "B" 16 ist unmittelbar links des Zielblocks "C" 12 angeordnet. Andere Blöcke, die Grenzen mit dem Zielblock "C" 12 teilen, können auch als zu dem Block "C" benachbarte Blöcke angesehen werden.

Blöcke können verschiedene Pixelanzahlen in unterschiedlichen Konfigurationen umfassen. Beispielsweise kann ein Block ein 4 × 4-Feld von Pixeln umfassen. Ein Block kann auch ein 16 × 16-Feld von Pixeln oder ein 8 × 8-Feld umfassen. Andere Pixelkonfigurationen, die sowohl quadratische als auch rechteckige Felder einschließen, können auch einen Block bilden.

Jedes Pixel in einem Zielblock kann unter Bezugnahme auf Daten, die Pixel in benachbarten Blöcken betreffen, vorhergesagt werden. Die benachbarten Pixeldaten oder benachbarten Blockdaten umfassen die Prädiktionsmodi, die verwendet werden, um diese benachbarten Blöcke oder benachbarten Pixel vorherzusagen. Spezifische benachbarte Pixel und Pixel innerhalb eines Zielblocks können unter Verwendung eines alphanumerischen Index bezeichnet werden, wie in 2 veranschaulicht. 2 veranschaulicht einen 4 × 4-Zielblock, wie etwa einen Block "C" 12, der 16 Pixel umfasst, die bezeichnet sind durch Kleinbuchstaben 22. Pixel in einem benachbarten Block unmittelbar oberhalb des Zielblocks sind durch Großbuchstaben 24 bezeichnet. Pixel in einem benachbarten Block unmittelbar links des Zielblocks sind durch Großbuchstaben 26 bezeichnet.

Prädiktionsmodi können Instruktionen oder Algorithmen zum Vorhersagen spezifischer Pixel in einem Zielblock umfassen. Diese Modi können sich auf einen oder mehrere benachbarte Blockpixel beziehen, wie in den folgenden Modusbeschreibungen beschrieben.

Prädiktionsmodi Modus 0: vertikale Prädiktion

  • a, e, i, m können vorhergesagt werden durch A
  • b, f, j, n können vorhergesagt werden durch B
  • c, g, k, o können vorhergesagt werden durch C
  • d, j, 1, p können vorhergesagt werden durch D

Modus 1: horizontale Prädiktion

  • a, b, c, d können vorhergesagt werden durch I
  • e, f, g, h können vorhergesagt werden durch J
  • i, j, k, l können vorhergesagt werden durch K
  • m, n, o, p können vorhergesagt werden durch L

Modus 2: DC-Prädiktion

Wenn sämtliche Proben A, B, C, D, I, J, K, L verfügbar sind, können sämtliche Proben durch (A + B + C + D + I + J + K + L + 4)»3 vorhergesagt werden. Wenn A, B, C und D nicht verfügbar sind und I, J, K und L verfügbar sind, können sämtliche Proben durch (I + J + K + L + 2)»2 vorhergesagt werden. Wenn I, J, K und L nicht verfügbar sind und A, B, C und D verfügbar sind, können sämtliche Proben durch (A + B + C + D + 2)»2 vorhergesagt werden. Wenn sämtliche acht Proben nicht verfügbar sind, kann die Prädiktion für sämtliche Luma-Proben in dem Block 128 sein. Ein Block kann in diesem Modus immer vorhergesagt werden.

Modus 3: diagonale Ab/Links-Prädiktion

  • a kann vorhergesagt werden durch

    (A + 2B + C + I + 2J + K + 4)»3
  • b, e können vorhergesagt werden durch

    (B + 2C + D + J + 2K + L + 4)»3
  • c, f, i können vorhergesagt werden durch

    (C + 2D + E + K + 2L + M + 4)»3
  • d, g, j, m können vorhergesagt werden durch

    (D + 2E + F + L + 2M + N + 4)»3 h, k, n können vorhergesagt werden durch

    (E + 2F + G + M + 2N + O + 4)»3
  • l, o können vorhergesagt werden durch

    (F + 2G + H + N + 2O + P + 4)»3
  • p kann vorhergesagt werden durch

    (G + H + O + P + 2)»2

Modus 4: diagonale Ab/Rechts-Prädiktion m kann vorhergesagt werden durch (J + 2K + L + 2)»2 i, n können vorhergesagt werden durch (I + 2J + K + 2)»2 e, j, o können vorhergesagt werden durch (Q + 2I + J + 2)»2 a, f, k, p können vorhergesagt werden durch (A + 2Q + I + 2)»2 b, g, l können vorhergesagt werden durch (Q + 2A + B + 2)»3 c, h können vorhergesagt werden durch (A + 2B + C + 2)»2 d kann vorhergesagt werden durch (B + 2C + D + 2)»2
Modus 5: Vertikal-Links-Prädiktion a, j können vorhergesagt werden durch (Q + A + 1)»1 b, k können vorhergesagt werden durch (A + B + 1)»1 c, l können vorhergesagt werden durch (B + C + 1)»1 d kann vorhergesagt werden durch (C + D + 1)»1 e, n können vorhergesagt werden durch (I + 2Q + A + 2)»2 f, o können vorhergesagt werden durch (Q + 2A + B + 2)»2 g, p können vorhergesagt werden durch (A + 2B + C + 2)»2 h kann vorhergesagt werden durch (B + 2C + D + 2)»2 i kann vorhergesagt werden durch (Q + 2I + J + 2)»2 m kann vorhergesagt werden durch (I + 2J + K + 2)»2
Modus 6: Horizontal-Ab-Prädiktion a, g können vorhergesagt werden durch (Q + I + 1)»1 b, h können vorhergesagt werden durch (I + 2Q + A + 2)»2 c kann vorhergesagt werden durch (Q + 2A + B + 2)»2 d kann vorhergesagt werden durch (A + 2B + C + 2)»2 e, k können vorhergesagt werden durch (I + J + 1)»1 f, l können vorhergesagt werden durch (Q + 2I + J + 2)»2 i, o können vorhergesagt werden durch (J + K + 1)»2 j, p können vorhergesagt werden durch (I + 2J + K + 2)»2 m kann vorhergesagt werden durch (K + L + 1)»1 n kann vorhergesagt werden durch (J + 2K + L + 2)»2
Modus 7: Vertikal-Rechts-Prädiktion a kann vorhergesagt werden durch (2A + 2B + J + 2K + L + 4)»3 b, i können vorhergesagt werden durch (B + C + 1)»1 c, j können vorhergesagt werden durch (C + D + 1)»1 d, k können vorhergesagt werden durch (D + E + 1)»1 l kann vorhergesagt werden durch (E + F + 1)»1 e kann vorhergesagt werden durch (A + 2B + C + K + 2L + M + 4)»3 f, m können vorhergesagt werden durch (B + 2C + D + 2)»2 g, n können vorhergesagt werden durch (C + 2D + E + 2)»2 h, o können vorhergesagt werden durch (D + 2E + F + 2)»2 p kann vorhergesagt werden durch (E + 2F + G + 2)»2
Modus 8: Horizontal-Auf-Prädiktion a kann vorhergesagt werden durch (B + 2C + D + 2I + 2J + 4)»3 b kann vorhergesagt werden durch (C + 2D + E + I + 2J + K + 4)»3 c, e können vorhergesagt werden durch (J + 2K + L + 2)»2 d, f können vorhergesagt werden durch (J + 2K + L + 2)»2 g, i können vorhergesagt werden durch (K + L + 1)»1 h, j können vorhergesagt werden durch (K + 2L + M + 2)»2 l, n können vorhergesagt werden durch (L + 2M + N + 2)»2 k, m können vorhergesagt werden durch (L + M + 1)»1 o kann vorhergesagt werden durch (M + N + 1)»1 p kann vorhergesagt werden durch (M + 2N + O + 2)»2

Der Ordnungsprozess, der auf der Wahrscheinlichkeit eines Erzeugens eines geringeren Prädiktionsfehlers für jeden der Modi basiert ist, erhöht die Codierungseffizienz, verringert die Speicheranforderungen und kann zumindest teilweise mathematisch definiert werden.

Jeder Prädiktionsmodus kann durch eine allgemeine Richtung einer Prädiktion beschrieben werden, wie in Worten in jedem der Modustitel oben stehend beschrieben (d.h. horizontal-auf, vertikal- und diagonal-ab-links). Ein Prädiktionsmodus kann auch graphisch durch eine Winkelrichtung beschrieben werden. Diese Winkelrichtung kann durch ein Diagramm mit Pfeilen ausgedrückt werden, die nach außen von einem zentralen Punkt ausstrahlen, wie in 3 gezeigt. In diesem Typ eines Diagramms können jeder Pfeil und der Zentralpunkt einen Prädiktionsmodus darstellen. Der Winkel, der einem Prädiktionsmodus entspricht, weist eine allgemeine Beziehung bezüglich der Richtung von dem gewichteten Durchschnittsort benachbarter Pixel, die verwendet werden, um das Zielpixel vorherzusagen, zu dem tatsächlichen Zielpixelort auf. Jedoch sind die Modi in den obigen Definitionen und in dem JVT-Standard präziser definiert. In 3 stellt der Zentralpunkt 32 keine Richtung dar, so dass dieser Punkt einem DC-Prädiktionsmodus zugeordnet werden kann. Ein horizontaler Pfeil 34 kann einen horizontalen Prädiktionsmodus darstellen. Ein vertikaler Pfeil 36 kann einen vertikalen Prädiktionsmodus darstellen. Ein Pfeil, der von dem Zentralpunkt diagonal nach unten rechts unter einem Winkel von ungefähr 45 Grad von der Horizontalen 38 verläuft, kann als ein Diagonal-Ab/Rechts-(DDR-)Prädiktionsmodus dargestellt werden. Ein Pfeil, der von dem Zentralpunkt diagonal nach links abwärts unter einem Winkel von ungefähr 45 Grad von einer Horizontalen 40 verläuft, kann als ein Diagonal-Ab/Links-(DDL-)Prädiktionsmodus bezeichnet werden. Sowohl die DDR- als auch die DDL-Prädiktionsmodi können als diagonale Prädiktionsmodi bezeichnet werden.

Ein Pfeil, der von dem Zentralpunkt diagonal aufwärts nach rechts unter einem Winkel von ungefähr 22,5 Grad von einer Horizontalen 42 verläuft, kann als ein Horizontal-Auf-(HU-)Prädiktionsmodus bezeichnet werden. Ein Pfeil, der von dem Zentralpunkt diagonal nach rechts abwärts unter einem Winkel von ungefähr 22,5 Grad von einer Horizontalen 44 verläuft, kann als ein Horizontal-Ab-(HD-)Prädiktionsmodus bezeichnet werden. Ein Pfeil, der von dem Zentralpunkt diagonal nach rechts abwärts unter einem Winkel von ungefähr 67,5 Grad von einer Horizontalen 46 verläuft, kann als ein Vertikal-Rechts-(VR-) Prädiktionsmodus bezeichnet werden. Ein Pfeil, der von dem Zentralpunkt diagonal nach links abwärts unter einem Winkel von ungefähr 67,5 Grad von einer Horizontalen 48 verläuft, kann als ein Vertikal-Links-(VL-)Prädiktionsmodus bezeichnet werden. Die HU-, HD-, VR- und VL-Prädiktionsmodi können kollektiv als Zwischenwinkel-Prädiktionsmodi bezeichnet werden.

Viele andere Prädiktionsmodi können erzeugt und unter Verwendung dieses Winkelbeschreibungsschemas beschrieben werden.

Prädiktionsmodusreihenfolge

Die betreffenden Erfinder haben herausgefunden, dass Prädiktionsmodi auf eine Weise geordnet werden können, die im Allgemeinen konsistent mit ihrer Wahrscheinlichkeit ist, einen verringerten Prädiktionsfehler zu erzeugen. Wenn die Prädiktionsmodi gemäß ihrer allgemeinen Wahrscheinlichkeit eines Erzeugens eines geringeren Prädiktionsfehlers geordnet sind, können die resultierenden Daten selbst eine größere Tendenz aufweisen, konsistenter geordnet zu sein. Überdies kann eine Kommunikation von Modi einen Nutzen aus Codierungstechniken ziehen, die Speicher- und Bandbreitenanforderungen verringern. Beispielsweise bestimmten die betreffenden Erfinder, dass der horizontale Prädiktionsmodus und der vertikale Prädiktionsmodus im Allgemeinen wahrscheinlicher sind als diagonale Prädiktionsmodi, die im Allgemeinen wahrscheinlicher sind als Zwischenwinkel-Prädiktionsmodi. Zusätzlich ist ein DC-Prädiktionsmodus (z.B. wenn ein benachbarter Block in einem Zwischenmodus codiert ist) im Allgemeinen weniger wahrscheinlich als horizontale und vertikale Prädiktionsmodi und im Allgemeinen wahrscheinlicher als diagonale Prädiktionsmodi.

Für Blöcke, die keine Diskontinuitäten, wie etwa Bildkanten oder Verzerrungs-/Schwadengrenzen umschließen, kann die Reihenfolge, die in bestimmten Ausführungsformen der vorliegenden Erfindung eingerichtet ist, in allgemeiner Hinsicht wie folgt ausgedrückt werden: Es ist wahrscheinlicher, dass vertikale und horizontale Prädiktionsmodi einen verringerten Prädiktionsfehler erzeugen als ein DC-Prädiktionsmodus, und es ist wahrscheinlicher, dass ein DC-Prädiktionsmodus einen verringerten Prädiktionsfehler erzeugt als diagonale Prädiktionsmodi, und es ist wahrscheinlicher, dass diagonale Prädiktionsmodi einen verringerten Prädiktionsfehler erzeugen als Zwischenwinkel-Prädiktionsmodi.

Für Blöcke in der Nähe von Kanten oder Grenzen oder wo benachbarte Block- oder Pixelprädiktionsmodusdaten nicht verfügbar sind, kann die Reihenfolge, die in bestimmten Ausführungsformen der vorliegenden Erfindung eingerichtet ist, in allgemeiner Hinsicht wie folgt ausgedrückt werden: Es ist wahrscheinlicher, dass ein DC-Prädiktionsmodus einen verringerten Prädiktionsfehler erzeugt als vertikale und horizontale Prädiktionsmodi, und es ist wahrscheinlicher, dass vertikale und horizontale Prädiktionsmodi einen verringerten Prädiktionsfehler erzeugen als diagonale Prädiktionsmodi, und es ist wahrscheinlicher, dass diagonale Prädiktionsmodi einen verringerten Prädiktionsfehler erzeugen als Zwischenwinkel-Prädiktionsmodi.

In einem ersten Satz von Ausführungsformen, wie sie in 4 veranschaulicht sind, können Modi in einer Reihenfolge wie folgt definiert werden:

  • Modus 0: vertikale Prädiktion
  • Modus 1: horizontale Prädiktion
  • Modus 2: DC-Prädiktion
  • Modus 3: diagonal Ab/Links-Prädiktion
  • Modus 4: diagonale Ab/Rechts-Prädiktion
  • Modus 5: horizontale Ab-Prädiktion
  • Modus 6: vertikale Rechts-Prädiktion
  • Modus 7: vertikale Links-Prädiktion
  • Modus 8: horizontale Auf-Prädiktion

In einem zweiten Satz von Ausführungsformen, wie in 5 veranschaulicht, können Modi in einer Reihenfolge wie folgt definiert werden:

  • Modus 0: horizontale Prädiktion
  • Modus 1: vertikale Prädiktion
  • Modus 2: DC-Prädiktion
  • Modus 3: diagonale Ab/Links-Prädiktion
  • Modus 4: diagonale Ab/Rechts-Prädiktion
  • Modus 5: horizontale Ab-Prädiktion
  • Modus 6: vertikale Rechts-Prädiktion
  • Modus 7: vertikale Links-Prädiktion
  • Modus 8: horizontale Auf-Prädiktion

In einem dritten Satz von Ausführungsformen, wie in 6 veranschaulicht, können Modi in einer Reihenfolge wie folgt definiert werden:

  • Modus 0: vertikale Prädiktion
  • Modus 1: horizontale Prädiktion
  • Modus 2: DC-Prädiktion
  • Modus 3: diagonale Ab/Links-Prädiktion
  • Modus 4: diagonale Ab/Rechts-Prädiktion
  • Modus 5: vertikale Rechts-Prädiktion
  • Modus 6: horizontale Ab-Prädiktion
  • Modus 7: vertikale Links-Prädiktion
  • Modus 8: horizontale Auf-Prädiktion

In einem vierten Satz von Ausführungsformen, wie in 7 veranschaulicht, können Modi in einer Reihenfolge wie folgt definiert werden:

  • Modus 0: horizontale Prädiktion
  • Modus 1: vertikale Prädiktion
  • Modus 2: DC-Prädiktion
  • Modus 3: diagonale Ab/Links-Prädiktion
  • Modus 4: diagonale Ab/Rechts-Prädiktion
  • Modus 5: vertikale Rechts-Prädiktion
  • Modus 6: horizontale Ab-Prädiktion
  • Modus 7: vertikale Links-Prädiktion
  • Modus 8: horizontale Auf-Prädiktion

In einem fünften Satz von Ausführungsformen, wie in 8 veranschaulicht, können Modi in einer Reihenfolge wie folgt definiert werden:

  • Modus 0: DC-Prädiktion
  • Modus 1: vertikale Prädiktion
  • Modus 2: horizontale Prädiktion
  • Modus 3: diagonale Ab/Links-Prädiktion
  • Modus 4: diagonale Ab/Rechts-Prädiktion
  • Modus 5: vertikale Rechts-Prädiktion
  • Modus 6: horizontale Ab-Prädiktion
  • Modus 7: vertikale Links-Prädiktion
  • Modus 8: horizontale Auf-Prädiktion

Es sei darauf hingewiesen, dass die Modus-Reihenfolge über diese beispielhaften Reihenfolgen hinaus in verschiedenen anderen Ausführungsformen der vorliegenden Erfindung variieren kann.

In bestimmten Ausführungsformen der vorliegenden Erfindung kann die horizontale Prädiktion (Modus 0) und die vertikale Prädiktion (Modus 1) umgekehrt werden, falls erwünscht. Es sei ferner darauf hingewiesen, dass der diagonale Ab/Links-Prädiktionsmodus und der horizontale Ab-Prädiktionsmodus umgekehrt werden können, falls erwünscht. Zusätzlich sei darauf hingewiesen, dass die diagonale Ab/Rechts-Prädiktion (Modus 5), die vertikale Rechts-Prädiktion (Modus 6), die vertikale Links-Prädiktion (Modus 7) und die horizontale Auf-Prädiktion (Modus 8) neu geordnet werden können, falls erwünscht. Ferner ist es wünschenswert, dass die DC-Prädiktion zwischen dem Modus 0/Modus 1-Satz und dem Modus 3/Modus 4-Satz ist, kann aber zwischen dem Modus 3/Modus 4-Satz und dem Modus 5/Modus 6/Modus 7/Modus 8-Satz angeordnet werden, falls erwünscht, oder an jedwedem anderen Ort. Außerdem können die Winkelmodi 3-8 neu nummeriert werden, falls erwünscht, ohne allzu großen Einfluss auf die Codierungseffizienz.

In bestimmten Ausführungsformen der vorliegenden Erfindung können die Prädiktionsmodi für sämtliche der jeweiligen Blöcke (z.B. jene Blöcke, die das vorgegebene Prädiktionsschema verwenden) unter Verwendung einer derartigen Prädiktionsbasis neu geordnet werden. Zusätzlich können weniger als alle der jeweiligen Blöcke (z.B. jene Blöcke, die das vorgegebene Prädiktionsschema verwenden) eine derartige Prädiktionsbasis verwenden, beispielsweise mehr als 50%, 75% oder 90%, falls erwünscht. Ferner kann die Reihenfolge der Prädiktionsmodi die gleiche sein oder kann für unterschiedliche Blöcke variiert werden. Weiterhin umfasst das Neuordnen jedes der Modi einer derartigen Prädiktionsbasis (z.B. auf eine vorbestimmte konsistente Weise) vorzugsweise zumindest 5 Modi, 6 Modi oder 7 Modi, wobei die übrigen auf jedwede andere Weise geordnet werden. Zusätzlich ist die Reihenfolge der Prädiktionsmodi vorzugsweise 0, 1, 2, 3, 4, 5, 6, 7, 8. Ein anderes vordefiniertes Ordnen der Prädiktionsmodi kann gleichermaßen eingesetzt werden.

Bestimmte Ausführungsformen der vorliegenden Erfindung können einen oder mehrere Datentabellen zum Organisieren von Modusdaten umfassen. Wenn die Modi im Allgemeinen auf eine geordnete Weise angeordnet sind, kann dies zusammen mit jeder Zelle in einer Datentabelle verwendet werden, um einen geordneteren Satz bereitzustellen. Beispielsweise kann jeder Eintrag in der Datentabelle den geordneten Satz der Zahlen 0, 1, 2, 3, 4, 5, 6, 7, 8 und 9 einschließen. Alternativ kann der geordnete Satz der Zahlen in der Datentabelle 5, 6, 7, 8 oder 9 Sätze geordneter Nummern für jeden Dateneintrag in der Datentabelle einschließen. Beispielsweise können die Datentabelleneinträge die folgenden Sätze von Dateneinträgen einschließen: {1, 2, 3, 5, 7}; {0, 1, 2, 3, 5, 6}; {0, 1, 3, 5, 6, 7, 8}, wobei jede der Zahlen in dem Satz einen zunehmenden numerischen Wert aufweisen. Alternativ können die Datentabelleneinträge beispielsweise die folgenden Sätze von Dateneinträgen einschließen: {1, 2, 3, 5, 7}; {0, 1, 2, 3, 4, 5, 6}; {0, 1, 3, 5, 6, 7, 8}, wobei jeder Satz in zumindest 25% oder 35% oder 50% oder 75% oder 90% oder mehr der Zellen enthalten ist. Auf diese Weise wird die Tabelle signifikant größere Vorhersagbarkeit als bekannte Datentabellenverfahren aufweisen, wodurch Speicheranforderungen verringert werden.

Die vorbestimmte Weise eines Ordnens der Sätze von Dateneinträgen sollte unabhängig von den Prädiktionsmodi angrenzender Pixelsätze (z.B. Makroblöcke) sein. Es sei darauf hingewiesen, dass die Datentabelle als Ganzes oder teilweise in der Natur "statisch" sein kann oder effektiv dynamisch erzeugt werden kann, falls erforderlich auf der Grundlage von Mustern in dem Datenpunkt. Dementsprechend kann eine mathematische Gleichung oder ein Algorithmus verwendet werden, um die Einträge zu bestimmen, wobei in diesem Fall die "Tabelle" durch eine derartige Technik erzeugt werden könnte. Dementsprechend ist eine "Datentabelle", wie sie hierin verwendet wird, nicht nur auf eine statische Tabelle beschränkt, sondern schließt vielmehr einen derartigen Satz von Werten, wenngleich bestimmt, ein, die für eine derartige Prädiktion verwendet werden.

In unzweckmäßiger Weise führt die Substitution der vorherigen Modusnummern durch die neuen Modusnummern (z.B. eine Substitution von Nummern in die Zellen der bekannten Datentabelle), während dies vielleicht eine Verbesserung ist, immer noch zu einem im Wesentlichen ungeordneten Datensatz.

Schätzen eines Pixelprädiktionsmodus auf der Grundlage von benachbarten Blockdaten

Im Gegensatz zu dem gezeigten, im Allgemeinen ungeordneten Datensatz, auch im Falle von Substitutionen, erkannten die Erfinder weiter, dass der wahrscheinlichste Prädiktionsmodus zuerst geordnet, der zweitwahrscheinlichste Prädiktionsmodus als Zweites geordnet werden sollte, falls erwünscht, gefolgt von den übrigen Modi auf eine vorbestimmte Weise. Die vorbestimmte Weise sollte unabhängig von den Prädiktionsmodi angrenzender Makroblöcke sein. Die bevorzugte Reihenfolge der übrigen Modi sollte in einer abnehmenden Auftrittswahrscheinlichkeit der übrigen Modi sein (der wahrscheinlichste Prädiktionsmodus und, falls gewünscht, der zweitwahrscheinlichste Prädiktionsmodus).

Auf der Grundlage der Intraprädiktionsmodi von Block A und Block B, wie sie in 1 gezeigt sind, kann die Intraprädiktionsmodusreihenfolge für den Block C wie folgt definiert werden:

  • (1) Wenn beide Blöcke A und B "außerhalb" sind (z.B. nicht verfügbar), wird nur die DC-Prädiktion (Modus 2) zugelassen, wobei die Intraprädiktionsmodusreihenfolge für den Block C deswegen {2} ist.
  • (2) Wenn der Block A "außerhalb" (z.B. nicht verfügbar) ist, und der Block B nicht "außerhalb" ist, werden nur die DC-Prädiktion (Modus 2) oder die horizontale Prädiktion (Modus 0) für den Block C zugelassen, deswegen gilt:

    (i) Wenn der Block B2 ist, ist die Intraprädiktionsmodusreihenfolge für den Block C {2, 0};

    (ii) anderenfalls ist die Intraprädiktionsmodusreihenfolge für den Block C {0, 2}.
  • (3) Wenn der Block A nicht "außerhalb" ist, aber der Block B "außerhalb" ist, werden nur die DC-Prädiktion (Modus 2) und die vertikale Prädiktion (Modus 1) für den Block C zugelassen, deswegen gilt:

    (i) Wenn der Block A2 ist, ist die Intraprädiktionsmodusreihenfolge für den Block C {2, 1};

    (ii) anderenfalls ist die Intraprädiktionsmodusreihenfolge für den Block C {1, 2}.
  • (4) Wenn weder der Block A noch der Block B "außerhalb" ist, gilt:

    (i) Wenn der Prädiktionsmodus des Blocks A geringer als der Prädiktionsmodus des Blocks B ist, dann ist die Intraprädiktionsmodusreihenfolge für den Block C {Intraprädiktionsblockmodus A, Intraprädiktionsblockmodus B, andere Modi in aufsteigender Reihenfolge};

    (ii) wenn der Prädiktionsmodus des Blocks A größer als der Prädiktionsmodus des Blocks B ist, dann ist die Intraprädiktionsmodusreihenfolge für den Block C {Intraprädiktionsblockmodus B, Intraprädiktionsblockmodus A, andere Modi in aufsteigender Reihenfolge};

    (iii) wenn der Prädiktionsmodus des Blocks A gleich dem Prädiktionsmodus des Blocks B ist, dann ist die Intraprädiktionsmodusreihenfolge für den Block C {Intraprädiktionsblockmodus A, andere Modi in aufsteigender Reihenfolge).

Wenn der Prädiktionsmodus des Blocks A beispielsweise 3 ist und der Prädiktionsmodus des Blocks B1 ist, dann ist die Intraprädiktionsmodusreihenfolge für den Block C {1, 3, 0, 2, 4, 5, 6, 7, 8}. Wenn die Modi in einer im Allgemeinen abnehmenden (oder zunehmenden) Auftrittswahrscheinlichkeit angeordnet sind, dann wird die automatische Anordnung der übrigen Auftrittsmodi im Allgemeinen in der richtigen Sequenz angeordnet werden. Das Ordnen der Sequenz von der höheren zu der niedrigeren Probabilität erhöht die Wahrscheinlichkeit der richtigen Prädiktion zum Anfang hin. Mit einer Entropiecodierung verringert dies den resultierenden codierten Bitstrom. Andere Anordnungen können gleichermaßen verwendet werden.

Konzeptionell ist das zuvor erwähnte Auswahlschema auf dem Prinzip basiert, dass dann, wenn die Prädiktion des Blocks A X ist, und die Prädiktion des Blocks B Y ist, es dann wahrscheinlich ist, dass die Prädiktion des Blocks C X oder Y ist. Die Prädiktion für X und/oder Y ist am Beginn der Liste angeordnet und die übrigen Modi sind danach sequenziell aufgelistet.

Anders gesagt ist dann, wenn die Prädiktionsmodi von A und B bekannt sind (einschließlich des Falls, dass A oder B oder beide außerhalb des Schnitts sind), der wahrscheinlichste Modus von C gegeben, nämlich das Minimum der Modi, die für die Blöcke A und B verwendet werden. Wenn einer der Blöcke A oder B "außerhalb" ist, dann ist der wahrscheinlichste Modus gleich dem Prädiktionsmodus 2. Das Ordnen der Prädiktionsmodi, die den Blöcken C zugeordnet sind, ist deswegen der wahrscheinlichste Modus, gefolgt von den übrigen Modi in der aufsteigenden Reihenfolge.

Ausführungsformen der vorliegenden Erfindung können unter Bezugnahme auf 9 beschrieben werden. In diesen Ausführungsformen wird ein Zielblock für eine Prädiktion ausgewählt 50.

Ein Prädiktionsmodus, der für eine Prädiktion eines ersten benachbarten Blocks verwendet wird, der unmittelbar angrenzend an den Zielblock ist, wird dann bestimmt 52. Ein Prädiktionsmodus, der für die Prädiktion eines zweiten benachbarten Blocks verwendet wird, der auch angrenzend an den Zielblock ist, wird auch bestimmt 54. Diese angrenzenden Blockprädiktionsmodi werden dann überprüft 56, um zu bestimmen, welcher am wahrscheinlichsten einen geringeren Prädiktionsfehler erzeugen wird.

In anderen Ausführungsformen der vorliegenden Erfindung, wie sie in 10 veranschaulicht sind, wird ein Satz von Prädiktionsmodi 58 gemäß der Wahrscheinlichkeit der Modi, dass sie einen geringeren Prädiktionsfehler erzeugen, geordnet. Ein Zielblock wird ausgewählt 60. Der Prädiktionsmodus, der für einen ersten angrenzenden Block verwendet wird, wird bestimmt 62, und der Prädiktionsmodus, der für einen zweiten angrenzenden Block verwendet wird, wird auch bestimmt 64. Diese beiden Prädiktionsmodi werden dann überprüft 66, um zu bestimmen, welcher zuerst in dem geordneten Satz von Modi auftritt, der dadurch dem Modus mit der höheren Wahrscheinlichkeit entspricht, dass ein geringerer Prädiktionsfehler erzeugt wird.

In weiteren Ausführungsformen der vorliegenden Erfindung, wie sie in 11 veranschaulicht sind, wird ein Satz von Prädiktionsmodi durch die Wahrscheinlichkeit, dass ein geringer Prädiktionsfehler erzeugt wird, geordnet 68. Diese Modi in dem geordneten Satz werden dann numerischen Werten zugeordnet 70, derart, dass Modi mit einer höheren Wahrscheinlichkeit, dass ein geringerer Prädiktionsfehler erzeugt wird, niedrigeren numerischen Werten zugeordnet werden. Der Modus, der verwendet wird, um einen ersten angrenzenden Block vorherzusagen, wird dann bestimmt 72, und der Modus, der verwendet wird, um einen zweiten angrenzenden Block vorherzusagen, wird auch bestimmt 74. Diese angrenzenden Blöcke werden dann überprüft, um zu bestimmen, welcher Modus einem niedrigeren numerischen Wert zugeordnet ist. Dieser Modus wird als der Schätzmodus für eine Prädiktion des Zielblocks bezeichnet.

In noch weiteren Ausführungsformen, wie sie in 12 veranschaulicht sind, wird ein Satz von Prädiktionsmodi durch die Wahrscheinlichkeit, dass ein geringerer Prädiktionsfehler erzeugt wird, geordnet 78. Diese Modi in dem geordneten Satz werden dann numerischen Werten zugeordnet 80, derart, dass Modi mit einer höheren Wahrscheinlichkeit, dass ein geringerer Prädiktionsfehler erzeugt wird, niedrigeren numerischen Werten zugeordnet werden. Ein Versuch 82 wird ausgeführt, um den Modus zu bestimmen, der verwendet wird, um einen ersten angrenzenden Block vorherzusagen, und ein Versuch 84 wird ausgeführt, um den Modus zu bestimmen, der verwendet wird, um einen zweiten angrenzenden Block vorherzusagen. Wenn der Prädiktionsmodus, der verwendet wird, um den ersten angrenzenden Block vorherzusagen, nicht verfügbar ist 86, kann ein Vorbesetzungs-Prädiktionsmodus, wie etwa ein DC-Prädiktionsmodus, als ein geschätzter Prädiktionsmodus für den Zielblock bezeichnet werden 90. Ferner kann, wenn der Prädiktionsmodus, der verwendet wird, um den zweiten angrenzenden Block vorherzusagen, nicht verfügbar ist 88, ein Vorbesetzungs-Prädiktionsmodus, wie etwa ein DC-Prädiktionsmodus, als ein geschätzter Prädiktionsmodus für den Zielblock bezeichnet werden 90. Wenn die angrenzenden Blockprädiktionsmodi verfügbar sind, können diese angrenzenden Blockmodi überprüft werden, um zu bestimmen, welcher Modus einem niedrigeren numerischen Wert zugeordnet ist. Dieser Modus wird dann als der Schätzmodus für eine Prädiktion des Zielblocks bezeichnet 92.

Modifikation der Prädiktionsmodusreihenfolge auf der Grundlage angrenzender Blockdaten

In bestimmten Ausführungsformen der vorliegenden Erfindung können die oben stehend beschriebenen Prädiktionsmodusreihenfolgen, die unabhängig von den angrenzenden Blockdaten bestimmt worden sind, mit den angrenzenden Blockdaten modifiziert werden. Prädiktionsmodusschätzungen, die unter Bezugnahme auf die angrenzenden Blockdaten bestimmt sind, können in Prädiktionsmodusreihenfolgen eingeführt werden, um die Reihenfolgen zu modifizieren, um die zusätzliche Information, die aus den angrenzenden Blockdaten erhalten wird, widerzuspiegeln.

In bestimmten dieser Ausführungsformen kann eine Prädiktionsmodusschätzung auf der Grundlage angrenzender Blockdaten direkt in einen Prädiktionsmodusreihenfolgesatz eingefügt werden. In typischer Weise wird die Prädiktionsmodusschätzung vorne an der Prädiktionsmodusreihenfolge an einer Position des Modus, der am wahrscheinlichsten einen verringerten Prädiktionsfehler erzeugt, eingefügt oder vorangestellt werden. Jedoch kann die Schätzung an bestimmten Ausführungsformen an unterschiedlichen Positionen in der Modusreihenfolge eingefügt werden.

In bestimmten Ausführungsformen der vorliegenden Erfindung ist, wie in 13 gezeigt, eine Prädiktionsmodusreihenfolge ausgewählt 102, wobei die Prädiktionsmodusreihenfolgeelemente gemäß ihrer Wahrscheinlichkeit, dass sie einen geringeren Prädiktionsfehler erzeugen, angeordnet sind. Mit anderen Worten, das erste Element in der Reihenfolge stellt den Prädiktionsmodus dar, der am wahrscheinlichsten einen geringeren Prädiktionsfehler ergibt, das nächste Element in der Reihenfolge stellt den Prädiktionsmodus dar, der am nächstwahrscheinlichsten einen geringeren Prädiktionsfehler ergibt, und so weiter bis hin zu dem letzten Element in der Reihenfolge, welches den Prädiktionsmodus in der Reihenfolge darstellt, der mit der geringsten Wahrscheinlichkeit einen geringeren Prädiktionsfehler ergibt.

Eine Prädiktionsmodusschätzung wird auch bestimmt 104, wie oben stehend beschrieben. Diese Schätzung wird unter Verwendung angrenzender Blockdaten bestimmt. Im Allgemeinen ist die Schätzung der Prädiktionsmodus, der in einem oder mehreren angrenzenden Blöcken verwendet wird, welcher am wahrscheinlichsten einen geringeren Prädiktionsfehler ergibt. Jedoch kann die Schätzung auf andere Arten bestimmt werden. Wenn genügende angrenzende Blockprädiktionsmodusdaten nicht verfügbar sind, wie etwa an einer Bildkante oder einer Schnittgrenze, kann ein Prädiktionsmodus für den Zielblock auf der Grundlage des Fehlens von einem oder mehreren angrenzenden Blöcken oder ihrer Prädiktionsmodusdaten geschätzt werden. In vielen Fällen wird ein DC-Prädiktionsmodus geschätzt werden, wenn angrenzende Blockdaten beschränkt oder nicht verfügbar sind.

In bestimmten Ausführungsformen kann, sobald der Schätzprädiktionsmodus geschätzt ist, der Schätzprädiktionsmodus in einer Modusreihenfolge als der Modus, der am wahrscheinlichsten einen geringeren Prädiktionsfehler ergibt, gesetzt werden 106. In manchen Ausführungsformen wird dies der erste Modus in der Reihenfolge oder der Modus, dem der niedrigste numerische Wert zugeordnet ist, sein.

In anderen Ausführungsformen kann der Schätzprädiktionsmodus einen Vorrang gegenüber der vorausgewählten Modusreihenfolge einnehmen. In manchen dieser Ausführungsformen ist, wie in 14 veranschaulicht, eine vorausgewählte Modusreihenfolge bei dem Codierer und dem Decodierer bezeichnet 110. Diese Reihenfolge umfasst einen Satz von Prädiktionsmodi, die in einer Reihenfolge einer Wahrscheinlichkeit angeordnet sind, dass sich ein geringerer Prädiktionsfehler ergibt, oder in einer bestimmten anderen Reihenfolge. Ein Schätzprädiktionsmodus wird auch auf der Grundlage von angrenzenden Blockdaten bestimmt 112. Dieser Schätzprädiktionsmodus wird in dem Codierer und dem Decodierer gemäß dem gleichen Algorithmus oder Verfahren bestimmt. Der Codierer bestimmt auch den tatsächlich besten Prädiktionsmodus 114 zum Vorhersagen eines Pixels auf der Grundlage von Bewegungsvektoren oder anderen bekannten Techniken. Der Codierer kann dann den tatsächlichen besten Prädiktionsmodus mit dem Schätzprädiktionsmodus vergleichen 116, um zu bestimmen, ob diese gleich sind. Wenn der Schätzprädiktionsmodus der gleiche Modus wie der tatsächlich beste Prädiktionsmodus ist, kann der Codierer dem Decodierer signalisieren, dass der Schätzprädiktionsmodus zu verwenden ist 118. In manchen Ausführungsformen kann dieses Schätzprädiktionsmodussignal mit einem 1-Bit-Marker verwirklicht werden, um zu kennzeichnen, ob der Schätzmodus zu verwenden ist oder nicht.

Wenn der Schätzprädiktionsmodus nicht der tatsächlich beste Prädiktionsmodus ist, kann der Codierer dem Decodierer signalisieren, dass ein anderer Modus verwendet werden kann 120. Dies kann unter Bezugnahme auf die vor-eingerichtete Modusreihenfolge durchgeführt werden. Der Codierer kann bestimmen, welcher Modus in der Modusreihenfolge am äquivalentesten zu dem tatsächlich besten Prädiktionsmodus ist, und dem Decodierer signalisieren, diesen Modus zu verwenden.

Wenn ein geordneter Satz von Prädiktionsmodi verwendet wird, kann die Satzreihenfolge neu angeordnet werden, sobald weitere Daten erhalten werden. Beispielsweise kann ein geordneter Satz von Prädiktionsmodi neu geordnet werden, wenn ein geschätzter Prädiktionsmodus bestimmt wird, oder wenn ein bester tatsächlicher Prädiktionsmodus bestimmt wird. In diesen Fällen kann der modifizierende Modus in den geordneten Satz eingefügt werden, vor dem geordneten Satz platziert werden oder in bestimmten Fällen von dem geordneten Satz entfernt werden.

In manchen Ausführungsformen der vorliegenden Erfindung kann jedem Modus in der modusfreien Folge ein numerischer Wert gemäß der Reihenfolge zugeordnet werden. In diesen Ausführungsformen kann der numerische Wert, der dem Modus zugeordnet ist, der zu verwenden ist, zu dem Decoder gesendet werden, um dem Decoder zu signalisieren, diesen Prädiktionsmodus zu verwenden. In bestimmten dieser Ausführungsformen kann, wie in 15 veranschaulicht, eine Modusreihenfolge, die 9 Prädiktionsmodi umfasst, ausgewählt werden 130. Ein Schätzprädiktionsmodus auf der Grundlage von angrenzenden Blockdaten, und der einer der neuen Modi in der Reihenfolge ist, kann auch bestimmt werden 132. Ein bester Prädiktionsmodus kann auch durch Bewegungsvektorverfahren oder andere Verfahren bestimmt werden 134. Der beste Prädiktionsmodus kann dann mit dem Schätzprädiktionsmodus verglichen werden 136. Wenn der Schätzprädiktionsmodus im Wesentlichen der gleiche wie der beste Prädiktionsmodus ist, kann dem Decoder mit einem 1-Bit-Kennzeichner signalisiert werden, den Schätzprädiktionsmodus zu verwenden, der bereits in dem Decoder identifiziert worden ist. Wenn der Schätzprädiktionsmodus nicht äquivalent zu dem besten Prädiktionsmodus ist, wird der Schätzprädiktionsmodus im Wesentlichen aus der Modusreihenfolge eliminiert 140. Diese Eliminierung kann durch ein Neuordnen des Satzes, durch ein Überspringen des geschätzten Modus in der Reihenfolge oder durch andere Mittel durchgeführt werden. Die verbleibende Reihenfolge wird effektiv 8 Modi umfassen, die durch einen 3-Bit-Kennzeichner dargestellt werden können. Der 3-Bit-Kennzeichner kann zu dem Decoder gesendet werden 142, um zu bezeichnen, welcher Modus für eine Prädiktion zu verwenden ist.

Die Ausdrücke und Bezeichnungen, die in der voranstehenden Spezifikation enthalten sind, werden hierin als Ausdrücke der Beschreibung und nicht der Einschränkung verwendet, und es besteht bei der Verwendung derartiger Ausdrücke und Bezeichnungen nicht die Absicht, dass Äquivalente der Merkmale, die gezeigt und beschrieben sind, oder Teile davon ausgeschlossen sind, womit erkannt wird, dass der Umfang der Erfindung nur durch die folgenden Ansprüche definiert und beschränkt ist.


Anspruch[de]
Bildcodiersystem zum Codieren eines digitalen Bildes, umfassend:

eine Einrichtung zum Codieren jedes der Blöcke, in welche ein Bild geteilt ist;

eine Intra-Vorhersageeinrichtung zum Vorhersagen eines Pixelwerts eines zu codierenden Zielblocks unter Verwendung von zumindest einem Pixelwert eines Blocks neben dem Zielblock; und

eine Vorhersagemodus-Schätzeinrichtung zum Abschätzen eines Vorhersagemodus für den Zielblock, wobei die Intra-Vorhersageeinrichtung eine Einrichtung, um einen vertikalen Vorhersagemodus unter Verwendung von Vorhersagewerten durchzuführen, die die Pixelwerte eines ersten Blocks sind, der neben dem und oberhalb des Zielblocks angeordnet ist, eine Einrichtung, um einen horizontalen Vorhersagemodus unter Verwendung von Vorhersagewerten durchzuführen, die die Pixelwerte eines zweiten Blocks sind, der neben dem und auf der linken Seite des Zielblocks angeordnet ist, und eine Einrichtung einschließt, um einen DC-Vorhersagemodus unter Verwendung eines Vorhersagewerts durchzuführen, der ein Mittelwert der Pixelwerte der ersten und zweiten Blöcke ist,

dadurch gekennzeichnet, dass:

die Vorhersagemodi mit seriell größeren Nummern in der Reihenfolge des vertikalen Vorhersagemodus, des horizontalen Vorhersagemodus und des DC-Vorhersagemodus oder in der Reihenfolge des horizontalen Vorhersagemodus, des vertikalen Vorhersagemodus und des DC-Vorhersagemodus nummeriert sind, und wobei die Vorhersagemodus-Schätzeinrichtung einen Vorhersagemodus bestimmt, die niedrigere Modusnummer unter dem Vorhersagemodus des ersten Blocks und dem Vorhersagemodus des zweiten Blocks als den geschätzten Vorhersagemodus für den Zielblock aufzuweisen, und wobei eine Vorhersagemodus-Codiereinrichtung zum Codieren einer ersten Information und einer zweiten Information dient, wobei die ersten Information anzeigt, ob ein tatsächlicher Vorhersagemodus für den Zielblock äquivalent zu dem geschätzten Vorhersagemodus ist, und die zweite Information den tatsächlichen Vorhersagemodus anzeigt, wenn der tatsächliche Vorhersagemodus nicht äquivalent zu dem geschätzten Vorhersagemodus ist.
Bilddecodiersystem zum Decodieren eines codierten digitalen Bildes, umfassend:

eine Einrichtung zum Decodieren jedes der Blöcke, in welche ein Bild geteilt ist;

eine Intra-Vorhersageeinrichtung zum Vorhersagen eines Pixelwerts eines zu decodierenden Zielblocks unter Verwendung von zumindest einem Pixelwert eines Blocks neben dem Zielblock; und

eine Vorhersagemodus-Schätzeinrichtung zum Abschätzen eines Vorhersagemodus für den Zielblock, wobei die Intra-Vorhersageeinrichtung eine Einrichtung, um einen vertikalen Vorhersagemodus unter Verwendung von Vorhersagewerten durchzuführen, die die Pixelwerte eines ersten Blocks sind, der neben dem und oberhalb des Zielblocks angeordnet ist, eine Einrichtung, um einen horizontalen Vorhersagemodus unter Verwendung von Vorhersagewerten durchzuführen, die die Pixelwerte eines zweiten Blocks sind, der neben dem und auf der linken Seite des Zielblocks angeordnet ist, und eine Einrichtung einschließt, um einen DC-Vorhersagemodus unter Verwendung eines Vorhersagewertes durchzuführen, der ein Mittelwert der Pixelwerte der ersten und zweiten Blöcke ist,

dadurch gekennzeichnet, dass:

die Vorhersagemodi mit seriell größeren Nummern in der Reihenfolge des vertikalen Vorhersagemodus, des horizontalen Vorhersagemodus und des DC-Vorhersagemodus oder in der Reihenfolge des horizontalen Vorhersagemodus, des vertikalen Vorhersagemodus und des DC-Vorhersagemodus nummeriert sind, und wobei die Vorhersagemodus-Schätzeinrichtung einen Vorhersagemodus bestimmt, die niedrigere Modusnummer unter dem Vorhersagemodus des ersten Blocks und dem Vorhersagemodus des zweiten Blocks als den geschätzten Vorhersagemodus für den Zielblock aufzuweisen, und wobei eine Vorhersagemodus-Decodiereinrichtung zum Decodieren einer ersten Information und einer zweiten Information dient, wobei die erste Information anzeigt, ob ein tatsächlicher Vorhersagemodus für den Zielblock äquivalent zu dem geschätzten Vorhersagemodus ist, und die zweite Information den tatsächlichen Vorhersagemodus anzeigt, wenn der tatsächliche Vorhersagemodus nicht äquivalent zu dem geschätzten Vorhersagemodus ist.
System nach Anspruch 1 oder Anspruch 2, wobei die Modi durch ein Zuordnen eines numerischen Werts zu jedem Modus geordnet sind, derart, dass die Modi, die am wahrscheinlichsten einen niedrigeren Vorhersagefehler ergeben, den niedrigsten Nummern zugeordnet sind. Verfahren zum Codieren eines digitalen Bilds, umfassend:

Teilen des Bildes in Blöcke und Codieren jedes der Blöcke, wobei das Codieren jedes Blocks eine Intra-Vorhersage zum Vorhersagen eines Pixelwerts eines zu codierenden Zielblocks unter Verwendung von zumindest einem Pixelwert eines Blocks neben dem Zielblock und zum Abschätzen eines Vorhersagemodus für den Zielblock mit sich bringt, wobei die Vorhersagemodi einen vertikalen Vorhersagemodus unter Verwendung von Vorhersagewerten, die die Pixelwerte eines ersten Blocks sind, der neben dem und oberhalb des Zielblocks angeordnet ist, einen horizontalen Vorhersagemodus unter Verwendung von Vorhersagewerten, die die Pixelwerte eines zweiten Blocks sind, der neben dem und auf der linken Seite des Zielblocks angeordnet ist, und einen DC-Vorhersagemodus unter Verwendung eines Vorhersagewertes einschließen, der ein Mittelwert der Pixelwerte der ersten und zweiten Blöcke ist;

dadurch gekennzeichnet, dass:

die Vorhersagemodi mit seriell größeren Nummern in der Reihenfolge des vertikalen Vorhersagemodus, des horizontalen Vorhersagemodus und des DC-Vorhersagemodus oder in der Reihenfolge des horizontalen Vorhersagemodus, des vertikalen Vorhersagemodus und des DC-Vorhersagemodus nummeriert sind, und wobei der Schritt eines Abschätzens des Vorhersagemodus ein Bestimmen (56, 66, 76, 92) eines Vorhersagemodus umfasst, die niedrigere Modusnummer unter dem Vorhersagemodus des ersten Blocks und dem Vorhersagemodus des zweiten Blocks als den geschätzten Vorhersagemodus für den Zielblock aufzuweisen, und der Vorhersagemodus durch eine erste Information und eine zweiten Information codiert ist, wobei die erste Information anzeigt, ob ein tatsächlicher Vorhersagemodus für den Zielblock äquivalent zu dem geschätzten Vorhersagemodus ist, und die zweite Information den tatsächlichen Vorhersagemodus anzeigt, wenn der tatsächliche Vorhersagemodus nicht äquivalent zu dem geschätzten Vorhersagemodus ist.
Verfahren zum Decodieren eines digitalen Bildes, umfassend:

Decodieren jedes der codierten Blöcke, in welche ein Bild geteilt ist, wobei das Decodieren jedes Blocks eine Intra-Vorhersage zum Vorhersagen eines Pixelwertes eines zu decodierenden Zielblocks unter Verwendung von zumindest einem Pixelwert eines Blocks neben dem Zielblock und ein Abschätzen eines Vorhersagemodus für den Zielblock mit sich bringt, wobei die Vorhersagemodi einen vertikalen Vorhersagemodus unter Verwendung von Vorhersagewerten, die die Pixelwerte eines ersten Blocks sind, der neben dem und oberhalb des Zielblocks angeordnet ist, eines horizontalen Vorhersagemodus unter Verwendung von Vorhersagewerten, die die Pixelwerte eines zweiten Blocks sind, der neben dem und auf der linken Seite des Zielblocks angeordnet ist, und einen DC-Vorhersagemodus unter Verwendung eines Vorhersagewertes einschließen, der ein Mittelwert der Pixelwerte der ersten und zweiten Blöcke ist;

dadurch gekennzeichnet, dass:

die Vorhersagemodi mit seriell größeren Nummern in der Reihenfolge des vertikalen Vorhersagemodus, des horizontalen Vorhersagemodus und des DC-Vorhersagemodus oder in der Reihenfolge des horizontalen Vorhersagemodus, des vertikalen Vorhersagemodus und des DC-Vorhersagemodus nummeriert sind, und wobei der Schritt eines Abschätzens des Vorhersagemodus ein Bestimmen (56, 66, 76, 92) eines Vorhersagemodus umfasst, die niedrigere Modusnummer unter dem Vorhersagemodus des ersten Blocks und dem Vorhersagemodus des zweiten Blocks als den geschätzten Vorhersagemodus für den Zielblock aufzuweisen, und der Vorhersagemodus aus einer ersten Information und einer zweiten Information decodiert ist, wobei die erste Information anzeigt, ob ein tatsächlicher Vorhersagemodus für den Zielblock äquivalent zu dem geschätzten Vorhersagemodus ist, und die zweite Information den tatsächlichen Vorhersagemodus anzeigt, wenn der tatsächliche Vorhersagemodus nicht äquivalent zu dem geschätzten Vorhersagemodus ist.
Verfahren nach Anspruch 4 oder Anspruch 5, wobei potenzielle Vorhersagemodi durch ein Zuordnen eines numerischen Werts zu jedem Modus geordnet sind, derart, dass den Modi, die am wahrscheinlichsten einen niedrigeren Vorhersagefehler ergeben, die niedrigsten Nummern zugeordnet werden. Computerlesbares Speichermedium, das computerausführbare Instruktionen zum Durchführen des Verfahrens nach einem der Ansprüche 4 bis 6 speichert.






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

Anmelder
Datum

Patentrecherche

  Patente PDF

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