-
Gebiet der Erfindung
-
Die
vorliegende Erfindung betrifft ein Verfahren zum Ermitteln eines
Referenzblocks bei der Bildcodierung/-decodierung auf dem Gebiet
der digitalen Videokompression, und insbesondere ein Verfahren zum
Ermitteln eines Bildreferenzblocks in einem Codier-Modus mit fester
Referenzvollbildanzahl, das zum Gebiet der Bildkompressionstechnologie
gehört.
-
Hintergrund der Erfindung
-
Eine
sehr effiziente Videocodierung/-decodierungstechnologie ist entscheiden
beim Durchführen
der Speicherung und Übertragung
von Multimediadaten in hoher Qualität und mit niedrigen Kosten. Die
vorliegenden beliebten internationalen Standards zur Bildcodierung
basieren auf dieser Codierungstheorie, die ein Codierverfahren anwendet,
das Bewegungskorrektur basierend auf Block-Matching, diskreter Kosinustransformation
und Quantisierung kombiniert. Typischerweise schlägt das erste
gemeinsame Technologiekomitee der Internationalen Standardisierungsorganisation/Internationalen
Elektrotechnischen Kommission (ISO/IEC JTC1) MPEG(motion picture
experts group)-1, MPEG-2 und MPEG-4 und derartige internationale
Standards vor; und die ITU-T (International Telecom Union) schlägt die H.26x-Reihe
vor. Diese Videocodierungsstandards sind in den Industrien weit
verbreitet.
-
All
diese Standards zur Videocodierung wenden eine hybride Videocodierungsstrategie
an, die normalerweise vier Hauptmodule wie Prädiktion (Vorhersage), Transformation,
Quantisierung, Informationsentropiecodierung etc. umfasst, wobei
die Hauptfunktion des Prädiktionsmoduls
ist, das aktuell zu codierende Bild durch Verwendung des codierten
und rekonstruierten Bildes vorherzusagen, genannt Inter-Prädiktion,
oder den aktuellen Bildblock (Makroblock), der zu codieren ist,
durch Verwendung des codierten und rekonstruierten Bildblocks (oder
Makroblocks) in den Bildern vorherzusagen, genannt Intra-Prädiktion;
die Funktion des Transformationsmoduls ist es, den eingegebenen
Bildblock in einen anderen Raum zu konvertieren, um so die Energie der
eingegebenen Signale bei dem Transformationskoeffizienten niedriger
Frequenz zum Absenken der Relativität innerhalb der Elemente des
Bildblocks zu konvergieren, und der für die Komprimierung nützlich ist;
die Hauptfunktion des Quantisierungsmoduls ist es, die transformierten
Koeffizienten zu einer begrenzten Elementanhäufung zuzuordnen, die für die Codierung
vorteilhaft ist; und die Hauptfunktion des Informationsentropie-Codierungsmoduls
ist es, den quantisierten Transformationskoeffizienten mit variabler
Längencodierung
gemäß der statistischen
Regel darzustellen. Das Videodecodierungssystem weist ähnliche
Module auf, hauptsächlich
um das decodierte Bild des eingegebenen Codestroms mittels der Prozeduren
der Entropiedecodierung, der inversen Quantisierung, der inversen
Transformation usw. zu rekonstruieren.
-
Die
Hauptfunktion der Prädiktion
(Vorhersage) basierend auf der Bewegungskorrektur ist es, Redundanz
der zeitlichen Videobildserie zu reduzieren. Die meiste Codiereffizienz
kommt von dem Prädiktionsmodul
her. Das Verfahren der Videocodierung ist, jedes Vollbild der Videobildserie
zu codieren. Das herkömmliche
Videocodierungssystem, das jedes Vollbild codiert, basiert auf einem
Makroblock als Grundeinheit. Wenn der aktuelle Makroblock codiert wird,
ist der Bewegungsvektor damit befasst, den aktuellen Makroblock
mit dem Referenzblock zu verbinden. Wenn jedes Vollbild codiert
wird, gibt es Situationen, die aufgeteilt werden können in
Intra-Codierung (I-Bild), Prädiktionscodierung
(P-Bild), bidirektionale Prädiktionscodierung
(B-Bild) usw. Im Allgemeinen sind bei der Codierung codierte I-Bilder, P-Bilder
und B-Bilder miteinander verschachtelt, z. B. basierend auf einer
IBBPBBP-Abfolge.
-
Der
Codierungskompressionseffizienz kann mittels B-Bild-Codierung größer als
eine 200:1-Bitrate
werden. Wenn der Makroblock des B-Bildes codiert wird, sind die
vier Modi der direkten, Vorwärts-, Rückwärts- und
bidirektionalen Prädiktion
beteiligt. Die B-Bild-Technologie
erfordert die Verarbeitung der Vorwärts- und Rückwärtsbewegungsschätzung gemeinsam,
sodass eine hohe Berechnungskomplexität benötigt wird und die zusätzliche
Identifikationsinformation eingeführt werden sollte, um den Vorwärts- und
Rückwärtsbewegungsvektor
zu unterscheiden.
-
Bei
herkömmlichen
Videocodierungsstandards (wie z. B. den MPEG-x und H-26x Serien)
weist das Referenzvollbild des B-Bildes nur ein Vorwärts-Referenzvollbild
und ein Rückwärts-Referenzvollbild
auf, wohingegen das P-Bild lediglich ein Vorwärts-Referenzvollbild aufweist.
Um in ausreichender Weise die Relativität der Zeitbereiche zwischen den
Bildern auszunutzen, wurde erlaubt, dass das P-Bild und das B-Bild
mehrere Vorwärts-Referenzvollbilder
aufweisen. Der Verbrauch von Raum und Zeit jedoch wird ebenfalls
in großem
Maße verbessert,
damit gibt es ein Ausgleichsmittel, das eine feste Referenzvollbildanzahl
verwendet, um einen größeren Raum-
und Zeitverbrauch zu begrenzen. In der Tat gilt, dass je größer der
Abstand, desto schwächer ist
die Relativität
zwischen den Bildern im Zeitbereich, sodass eine derartige Begrenzung
vernünftig ist.
-
Der
direkte Modus ist ein Codier-Modus, der sowohl Vorwärtsprädiktion
als auch Rückwärtsprädiktion
verarbeitet. Die Vorwärts-
und Rückwärtsbewegungsvektoren
des B-Bildes werden von dem Bewegungsvektor des Rückwärtsreferenzbildes
abgeleitet, und es ist möglicherweise
nicht notwendig, die Bewegungsvektorinformationen zu codieren, so
dass die Bits, die durch das Codieren der Bewegungsvektorinformation
belegt sind, reduziert werden können und
auf effiziente Weise die Codiereffizienz verbessern. Deshalb ist
der direkte Modus weit verbreitet.
-
Wenn
man das P-Bild und das B-Bild unter Verwendung der festen Referenzvollbildanzahl
codiert, unter Berücksichtigung,
dass die Vorwärts-Referenzvollbildanzahl
des P-Bildes größer als
die Vorwärts-Referenzvollbildanzahl
des B-Bildes ist (das B-Bild muss ein Rückwärts-Referenzvollbild beinhalten,
während
das P-Bild es nicht umfasst), wird das in dem Problem resultieren,
dass der Bewegungsvektor nicht übereinstimmt,
d. h. wenn man den Bewegungsvektor für das B-Bild herleitet, werden
die Bewegungsvektoren jedes Blocks in dem Rückwärts-Referenzvollbild verwendet.
Das Rückwärts-Referenzvollbild
ist ein P-Bild, sodass es auftreten kann, dass das Referenzvollbild,
auf das der Bewegungsvektor zeigt, jenseits des maximalen Vorwärts-Referenzvollbildes
liegt, auf das das B-Bild möglicherweise
zeigt. Z. B. ist, wie in 1 dargestellt, wenn die Anzahl
der festen Referenzvollbilder 2 ist, das Referenzvollbild, auf das
das B-Bild möglicherweise
zeigt, seine zwei angrenzenden P-Bilder, wohingegen das Referenzbild
des P-Bildes, das da das Rückwärts-Referenzvollbild
des B-Bildes zwei P-Bilder vor diesem P-Bild liegt, nämlich P_REF_1 und
P_REF_0 ist. Wenn der Bewegungsvektor des P-Bildes auf das vordere
P-Bild P_REF_1 zeigt, so liegt ein derartiges P-Bild jenseits des
maximalen Vorwärts-Referenzvollbildes,
auf das das B-Bild möglicherweise
zeigt, und der berechnete Bewegungsvektor, der auf das B-Bild zeigt, kann
P_REF_1 nicht erreichen. Dadurch kann das B-Bild den tatsächlichen
Referenzblock zum Codieren nicht ermitteln, sodass eine Codierabweichung
auftreten kann und in einer beträchtlichen
Bildverzerrung resultieren wird.
-
Zusammenfassung der Erfindung
-
Das
durch die vorliegende Erfindung gelöste technische Problem konzentriert
sich auf: Bereitstellen eines Verfahrens zum Ermitteln eines tatsächlichen
Bildreferenzblocks in einem direkten Modus einer festen Referenzvollbildanzahl.
-
Die
Lösung
der vorliegenden Erfindung umfasst die folgenden Schritte:
- (a) Durchführen
einer Bewegungsschätzung
für jeden
Block eines aktuellen B-Bildes und Ermitteln eines Bewegungsvektors
MV eines entsprechenden Blocks eines Rückwärts-Referenzvollbildes;
- (b) Entscheiden, ob der Bewegungsvektor jenseits eines maximalen
Vorwärts-Referenzvollbildes
liegt, auf das das B-Bild möglicherweise
zeigen kann, falls nicht, Fortfahren mit Schritt (c); ansonsten
mit Schritt (d);
- (c) wobei ein Vorwärtsbewegungsvektor
und ein Rückwärtsbewegungsvektor
eines Makroblocks, die durch die folgenden Formeln berechnet werden
können,
sind:
unter der Annahme, dass MVF und
MVB als ein Vorwärtsbewegungsvektor und ein
Rückwärtsbewegungsvektor
eines aktuellen Blocks gelten, wobei hier tb ein Abstand
im Zeitbereich zwischen einem aktuellen Bild und einem Vorwärtsreferenzbild
und td ein Abstand im Zeitbereich zwischen einem Vorwärtsreferenzbild
und einem Rückwärtsreferenzbild
ist;
- (d) wobei ein Vorwärtsbewegungsvektor
und ein Rückwärtsbewegungsvektor
des Makroblocks, die durch die folgenden Formeln berechnet werden
können,
sind:
unter der Annahme, dass MVF und
MVB als ein Vorwärtsbewegungsvektor und ein
Rück wärtsbewegungsvektor
eines aktuellen Blocks gelten, wobei hier tb ein Abstand
im Zeitbereich zwischen einem aktuellen Bild und einem Vorwärtsreferenzbild,
td ein Abstand im Zeitbereich zwischen einem Vorwärtsreferenzbild
und einem Rückwärtsreferenzbild
und tb' ein Abstand
im Zeitbereich zwischen dem aktuellen B-Bild und dem Vorwärts-Referenzvollbild ist, auf
das das B-Bild möglicherweise
zeigt;
- (e) Zwei Bildblocks, auf die MVB und
MVF zeigen, Bildreferenzblöcke sind,
die dem Makroblock entsprechen.
-
Die
vorliegende Erfindung verwendet den Bewegungsvektor des Vorwärts-Referenzvollbildes, das
durch Zeigen auf das B-Bild in derselben Richtung erhalten wurde,
um den Bewegungsvektor des zugehörigen
Blocks in einem Rückwärts-Referenzvollbild
zu ersetzen, und berechnet die Vorwärts- und Rückwärtsbewegungsvektoren des B-Bildes,
um das mögliche
Problem der nicht übereinstimmenden
Bewegungsvektoren in einem Codiermodus mit fester Referenzvollbildanzahl
zu lösen
und die Codiereffizienz größtmöglich zu
gewährleisten.
-
Die
durch die vorliegende Erfindung bereitgestellte Lösung wird
anhand der nachfolgenden detaillierten Beschreibung von bevorzugten
Ausführungsformen
der Erfindung unter Bezugnahme auf die Figuren besser verstanden
werden.
-
Kurze Beschreibung der Figuren
-
1 ist
eine schematische Darstellung, die das P-Bild darstellt, das auf
das Referenzvollbild P_REF_1 zeigt, aus dem Stand der Technik;
-
2 ist
eine schematische Darstellung, die das P-Bild zeigt, das auf das
Referenzvollbild P_REF_0 in der Ausführungsform der vorliegenden Erfindung
zeigt;
-
3 ist
eine schematische Darstellung, die das P-Bild zeigt, das auf das
Referenzvollbild P_REF_1 in der Ausführungsform der vorliegenden Erfindung
zeigt.
-
Detaillierte Beschreibung
der bevorzugten Ausführungsformen
-
Die
Ausführungslehre
der vorliegenden Erfindung ist: zunächst Entscheiden, ob das Vorwärts-Referenzvollbild,
auf das der Bewegungsvektor zeigt, jenseits eines maximalen Vorwärts-Referenzvollbildes
liegt, auf das das B-Bild möglicherweise
zeigen kann, wenn es nicht jenseits liegt, dann Berechnen des Vorwärtsbewegungsvektors
des B-Bildes unter Verwendung des herkömmlichen Verfahrens und Ermitteln
des Vorwärtsbildreferenzblocks; wenn
es jenseits liegt, dann das Verwenden des Verfahrens des Minimierens
des Bewegungsvektors, so dass der berechnete Vorwärtsbewegungsvektor
nicht jenseits der maximalen Reichweite des Vorwärts-Referenzvollbildes liegt,
auf das das B-Bild möglicherweise
zeigen kann, womit man den tatsächlichen Vorwärtsbildreferenzblock
ermitteln kann.
-
Wenn
man das Bild am Codier-Ende codiert, weist das Verfahren zum Ermitteln
eines Bildreferenzblocks in einem direkten Modus bei einer festen Referenzvollbildanzahl,
das durch die vorliegende Erfindung offenbart wird, die folgenden
Schritte auf:
- (a) Durchführen einer Bewegungsschätzung für jeden
Block eines aktuellen B-Bildes und Ermitteln eines Bewegungsvektors
MV eines entsprechenden Blocks eines Rückwärts-Referenzvollbildes;
- (b) Entscheiden, ob der Bewegungsvektor jenseits eines maximalen
Vorwärts-Referenzvollbildes
liegt, auf das das B-Bild möglicherweise
zeigen kann, falls nicht, dann Fortfahren mit Schritt (c); ansonsten
Fortfahren mit Schritt (d);
- (c) wobei ein Vorwärtsbewegungsvektor
und ein Rückwärtsbewegungsvektor
eines Makroblocks durch die folgenden Formeln berechnet werden können:
unter
der Annahme, dass MVF und MVB als
ein Vorwärtsbewegungsvektor
und ein Rückwärtsbewegungsvektor
eines aktuellen Blocks gelten, wobei hier tb ein Abstand
im Zeitbereich zwischen einem aktuellen Bild und einem Vorwärtsreferenzbild
und tb ein Abstand im Zeitbereich zwischen einem Vorwärtsreferenzbild
und einem Rückwärtsreferenzbild
ist;
- (d) wobei ein Vorwärtsbewegungsvektor
und ein Rückwärtsbewegungsvektor
des Makroblocks durch die folgenden Formeln berechnet werden können:
unter
der Annahme, dass MVF und MVB als
ein Vorwärtsbewegungsvektor
und ein Rückwärtsbewegungsvektor
eines aktuellen Blocks gelten, wobei hier tb ein Abstand
im Zeitbereich zwischen einem aktuellen Bild und einem Vorwärtsreferenzbild,
td ein Abstand im Zeitbereich zwischen einem Vorwärtsreferenzbild
und einem Rückwärtsreferenzbild
und tb' ein Abstand
im Zeitbereich zwischen dem aktuellen B-Bild und dem Vorwärts-Referenzvollbild ist, auf
das das B-Bild zeigen kann;
- (e) wobei zwei Bildblöcke,
auf die MVB und MVF zeigen,
Bildreferenzblöcke
sind, die dem Makroblock entsprechen.
-
Nach
dem Ermitteln der Bildreferenzblöcke nimmt
man den Durchschnitt der Pixelwerte der beiden Referenzblöcke, ermittelt
einen finalen bidirektionalen Prädiktions-Referenzblock,
subtrahiert den Makroblock des B-Bildes, das zu codieren ist, von dem
bidirektionalen Prädiktions-Referenzblock,
um einen Blockrestfehler zu ermitteln, und codiert den Blockrestfehler,
um das Codieren des B-Bildes abzuschließen.
-
Die
vorliegende Erfindung verwendet das Vorwärts-Referenzvollbild, auf das
das B-Bild zeigen kann, um das Vorwärts-Referenzvollbild zu ersetzen, das
jenseits der Reichweite liegt, innerhalb derer das B-Bild zeigen
kann, um das Problem zu lösen,
dass das B-Bild den Bildreferenzblock nicht ermitteln kann, wenn
er außerhalb
der Reichweite liegt. Obwohl der hier ermittelte Bildreferenzblock
nicht der Bildreferenzblock ist, auf den das Rückwärts-P-Bild tatsächlich zeigt, ist, weil jedoch
der tatsächliche
Bildreferenzblock nicht ermittelt werden kann, der durch das Verfahren
der vorliegenden Erfindung ermittelte Bildreferenzblock der Referenzblock,
der in der gleichen Richtung wie der Bildreferenzblock liegt, auf den
das P-Bild tatsächlich
zeigt. Beide liegen aufgrund der Relativität des Zeitbereichs sehr nahe
beieinander, sodass durch die Verwendung des Verfahrens die Codiereffizienz
nicht schlechter werden wird. Wenn ein fester Bildblock verwendet
wird (wie z. B. die Verwendung eines einfarbigen Bildblocks), wird der
Codiereffekt nicht gewährleistet;
wenn andere Verfahren verwendet werden, um den Bildblock zu ermitteln,
dann kann die Relativität
des Zeitbereichs des Bildes nicht verwendet werden und der Codiereffekt
ebenfalls nicht vorhergesagt werden.
-
Um
zu gewährleisten,
dass die Relativität des
Zeitbereichs zwischen den Bildern in größtem Maße verwendet wird, wird tb' in Schritt (d) das
Vorwärts-Referenzvollbild
des Referenzvollbildes, auf das das nächste P-Bild zeigt, auf das
das B-Bild zeigen kann, d. h., wenn das B-Bild das Referenzvollbild,
auf das das P-Bild zeigt, nicht erreichen kann, das nächste Vorwärts-Referenzvollbild
auf das das B-Bild zeigen kann, für das B-Bild eingesetzt.
-
Aus
der obigen Formel ist ersichtlich, dass die vorliegende Erfindung
die Bewegungsvektoren in derselben Richtung auswählt, deren Länge auf
die Reichweite minimiert wird, auf die das B-Bild zeigen kann. Dieses
Verfahren verwendet die Relativität des Zeitbereichs am Besten.
Wenn das nächste
Vorwärts-Referenzvollbild,
auf das das B-Bild zeigen kann, anstelle des Referenzvollbildes
eingesetzt wird, auf das das P-Bild zeigen kann, wird die Relativität des Zeitbereichs
größtmöglich ausgenutzt.
Es gibt viele Verfahren, um einen Bewegungsvektor MV eines zugehörigen Blocks
eines Rückwärts-Referenzvollbildes
in dem Schritt (a) in der vorliegenden Erfindung zu ermitteln. Da
das Rückwärts-Referenzvollbild
ein P-Bild ist, weist jeder Makroblock im P-Bild einen Bewegungsvektor
MV auf, das Entscheidende an Schritt (a) ist die Übereinstimmung zwischen
den Makroblöcken,
d. h. welcher Makroblock in dem P-Bild mit einem Makroblock in dem B-Bild übereinstimmt.
Nachdem der entsprechende Makroblock gefunden wurde, dient der Bewegungsvektor
MV des Makroblocks im P-Bild als Basis für die Berechnung der Vorwärts- und
Rückwärtsbewe gungsvektoren
des B-Bildes.
-
Im
Allgemeinen wird das Übereinstimmungsverfahren
der gleichen Positionen verwendet, um zu bestimmen, dass das B-Bild
und das Rückwärts-Referenzvollbild
der entsprechende Makroblock des P-Bildes ist, d. h. der Makroblock
in dem Rückwärtsreferenz-P-Bild
mit derselben Position wie der Makroblock in dem B-Bild ist der
entsprechende Block. Unterschiedliche Algorithmen können jedoch
unterschiedliche Übereinstimmungsverfahren
aufweisen, durch ein beliebiges Übereinstimmungsverfahren kann
jedoch der Bewegungsvektor jenseits der Reichweite liegen, auf die
das B-Bild zeigen kann.
-
Das
durch die vorliegende Erfindung offenbarte Verfahren ist bei einer
beliebigen Codierung eines Prädiktionsmodus
anwendbar. Jeder Makroblock in dem aktuellen B-Bild weist viele
Prädiktionsmodi wie
z. B. Vorwärts-
und Rückwärtsmodi
usw. auf. Die technische Lösung
der vorliegenden Erfindung wird insbesondere beschrieben, indem
man den universellen Direktcodiermodus als ein Beispiel im Nachfolgenden
nimmt, bei dem die Anzahl der festen Referenzvollbilder 2 ist.
-
Zuerst
wird der Bewegungsvektor jedes Blocks des Rückwärts-Referenzvollbildes relativ
zu dem Vorwärts-Referenzvollbild
für das
zu codierende B-Bild ermittelt. Da der Bewegungsvektor vom P-Bild ist,
kann der Bewegungsvektor zu dem Referenzvollbild P_REF_0 (siehe 2)
oder das Referenzvollbild P_REF_1 (siehe 3) zeigen.
-
Der
Vektor MV (x, y) zum Herleiten des Bewegungsvektors des aktuellen
Blocks des B-Bildes im
direkten Modus wird mittels des erhaltenen Bewegungsvektors jedes
Blocks des Rückwärts-Referenzvollbildes
ermittelt, und der Bewegungsvektor kann von einem Block des Rückwärtsreferenzbildes
kommen, das dieselbe räumliche
Anordnung wie der aktuelle Block aufweist, wie in 1 dargestellt,
sie zeigt die Partition im direkten Modus des aktuellen Blocks und
die daneben angeordnete Partition, die dem räumlichen Ort entspricht.
-
Zweifellos
können
andere Verfahren den Bewegungsvektor herleiten. In 1 bezeichnet 1 den aktuellen
Codierblock, 2 bezeichnet den entsprechenden Block mit
derselben Position wie das P-Bild und die Bezugszeichen in den anderen
Figuren haben dieselbe Bedeutung.
-
Wenn
es auf das Referenzvollbild P_REF_0, wie in
2 dargestellt,
zeigt, liegt das Referenzvollbild nicht jenseits der Reichweite
des Vorwärts-Referenzvollbildes,
auf das das B- Bild
zeigen kann, der Vorwärts-
und Rückwärtsbewegungsvektor
des aktuellen Blocks kann gemäß des Bewegungsvektors des
entsprechenden Rückwärtsblocks
ermittelt werden:
-
MVF und MVB sind der
Vorwärtsbewegungsvektor
und der Rückwärtsbewegungsvektor,
die dem aktuellen Block entsprechen. Hier ist tb ein Abstand im
Zeitbereich zwischen einem aktuellen Bild und einem Vorwärtsreferenzbild,
td ist ein Abstand im Zeitbereich zwischen einem Vorwärtsreferenzbild
und einem Rückwärtsreferenzbild,
und MV bezeichnet den Bewegungsvektor des entsprechenden Anteils
des Rückwärtsreferenzbild
relativ zu dem Vorwärts-Referenzvollbild.
-
Wenn
es auf das Referenzvollbild P_REF_1 zeigt, wie in
3 dargestellt,
liegt das Referenzvollbild jenseits der Reichweite des Vorwärts-Referenzvollbildes,
auf das das B-Bild zeigen kann. Für den Bildmakroblock des Referenzvollbildes
kann das B-Bild nichts ermitteln. Deshalb ist es notwendig, den Bildblock
von P_REF_0 für
den Bildblock von P_REF_1 zu ersetzen, sodass der Vorwärts- und Rückwärtsbewegungsvektor
des aktuellen Blocks gemäß dem Bewegungsvektor
des entsprechenden Rückwärtsblocks
ermittelt werden können:
-
Hier
ist tb' ein Abstand
im Zeitbereich zwischen dem aktuellen B-Bild und dem Vorwärts-Referenzvollbild
P_REF_0, und MVF und MVB sind
der Vorwärtsbewegungsvektor
und der Rückwärtsbewegungsvektor,
die dem aktuellen Block entsprechen. Hier ist tb ein Abstand im
Zeitbereich zwischen einem aktuellen Bild und einem Vorwärtsreferenzbild,
td ist ein Abstand im Zeitbereich zwischen einem Vorwärtsreferenzbild
und einem Rückwärtsreferenzbild, und
MV bezeichnet den Bewegungsvektor des entsprechenden Anteils des
Rückwärtsreferenzbildes relativ
zu dem Vorwärts-Referenzvollbild.
-
Die
beiden Bildblöcke,
auf die MVB und MVF zeigen,
sind die Bildreferenzblöcke,
die dem Makroblock entsprechen. Nach dem Ermitteln des Bildreferenzblocks,
bilde man den Durchschnitt der Pixelwerte der beiden Referenzblöcke, um
einen finalen bidirektionalen Prädiktions-Refernzblock
zu erhalten, man subtrahiere den Makroblock des zu codierenden B-Bildes
von dem bidirektionalen Prädiktions-Referenzblock,
um einen Blockrestfehler zu erhalten, und codiere den Blockrestfehler,
um das Codieren des B-Bildes abzuschließen.
-
Die
Decodierprozedur ist das inverse Verfahren des Codierens, das Verfahren
ist wie folgt:
Zunächst
Bestimmen des Prädiktionsmodus
des aktuellen Blocks, wenn es sich um einen direkten Modus handelt,
dann fährt
man mit den folgenden Schritten fort; wenn es ein anderer Prädiktionsmodus ist,
dann fährt
man mit dem entsprechenden Verfahren fort;
Ermitteln des Bewegungsvektors
MV zum Herleiten des Rückwärts-Referenzvollbildes
aus dem Codierstrom; wenn das Referenzvollbild, das dem Bewegungsvektor
MV entspricht, nicht jenseits des maximalen Vorwärtsreferenzblocks liegt, auf
den das B-Bild zeigen kann, dann lassen sich die Vorwärts- und
Rückwärtsbewegungsvektoren
aus den folgenden Formeln ermitteln:
-
MVF und MVB sind der
Vorwärtsbewegungsvektor
und der Rückwärtsbewegungsvektor,
die dem aktuellen Block entsprechen. Hier ist tb ein Abstand im
Zeitbereich zwischen einem aktuellen Bild und einem Vorwärtsreferenzbild,
td ist ein Abstand im Zeitbereich zwischen einem Vorwärtsreferenzbild
und einem Rückwärtsreferenzbild,
und MV bezeichnet den Bewegungsvektor des entsprechenden Anteils
des Rückwärtsreferenzbildes
relativ zu dem Vorwärts-Referenzvollbild.
-
Falls
das Referenzvollbild, das dem Bewegungsvektor MV entspricht, jenseits
des maximalen Vorwärtsreferenzblocks
liegt, auf das das B-Bild zeigen kann, dann können die Vorwärts- und
Rückwärtsbewegungsvektoren
aus den folgenden Formeln ermittelt werden:
-
Hier
ist tb' ein Abstand
im Zeitbereich zwischen dem aktuellen B-Bild und dem Vorwärts-Referenzvollbild
P_REF_0, ein endgültiger
bidirektionaler Prädiktions-Referenzblock
kann durch Bilden des Durchschnitts der Pixelwerte ermittelt werden,
die der Prädiktion
entsprechen, auf die MVB und MVF zeigen,
und ein aktueller Bildblock wird durch Addieren des bidirektionalen
Prädiktions-Referenzblocks
und des entsprechenden Blockrestfehlers gebildet, um das gesamte
Decodierverfahren abzuschließen.
-
Es
versteht sich, dass die obigen Ausführungsformen lediglich verwendet
werden, um zu erläutern,
jedoch nicht, um die vorliegende Erfindung einzuschränken. Trotz
der detaillierten Beschreibung der vorliegenden Erfindung unter
Bezugnahem auf die obigen bevorzugten Ausführungsformen versteht es sich,
dass verschiedene Modifikationen, Veränderungen oder äquivalente
Ersetzungen durch den einschlägigen
Fachmann durchgeführt
werden können, ohne
vom Wesen und Umfang der vorliegenden Erfindung abzuweichen, und
dass sie von den Ansprüchen
der vorliegenden Erfindung abgedeckt sind.
-
Zusammenfassung
-
Die
vorliegende Erfindung offenbart ein Verfahren zum Ermitteln eines
Bildreferenzblocks in einem Codiermodus mit fester Referenzvollbildanzahl, das
die folgenden Schritte aufweist: Durchführen einer Bewegungsschätzung für jeden
Block eines aktuellen B-Bildes und Ermitteln eines Bewegungsvektors
MV eines entsprechenden Blocks eines Rückwärts-Referenzvollbildes; Entscheiden, ob
der Bewegungsvektor jenseits eines maximalen Vorwärts-Referenzvollbildes
liegt, auf das das B-Bild zeigen kann, falls nicht, dann Berechnen
der Vorwärts-
und Rückwärtsbewegungsvektoren
auf einem normalen Weg; falls ja, dann Verwenden des Bewegungsvektors
des Vorwärts-Referenzvollbildes,
das das B-Bild in derselben Richtung erreichen kann, um den Bewegungsvektor
des entsprechenden Blocks in der Rückwärtsreferenz zu ersetzen, und
Berechnen der Vorwärts-
und Rückwärtsbewegungsvektoren
des B-Bildes; schließlich
gelten zwei Bildblöcke,
auf die die letztlich ermittelten Vorwärts- und Rückwärtsbewegungsvektoren zeigen,
als die Bildreferenzblöcke, die
dem Makroblock entsprechen. Die vorliegende Erfindung löst das möglicherweise
aufgetretene Problem von nicht übereinstimmenden
Bewegungsvektoren, und kann die Codiereffizienz in größtem Maße gewährleisten.