DE10300533A1 - Direktmodus-Bewegungsvektor-Berechnungsverfahren für B-Bilder - Google Patents

Direktmodus-Bewegungsvektor-Berechnungsverfahren für B-Bilder Download PDF

Info

Publication number
DE10300533A1
DE10300533A1 DE2003100533 DE10300533A DE10300533A1 DE 10300533 A1 DE10300533 A1 DE 10300533A1 DE 2003100533 DE2003100533 DE 2003100533 DE 10300533 A DE10300533 A DE 10300533A DE 10300533 A1 DE10300533 A1 DE 10300533A1
Authority
DE
Germany
Prior art keywords
list
picture
direct mode
field
frame
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.)
Granted
Application number
DE2003100533
Other languages
English (en)
Other versions
DE10300533A9 (de
DE10300533B4 (de
Inventor
Byeong Moon Jeon
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.)
LG Electronics Inc
Original Assignee
LG Electronics 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 LG Electronics Inc filed Critical LG Electronics Inc
Publication of DE10300533A1 publication Critical patent/DE10300533A1/de
Publication of DE10300533A9 publication Critical patent/DE10300533A9/de
Application granted granted Critical
Publication of DE10300533B4 publication Critical patent/DE10300533B4/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
    • 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/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • 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
    • 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/51Motion estimation or motion compensation
    • 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/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • 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/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/521Processing of motion vectors for estimating the reliability of the determined motion vectors or motion vector field, e.g. for smoothing the motion vector field or for correcting motion vectors
    • 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/51Motion estimation or motion compensation
    • H04N19/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • 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/51Motion estimation or motion compensation
    • H04N19/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search

Abstract

Es wird ein Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes (Doppel-Vorhersage-Bildes) in einem Codiersystem für bewegte Bilder und zum Extrahieren der Direkt-Modus-Bewegungsvektoren des B-Bildes vorgeschlagen. Wenn ein list-1-Referenzbild für den Direkt-Modus dem B-Bild zeitlich vorangeht oder nachfolgt, wird einer der Bewegungsvektoren eines entsprechend angeordneten Blocks in einem list-1-Referenzbild als ein Bewegungsvektor zum Herleiten der Direkt-Modus-Bewegungsvektoren bestimmt, und zwar unabhängig von Moden (einem list-0-Modus und/oder einem list-1-Modus) der Bewegungsvektoren des entsprechend angeordneten Blocks. Der bestimmte Bewegungsvektor wird skaliert, um einen list-0-Bewegungsvektor MVF und einen list-1-Bewegungsvektor MVB herzuleiten. Ferner wird ein Referenzbild, auf welches durch einen bestimmten Bewegungsvektor gezeigt wird, als ein list-0-Referenzbild für den Direktmodus bestimmt.

Description

  • Die vorliegende Erfindung betrifft ein Codierverfahren für bewegte Bilder, und insbesondere eine Technik zum Herleiten von Direkt-Modus-Bewegungsvektoren für ein in einer Kompressionstechnik für bewegte Bilder der nächsten Generation definiertes B-Bild ("B-predictive picture", Bidirektional-Vorhersage-Bild).
  • Ein herkömmliches B-Bild hat fünf Typen an Vorhersagemoden, wie etwa einen Vorwärts-Modus ("forward mode"), einen Rückwärts-Modus ("backward mode"), einen Bi-Direktional-Modus ("bi-directional mode"), einen Direkt-Modus ("direct mode") und einen Intra-Modus ("intra mode"). In dem Vorwärts-Modus, dem Rückwärts-Modus und dem Bi-Direktional-Modus können die Richtungen von Bewegungsvektoren ("motion vectors") aus den Modusnamen erkannt werden, da in den Modusnamen Richtungsinformation enthalten ist. In dem Direkt-Modus werden zwei Bewegungsvektoren aus beiden Richtungen von einem Bewegungsvektor eines entsprechend angeordneten Blocks ("colocated block") in einem benachbarten Bild auf der Grundlage einer zeitlichen Redundanzcharakteristik, wonach zwischen benachbarten Bildern eine Bewegungskontinuität konstant aufrecht erhalten wird, erhalten. Dieser Direkt-Modus weist einen Vorteil hinsichtlich einer Codiereffizienz auf, da Bewegungsinformation nicht zu einem Decoder gesendet wird.
  • Andererseits ist ein B-Bild, wie es in einer zukünftigen Kompressionstechnik für bewegte Bilder, wie etwa H.264 oder MPEG-4, Teil 10, vorgeschlagen wird, dadurch gekennzeichnet, dass das B-Bild als ein Referenzbild verwendet werden kann, da es in einem Referenzbildpuffer gespeichert werden kann. Dieses B-Bild ist ferner dadurch gekennzeichnet, dass es fünf Arten von Vorhersagemoden hat, wie etwa list-0-Modus, list-1-Modus, Doppelvorhersage-Modus, Direkt-Modus und Intra-Modus.
  • Der list-0-Modus ist ähnlich dem herkömmlichen Vorwärts-Modus, und Bewegungsinformation, wie etwa ein Referenzbild-Index und eine Bewegungsvektordifferenz werden jeweils durch ref_idx_l0 und mvd_l0 angegeben. Der list-1-Modus ist ähnlich dem herkömmlichen Rückwärts-Modus, und Bewegungsinformation, wie etwa ein Referenzbild-Index und eine Bewegungsvektordifferenz, werden jeweils durch ref_idx_l1 und mvd_l1 angegeben. Der Doppel-Vorhersagemodus hat zwei Referenzbilder, welche beide zeitlich vor oder nach dem B-Bild angeordnet sein können oder welche zeitlich vor bzw. nach dem B-Bild angeordnet sein können. In diesem Fall werden zwei Referenzbild-Indizes und zwei Bewegungsvektordifferenzen jeweils durch ref_idx_l0, ref_idx_l1, mvd_l0 und mvd_l1 angegeben, und jedes Referenzbild hat Bildordnungszähldaten, POC ("Picture order count"), welche zeitliche Anordnungsinformation darstellen.
  • In dem Direkt-Modus werden Bewegungsvektoren durch Auswahl einer räumlichen oder zeitlichen Technik erhalten. Gemäß der räumlichen Direkt-Modus-Technik werden list-0- und list-1-Referenzbildindizes und Bewegungsvektoren aus zu einem zu codierenden Makroblock benachbarten Blöcken erhalten. Gemäß der zeitlichen Direkt-Modus-Technik wird eine list-0-Bewegungsvektor MVF und ein list-1-Bewegungsvektor MVB durch Skalieren eines list-0-Bewegungsvektors eines entsprechend angeordneten Blocks ("co-located block") in einem list-1-Referenzbild für den Direkt-Modus erhalten, was ähnlich ist wie bei dem herkömmlichen B-Bild. Hier ist das list-1-Referenzbild für den Direkt-Modus ein Bild, wo ein Index zur list-1-Vorhersage 0 ist, und ein list-0-Referenzbild für den Direkt-Modus ist ein list-0-Referenzbild, auf welches ein Bewegungsvektor eines entsprechend angeordneten Blocks in dem 1ist-1-Referenzbild für den Direkt-Modus zeigt.
  • Die 1a bis 1c zeigen Vorgabeindizes ("default Indizes") für list-0-Vorhersage, Vorgabeindizes für list-1-Vorhersage und list-1-Referenzbilder für den Direkt-Modus von jeweiligen B-Bildern in einem IBBBP-Muster, wenn die Zahl von verfügbaren list-0- bzw. list-1-Referenzbildern (oder die Größe eines Kurzzeitpuffers) 6 ist. Hier sind die Vorgabeindizes für die list-0-Vorhersage und die Vorgabeindizes für die list-1-Vorhersage abhängig von einer Ausgabeordnung, oder einem POC-Wert, eines vorangehend decodierten Referenzbildes, und zwar unabhängig von einer Decodierordnung. In 1 verwenden alle B-Bilder ein zeitlich nachfolgendes P-Bild als das list-1-Referenzbild für den Direkt-Modus.
  • Die 2a bis 2c zeigen Vorgabeindizes für eine list-0-Vorhersage, Vorgabeindizes für eine list-1-Vorhersage und list-1-Referenzbilder für den Direkt-Modus von jeweiligen B-Bildern in einem IBBB-Muster unter Verwendung von nur B-Bildern. Wenn in 2a ein zu codierendes B-Bild B8 ist, ist ein zeitlich vorhergehendes B5 mit einem list-1-Index 0 ein list-1-Referenzbild für den Direkt-Modus. Wie in 2b gezeigt, ist ein list-1-Referenzbild für den Direkt-Modus des nachfolgend zu decodierenden B7 das zeitlich nachfolgende B8. Schließlich ist, wie in 2c gezeigt, ein list-1- Referenzbild für den Direkt-Modus von dem nachfolgend zu decodierenden B9 das zeitlich vorgehende B7.
  • Folglich kann, wie aus den 1a bis 2c hervorgeht, ein list-1-Referenzbild für den Direkt-Modus ein P-Bild oder ein B-Bild, welches dem zu codierenden B-Bild zeitlich folgt, oder ein B-Bild sein, welches diesem zeitlich vorangeht.
  • 3a bis 3h zeigen Moden, welche ein entsprechend angeordneter Block ("Co-located block") in einem list-1-Referenzbild für den Direkt-Modus haben kann, wenn das list-1-Referenzbild einem B-Bild zeitlich folgt. In diesem Fall hat der entsprechend angeordnete Block, da das list-1-Referenzbild ein P-Bild oder ein B-Bild sein kann, einen oder zwei Bewegungsvektoren oder den Intra-Modus. Die Kompressionstechnik für bewegte Bilder der nächsten Generation, wie etwa H.264 oder MPEG-4 Teil 10, erlaubt die Umordnung von Referenzbildindizes auf einer "slice"-Ebene, so dass ein Index 0 für list-1-Vorhersage einem Bild unmittelbar nach einem B-Bild zugeordnet werden kann. Das heisst, da das list-1-Referenzbild unmittelbar nach einem B-Bild existieren kann, dass ein Bewegungsvektor des entsprechend angeordneten Blocks vorwärts oder rückwärts gerichtet sein kann.
  • Die 4a bis 4h zeigen Moden, welche ein entsprechend angeordneter Block in einem list-1-Referenzbild für den Direkt-Modus haben kann, wenn das list-1-Referenzbild einem B-Bild zeitlich vorangeht. In diesem Fall hat der entsprechend angeordnete Block einen oder zwei Bewegungsvektoren, oder, wie vorangehend beschrieben, den Intra-Modus. Zwischen dem list-1-Referenzbild und dem B-Bild können andere Referenzbilder vorhanden sein, so dass ein Bewegungsvektor des entsprechend angeordneten Blocks zeitlich in die Vorwärts- oder die Rückwärtsrichtung zeigen kann.
  • Wie aus den 3a bis 4h ersichtlich ist, kann das list-1-Referenzbild für den Direkt-Modus verschiedene Vorhersagemoden haben, welche einen Bedarf danach ergeben, ein Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren unter Berücksichtigung solcher verschiedenartiger Fälle zu untersuchen.
  • Die vorliegende Erfindung wendet sich den oben genannten Problemen zu, und es ist eine Aufgabe der vorliegenden Erfindung, ein Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes ("Bi-predictive picture") anzugeben, welches in einer Kompressionstechnik für bewegte Bilder der nächsten Generation definiert ist, wobei eine Technik zum Herleiten der Direkt-Modus-Bewegungsvektoren des B-Bildes vorgeschlagen wird, um die Wahrscheinlichkeit zu erhöhen, dass ein Direkt-Modus als ein Vorhersagemodus eines Makroblocks ausgewählt wird, um eine B-Bild-Codiereffizienz zu erhöhen.
  • Unter einem Aspekt der Erfindung können die obigen und anderen Ziele erreicht werden durch die Bereitstellung eines Verfahrens zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes (Doppel-Vorhersage-Bildes, "Bi-predictive picture") in einem Codiersystem für bewegte Bilder und zum Extrahieren der Direkt-Modus-Bewegungsvektoren des B-Bildes, umfassend die Schritte des Auswählens eines (ein list-0-Bewegungsvektor oder ein list-1-Bewegungsvektor) der beiden Bewegungsvektoren, wenn ein entsprechend angeordneter Block in einem list-1-Referenzbild für den Direkt-Modus zwei Bewegungsvektoren hat, und Herleiten der Direkt-Modus-Bewegungsvektoren des B-Bildes aus dem ausgewählten Bewegungsvektor.
  • Vorzugsweise kann der obige Schritt den Schritt des Auswählens von einem der list-0- und list-1-Bewegungsvektoren umfassen, welcher zu einem Bild zeigt, welches dem list-1-Referenzbild für den Direkt-Modus zeitlich näher ist als ein Bewegungsvektor zum Herleiten der Direkt-Modus-Bewegungsvektoren, wobei der list-0-Bewegungsvektor als der Bewegungsvektor zum Herleiten der Direkt-Modus-Bewegungsvektoren ausgewählt wird, wenn die zwei Bewegungsvektoren zu dem gleichen Referenzbild zeigen, wobei ein Referenzbild als ein list-0-Referenzbild für den Direkt-Modus bestimmt wird, auf welches durch den ausgewählten Bewegungsvektor gezeigt wird, und die Direkt-Modus-Bewegungsvektoren des B-Bildes hergeleitet werden. Alternativ kann der obige Schritt den Schritt des unbedingten Auswählens des list-0-Bewegungsvektors als einen Bewegungsvektor zur Herleitung der Direkt-Modus-Bewegungsvektoren umfassen, und zwar unabhängig von einem zeitlichen Abstand, wobei ein Referenzbild, auf welches der list-0-Bewegungsvektor zeigt, als ein list-0-Referenzbild für den Direkt-Modus ausgewählt wird, und die Direkt-Modus-Bewegungsvektoren des B-Bildes hergeleitet werden.
  • Unter einem weiteren Aspekt der vorliegenden Erfindung wird ein Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes (Doppel-Vorhersage-Bildes, "Bi-predictive picture") in einem Codiersystem für bewegte Bilder bereitgestellt, um die Direkt-Modus-Bewegungsvektoren des B-Bildes zu extrahieren, umfassend die Schritte des Auswählens eines der Bewegungsvektoren eines entsprechend angeordneten Blocks in einem list-1-Referenzbild für den Direkt-Modus als einen Bewegungsvektor zum Herleiten der Direkt-Modus-Bewegungsvektoren, und zwar unabhängig von Moden (einem list-0-Modus und/oder einem list-1-Modus) der Bewegungsvektoren des entsprechend angeordneten Blocks, Bestimmen eines Referenzbildes, auf welches durch den ausgewählten Bewegungsvektor gezeigt wird, als ein list-0-Referenzbild für den Direkt-Modus, und Berechnen der Direkt-Modus-Bewegungsvektoren des B-Bildes. Es wurde ein herkömmliches Verfahren vorgeschlagen, um Direkt-Modus-Bewegungsvektoren aus einem list-0-Bewegungsvektor eines entsprechend angeordneten Blocks herzuleiten. Wenn dieses herkömmliche Verfahren auf den Fall angewendet wird, wo ein entsprechend angeordneter Block in einem list-1-Referenzbild nur einen list-1-Bewegungsvektor hat, werden alle Direkt-Modus-Bewegungsvektoren 0, da der list-0-Bewegungsvektor 0 ist. Die vorliegende Erfindung kann dieses Problem jedoch überwinden.
  • Unter einem weiteren Aspekt der vorliegenden Erfindung wird ein Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes (Doppel-Vorhersage-Bildes, "Bi-predictive picture") in einem Codiersystem für bewegte Bilder vorgeschlagen, um die Direkt-Modus-Bewegungsvektoren des B-Bildes zu extrahieren, umfassend die Schritte: wenn ein entsprechend angeordneter Block in einem list-1-Referenzbild für den Direkt-Modus nur einen list-1-Bewegungsvektor hat, wird der der entsprechend angeordnete Block als ein Block betrachtet der eine Bewegung von 0 hat, Bestimmen eines decodierten Bildes, welches zeitlich unmittelbar vor dem B-Bild liegt, als ein list-0-Referenzbild für den Direkt-Modus, und Herleiten der Direkt-Modus-Bewegungsvektoren des B-Bildes.
  • Unter einem weiteren Aspekt der vorliegenden Erfindung wird ein Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes (Doppel-Vorhersage-Bildes, "Bi-predictive picture") in einem Codiersystem für bewegte Bilder bereitgestellt, um die Direkt-Modus-Bewegungsvektoren des B-Bildes zu extrahieren, umfassend die Schritte: wenn ein entsprechend angeordneter Block in einem list-1-Referenzbild für den Direkt-Modus nur einen list-1-Bewegungsvektor hat, Verwenden des list-1-Bewegungsvektors des entsprechend angeordneten Blocks ("Co-located block") als einen Bewegungsvektor zum Herleiten der Direkt-Modus-Bewegungsvektoren, Bestimmen eines zeitlich unmittelbar vor dem B-Bild angeordneten decodierten Bildes als ein list-0-Referenzbild für den Direkt-Modus, und Herleiten der Direkt-Modus-Bewegungsvektoren des B-Bildes.
  • Unter einem weiteren Aspekt der vorliegenden Erfindung wird ein Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes (Doppel-Vorhersage-Bildes, "Bi-predictive picture") in einem Codiersystem für bewegte Bilder bereitgestellt, um die Direkt-Modus-Bewegungsvektoren des B-Bildes zu extrahieren, umfassend die Schritte: wenn ein entsprechend angeordneter Block in einem list-1-Referenz-Bild für den Direkt-Modus nur einen list-1-Bewegungsvektor hat, Verwenden des list-1-Bewegungsvektors des entsprechend angeordneten Blocks als einen Bewegungsvektor zum Herleiten der Direkt-Modus-Bewegungsvektoren, Bestimmen eines Referenzbildes, auf welches durch den list-1-Bewegungsvektor des entsprechend angeordneten Blocks gezeigt wird, als ein list-0-Referenzbild für den Direkt-Modus, und Herleiten der Direkt-Modus-Bewegungsvektoren des B-Bildes.
  • Unter einem weiteren Aspekt der vorliegenden Erfindung wird ein Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes (Doppel-Vorhersage-Bildes, "Bi-predictive picture") in einem Codiersystem für bewegte Bilder zum Extrahieren der Direkt-Modus-Bewegungsvektoren des B-Bildes vorgeschlagen, umfassend die Schritte: Setzen eines zuletzt decodierten Bildes als ein list-1-Referenzbild für den Direkt-Modus, Skalieren eines Bewegungsvektors eines entsprechend angeordneten Blocks in dem list-1-Referenzbild für den Direkt-Modus, um einen list-0-Bewegungsvektor MVF und einen list-1-Bewegungsvektor MVB herzuleiten, und Berechnen der Direkt-Modus-Bewegungsvektoren des B-Bildes. Bei einem herkömmlichen Verfahren wird ein Bild, welches einen Index 0 für list-1-Vorhersage hat, als ein list-1-Referenzbild für den Direkt-Modus definiert. Wenn zwischen dem B-Bild und dem Bild mit dem Index 0 ein hiervon verschiedenes Bild decodiert wird, muss Bewegungsinformation und Referenzbildinformation des Bildes mit dem Index 0 aufrecht erhalten werden, was zu einer zusätzlichen Speicherbenutzung führt. Das vorliegende Verfahren kann jedoch die zusätzliche Speicherbenutzung einsparen.
  • Unter einem weiteren Aspekt der vorliegenden Erfindung wird ein Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes (Doppel-Vorhersage-Bildes, "Bi-predictive picture") in einem Codiersystem für bewegte Bilder zum Extrahieren der Direkt-Modus-Bewegungsvektoren des B-Bildes bereitgestellt, umfassend die Schritte: wenn ein list-1-Referenzbild für den Direkt-Modus dem B-Bild zeitlich vorangeht, Skalieren eines Bewegungsvektors eines entsprechend angeordneten Blocks in dem list-1-Referenzbild für den Direkt-Modus, um einen list-0-Bewegungsvektor MVF und einen list-1-Bewegungsvektor MVB herzuleiten, und Berechnen der Direkt-Modus-Bewegungsvektoren des B-Bildes.
  • Vorzugsweise kann der obige Schritt, wenn sowohl ein Makroblock des B-Bildes als auch ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Rahmen-Modus ("frame mode") sind und ein list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich vorangeht, den Schritt des Berechnens der Direkt-Modus- Bewegungsvektoren MVF und MVB des B-Bildes wie folgt umfassen: MVF = TDB × MV / TDD MVB = (TDB – TDD) × MV /TDD oder Z = TDB × 256 / TDD MVF = (Z × MV + 128) >> 8 W = Z – 256 MVB = (W × MV + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Rahmen und einem list-0-Referenzrahmen repräsentiert, TDD einen zeitlichen Abstand zwischen einem list-1-Referenzrahmen und dem list-0-Referenzrahmen repräsentiert, und MV einen Bewegungsvektor des entsprechend angeordneten Blocks in dem list-1-Referenzbild für den Direkt-Modus repräsentiert.
  • Ferner kann der obige Schritt, wenn sowohl ein Makroblock des B-Bildes als auch ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Rahmen-Modus ("frame mode") sind und ein list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich folgt, den Schritt des Berechnens der Direkt-Modus-Bewegungsvektoren MVF und MVB des B-Bildes wie folgt umfassen: MVF = – TDB × MV / TDD MVB = – (TDB + TDD) × MV / TDD oder Z = – TDB × 256 / TDD MVF = (Z × MV + 128) >> 8 W = Z – 256 MVB = (W × MV + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Rahmen und einem list-0-Referenzrahmen repräsentiert, TDD einen zeitlichen Abstand zwischen einem list-1-Referenzbild und dem list-0-Referenzbild repräsentiert, und MV einen Bewegungsvektor des entsprechend angeordneten Blocks in dem list-1-Referenzbild für den Direkt-Modus repräsentiert.
  • Ferner kann der obige Schritt, wenn sowohl ein Makroblock des B-Bildes als auch ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Feld-Modus ("field mode") sind und ein list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich vorangeht, den Schritt des Berechnens der Direkt-Modus-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i eines B-Rahmens wie folgt umfassen: MVF,i = TDB,i × MVi / TDD,i MVB,i = (TDB,i – TDD,i) × MVi / TDD,i oder Z = TDB,i × 256 / TDD,i MVF,i = (Z × MVi + 128) >> 8 W = Z – 256 MVB,i = (W × MVi + 128) >> 8,wobei TDB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, TDD,i einen zeitlichen Abstand zwischen einem list-1-Referenzfeld und dem list-0-Referenzfeld repräsentiert, und MVi einen Bewegungsvektor des entsprechend angeordneten Blocks in einem list-1-Referenzfeld für den Direkt-Modus repräsentiert.
  • Ferner kann der obige Schritt, wenn sowohl ein Makroblock des B-Bildes als auch ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Feld-Modus ("field mode") sind und ein list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich folgt, den Schritt des Berechnens der Direkt-Modus-Bewegungsvektoren MVF,i und MVB,i für jedes Feld eines B-Rahmens wie folgt umfassen: MVF,i = – TDB,i × MVi / TDD,i MVB,i = – (TDB,i + TDD,i) × MVi / TDD,i oder Z = -TDB,i × 256 / TDD,i MVF,i = (Z × MVi + 128) >> 8 W = Z – 256 MVB,i = (W × MVi + 128) >> 8,wobei TDB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, TDD,i einen zeitlichen Abstand zwischen einem list-1-Referenzfeld und dem list-0-Referenzfeld repräsentiert, und MVi einen Bewegungsvektor des entsprechend angeordneten Blocks in einem list-1-Referenzfeld für den Direkt-Modus repräsentiert.
  • Ferner kann der obige Schritt, wenn ein Makroblock des B-Bildes in einem Feld-Modus ("field mode") ist, ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Rahmen-Modus ("frame mode") ist und ein list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich vorangeht, den Schritt des Berechnens der Direkt-Modus-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i des B-Rahmens wie folgt umfassen: MVF,i = TDB,i × MV / TDD MVB,i = (TDB,i - TDD) × MV / TDD oder Z = TDB,i × 256 / TDD MVF,i = (Z × MV + 128) >> 8 W = Z – 256 MVB,i = (W × MV + 128) >> 8, wobei TDB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, TDD einen zeitlichen Abstand zwischen einem list-1-Referenzrahmen und einem list-0-Referenzrahmen repräsentiert, und MV einen Bewegungsvektor eines entsprechend angeordneten Blocks in einem list-1-Referenzrahmen für den Direkt-Modus repräsentiert.
  • Ferner kann der obige Schritt, wenn ein Makroblock des B-Bildes in einem Feld-Modus ("field mode") ist, ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Rahmen-Modus ("frame mode") ist und ein list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich folgt, den Schritt des Berechnens der Direkt-Modus-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i des B-Rahmens wie folgt umfassen: MVF,i = -TDB,i × MV / TDD MVB,i = – (TDB,i + TDD) × MV / TDD oder Z = – TDB,i × 256 / TDD MVF,i = (Z × MV + 128) >> 8 W = Z – 256 MVB,i = (W × MV + 128) >> 8,wobei TDB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, TDD einen zeitlichen Abstand zwischen einem list-1-Referenzrahmen und einem list-0-Referenzrahmen repräsentiert, und MV einen Bewegungsvektor eines entsprechend angeordneten Blocks in einem list-1-Referenzrahmen für den Direkt-Modus repräsentiert.
  • Ferner kann der obige Schritt, wenn ein Makroblock des B-Bildes in einem Rahmen-Modus ("frame mode") ist, ein entsprechend angeordneter Makroblock in dem list-1- Referenzbild in einem Feld-Modus ("field mode") ist und ein list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich vorangeht, den Schritt des Berechnens der Direkt-Modus-Bewegungsvektoren MVF und MVB des B-Rahmens aus der unten angegebenen Gleichung umfassen, wobei Bewegungsinformation eines entsprechend angeordneten Blocks in einem Feld 1 eines list-1-Referenzrahmens zur Berechnung der Direkt-Modus-Bewegungsvektoren verwendet wird: MVF =TDB × MV1 / TDD,1 MVB = (TDB -TDD,1) × MV1 / TDD,1 oder Z = TDB × 256 / TDD,1 MVF = (Z × MV1 + 128) >> 8 W = Z – 256 MVB = (W × MV1 + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Rahmen und einem list-0-Referenzrahmen repräsentiert, TDD,1 einen zeitlichen Abstand zwischen einem Feld 1 des list-1-Referenzrahmens und einem list-0-Referenzfeld repräsentiert, und MV1 einen Bewegungsvektor eines entsprechend angeordneten Blocks in dem Feld 1 des list-1-Referenzrahmens für den Direkt-Modus repräsentiert.
  • Ferner kann der obige Schritt, wenn ein Makroblock des B-Bildes in einem Rahmen-Modus ("frame mode") ist, ein entsprechend angeordneter Makroblock des list-1-Referenzbilds in einem Feld-Modus ("field mode") ist und ein list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich vorangeht, den Schritt des Berechnens der Direkt-Modus-Bewegungsvektoren MVF und MVB eines B-Rahmens aus der unten angegebenen Gleichung umfassen, wobei Bewegungsinformation eines entsprechend angeordneten Blocks in einem Feld 1 eines list-1-Referenzrahmens zur Berechnung der Direkt-Modus-Bewegungsvektoren verwendet wird: MVF = -TDB × MV1 / TDD,1 MVB = – (TDB + TDD,1) × MV1 / TDD,1 oder Z = – TDB × 256 / TDD,1 MVF = (Z × MV1 + 128) >> 8 W = Z – 256 MVB = (W × MV1 + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Rahmen und einem list-0-Referenzrahmen repräsentiert, TDD,1 einen zeitlichen Abstand zwischen einem Feld 1 des list-1-Referenzrahmens und einem list-0-Referenzfeld repräsentiert, und MV1 einen Bewegungsvektor eines entsprechend angeordneten Blocks in dem Feld 1 des list-1-Referenzrahmens für den Direkt-Modus repräsentiert.
  • Unter einem weiteren Aspekt der Erfindung wird ein Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes (Doppel-Vorhersage-Bildes, "Bi-predictive picture") in einem Codiersystem für bewegte Bilder zum Extrahieren der Direkt-Modus-Bewegungsvektoren des B-Bildes bereitgestellt, umfassend die Schritte: wenn sowohl ein list-0-Referenzbild als auch ein list-1-Referenzbild für den Direkt-Modus dem B-Bild zeitlich folgen, Skalieren eines Bewegungsvektors eines entsprechend angeordneten Blocks in dem list-1-Referenzbild für den Direkt-Modus, um einen list-0-Bewegungsvektor MVF und einen list-1-Bewegungsvektor MVB herzuleiten, und Berechnen der Direkt-Modus-Bewegungsvektoren des B-Bildes.
  • Vorzugsweise kann der obige Schritt, falls sowohl ein Makroblock des B-Bildes als auch ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Rahmen-Modus ("frame mode") sind und das list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich folgt, den Schritt des Berechnens der Direkt-Modus-Bewegungsvektoren MVF und MVB des B-Bildes wie folgt umfassen: MVF = TDB × MV /TDD MVB = (TDB – TDD) × MV / TDD oder Z = TDB × 256 / TDD MVF = (Z × MV + 128) >> 8 W = Z – 256 MVB = (W × MV + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Rahmen und einem list-0-Referenzrahmen repräsentiert, TDD einen zeitlichen Abstand zwischen einem list-1-Referenzrahmen und dem list-0-Referenzrahmen repräsentiert, und MV einen Bewegungsvektor des entsprechend angeordneten Blocks in dem list-1-Referenzbild für den Direkt-Modus repräsentiert.
  • Ferner kann der obige Schritt, wenn sowohl ein Makroblock des B-Bildes und ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Rahmen-Modus ("frame mode") sind und das list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich vorangeht, den Schritt des Berechnens der Direkt-Modus-Bewegungsvektoren MVF und MVB des B-Bildes wie folgt umfassen: MVF = – TDB × MV / TDD MVB = – (TDB + TDD) × MV /TDD oder Z = – TDB × 256 / TDD MVF = (Z × MV + 128) >> 8 W = Z - 256 MVB = (W × MV + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Rahmen und einem list-0-Referenzrahmen repräsentiert, TDD einen zeitlichen Abstand zwischen einem list-1-Referenzrahmen und dem list-0-Referenzrahmen repräsentiert, und MV einen Bewegungsvektor des entsprechend angeordneten Blocks in dem list-1-Referenzbild für den Direkt-Modus repräsentiert.
  • Ferner kann der obige Schritt, wenn sowohl ein Makroblock des B-Bildes als auch ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Feld-Modus ("field mode") sind und das list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich folgt, den Schritt des Berechnens der Direkt-Modus-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i eines B-Rahmens wie folgt umfassen: MVF,i = TDB,i × MVi / TDD,i MVB,i = (TDB,i – TDD,i) × MVi / TDD,i oder Z = TDB,i × 256 / TDD,i MVF,i = (Z × MVi + 128) >> 8 W = Z – 256 MVB,i = (W × MVi + 128) >> 8,wobei TDB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, TDD,i einen zeitlichen Abstand zwischen einem list-1-Referenzfeld und dem list-0-Referenzfeld repräsentiert, und MVi einen Bewegungsvektor eines entsprechend angeordneten Blocks in einem list-1-Referenzfeld für den Direkt-Modus repräsentiert.
  • Ferner kann der obige Schritt, wenn sowohl ein Makroblock des B-Bildes als auch ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Feld-Modus ("field mode") sind und das list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich vorangeht, den Schritt des Berechnens der Direkt-Modus-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i eines B-Rahmens wie folgt umfassen: MVF,i = – TDB,i × MVi / TDD,i MVB,i = – (TDB,i + TDD,i) × MVi / TDD,i oder Z = -TDB,i × 256 / TDD,i MVF,i = (Z × MVi + 128) >> 8 W = Z – 256 MVB,i = (W × MVi + 128) >> 8wobei TDB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, TDD,i einen zeitlichen Abstand zwischen einem list-1-Referenzfeld und dem list-0-Referenzfeld repräsentiert, und MVi einen Bewegungsvektor eines entsprechend angeordneten Blocks in einem list-1-Referenzfeld für den Direkt-Modus repräsentiert.
  • Ferner kann der obige Schritt, wenn ein Makroblock des B-Bildes in einem Feld-Modus ("field mode") ist ein entsprechend angeordneter Makroblock das list-1-Referenzbildes in einem Rahmen-Modus ("frame mode") ist und das list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich vorangeht, den Schritt des Berechnens der Direkt-Modus-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i des B-Rahmens wie folgt umfassen: MVF,i = TDB,i × MV /TDD MVB,i = (TDB,i – TDD) × MV /TDD oder Z = TDB,i × 256 / TDD MVF,i = (Z × MV + 128) >> 8 W = Z – 256 MVB,i = (W × MV + 128) >> 8,wobei TDB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, TDD einen zeitlichen Abstand zwischen einem list-1-Referenzrahmen und einem list-0-Referenzrahmen repräsentiert, und MV einen Bewegungsvektor eines entsprechend angeordneten Blocks in einem list-1-Referenzrahmen für den Direkt-Modus repräsentiert.
  • Ferner kann der obige Schritt, wenn ein Makroblock des B-Bildes in einem Feld-Modus ("field mode") ist, ein entsprechend angeordneter Makroblock das list-1-Referenzbildes in einem Rahmen-Modus ("frame mode") ist und das list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich vorangeht, den Schritt des Berechnens der Direkt-Modus-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i eines B-Rahmens wie folgt umfassen: MVF,i = -TDB,i × MV / TDD MVB,i = – (TDB,i + TDD) × MV /TDD oder Z = – TDB,i × 256 / TDD MVF,i = (Z × MV + 128) >> 8 W = Z – 256 MVB,i = (W × MV + 128) >> 8, wobei TDB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, TDD einen zeitlichen Abstand zwischen einem list-1-Referenzrahmen und einem list-0-Referenzrahmen repräsentiert, und MV einen Bewegungsvektor eines entsprechend angeordneten Blocks in einem list-1-Referenzrahmen für den Direkt-Modus repräsentiert.
  • Ferner kann der obige Schritt, wenn ein Makroblock des B-Bildes in einem Rahmen-Modus ("frame mode") ist, ein entsprechend angeordneter Makroblock das list-1-Referenzbildes in einem Feld-Modus ("field mode") ist und das list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich folgt, den Schritt des Berechnens der Direkt-Modus-Bewegungsvektoren MVF und MVB des B-Rahmens aus der unten angegebenen Gleichung umfassen, wobei Bewegungsinformation eines entsprechend angeordneten Blocks in einem Feld 0 eines list-1-Referenzrahmens zur Berechnung der Direkt-Modus-Bewegungsvektoren verwendet wird: MVF = TDB × MV0 / TDD,0 MVB = (TDB - TDD,0) × MV0 / TDD,0 oder Z = TDB × 256 / TDD,0 MVF = (Z × MV0 + 128) >> 8 W = Z – 256 MVB = (W × MV0 + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Rahmen und einem list-0-Referenzrahmen repräsentiert, TDD0 einen zeitlichen Abstand zwischen einem Feld 0 des list-1-Referenzrahmens und einem list-0-Referenzfeld repräsentiert, und MV0 einen Bewegungsvektor eines entsprechend angeordneten Blocks in dem Feld 0 des list-1-Referenzrahmens für den Direkt-Modus repräsentiert. Ferner kann der obige Schritt, wenn ein Makroblock des B-Bildes in einem Rahmen-Modus ("frame mode") ist, ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Feld-Modus ("field mode") ist und das list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich vorangeht, den Schritt des Berechnens der Direkt-Modus-Bewegungsvektoren MVF und MVB des B-Rahmens aus den unten angegebenen Gleichungen umfassen, wobei Bewegungsinformation eines entsprechend angeordneten Blocks in einem Feld 0 eines list-1-Referenzrahmens zur Berechnung der Direkt-Modus-Bewegungsvektoren verwendet wird: MVF = – TDB × MV0 / TDD,0 MVB = – (TDB + TDD,0) × MV0 / TDD,0 oder Z = – TDB × 256 / TDD,0 MVF = (Z × MV0 + 128) >> 8 W = Z – 256 MVB = (W × MV0 + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Rahmen und einem list-0-Referenzrahmen repräsentiert, TDD,0 einen zeitlichen Abstand zwischen einem Feld 0 des list-1-Referenzrahmens und einem list-0-Referenzfeld repräsentiert, und MV0 einen Bewegungsvektor eines entsprechend angeordneten Blocks in dem Feld 0 des list-1-Referenzrahmens für den Direkt-Modus repräsentiert.
  • Unter einem weiteren Aspekt der vorliegenden Erfindung wird ein Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes in einem Codiersystem für bewegte Bilder zum Extrahieren der Direkt-Modus-Bewegungsvektoren des B-Bildes bereitgestellt, umfassend die Schritte: Zuweisen eines Vorzeichens zu einem zeitlichen Zwischen-Bild-Distanzwert, Skalieren eines Bewegungsvektors eines entsprechend angeordneten Blocks in einem list-1-Referenzbild für den Direkt-Modus unabhängig von Orten der list-0- und list-1-Referenzbilder für den Direkt-Modus, um einen list-0-Bewegungsvektor MVF und einen list-1-Bewegungsvektor MVB herzuleiten, und Berechnen der Direkt-Modus-Bewegungsvektoren des B-Bildes.
  • Vorzugsweise kann der obige Schritt, wenn sowohl ein Makroblock des B-Bildes als auch ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Rahmen-Modus ("frame mode") sind, den Schritt des Berechnens der Direkt-Modus-Bewegungsvektoren MVF und MVB des B-Bildes wie folgt umfassen: MVF = TDB × MV /TDD MVB = (TDB – TDD) × MV / TDD oder Z = TDB × 256 / TDD MVF = (Z × MV + 128) >> 8 W = Z - 256 MVB = (W × MV + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzrahmen repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem B-Rahmen ausgehend gemessen wird, und dem ein negatives (-) Vorzeichen zugewiesen wird, wenn er von dem list-0-Referenzrahmen gemessen wird, TDD einen zeitlichen Abstand zwischen einem list-1-Referenzrahmen und dem list-0-Referenzrahmen repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem list-1-Referenzrahmen aus gemessen wird und dem ein negatives (-) Vorzeichen zugewiesen wird, wenn er von dem list-0-Referenzrahmen gemessen wird, und MV einen Bewegungsvektor des entsprechend angeordneten Blocks in dem list-1-Referenzbild für den Direkt-Modus repräsentiert.
  • Ferner kann der obige Schritt, falls sowohl ein Makroblock des B-Bildes als auch ein entsprechend angeordneter Block des list-1-Referenzbildes in einem Feld-Modus ("field mode") sind, den Schritt des Berechnens der Direkt-Modus-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i des B-Rahmens wie folgt umfassen: MVF,i = TDB,i × MVi / TDD,i MVB,i = (TDB,i – TDD,i) × MVi / TDD,i oder Z = TDB,i × 256 / TDD,i MVF,i = (Z × MVi + 128) >> 8 W = Z – 256 MVB,i = (W × MVi + 128) >> 8,wobei TDB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-Referenzfeld repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem B-Feld ausgehend gemessen wird, und dem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzfeld gemessen wird, TDD,i einen zeitlichen Abstand zwischen einem list-1-Referenzfeld und dem list-0-Referenzfeld repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem list-1-Referenzfeld gemessen wird, und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzfeld aus gemessen wird, und MVi einen Bewegungsvektor des entsprechend angeordneten Blocks in einem list-1-Referenzfeld für den Direkt-Modus repräsentiert.
  • Ferner kann der obige Schritt, wenn ein Makroblock des B-Bildes in einem Feld-Modus ("field mode") ist, und ein entsprechend angeordneter Makroblock des list-1- Referenzbildes in einem Rahmen-Modus ("frame mode") ist, den Schritt des Berechnens der Direkt-Modus-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i des B-Rahmens wie folgt umfassen: MVF,i = TDB,i × MV / TDD MVB,i = (TDB,i - TDD) × MV / TDD oder Z = TDB,i × 256 / TDD MVF,i = (Z × MV + 128) >> 8 W = Z – 256 MVB,i = (W × MV + 128) >> 8,wobei TDB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem B-Feld aus gemessen wird, und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzfeld aus gemessen wird, TDD einen zeitlichen Abstand zwischen dem list-1-Referenzrahmen und dem list-0-Referenzrahmen repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem list-1-Referenzrahmen aus gemessen wird, und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzrahmen aus gemessen wird, und MV einen Bewegungsvektor eines entsprechend angeordneten Blocks in einem list-1-Referenzrahmen für den Direkt-Modus repräsentiert.
  • Ferner kann der obige Schritt, wenn ein Makroblock des B-Bildes in einem Rahmen-Modus ("frame mode") ist, ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Feld-Modus ("field mode") ist, und das list-1-Referenzbild dem B-Bild zeitlich vorangeht, den Schritt des Berechnens der Direkt-Modus-Bewegungsvektoren MVF und MVB eines B-Rahmens aus der unten angegebenen Gleichung umfassen, wobei Bewegungsinformation eines entsprechend angeordneten Blocks in einem Feld 0 eines list-1-Referenzrahmens zum Berechnen der Direkt-Modus-Bewegungsvektoren verwendet wird: MVF = TDB × MV0 / TDD,0 MVB = (TDB - TDD,0) × MV0 / TDD,0 oder Z = TDB × 256 / TDD,0 MVF = (Z × MV0 + 128) >> 8 W = Z – 256 MVB = (W × MV0 + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzrahmen repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem B-Rahmen aus gemessen wird, und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzfeld aus gemessen wird, TDD,0 einen zeitlichen Abstand zwischen einem Feld 0 des list-1-Referenzrahmens und einem list-0-Referenzfeld repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem Feld 0 des list-1-Referenzrahmens aus gemessen wird, und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzfeld aus gemessen wird, und MV0 einen Bewegungsvektor eines entsprechend angeordneten Blocks in dem Feld 0 des list-1-Referenzrahmens für den Direkt-Modus repräsentiert.
  • Ferner kann der obige Schritt, wenn ein Makroblock des B-Bildes in einem Rahmen-Modus ("frame mode") ist, ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Feld-Modus ("field mode") ist, und das list-1-Referenzbild dem B-Bild zeitlich vorangeht, den Schritt des Berechnens der Direkt-Modus-Bewegungsvektoren MVF und MVB eines B-Rahmens aus der unten angegebenen Gleichung umfassen, wobei Bewegungsinformation eines entsprechend angeordneten Blocks in einem Feld 0 eines list-1-Referenzrahmens zum Berechnen der Direkt-Modus-Bewegungsvektoren verwendet wird: MVF = TDB × MV1 / TDD,1 MVB = (TDB - TDD,1) × MV1 / TDD,1 oder Z = TDB × 256 / TDD,1 MVF= (Z × MV1 + 128) >> 8 W = Z – 256 MVB = (W × MV1 + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Rahmen und einem list-0-Referenzrahmen repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem B-Rahmen aus gemessen wird, und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzrahmen aus gemessen wird, TDD,1 einen zeitlichen Abstand zwischen einem Feld 1 eines list-1-Referenzrahmens und einem list-0-Referenzfeld repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem Feld 1 des list-1-Referenzrahmens aus gemessen wird, und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzfeld aus gemessen wird, und MV1 einen Bewegungsvektor eines entsprechend angeordneten Blocks in dem Feld 1 des list-1-Referenzrahmens für den Direkt-Modus repräsentiert.
  • Unter einem weiteren Aspekt der vorliegenden Erfindung wird ein Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes in einem Codiersystem für bewegte Bilder zum Extrahieren der Direkt-Modus-Bewegungsvektoren des B-Bildes bereitgestellt, umfassend die Schritte: wenn ein entsprechend angeordneter Makroblock in einem list-1-Referenzbild für den Direkt-Modus in einem Intra-Modus ("intra mode") ist, Vorhersagen und Berechnen von list-0- und list-1-Referenzbildern und Bewegungsvektoren aus benachbarten Blöcken eines Makroblocks des zu codierenden B-Bildes auf der Grundlage einer räumlichen Redundanz, und Berechnen der Direkt-Modus-Bewegungsvektoren des B-Bildes.
  • Vorzugsweise kann der obige Schritt, wenn benachbarte Blöcke A, B und C des zu codierenden Makroblocks sich auf verschiedene Referenzbilder beziehen, den Schritt des Auswählens eines Referenzbildes mit einem kleinsten Index als Referenzbild für jede Liste umfassen.
  • Ferner kann der obige Schritt, wenn zwei oder mehr benachbarte Blöcke des zu codierenden Makroblocks sich auf ein Referenzbild mit einem gleichen Index beziehen, den Schritt des Auswählens dieses Referenzbildes als das Referenzbild für jede Liste umfassen.
  • Ferner kann der obige Schritt die Schritte umfassen: Setzen seiner list-0- und list-1-Bewegungsvektoren zu 0, wenn einer der benachbarten Blöcke A, B und C des zu codierenden Makroblocks in dem Intra-Modus ("intra mode") ist, Auswählen eines Bewegungsvektors, welcher die gleiche Richtung hat wie ein zeitlicher Ort des Referenzbildes für jede Liste eines benachbarten Blocks, und Gewinnen des Bewegungsvektors für jede Liste durch eine Mittelungsoperation, oder Auswählen von nur einem der beiden Bewegungsvektoren dieses Blocks, wenn ein benachbarter Block zwei Bewegungsvektoren mit den gleichen Richtungen aufweist, und Gewinnen des Bewegungsvektors für jede Liste durch eine Medianoperation unter Einbeziehung des ausgewählten Bewegungsvektors.
  • Ferner kann der obige Schritt, wenn ein effektiver Referenzbildindex für jeden list-Modus nicht hergeleitet werden kann, den Schritt des Setzens der list-0- und list-1-Referenzbildindizes zu 0 und des Setzens des Bewegungsvektors für jeden list-Modus zu 0 umfassen.
  • Die obigen und weitere Ziele, Merkmale und weiteren Vorteile der vorliegenden Erfindung werden aus der nachfolgenden detaillierten Beschreibung unter Bezugnahme auf die beiliegenden Zeichnungen verständlicher, in welchen:
  • 1a bis 1c Ansichten sind, welche list-1-Referenzbilder für den Direkt-Modus in einem allgemeinen IBBBP-Muster erläutern;
  • 2a bis 2c Ansichten sind, welche list-1-Referenzbilder für den Direkt-Modus in einem allgemeinen IBBB-Muster erläutern;
  • 3a bis 3h Ansichten sind, welche Fälle erläutern, wo ein list-1-Referenzbild für den Direkt-Modus einem B-Bild zeitlich folgt (L0 MV: list-0- Bewegungsvektor und L1 MV: list-1-Bewegungsvektor);
  • 4a bis 4h Ansichten sind, welche Fälle erläutern, wo ein list-1-Referenzbild für den Direkt-Modus einem B-Bild zeitlich vorangeht (L0 MV: list-0-Bewegungsvektor und L1 MV: list-1-Bewegungsvektor);
  • 5 eine Ansicht ist, welche die Bewegungsvektor-Vorhersage eines Blocks E erläutert, und zwar unter Verwendung von Bewegungsvektoren von benachbarten Blöcken A, B und C unter Berücksichtigung einer allgemeinen räumlichen Redundanz;
  • 6a bis 6c Ansichten sind, welche Fälle erläutern, wo sowohl ein Makroblock eines B-Bildes als auch ein entsprechend angeordneter Makroblock in einem list-1-Referenzbild für den Direkt-Modus in einem Rahmen-Modus sind und das list-1-Referenzbild dem B-Bild zeitlich folgt;
  • 7a bis 7d Ansichten sind, welche Fälle erläutern, wo sowohl ein Makroblock eines B-Bildes und ein entsprechend angeordneter Makroblock in einem list-1-Referenzbild für den Direkt-Modus in einem Feld-Modus sind und das list-1-Referenzbild dem B-Bild zeitlich folgt;
  • 8a bis 8c Ansichten sind, welche Fälle erläutern, wo ein Makroblock eines B-Bildes in einem Feld-Modus ist, ein entsprechend angeordneter Makroblock in einem list-1-Referenzbild für den Direkt-Modus in einem Rahmen-Modus ist und das list-1-Referenzbild dem B-Bild zeitlich folgt;
  • 9a bis 9c Ansichten sind, welche Fälle erläutern, wo ein Makroblock eines B-Bildes in einem Rahmen-Modus ist, ein entsprechend angeordneter Makroblock in einem list-1-Referenzbild für den Direkt-Modus in einem Feld-Modus ist und das list-1-Referenzbild dem B-Bild zeitlich folgt;
  • 10a und 10b Ansichten sind, welche Fälle erläutern, wo sowohl ein Makroblock eines B-Bildes und ein entsprechend angeordneter Makroblock in einem list-1-Referenzbild für den Direkt-Modus in einem Rahmen-Modus sind und das list-1-Referenzbild dem B-Bild zeitlich vorangeht;
  • 11a bis 11d Ansichten sind, welche Fälle erläutern, wo sowohl ein Makroblock eines B-Bildes als auch ein entsprechend angeordneter Makroblock in einem list-1-Referenzbild für den Direkt-Modus in einem Feld-Modus sind und das list-1-Referenzbild dem B-Bild zeitlich vorangeht;
  • 12a und 12b Ansichten sind, welche Fälle erläutern, wo ein Makroblock eines B-Bildes in einem Feld-Modus ist, ein entsprechend angeordneter Makroblock in einem list-1-Referenzbild für einen allgemeinen Direkt-Modus in einem Rahmen-Modus ist und das list-1-Referenzbild dem B-Bild zeitlich vorangeht; und
  • 13a und 13b Ansichten sind, welche Fälle erläutern, wo ein Makroblock eines B-Bildes in einem Rahmen-Modus ist, ein entsprechend angeordneter Makroblock in einem list-1-Referenzbild für einen allgemeinen Direkt-Modus in einem Feld-Modus ist und das list-1-Referenzbild dem B-Bild zeitlich vorangeht;
  • Die vorliegende Erfindung schlägt ein Verfahren zum Herleiten von Direkt-Modus-Bewegungsvektoren, wenn ein entsprechend angeordneter Makroblock in einem list-1-Referenzbild für den Direkt-Modus in einem Intra-Modus ist, und ein verfahren zum Gewinnen der Direkt-Modus-Bewegungsvektoren in einem Fall, wo das list-1-Referenzbild einem B-Bild zeitlich folgt, und in einem Fall, wo das list-1-Referenzbild dem B-Bild zeitlich vorangeht, vor.
  • Die vorliegende Erfindung schlägt ferner ein Verfahren zum Berechnen der Direkt-Modus-Bewegungsvektoren unabhängig von den Orten von list-0- und list-1-Referenzbildern für den Direkt-Modus durch Zuordnen eines Vorzeichens zu einem zeitlichen Zwischen-Bild-Abstandswert vor, um Algorithmen zu vereinfachen, welche zur Berechnung der Direkt-Modus-Bewegungsvektoren verwendet werden.
  • Andererseits werden ein Rahmen-Modus ("frame mode") und ein Feld-Modus ("field mode") auf einer Bild-Ebene umgeschaltet, so dass das B-Bild und das list-1-Referenzbild in dem Rahmen-Modus oder dem Feld-Modus codiert werden können. Als Folge davon haben ein Makroblock des B-Bildes und ein entsprechend angeordneter Makroblock des list-1-Referenzbildes vier Arten von Rahmen/Feld-codierten Kombinationen.
  • [1] DER FALL, WO DER ENTSPRECHEND ANGEORDNETE MAKROBLOCK DES LIST-1-REFERENZBILDES IN DEM INTRA-MODUS IST
  • Wie in den 3f und 4f gezeigt, kann ein entsprechend angeordneter Makroblock in einem list-1-Referenzbild für den Direkt-Modus in dem Intra-Modus sein, und zwar unabhängig von einer zeitlichen Anordnung des Referenzbildes. Da der Makroblock in diesem Modus keine Bewegungsinformation hat, setzt ein herkömmliches Verfahren die Direkt-Modus-Bewegungsvektoren zu 0 und definiert ein list-0-Referenzbild als das zuletzt decodierte Bild. Das herkömmliche Verfahren kann jedoch eine hohe Codiereffizienz nicht garantieren. Deshalb tätigt die vorliegende Erfindung eine Vorhersage und Berechnung von list-0- und list-1-Referenzbildern und Bewegungsvektoren aus einem Makroblock eines zu codierenden B-Bildes benachbarten Blöcken, und zwar auf der Grundlage einer räumlichen Redundanz.
  • Ein Referenzbild-Index für jeden list-Modus wird auf folgende Weise gewonnen. 5 ist eine Ansicht, welche die Bewegungsvektor-Vorhersage eines Blocks E unter Verwendung von Bewegungsvektoren benachbarter Blöcke A, B und C unter Berücksichtigung einer allgemeinen räumlichen Redundanz erläutert.
    • – Wenn die benachbarten Blöcke A, B und C verschiedene Referenzbild-Indizes haben, wird ein kleinster der Referenzbild-Indizes als ein Referenzbild-Index für den Direkt-Modus bestimmt.
    • – Wenn zwei der benachbarten Blöcke den gleichen Referenzbild-Index haben, wird dieser Index als ein Referenzbild-Index für den Direkt-Modus bestimmt.
    • – Wenn alle der benachbarten Blöcke den gleichen Referenzbild-Index haben, wird dieser Index als ein Referenzbild-Index für den Direkt-Modus bestimmt. Ein Bewegungsvektor für jeden list-Modus wird durch die folgende Bewegungsvektor-Vorhersage gewonnen. Wenn zu dieser Zeit eine der benachbarten Blöcke A, B und C in dem Intra-Modus ist, werden seine list-0- und list-1-Bewegungsvektoren zu 0 gesetzt.
    • – Ein Bewegungsvektor, welcher die gleiche Richtung hat wie ein zeitlicher Ort des wie oben genannt gewonnenen Referenzbildes für jeden list-Modus wird aus einem benachbarten Block ausgewählt, und ein Bewegungsvektor für jeden list-Modus wird durch eine Median-Operation gewonnen.
    • – Wenn ein benachbarter Block zwei Bewegungsvektoren mit den gleichen Richtungen hat, wird nur einer der beiden Bewegungsvektoren in diesem Block ausgewählt und in die Median-Operation einbezogen.
  • Wenn andererseits keiner der effektiven list-0- und list-1-Referenzbild-Indizes von einem benachbarten Block hergeleitet werden kann, werden diese zu 0 gesetzt und ein Bewegungsvektor für jeden list-Modus wird zu 0 gesetzt.
  • [2] DER FALL, WO DAS LIST-1-REFERENZBILD FÜR DEN DIREKTMODUS DEM B-BILD ZEITLICH FOLGT
  • FALL 1: SOWOHL DER MAKROBLOCK DES B-BILDES ALS AUCH DER ENTSPRECHEND ANGEORDNETE MAKROBLOCK DES LIST-1-REFERENZBILDES SIND IN DEM RAHMEN-MODUS
  • Wie aus den 3a bis 3h ersichtlich ist, kann der entsprechend angeordnete Block in dem list-1-Referenzbild einen Bewegungsvektor oder zwei Bewegungsvektoren haben. Gemäß der vorliegenden Erfindung wird, wenn der entsprechend angeordnete Block zwei Bewegungsvektoren hat, einer (L0 MV oder L1 MV) der beiden Bewegungsvektoren ausgewählt, und die Direkt-Modus-Bewegungsvektoren werden von dem ausgewählten Bewegungsvektor hergeleitet (dies wird nachfolgend beschrieben auf der Grundlage des Falls, wo L0 MV (list-0-Bewegungsvektor) ausgewählt ist).
  • Folglich können die 3a und 3c einfach als 6a dargestellt werden, die 3b, 3d und 3e als 6c und die 3g und 3h als 6b.
  • Wenn das list-0-Referenzbild und das list-1-Referenzbild für den Direkt-Modus zeitlich vor bzw. nach dem B-Bild angeordnet sind (6a), oder wenn sowohl das list-0- als auch das list-1-Referenzbild für den Direkt-Modus zeitlich nach dem B-Bild angeordnet sind und das list-0-Referenzbild dem list-1-Referenzbild zeitlich folgt (6b), werden die Direkt-Modus-Bewegungsvektoren MVF und MVT wie folgt berechnet: MVF = TDB × MV / TDD MVB = (TDB - TDD) × MV / TDD wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Rahmen und einem list-0-Referenzrahmen repräsentiert, und TDD einen zeitlichen Abstand zwischen einem list-1-Referenzrahmen und dem list-0-Referenzrahmen repräsentiert.
  • Unter Anwendung einer Bit-Operation auf die Berechnung der Direktmodus-Bewegungsvektoren MVF und MVB derselben, kann die obige Gleichung zur Erleichterung derselben wie folgt ausgedrückt werden: Z = TDB 256 / TDD MVF = (Z × MV + 128) >> 8 W = Z – 256 MVB = (W × MV + 128) >> 8
  • Wenn sowohl das list-0- als auch das list-1-Referenzbild für den Direktmodus zeitlich nach dem B-Bild angeordnet ist, und das list-0-Referenzbild dem list-1-Referenzbild zeitlich vorangeht (6c), werden die Direktmodus-Bewegungsvektoren MVF und MVB wie folgt berechnet MVF = – TDB × MV / TDD MVB = – (TDB + TDD) × MV / TDD
  • Diese Gleichung kann wie folgt ausgedrückt werden: Z = – TDB × 256 / TDD MVF= (Z × MV + 128) >> 8 W = Z – 256 MVB = (W × MV + 128) >> 8
  • FALL 2: SOWOHL DER MAKROBLOCK DES B-BILDES ALS AUCH DER ENTSPRECHEND ANGEORDNETE MAKROBLOCK DES LIST-I-REFERENZBILDES SIND IN DEM FELD-MODUS
  • 7a bis 7d zeigen Fälle, wo sowohl der Makroblock des B-Bildes als auch der entsprechend angeordnete Makroblock des list-1-Referenzbilds in dem Feld-Modus sind. Jeder Bewegungsvektor des Makroblocks des B-Bildes wird von einem Bewegungsvektor eines entsprechend angeordneten Blocks in einem list-1-Referenzfeld gleicher Parität hergeleitet.
  • Wenn die list-0- und list-1-Referenzbilder für den Direktmodus zeitlich vor bzw. nach dem B-Bild angeordnet sind (7a), oder wenn sowohl das list-0- als auch das list-1-Referenzbild für den Direktmodus zeitlich nach dem B-Bild angeordnet sind und das list-0-Referenzbild dem list-1-Referenzbild zeitlich folgt (7b), werden die list-0 und list-1-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i eines B-Rahmens (i=0 bezeichnet ein erstes Feld und i=1 bezeichnet ein zweites Feld) wie folgt berechnet: MVF,i = TDB,i × MVi / TDD,i MVB,i = (TDB,i – TDD,i) × MVi / TDD,i wobei Mvi einen Bewegungsvektor eines entsprechend angeordneten Blocks eines Felds i in einem list-1- Referenzrahmen bezeichnet, TDB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, und TDD,i einen zeitlichen Abstand zwischen einem list-1-Referenzfeld und dem list-0-Referenzfeld repräsentiert.
  • Die obigen Gleichungen können wie folgt ausgedrückt werden: Z = TDB,i × 256 / TDD,i MVF,i = (Z × MVi + 128) >> 8 W = Z – 256 MVB,i = (W × MVi + 128) >> 8
  • Wenn, da der entsprechend angeordnete Block des Felds i in dem list-1-Referenzrahmen einen Bewegungsvektor hat, der zu einem Feld in einem dem B-Bild zeitlich nachfolgenden Rahmen zeigt, sowohl das list-0- als auch das list-1-Referenzbild für den Direktmodus zeitlich nach dem B-Bild angeordnet sind und das list-0-Referenzbild dem list-1-Referenzbild zeitlich vorangeht (7c und d), werden die Direktmodus-list-0- und -list-1-Bewegungsvektoren MVF,i und MVB,i wie folgt berechnet: MVF,i = –TDB,i × MVi / TDD,i MVB,i = -(TDB,i + TDD,i) × MVi / TDD,i
  • Die obigen Gleichungen können wie folgt ausgedrückt werden: Z = –TDB,i × 256 / TDD,i MVF,i = (Z × MVi + 128) >> 8 W = Z – 256 MVB,i = (W × MVi + 128) >> 8
  • FALL 3: DER MAKROBLOCK DES B-BILDS IST IN DEM FELDMODUS UND DER ENTSPRECHEND ANGEORDNETE MAKROBLOCK DES LIST-1-REFERENZBILDS IST IN DEM RAHMENMODUS
  • Die 8a bis 8c zeigen Fälle, wo der Makroblock des B-Bilds in dem Feldmodus und der entsprechend angeordnete Makroblock des list-1-Referenzbilds in dem Rahmen-Modus. Hierbei soll die vertikale Koordinate des gegenwärtigen Makroblocks ycurrent und die vertikale Koordinate des entsprechend angeordneten Makroblocks des list-1-Referenzbilds yco-located sein, und es wird die Beziehung yco-located = 2 × ycurrent zwischen den beiden Koordinaten erstellt . Auch sind list-0- und list-1-Referenzfelder mit den gleichen Paritäten wie die der der list-0- und list-1-Referenzrahmen vorhanden.
  • Wenn die list-0- und list-1-Referenzbilder für den Direktmodus zeitlich vor bzw. nach dem B-Bild angeordnet sind (8a) , oder wenn sowohl das list-0- als auch das list-1-Referenzbild für den Direktmodus zeitlich nach dem B-Bild angeordnet sind und das list-0-Referenzbild dem list-1-Referenzbild zeitlich folgt (8b), werden die list-0- und list-1-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i des B-Rahmens wie folgt berechnet: MVF,i = TDB,i × MV / TDD MVB,i = (TDB,i - TDD) × MV / TDD
  • Die obige Gleichung kann wie folgt ausgedrückt werden: Z = TDB,i × 256 / TDD MVF,i = (Z × MV + 128) >> 8 W = Z – 256 MVB,i = (W × MV + 128) >> 8
  • Wenn, da der entsprechend angeordnete Block in dem list-1-Referenzrahmen einen Bewegungsvektor hat, der zu einem dem B-Bild zeitlich nachfolgenden Rahmen zeigt, sowohl das list-0- als auch das list-1-Referenzbild für den Direktmodus nach dem B-Bild angeordnet sind und das list-0-Referenzbild dem list-1-Referenzbild zeitlich vorangeht (8c), werden die list-0 und list-1-Beweungsvektoren MVF,i und MVB,i für jedes Feld des B-Rahmens wie folgt berechnet: MVF,i = -TDB,i × MV /TDD MVB,i = –(TDB,i + TDD) × MV /TDD
  • Die obige Gleichung kann wie folgt ausgedrückt werden: Z = – TDB,i × 256 / TDD MVF,i = (Z × MV + 128) >> 8 W = Z – 256 MVB,i = (W × MV + 128) >> 8,wobei TDB,i einen zeitlichen Abstand zwischen dem gegenwärtigen B-Feld und dem list-0-Referenzfeld repräsentiert, TDD einen zeitlichen Abstand zwischen dem list-1-Referenzrahmen und dem list-0-Referenzrahmen repräsentiert, und MV einen Bewegungsvektor des entsprechend angeordneten Blocks in dem list-1-Referenzrahmen für den Direktmodus repräsentiert.
  • FALL 4: DER MAKROBLOCK DES B-BILDS IST IN DEM RAHMENMODUS UND DER ENTSPRECHEND ANGEORDNETE MAKROBLOCK DES LIST-1-REFERENZBILDS IST IN DEM FELDMODUS
  • Die 9a bis 9c zeigen Fälle, wo der Makroblock des B-Bilds in dem Rahmen-Modus ist und der entsprechend angeordnete Makroblock des list-1-Referenzbilds in dem Feld-Modus ist. Es sei hier die vertikale Koordinate des gegenwärtigen Makroblocks ycurrent und die vertikale Koordinate des entsprechend angeordneten Makroblocks des list-1- Referenzbilds yco-located, und es kann die Relation yco-located = ycurrent/2 zwischen den beiden Koordinaten aufgestellt werden. Ebenso wird, da das Feld 0 des list-1-Referenzrahmens zeitlich dem B-Bild näher ist als dessen Feld 1, Bewegungsinformation des entsprechend angeordneten Blocks des Felds 0 zur Berechnung der Direktmodus-Bewegungsvektoren verwendet.
  • Wenn die list-0- und list-1-Referenzbilder für den Direktmodus zeitlich vor bzw. nach dem B-Bild angeordnet sind (9a) , oder wenn sowohl das list-0- als auch das list-1-Referenzbild für den Direktmodus zeitlich nach dem B-Bild angeordnet sind und das list-0-Referenzbild dem list-1-Referenzbild zeitlich folgt (9b), werden die Direkt-Modus-list-0- und -list-1-Bewegungsvektoren MVF und MVB des B-Rahmens wie folgt berechnet: MVF = TDB × MV0 / TDD,0 MVB = (TDB - TDD,0) × MV0/ TDD,0
  • Die obige Gleichung kann wie folgt ausgedrückt werden: Z = TDB × 256 / TDD,0 MVF = (Z × MV0 + 128) >> 8 W = Z – 256 MVB = (W × MV0 + 128) >> 8
  • Wenn, da der entsprechend angeordnete Block des Felds 0 des list-1-Referenzrahmens einen Bewegungsvektor hat, der zu einem Feld eines dem B-Bild zeitlich nachfolgenden Rahmen zeigt, sowohl das list-0 als auch das list-1-Referenzbild für den Direktmodus zeitlich nach dem B-Bild angeordnet sind und das list-0-Referenzbild dem list-1-Referenzbild zeitlich vorangeht (9c), werden die list-0 und list-1-Bewegungsvektoren MVF und MVB wie folgt berechnet: MVF= -TDB × MV0 / TDD,0 MVB = – (TDB + TDD,0) × MV0 / TDD,0
  • Die obige Gleichung kann wie folgt ausgedrückt werden: Z = – TDB × 256 / TDD,0 MVF = (Z × MV0 + 128) >> 8 W = Z – 256 MVB = (W × MV0 + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen dem gegenwärtigen B-Rahmen und dem list-0-Referenzrahmen repräsentiert, TDD,0 einen zeitlichen Abstand zwischen einem Feld 0 des list-1-Referenzrahmens und dem list-0-Referenzfeld repräsentiert, und MV0 einen Bewegungsvektor des entsprechend angeordneten Blocks in Feld 0 des list-1-Referenzrahmens für den Direktmodus repräsentiert
  • [3] DER FALL, WO DAS LIST-1-REFERENZBILD FÜR DEN DIREKTMODUS DEM B-BILD ZEITLICH VORANGEHT
  • In diesem Fall sind sowohl das list-0- als auch das list-1-Referenzbild immer zeitlich vor dem B-Bild angeordnet.
  • FALL 1: SOWOHL DER MAKROBLOCK DES B-BILDS ALS AUCH DER ENTSPRECHEND ANGEORDNETE MAKROBLOCK DES LIST-1-REFERENZBILDS SIND IN DEM RAHMEN-MODUS
  • Wie aus den 4a bis 4h ersichtlich ist, kann der entsprechend angeordnete Block in dem list-1-Referenzbild einen Bewegungsvektor oder zwei Bewegungsvektoren haben.
  • Gemäß der vorliegenden Erfindung wird, wenn der entsprechend angeordnete Block zwei Bewegungsvektoren hat, einer (L0 MV oder L1 MV) der beiden Bewegungsvektoren ausgewählt, und Direktmodus-Bewegungsvektoren werden aus dem ausgewählten Bewegungsvektor hergeleitet (dies wird nachfolgend beschrieben auf der Grundlage des Falls, wo L0 MV (list-0-Bewegungsvektor) ausgewählt wird).
  • Entsprechend können die 4a, 4c, 4e, 4g und 4h einfach als 10a dargestellt werden, und die 4b und 4d als 10b.
  • Wenn das list-0-Referenzbild für den Direktmodus dem list-1-Referenzbild für den Direktmodus zeitlich vorangeht, werden die Direktmodus-Bewegungsvektoren MVF und MVB wie folgt berechnet (10a): MVF = TDB × MV /TDD MVB = (TDB – TDD) × MV / TDD, wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Rahmen und einem list-0-Referenzrahmen repräsentiert, TDD einen zeitlichen Abstand zwischen einem list-1-Referenzrahmen und dem list-0-Referenzrahmen repräsentiert, und MV einen Bewegungsvektor des entsprechend angeordneten Blocks in dem list-1-Referenzbild für den Direktmodus repräsentiert.
  • Die obige Gleichung kann wie folgt ausgedrückt werden: Z = TDB × 256 / TDD MVF= (Z × MV + 128) >> 8 W = Z – 256 MVB= (W × MV + 128) >> 8
  • Wenn das list-0-Referenzbild dem list-1-Referenzbild zeitlich folgt, werden die Direktmodus-Bewegungsvektoren MVF und MVB wie folgt berechnet (10b): MVF = -TDB × MV/TDD MVB = – (TDB + TDD) × MV / TDD
  • Diese Gleichung kann wie folgt ausgedrückt werden: Z = – TDB × 256 / TDD MVF= (Z × MV + 128) >> 8 W = Z – 256 MVB = (W × MV + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen dem gegenwärtigen B-Rahmen und dem list-0-Referenzrahmen repräsentiert, TDD einen zeitlichen Abstand zwischen dem list-1-Referenzrahmen und dem list-0-Referenzrahmen repräsentiert, und MV einen Bewegungsvektor des entsprechend angeordneten Blocks in dem list-1-Referenzbild für den Direktmodus repräsentiert.
  • FALL 2: SOWOHL DER MAKROBLOCK DES B-BILDS ALS AUCH DER ENTSPRECHEND ANGEORDNETE MAKROBLOCK DES LIST-1-REFERENZBILDS SIND IN DEM FELD-MODUS
  • Wenn das list-0-Referenzbild für den Direktmodus dem list-1-Referenzbild für den Direktmodus zeitlich vorangeht, werden die Direktmodus-list-0-und list-1-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i eines B-Rahmens wie folgt berechnet (11a und 11b): MVF,i = TDB,i × MVi / TDD,i MVB,i = (TDB,i – TDD,i) × MVi / TDD,i
  • Die obige Gleichung kann wie folgt ausgedrückt werden: Z = TDB,i × 256 / TDD,i MVF,i = (Z × MVi + 128) >> 8 W = Z – 256 MVB,i = (W × MVi + 128) >> 8,wobei TDB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, TDD,i einen zeitlichen Abstand zwischen einem list-1-Referenzfeld und dem list-0-Referenzfeld repräsentiert, und MVi einen Bewegungsvektor eines entsprechend angeordneten Blocks in einem list-1-Referenzfeld für den Direktmodus repräsentiert.
  • Wenn, da der entsprechend angeordnete Block in dem Feld i in dem list-1-Referenzrahmen einen Bewegungsvektor hat, der zu einem Feld in einem zeitlich nachfolgenden Rahmen zeigt, das list-0-Referenzbild dem list-1-Referenzbild zeitlich vorangeht, werden die Direktmodus-list-0- und -list-1-Bewegungsvektoren MVF,i und MVB,i wie folgt berechnet (11c und 11d): MVF,i = – TDB,i × MVi / TDD,i MVB,i = – (TDB,i + TDD,i) × MVi / TDD,i
  • Die obige Gleichung kann wie folgt ausgedrückt werden: Z = -TDB,i × 256 / TDD,i MVF,i = (Z × MVi + 128) >> 8 W = Z – 256 MVB,i = (W × MVi + 128) >> 8,wobei TDB , i einen zeitlichen Abstand zwischen dem gegenwärtigen B-Feld und dem list-0-Referenzfeld repräsentiert, TDD,i einen zeitlichen Abstand zwischen dem list-1-Referenzfeld und dem list-0-Referenzfeld repräsentiert, und MVi einen Bewegungsvektor des entsprechend angeordneten Blocks in dem list-1-Referenzfeld für den Direktmodus repräsentiert.
  • FALL 3: DER MAKROBLOCK DES B-BILDS IST IN DEM FELD-MODUS UND DER ENTSPRECHEND ANGEORDNETE MAKROBLOCK DES LIST-1-REFERENZBILDS IST IN DEM RAHMEN-MODUS
  • Wenn das list-0-Referenzbild für den Direktmodus dem list-1-Referenzbild für den Direktmodus zeitlich vorangeht, werden die Direktmodus-list-0 und list-1-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i des B-Rahmens wie folgt berechnet (12a): MVF,i = TDB,i × MV / TDD MVB,i = (TDB,i – TDD) × MV /TDD
  • Die obige Gleichung kann wie folgt ausgedrückt werden: Z = TDB,i × 256 / TDD MVF,i = (Z × MV + 128) >> 8 W = Z – 256 MVB,i = (W × MV + 128) >> 8,wobei TDB,i einen zeitlichen Abstand zwischen dem gegenwärtigen B-Feld und dem list-0-Referenzfeld repräsentiert, TDD einen zeitlichen Abstand zwischen dem list-1-Referenzrahmen und dem list-0-Referenzrahmen repräsentiert, und MV einen Bewegungsvektor des entsprechend angeordneten Blocks in dem list-1-Referenzrahmen für den Direktmodus repräsentiert.
  • Wenn, da der entsprechend angeordnete Block in dem list-1-Referenzrahmen einen Bewegungsvektor hat, der zu einem zeitlich nachfolgenden Rahmen zeigt, das list-0-Referenzbild dem list-1-Referenzbild zeitlich nachfolgt, werden die Direktmodus-list-0- und -list-1-Bewegungsvektoren MVF,i und MVB,i wie folgt berechnet (12b): MVF,i = – TDB,i × MV /TDD MVB,i = – (TDB,i + TDD) × MVi / TDD
  • Die obige Gleichung kann wie folgt ausgedrückt werden: Z = -TDB,i × 256 / TDD,i MVF,i = (Z × MVi + 128) >> 8 W = Z - 256 MVB,i = (W × MVi + 128) >> 8,wobei TDB,i einen zeitlichen Abstand zwischen dem gegenwärtigen B-Feld und dem list-0-Referenzfeld repräsentiert, TDD einen zeitlichen Abstand zwischen dem list-1-Referenzrahmen und dem list-0-Referenzrahmen repräsentiert, und MVi einen Bewegungsvektor des entsprechend angeordneten Blocks in dem list-1-Referenzfeld für den Direktmodus repräsentiert.
  • FALL 4: DER MAKROBLOCK DES B-BILDS IST IN DEM RAHMEN-MODUS UND DER ENTSPRECHEND ANGEORDNETE MAKROBLOCK DES LIST-1-REFERENZBILDS IST IN DEM FELD-MODUS
  • Da das Feld 1 f1 des list-1-Referenzrahmens dem B-Bild zeitlich näher ist als das Feld 0 f0 desselben, wird Bewegungsinformation eines entsprechend angeordneten Blocks des Felds 1 f1 zur Berechnung der Direktmodus-Bewegungsvektoren verwendet.
  • Wenn das list-0-Referenzbild für den Direktmodus dem list-1-Referenzbild für den Direktmodus zeitlich vorangeht, werden die Direktmodus-list-0- und -list-1-Bewegungsvektoren MVF und MVB für jedes Feld i des B-Rahmens wie folgt berechnet (13a): MVF = TDB × MV1 / TDD,1 MVB = (TDB - TDD,1) × MV1 / TDD,1
  • Die obige Gleichung kann wie folgt ausgedrückt werden: Z = TDB × 256 / TDD,1 MVF = (Z × MV1 + 128) >> 8 W = Z – 256 MVB = (W × MV1 + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen dem gegenwärtigen B-Rahmen und dem list-0-Referenzrahmen repräsentiert, TDD,1 einen zeitlichen Abstand zwischen einem Feld 1 des list-1-Referenzrahmens und dem list-0-Referenzfeld repräsentiert, und MV1 einen Bewegungsvektor des entsprechend angeordneten Blocks im Feld 1 des list-1-Referenzrahmens für den Direktmodus repräsentiert.
  • Wenn, da der entsprechend angeordnete Block des Felds 1 f1 des list-1-Referenzrahmens einen Bewegungsvektor hat, der zu einem Feld eines zeitlich nachfolgenden Rahmens zeigt, das list-0-Referenzbild dem list-1-Referenzbild zeitlich nachfolgt, werden die Direktmodus-list-0- und -list-1-Bewegungsvektoren MVF und MVB wie folgt berechnet (13b): MVF = –TDB × MV1 /TDD,1 MVB = –(TDB + TDD,1) × MV1 / TDD,1
  • Die obige Gleichung kann wie folgt ausgedrückt werden: Z = – TDB × 256 / TDD,1 MVF = (Z × MV1 + 128) >> 8 W = Z – 256 MVB = (W × MV1 + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen dem gegenwärtigen B-Rahmen und dem list-0-Referenzrahmen repräsentiert, TDD,1 einen zeitlichen Abstand zwischen einem Feld 1 des list-1-Referenzrahmens und dem list-0- Referenzfeld repräsentiert, und MV1 einen Bewegungsvektor des entsprechend angeordneten Blocks in dem Feld 1 des list-1-Referenzrahmens für den Direktmodus repräsentiert.
  • [4] DER FALL, WO DIE DIREKTMODUS-BEWEGUNGSVEKTOREN DURCH ZUWEISEN EINES VORZEICHENS ZU EINEM ZEITLICHEN ZWISCHEN-BILD-DISTANZWERT BERECHNET WERDEN
  • In dem Fall, daß das list-1-Referenzbild für den Direktmodus zeitlich vor oder nach dem B-Bild angeordnet ist, werden in jedem Fall zwei Arten von Algorithmen angegeben. Solche Algorithmen können einfach durch Zuweisen eines Vorzeichens an einen zeitlichen Zwischen-Bild-Distanzwert wie folgt ausgedrückt werden.
  • FALL 1: SOWOHL DER MAKROBLOCK DES B-BILDS ALS AUCH DER ENTSPRECHEND ANGEORDNETE MAKROBLOCK DES LIST-1-REFERENZBILDS SIND IN DEM RAHMEN-MODUS
  • Wenn sowohl der Makroblock des B-Bilds als auch der entsprechend angeordnete Makroblock des list-1-Referenzbilds in dem Rahmen-Modus sind, können die Direktmodus-Bewegungsvektoren MVF und MVB des B-Bilds wie folgt berechnet werden: MVF = TDB × MV / TDD MVB = (TDB – TDD) × MV /TDD oder Z = TDB × 256 / TDD MVF= (Z × MV + 128) >> 8 W = Z – 256 MVB = (W × MV + 128) >> 8, wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Rahmen und einem list-0-Referenzrahmen repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem B-Rahmen aus gemessen wird, und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzrahmen gemessen wird, TDD einen zeitlichen Abstand zwischen einem list-1-Referenzrahmen und dem list-0-Referenzrahmen repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem list-1-Referenzrahmen ausgemessen wird, und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzrahmen aus gemessen wird, und MV einen Bewegungsvektor des entsprechend angeordneten Blocks in dem list-1-Referenzbild für den Direktmodus repräsentiert.
  • FALL 2: SOWOHL DER MAKROBLOCK DES B-BILDS ALS AUCH DER ENTSPRECHEND ANGEORDNETE BLOCK DES LIST-1-REFERENZBILDS SIND IN DEM FELDMODUS
  • Wenn sowohl der Makroblock des B-Bilds als auch der entsprechend angeordnete Makroblock des list-1-Referenzbilds in dem Feldmodus sind, werden die Direktmodus-Bewegungsvektoren MVF,i und MFB,i für jedes Feld i des B-Rahmens wie folgt berechnet werden: MVF,i = TDB,i × MVi / TDD,i MVB,i = (TDB,i – TDD,i) × MVi / TDD,i oder Z = TDB,i × 256 / TDD ,i MVF,i = (Z × MVi + 128) >> 8 W = Z – 256 MVB,i = (W × MVi + 128) >> 8, wobei TDB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem B-Feld aus gemessen wird, und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzfeld aus gemessen wird, TDD,i einen zeitlichen Abstand zwischen einem list-1-Referenzfeld und dem list-0-Referenzfeld repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem list-1-Referenzfeld gemessen wird, und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzfeld aus gemessen wird, und MVi einen Bewegungsvektor eines entsprechend angeordneten Blocks in einem list-1-Referenzfeld für den Direktmodus repräsentiert.
  • FALL 3: DER MAKROBLOCK DES B-BILDS IST IN DEM FELD-MODUS UND DER ENTSPRECHEND ANGEORDNETE MAKROBLOCK DES LIST-1-REFERENZBILDS IST IN DEM RAHMEN-MODUS
  • Wenn der Makroblock des B-Bilds in dem Feld-Modus ist und der entsprechend angeordnete Makroblock des list-1-Referenzbilds in dem Rahmenmodus ist, können die Direktmodus-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i des B-Rahmens wie folgt berechnet werden: MVF,i = TDB,i × MV / TDD MVB,i = (TDB,i – TDD) × MV /TDD oder Z = TDB,i × 256 / TDD MVF,i = (Z × MV + 128) >> 8 W = Z – 256 MVB,i = (W × MV + 128) >> 8; wobei TDB , i einen zeitlichen Abstand zwischen dem gegenwärtigen B-Feld und dem list-0-Referenzfeld repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem B-Feld ausgemessen wird, und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzfeld ausgemessen wird, TDD einen zeitlichen Abstand zwischen dem list-1-Referenzrahmen und dem list-0-Referenzrahmen repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem list-1-Referenzrahmen ausgemessen wird, und welchem ein negatives (-Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzrahmen gemessen wird, und MV einen Bewegungsvektor des entsprechend angeordneten Blocks in dem list-1-Referenzrahmen für den Direktmodus repräsentiert.
  • FALL 4: DER MAKROBLOCK DES B-BILDS IST IN DEM RAHMEN-MODUS UND DER ENTSPRECHEND ANGEORDNETE MAKROBLOCK DES LIST-1-REFERENZBILDS IST IN DEM FELD-MODUS
  • Wenn der Makroblock des B-Bilds in dem Rahmen-Modus ist, der entsprechend angeordnete Makroblock des list-1-Referenzbilds in dem Feldmodus ist und das list-1-Referenzbild dem B-Bild zeitlich nachfolgt, ist das Feld 0 des list-1-Referenzrahmens dem B-Bild zeitlich näher als das Feld 1 desselben, so daß Bewegungsinformation eines entsprechend angeordneten Blocks des Feld 0 für die Berechnung der Direktmodus-Bewegungsvektoren verwendet wird. Als ein Ergebnis können die Direktmodus-Bewegungsvektoren MVF und MVB des B-Rahmens aus den nachfolgenden Gleichungen erhalten werden, wobei die Bewegungsinformation des entsprechend angeordneten Blocks dem Feld 0 des list-1-Referenzrahmens zur Berechnung der Direktmodus-Bewegungsvektoren verwendet wird: MVF = TDB × MV0 / TDD,0 MVB = (TDB - TDD,0) × MV0 / TDD,0 oder Z = TDB × 256 / TDD,0 MVF = (Z × MV0 + 128) >> 8 W = Z – 256 MVB = (W × MV0 + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen dem gegenwärtigen B-Rahmen und dem list-0-Referenzrahmen repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn es von dem B-Rahmen ausgemessen wird und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzrahmen ausgemessen wird, TDD,0 einen zeitlichen Abstand zwischen einem Feld 0 des list-1-Referenzrahmens und dem list-0-Referenzfeld repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem Feld 0 des list-1-Referenzrahmens ausgemessen wird und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzfeld ausgemessen wird, und MV0 einen Bewegungsvektor des entsprechend angeordneten Blocks in dem Feld 0 des list-1-Referenzrahmens für den Direktmodus repräsentiert.
  • Wenn das list-1-Referenzbild dem B-Bild zeitlich vorangeht, ist das Feld 1 des list-1-Referenzrahmens dem B-Bild zeitlich näher als dessen Feld 0, so daß Bewegungsinformation eines entsprechend angeordneten Blocks des Felds 1 zur Berechnung der Direktmodus-Bewegungsvektoren verwendet wird. Als Folge davon können die Direktmodus-Bewegungsvektoren MVF und MVB des B-Rahmens aus den nachfolgenden Gleichungen erhalten werden, wobei die Bewegungsinformation des entsprechend angeordneten Blocks in dem Feld 1 des list-1-Referenzrahmens zur Berechnung der Direktmodus-Bewegungsvektoren verwendet wird: MVF = TDB × MV1 / TDD,1 MVB = (TDB - TDD,1) × MV1 / TDD,1 oder Z = TDB × 256 / TDD,1 MVF= (Z × MV1 + 128) >> 8 W = Z – 256 MVB = (W × MV1 + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen dem gegenwärtigen B-Rahmen und dem list-0-Referenzrahmen repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem B-Rahmen ausgemessen wird, und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzrahmen ausgemessen wird, TDD , 1 einen zeitlichen Abstand zwischen einem Feld 1 des list-1-Referenzrahmens und dem list-0-Referenzfeld repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn es von dem Feld 1 des list-1-Referenzrahmens ausgemessen wird, und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzfeld ausgemessen wird, und MV1 einen Bewegungsvektor des entsprechend angeordneten Blocks in dem Feld 1 des list-1-Referenzrahmens für den Direktmodus repräsentiert.
  • Wie aus der vorangehenden Beschreibung hervorgeht, stellt die vorliegende Erfindung ein Verfahren zum Berechnen von Direktmodus-Bewegungsvektoren eines B-Bilds bereit, welches in einer Kompressionstechnik für bewegte Bilder der nächsten Generation definiert ist. Es wird eine Technik zum Extrahieren der Direktmodus-Bewegungsvektoren des B-Bilds vorgeschlagen, um die Wahrscheinlichkeit zu erhöhen, daß ein Direktmodus als ein Vorhersagemodus eines Makroblocks ausgewählt wird, wodurch die B-Bild-Kodiereffizienz verbessert wird.
  • Zusammenfassend wird somit gemäß der vorliegenden Erfindung ein Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes (Doppel-Vox-hersage-Bildes) in einem Codiersystem für bewegte Bilder und zum Extrahieren der Direkt-Modus-Bewegungsvektoren des B-Bildes vorgeschlagen. Wenn ein list-1-Referenzbild für den Direkt-Modus dem B-Bild zeitlich vorangeht oder nachfolgt, wird einer der Bewegungsvektoren eines entsprechend angeordneten Blocks in einem list-1-Referenzbild als ein Bewegungsvektor zum Herleiten der Direkt-Modus-Bewegungsvektoren bestimmt, und zwar unabhängig von Moden (einem list-0-Modus und/oder einem list-1-Modus) der Bewegungsvektoren des entsprechend angeordneten Blocks. Der bestimmte Bewegungsvektor wird skaliert, um einen list-0-Bewegungsvektor MVF und einen einen list-1-Bewegungsvektor MVB herzuleiten. Ferner wird ein Referenzbild, auf welches durch einen bestimmten Bewegungsvektor gezeigt wird, als ein list-0-Referenzbild für den Direktmodus bestimmt.

Claims (37)

  1. Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes (Doppel-Vorhersage-Bildes) in einem Codiersystem für bewegte Bilder und zum Extrahieren der Direkt-Modus-Bewegungsvektoren des B-Bildes, umfassend die Schritte: Auswählen eines der Bewegungsvektoren eines entsprechend angeordneten Blocks in einem list-1-Referenzbild für den Direkt-Modus als einen Bewegungsvektor zum Herleiten der Direkt-Modus-Bewegungsvektoren, und zwar unabhängig von Moden (einem list-0-Modus und/oder einem list-1-Modus) der Bewegungsvektoren des entsprechend angeordneten Blocks, Bestimmen eines Referenzbildes, auf welches durch den ausgewählten Bewegungsvektor gezeigt wird, als ein list-0-Referenzbild für den Direkt-Modus, und Berechnen der Direkt-Modus-Bewegungsvektoren des B-Bildes.
  2. Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes (Doppel-Vorhersage-Bildes) in einem Codiersystem für bewegte Bilder und zum Extrahieren der Direkt-Modus-Bewegungsvektoren des B-Bildes, insbesondere in Verbindung mit dem Verfahren gemäß Anspruch 1, umfassend die Schritte: wenn ein entsprechend angeordneter Block in einem list-1-Referenzbild für den Direkt-Modus nur einen list-1-Bewegungsvektor hat, Verwenden des list-1-Bewegungsvektors als einen Bewegungsvektor zum Herleiten der Direkt-Modus-Bewegungsvektoren, Bestimmen eines Referenzbildes, auf welches durch den list-1- Bewegungsvektor gezeigt wird, als ein list-0-Referenzbild für den Direkt-Modus, und Berechnen der Direkt-Modus-Bewegungsvektoren des B-Bildes.
  3. Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes (Doppel-Vorhersage-Bildes) in einem Codiersystem für bewegte Bilder und zum Extrahieren der Direkt-Modus-Bewegungsvektoren des B-Bildes, insbesondere in Verbindung mit dem Verfahren gemäß Anspruch 1 oder 2, umfassend die Schritte: wenn ein entsprechend angeordneter Block in einem list-1-Referenzbild für den Direkt-Modus nur einen list-1-Bewegungsvektor hat, wird der der entsprechend angeordnete Block als ein Block betrachtet der eine Bewegung von Null hat, Bestimmen eines decodierten Bildes, welches zeitlich unmittelbar vor dem B-Bild liegt, als ein list-0-Referenzbild für den Direkt-Modus, und Herleiten der Direkt-Modus-Bewegungsvektoren des B-Bildes.
  4. Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes (Doppel-Vorhersage-Bildes) in einem Codiersystem für bewegte Bilder und zum Extrahieren der Direkt-Modus-Bewegungsvektoren des B-Bildes, insbesondere in Verbindung mit dem Verfahren gemäß einem der Ansprüche 1 bis 3, umfassend die Schritte: wenn ein entsprechend angeordneter Block in einem list-1-Referenzbild für den Direkt-Modus nur einen list-1-Bewegungsvektor hat, Verwenden des list-1-Bewegungsvektors des entsprechend angeordneten Blocks als einen Bewegungsvektor zum Herleiten der Direkt-Modus-Bewegungsvektoren, Bestimmen eines zeitlich unmittelbar vor dem B-Bild angeordneten decodierten Bildes als ein list-0-Referenzbild für den Direkt-Modus, und Herleiten der Direkt-Modus-Bewegungsvektoren des B-Bildes.
  5. Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes (Doppel-Vorhersage-Bildes) in einem Codiersystem für bewegte Bilder und zum Extrahieren der Direkt-Modus-Bewegungsvektoren des B-Bildes, insbesondere in Verbindung mit dem Verfahren gemäß einem der Ansprüche 1 bis 4, umfassend die Schritte: wenn ein entsprechend angeordneter Block in einem list-1-Referenzbild für den Direkt-Modus zwei Bewegungsvektoren hat, Auswählen eines (einen list-0-Bewegungsvektor oder einen list-1-Bewegungsvektor) der beiden Bewegungsvektoren, und Herleiten der Direkt-Modus-Bewegungsvektoren des B-Bildes aus dem ausgewählten Bewegungsvektor.
  6. Verfahren nach Anspruch 5, wobei der Schritt den Schritt des unbedingten Auswählens des list-0-Bewegungsvektors als einen Bewegungsvektor zur Herleitung der Direkt-Modus-Bewegungsvektoren umfaßt, und zwar unabhängig von einem zeitlichen Abstand, wobei ein Referenzbild, auf welches der list-0-Bewegungsvektor zeigt, als ein list-0-Referenzbild für den Direkt-Modus bestimmt wird, und die Direkt-Modus-Bewegungsvektoren des B-Bildes hergeleitet werden.
  7. Verfahren nach Anspruch 5 oder 6, wobei der Schritt den Schritt des Auswählens von einem der list-0- und list-1-Bewegungsvektoren umfaßt, welcher zu einem Bild zeigt, welches dem list-1-Referenzbild für den Direkt-Modus zeitlich näher ist als ein Bewegungsvektor zum Herleiten der Direkt-Modus-Bewegungsvektoren, wobei der list-0-Bewegungsvektor als der Bewegungsvektor zum Herleiten der Direkt-Modus-Bewegungsvektoren ausgewählt wird, wenn die zwei Bewegungsvektoren zu der gleichen Referenz zeigen, wobei ein Referenzbild als ein list-0-Referenzbild für den Direkt-Modus bestimmt wird, auf welches durch den ausgewählten Bewegungsvektor gezeigt wird, und die Direkt-Modus-Bewegungsvektoren des B-Bildes hergeleitet werden.
  8. Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes (Doppel-Vorhersage-Bildes) in einem Codiersystem für bewegte Bilder und zum Extrahieren der Direkt-Modus-Bewegungsvektoren des B-Bildes, insbesondere in Verbindung mit dem Verfahren gemäß einem der Ansprüche 1 bis 7, umfassend die Schritte: Setzen eines zuletzt dekodierten Bildes als ein list-1-Referenzbild für den Direkt-Modus, Skalieren eines Bewegungsvektors eines entsprechend angeordneten Blocks in dem list-1-Referenzbild für den Direkt-Modus, um einen list-0-Bewegungsvektor MVF und einen list-1-Bewegungsvektor MVB herzuleiten, und Berechnen der Direkt-Modus-Bewegungsvektoren des B-Bildes.
  9. Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes (Doppel-Vorhersage-Bildes) in einem Codiersystem für bewegte Bilder und zum Extrahieren der Direkt-Modus-Bewegungsvektoren des B-Bildes, insbesondere in Verbindung mit dem Verfahren gemäß einem der Ansprüche 1 bis 3, umfassend die Schritte: wenn ein list-1-Referenzbild für den Direkt-Modus dem B-Bild zeitlich vorangeht, Skalieren eines Bewegungsvektors eines entsprechend angeordneten Blocks in dem list-1-Referenzbild für den Direkt-Modus, um einen list-0-Bewegungsvektor MVF und einen list-1- Bewegungsvektor MVB herzuleiten, und Berechnen der Direkt-Modus-Bewegungsvektoren des B-Bildes.
  10. Verfahren nach Anspruch 9, wobei der Schritt den Schritt umfaßt: wenn sowohl ein Makroblock des B-Bildes als auch ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Rahmen-Modus sind und ein list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich vorangeht, Berechnen der Direkt-Modus-Bewegungsvektoren MVF und MVB des B-Bildes wie folgt: MVF = TDB × MV / TDD MVB = (TDB – TDD) × MV / TDD oder Z = TDB × 256 / TDD MVF = (Z × MV + 128) >> 8 W = Z – 256 MVB = (W × MV + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Rahmen und einem list-0-Referenzrahmen repräsentiert, TDD einen zeitlichen Abstand zwischen einem list-1-Referenzrahmen und dem list-0-Referenzrahmen repräsentiert, und MV einen Bewegungsvektor des entsprechend angeordneten Blocks in dem list-1-Referenzbild für den Direkt-Modus repräsentiert.
  11. Verfahren nach Anspruch 9 oder 10, wobei der Schritt den Schritt umfaßt: wenn sowohl ein Makroblock des B-Bildes als auch ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Rahmen-Modus sind und ein list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich folgt, Berechnen der Direkt-Modus-Bewegungsvektoren MVF und MVB des B-Bildes wie folgt umfassen: MVF = – TDB × MV / TDD MVB = – (TDB + TDD) × MV / TDD oder Z = – TDB × 256 / TDD MVF = (Z × MV + 12 8) >> 8 W = Z – 256 MVB = (W × MV + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Rahmen und einem list-0-Referenzrahmen repräsentiert, TDD einen zeitlichen Abstand zwischen einem list-1-Referenzrahmen und dem list-0-Referenzrahmen repräsentiert, und MV einen Bewegungsvektor des entsprechend angeordneten Blocks in dem list-1-Referenzbild für den Direkt-Modus repräsentiert.
  12. Verfahren nach einem der Ansprüche 9 bis 11, wobei der Schritt den Schritt umfaßt: wenn sowohl ein Makroblock des B-Bildes als auch ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Feld-Modus sind und ein list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich vorangeht, Berechnen der Direkt-Modus-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i eines B-Rahmens wie folgt: MVF,i = TDB,i × MVi / TDD,i MVB,i = (TDB,i – TDD,i) × MVi / TDD,i oder Z = TDB,i × 256 / TDD,i MVF,i = (Z × MVi + 128) >> 8 W = Z – 256 MVB,i = (W × MVi + 128) >> 8,wobei TDB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, TDD,i einen zeitlichen Abstand zwischen einem list-1-Referenzfeld und dem list-0-Referenzfeld repräsentiert, und MVi einen Bewegungsvektor des entsprechend angeordneten Blocks in einem list-1-Referenzfeld für den Direkt-Modus repräsentiert.
  13. Verfahren nach Anspruch 9, wobei der Schritt den Schritt umfaßt: wenn sowohl ein Makroblock des B-Bildes als auch ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Feld-Modus sind und ein list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich folgt, Berechnen der Direkt-Modus-Bewegungsvektoren MVF,i und MVB,i für jedes Feld eines B-Rahmens wie folgt: MVF,i = – TDB,i × MVi / TDD,i MVB,i = – (TDB,i + TDD,i) × MVi / TDD,i oder Z = -TDB,i × 256 / TDD,i MVF,i = (Z × MVi + 128) >> 8 W = Z – 256 MVB,i = (W × MVi + 128) >> 8,wobei TDB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, TDD,i einen zeitlichen Abstand zwischen einem list-1-Referenzfeld und dem list-0-Referenzfeld repräsentiert, und MVi einen Bewegungsvektor des entsprechend angeordneten Blocks in einem list-1-Referenzfeld für den Direkt-Modus repräsentiert.
  14. Verfahren nach einem der Ansprüche 9 bis 14, wobei der Schritt den Schritt umfaßt: wenn ein Makroblock des B-Bildes in einem Feld-Modus ist, ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Rahmen-Modus ist und ein list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich vorangeht, Berechnen der Direkt-Modus-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i des B-Rahmens wie folgt: MVF,i = TDB,i × MV / TDD MVB,i = (TDB,i - TDD) × MV / TDD oder Z = TDB,i × 256 / TDD MVF,i = (Z × MV + 128) >> 8 W = Z – 256 MVB,i = (W × MV + 128) >> 8,wobei TDB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, TDD einen zeitlichen Abstand zwischen einem list-1-Referenzrahmen und einem list-0-Referenzrahmen repräsentiert, und MV einen Bewegungsvektor eines entsprechend angeordneten Blocks in einem list-1-Referenzrahmen für den Direkt-Modus repräsentiert.
  15. Verfahren nach einem der Ansprüche 9 bis 14, wobei der Schritt den Schritt umfaßt: wenn ein Makroblock des B-Bildes in einem Feld-Modus ist, ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Rahmen-Modus ist und ein list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich folgt, Berechnen der Direkt-Modus-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i des B-Rahmens wie folgt: MVF,i = -TDB,i × MV / TDD MVB,i = – (TDB,i + TDD) × MV / TDD oder Z = - TDB,i × 256 / TDD MVF,i = (Z × MV + 128) >> 8 W = Z – 256 MVB,i = (W × MV + 128) >> 8, wobei TDBB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, TDD einen zeitlichen Abstand zwischen einem list-1-Referenzrahmen und einem list-0-Referenzrahmen repräsentiert, und MV einen Bewegungsvektor eines entsprechend angeordneten Blocks in einem list-1-Referenzrahmen für den Direkt-Modus repräsentiert.
  16. Verfahren nach einem der Ansprüche 9 bis 15, wobei der Schritt den Schritt umfaßt: wenn ein Makroblock des B-Bildes in einem Rahmen-Modus ist, ein entsprechend angeordneter Makroblock in dem list-1-Referenzbild in einem Feld-Modus ist und ein list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich vorangeht, Berechnen der Direkt-Modus-Bewegungsvektoren MVF und MVB des B-Rahmens aus der unten angegebenen Gleichung, wobei Bewegungsinformation eines entsprechend angeordneten Blocks in einem Feld 1 eines list-1-Referenzrahmens zur Berechnung der Direkt-Modus-Bewegungsvektoren verwendet wird: MVF = TDB × MV1 / TDD,1 MVB = (TDB - TDD,1) × MV1 / TDD,1 oder Z = TDB × 256 / TDD,1 MVF = (Z × MV1 + 128) >> 8 W = Z – 256 MVB = (W × MV1 + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Rahmen und einem list-0-Referenzrahmen repräsentiert, TDD,1 einen zeitlichen Abstand zwischen einem Feld 1 des list-1-Referenzrahmens und einem list-0-Referenzfeld repräsentiert, und MV1 einen Bewegungsvektor eines entsprechend angeordneten Blocks in dem Feld 1 des list-1-Referenzrahmens für den Direkt-Modus repräsentiert.
  17. Verfahren nach einem der Ansprüche 9 bis 18, wobei der Schritt den Schritt umfaßt: wenn ein Makroblock des B-Bildes in einem Rahmen-Modus ist, ein entsprechend angeordneter Makroblock des list-1-Referenzbilds in einem Feld-Modus ist und ein list-0-Referenzbild für den Direkt-Modus des B-Bilds dem list-1-Referenzbild zeitlich folgt, Berechnen der Direkt-Modus-Bewegungsvektoren MVF und MVB eines B-Rahmens aus der unten angegebenen Gleichung,. wobei Bewegungsinformation eines entsprechend angeordneten Blocks in einem Feld 1 eines list-1-Referenzrahmens zur Berechnung der Direkt-Modus-Bewegungsvektoren verwendet wird: MVF = – TDB × MV1 / TDD,1 MVB = – (TDB + TDD,1) × MV1 / TDD,1 oder Z = – TDB × 256 / TDD,1 MVF = (Z × MV1 + 128) >> 8 W = Z – 256 MVB = (W × MV1 + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Rahmen und einem list-0-Referenzrahmen repräsentiert, TDD,1 einen zeitlichen Abstand zwischen einem Feld 1 des list-1-Referenzrahmens und einem list-0-Referenzfeld repräsentiert, und MV1 einen Bewegungsvektor eines entsprechend angeordneten Blocks in dem Feld 1 des list-1-Referenzrahmens für den Direkt-Modus repräsentiert.
  18. Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes (Doppel-Vorhersage- Bildes) in einem Codiersystem für bewegte Bilder und zum Extrahieren der Direkt-Modus-Bewegungsvektoren des B-Bildes, insbesondere in Verbindung mit dem Verfahren gemäß einem der Ansprüche 1 bis 17, umfassend die Schritte: wenn sowohl ein list-0-Referenzbild als auch ein list-1-Referenzbild für den Direkt-Modus dem B-Bild zeitlich folgen, Skalieren eines Bewegungsvektors eines entsprechend angeordneten Blocks in dem list-1-Referenzbild für den Direkt-Modus, um einen list-0-Bewegungsvektor MVF und einen list-1-Bewegungsvektor MVB herzuleiten, und Berechnen der Direkt-Modus-Bewegungsvektoren des B-Bildes.
  19. Verfahren nach Anspruch 18, wobei der Schritt den Schritt umfaßt: falls sowohl ein Makroblock des B-Bildes als auch ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Rahmen-Modus sind und das list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich folgt, Berechnen der Direkt-Modus-Bewegungsvektoren MVF und MVB des B-Bildes wie folgt: MVF = TDB × MV / TDD MVB = (TDB – TDD) × MV / TDD oder Z = TDB × 256 / TDD MVF = (Z × MV + 128) >> 8 W = Z – 256 MVB = (W × MV + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Rahmen und einem list-0-Referenzrahmen repräsentiert, TDD einen zeitlichen Abstand zwischen einem list-1-Referenzrahmen und dem list-0-Referenzrahmen repräsentiert, und MV einen Bewegungsvektor des entsprechend angeordneten Blocks in dem list-1-Referenzbild für den Direkt-Modus repräsentiert.
  20. Verfahren nach Anspruch 18 oder 19, wobei der Schritt den Schritt umfaßt: wenn sowohl ein Makroblock des B-Bildes und ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Rahmen-Modus sind und das list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich vorangeht, Berechnen der Direkt-Modus-Bewegungsvektoren MVF und MVB des B-Bildes wie folgt: MVF = – TDB × MV / TDD MVB = – (TDB + TDD) × MV / TDD oder Z = – TDB × 256 / TDD MVF = (Z × MV + 128) >> 8 W = Z – 256 MVB = (W × MV + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Rahmen und einem list-0-Referenzrahmen repräsentiert, TDD einen zeitlichen Abstand zwischen einem list-1-Referenzrahmen und dem list-0-Referenzrahmen repräsentiert, und MV einen Bewegungsvektor des entsprechend angeordneten Blocks in dem list-1-Referenzbild für den Direkt-Modus repräsentiert.
  21. Verfahren nach einem der Ansprüche 18 bis 20, wobei der Schritt den Schritt umfaßt: wenn sowohl ein Makroblock des B-Bildes als auch ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Feld-Modus sind und das list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich folgt, Berechnen der Direkt-Modus-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i eines B-Rahmens wie folgt: MVF,i = TDB,i × MVi / TDD,i MVB,i = (TDB,i – TDD,i) × MVi / TDD,i oder Z = TDB,i × 256 / TDD,i MVF,i = (Z × MVi + 128) >> 8 W = Z – 256 MVB,i = (W × MVi + 128) >> 8,wobei TDB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, TDD,i einen zeitlichen Abstand zwischen einem list-1-Referenzfeld und dem list-0-Referenzfeld repräsentiert, und MVi einen Bewegungsvektor eines entsprechend angeordneten Blocks in einem list-1-Referenzfeld für den Direkt-Modus repräsentiert.
  22. Verfahren einem der Ansprüche 18 bis 21, wobei der Schritt den Schritt umfaßt: wenn sowohl ein Makroblock des B-Bildes als auch ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Feld-Modus sind und das list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich vorangeht, Berechnen der Direkt-Modus-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i eines B-Rahmens wie folgt: MVF,i = – TDB,i × MVi / TDD,i MVB,i = – (TDB,i + TDD,i) × MVi / TDD,i oder Z = – TDB,i × 256 / TDD,i MVF,i = (Z × MVi + 128) >> 8 W = Z – 256 MVB,i = (W × MVi + 128) >> 8wobei TDB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, TDD,i einen zeitlichen Abstand zwischen einem list-1-Referenzfeld und dem list-0-Referenzfeld repräsentiert, und MVi einen Bewegungsvektor eines entsprechend angeordneten Blocks in einem list-1Referenzfeld für den Direkt-Modus repräsentiert.
  23. Verfahren nach einem der Ansprüche 18 bis 22, wobei der Schritt den Schritt umfaßt: wenn ein Makroblock des B-Bildes in einem Feld-Modus ist ein entsprechend angeordneter Makroblock das list-1-Referenzbildes in einem Rahmen-Modus ist und das list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlichfolgt, Berechnen der Direkt-Modus-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i des B-Rahmens wie folgt: MVF,i = TDB,i × MV / TDD MVB,i = (TDB,i - TDD) × MV / TDD oder Z = TDB,i × 256 / TDD MVF,i = (Z × MV + 128) >> 8 W = Z – 256 MVB,i = (W × MV + 128) >> 8,wobei TDB,i einen zeitlichen Abstand zwischen, einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, TDD einen zeitlichen Abstand zwischen einem list-1-Referenzrahmen und einem list-0-Referenzrahmen repräsentiert, und MV einen Bewegungsvektor eines entsprechend angeordneten Blocks in einem list-1-Referenzrahmen für den Direkt-Modus repräsentiert.
  24. Verfahren nach einem der Ansprüche 18 bis 23, wobei der Schritt den Schritt umfaßt: wenn ein Makroblock des B-Bildes in einem Feld-Modus ist, ein entsprechend angeordneter Makroblock das list-1-Referenzbildes in einem Rahmen-Modus ist und das list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich vorangeht, Berechnen der Direkt-Modus-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i eines B-Rahmens wie folgt: MVF,i = -TDB,i × MV / TDD MVB,i = – (TDB,i + TDD) × MV / TDD oder Z = – TDB,i × 256 / TDD MVF,i = (Z × MV + 128) >> 8 W = Z – 256 MVB,i = (W × MV + 128) >> 8,wobei TDB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, TDD einen zeitlichen Abstand zwischen einem list-1-Referenzrahmen und einem list-0-Referenzrahmen repräsentiert, und MV einen Bewegungsvektor eines entsprechend angeordneten Blocks in einem list-1-Referenzrahmen für den Direkt-Modus repräsentiert.
  25. Verfahren nach einem der Ansprüche 18 bis 24, wobei der Schritt den Schritt umfaßt: wenn ein Makroblock des B-Bildes in einem Rahmen-Modus ist, ein entsprechend angeordneter Makroblock das list-1-Referenzbildes in einem Feld-Modus ist und das list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich folgt, Berechnens der Direkt-Modus-Bewegungsvektoren MVF und MVB des B-Rahmens aus der unten angegebenen Gleichung, wobei Bewegungsinformation eines entsprechend angeordneten Blocks in einem Feld 0 eines list-1-Referenzrahmens zur Berechnung der Direkt-Modus-Bewegungsvektoren verwendet wird: MVF = TDB × MV0 / TDD,0 MVB = (TDB - TDD,0) × MV0 / TDD,0 oder Z = TDB × 256 / TDD,0 MVF = (Z × MV0 + 128) >> 8 W = Z – 256 MVB = (W × MV0 + 128) >> 8, wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Rahmen und einem list-0-Referenzrahmen repräsentiert, TDD,0 einen zeitlichen Abstand zwischen einem Feld 0 des list-1-Referenzrahmens und einem list-0-Referenzfeld repräsentiert, und MV0 einen Bewegungsvektor eines entsprechend angeordneten Blocks in dem Feld 0 des list-1-Referenzrahmens für den Direkt-Modus repräsentiert.
  26. Verfahren nach einem der Ansprüche 18 bis 25, wobei der Schritt den Schritt umfaßt: wenn ein Makroblock des B-Bildes in einem Rahmen-Modus ist, ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Feld-Modus ist und das list-0-Referenzbild für den Direkt-Modus dem list-1-Referenzbild zeitlich vorangeht, Berechnen der Direkt-Modus-Bewegungsvektoren MVF und MVB des B-Rahmens aus den unten angegebenen Gleichungen, wobei Bewegungsinformation eines entsprechend angeordneten Blocks in einem Feld 0 eines list-1-Referenzrahmens zur Berechnung der Direkt-Modus-Bewegungsvektoren verwendet wird: MVF = – TDB × MV0 / TDD,0 MVB = – (TDB + TDD,0) × MV0 / TDD,0 oder Z = – TDB × 256 / TDD,0 MVF = (Z × MV0 + 128) >> 8 W = Z – 256 MVB = (W × MV0 + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Rahmen und einem list-0-Referenzrahmen repräsentiert, TDD,0 einen zeitlichen Abstand zwischen einem Feld 0 des list-1-Referenzrahmens und einem list-0-Referenzfeld repräsentiert, und MV0 einen Bewegungsvektor eines entsprechend angeordneten Blocks in dem Feld 0 des list-1-Referenzrahmens für den Direkt-Modus repräsentiert.
  27. Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes (Doppel-Vorhersage-Bildes) in einem Codiersystem für bewegte Bilder und zum Extrahieren der Direkt-Modus-Bewegungsvektoren des B-Bildes, insbesondere in Verbindung mit dem Verfahren gemäß einem der Ansprüche 1 bis 26, umfassend die Schritte: Zuweisen eines Vorzeichens zu einem zeitlichen Zwischen-Bild-Distanzwert, Skalieren eines Bewegungsvektors eines entsprechend angeordneten Blocks in einem list-1-Referenzbild für den Direkt-Modus unabhängig von Orten der list-0- und list-1-Referenzbilder für den Direkt-Modus, um einen list-0-Bewegungsvektor MVF und einen list-1-Bewegungsvektor MVB herzuleiten, und Berechnen der Direkt-Modus-Bewegungsvektoren des B-Bildes.
  28. Verfahren nach Anspruch 27, wobei der Schritt den Schritt umfaßt: wenn sowohl ein Makroblock des B-Bildes als auch ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Rahmen-Modus sind, Berechnen der Direkt-Modus-Bewegungsvektoren MVF und MVB des B-Bildes wie folgt: MVF = TDB × MV / TDD MVB = (TDB – TDD) × MV / TDD oder Z = TDB × 256 / TDD MVF = (Z × MV + 128) >> 8 W = Z – 256 MVB = (W × MV + 128) >> 8, wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzrahmen repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem B-Rahmen ausgehend gemessen wird, und dem ein negatives (-) Vorzeichen zugewiesen wird, wenn er von dem list-0-Referenzrahmen gemessen wird, TDD einen zeitlichen Abstand zwischen einem list-1-Referenzrahmen und dem list-0-Referenzrahmen repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem list-1-Referenzrahmen aus gemessen wird und dem ein negatives (-) Vorzeichen zugewiesen wird, wenn er von dem list-0-Referenzrahmen aus gemessen wird, und MV einen Bewegungsvektor des entsprechend angeordneten Blocks in dem list-1-Referenzbild für den Direkt-Modus repräsentiert.
  29. Verfahren nach Anspruch 27 oder 28, wobei der Schritt den Schritt umfaßt: falls sowohl ein Makroblock des B-Bildes als auch ein entsprechend angeordneter Block des list-1-Referenzbildes in einem Feld-Modus sind, Berechnen der Direkt-Modus-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i des B-Rahmens wie folgt umfassen: MVF,i = TDB,i × MVi / TDD,i MVB,i = (TDB,i – TDD,i) × MVi / TDD,i oder Z = TDB,i × 256 / TDD,i MVF,i = (Z × MVi + 128) >> 8 W = Z – 256 MVB,i = (W × MVi + 128) >> 8,wobei TDB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem B-Feld ausgehend gemessen wird, und dem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzfeld gemessen wird, TDD,i einen zeitlichen Abstand zwischen einem list-1-Referenzfeld und dem list-0-Referenzfeld repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem list-1-Referenzfeld gemessen wird, und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzfeld aus gemessen wird, und MVi einen Bewegungsvektor des entsprechend angeordneten Blocks in einem list-1-Referenzfeld für den Direkt-Modus repräsentiert.
  30. Verfahren nach einem der Ansprüche 27 bis 29, wobei der Schritt den Schritt umfaßt: wenn ein Makroblock des B-Bildes in einem Feld-Modus ist, und ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Rahmen-Modus ist, Berechnen der Direkt-Modus-Bewegungsvektoren MVF,i und MVB,i für jedes Feld i des B-Rahmens wie folgt umfassen: MVF,i = TDB,i × MV / TDD MVB,i = (TDB,i - TDD) × MV / TDD oder Z = TDB,i × 256 / TDD MVF,i = (Z × MV + 128) >> 8 W = Z – 256 MVB,i = (W × MV + 128) >> 8, wobei TDB,i einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzfeld repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem B-Feld aus gemessen wird, und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzfeld aus gemessen wird, TDD einen zeitlichen Abstand zwischen dem list-1-Referenzrahmen und dem list-0-Referenzrahmen repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem list-1-Referenzrahmen aus gemessen wird, und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzrahmen aus gemessen wird, und MV einen Bewegungsvektor eines entsprechend angeordneten Blocks in einem list-1-Referenzrahmen für den Direkt-Modus repräsentiert.
  31. Verfahren nach einem der Ansprüche 27 bis 30, wobei der Schritt den Schritt umfaßt: wenn ein Makroblock des B-Bildes in einem Rahmen-Modus ist, ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Feld-Modus ist und das list-1-Referenzbild dem B-Bild zeitlich folgt, Berechnen der Direkt-Modus-Bewegungsvektoren MVF und MVB eines B-Rahmens aus der unten angegebenen Gleichung, wobei Bewegungsinformation eines entsprechend angeordneten Blocks in einem Feld 0 eines list-1-Referenzrahmens zum Berechnen der Direkt-Modus-Bewegungsvektoren verwendet wird: MVF = TDB × MV0 / TDD,0 MVB = (TDB - TDD,0) × MV0 / TDD,0 oder Z = TDB × 256 / TDD,0 MVF = (Z × MV0 + 128) >> 8 W = Z – 256 MVB = (W × MV0 + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Feld und einem list-0-Referenzrahmen repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem B-Rahmen aus gemessen wird, und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzfeld aus gemessen wird, TDD,0 einen zeitlichen Abstand zwischen einem Feld 0 des list-1-Referenzrahmens und einem list-0-Referenzfeld repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem Feld 0 des list-1-Referenzrahmens aus gemessen wird, und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzfeld aus gemessen wird, und MV0 einen Bewegungsvektor eines entsprechend angeordneten Blocks in dem Feld 0 des list-1-Referenzrahmens für den Direkt-Modus repräsentiert.
  32. Verfahren nach einem der Ansprüche 27 bis 31, wobei der Schritt den Schritt umfaßt: wenn ein Makroblock des B-Bildes in einem Rahmen-Modus ist, ein entsprechend angeordneter Makroblock des list-1-Referenzbildes in einem Feld-Modus ist, und das list-1-Referenzbild dem B-Bild zeitlich vorangeht, Berechnen der Direkt-Modus-Bewegungsvektoren MVF und MVB eines B-Rahmens aus der unten angegebenen Gleichung, wobei Bewegungsinformation eines entsprechend angeordneten Blocks in einem Feld 0 eines list-1-Referenzrahmens zum Berechnen der Direkt-Modus-Bewegungsvektoren verwendet wird: MVF = TDB × MV1 / TDD,1 MVB = (TDB - TDD,1) × MV1 / TDD,1 oder Z = TDB × 256 / TDD,1 MVF = (Z × MV1 + 128) >> 8 W = Z – 256 MVB = (W × MV1 + 128) >> 8,wobei TDB einen zeitlichen Abstand zwischen einem gegenwärtigen B-Rahmen und einem list-0-Referenzrahmen repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem B-Rahmen aus gemessen wird, und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzrahmen aus gemessen wird, TDD,1 einen zeitlichen Abstand zwischen einem Feld 1 eines list-1-Referenzrahmens und einem list-0- Referenzfeld repräsentiert, welchem ein positives (+) Vorzeichen zugeordnet wird, wenn er von dem Feld 1 des list-1-Referenzrahmens aus gemessen wird, und welchem ein negatives (-) Vorzeichen zugeordnet wird, wenn er von dem list-0-Referenzfeld aus gemessen wird, und MV1 einen Bewegungsvektor eines entsprechend angeordneten Blocks in dem Feld 1 des list-1-Referenzrahmens für den Direkt-Modus repräsentiert.
  33. Verfahren zum Berechnen von Direkt-Modus-Bewegungsvektoren eines B-Bildes (Doppel-Vorhersage-Bildes) in einem Codiersystem für bewegte Bilder und zum Extrahieren der Direkt-Modus-Bewegungsvektoren des B-Bildes, insbesondere in Verbindung mit dem Verfahren gemäß einem der Ansprüche 1 bis 32, umfassend die Schritte: wenn ein entsprechend angeordneter Makroblock in einem list-1-Referenzbild für den Direkt-Modus in einem Intra-Modus ist, Vorhersagen und Berechnen von list-0- und list-1-Referenzbildern und Bewegungsvektoren aus benachbarten Blöcken eines Makroblocks des zu codierenden B-Bildes auf der Grundlage einer räumlichen Redundanz, und Berechnen der Direkt-Modus-Bewegungsvektoren des B-Bildes.
  34. Verfahren nach Anspruch 33, wobei der Schritt den Schritt umfaßt: wenn benachbarte Blöcke A, B und C des zu codierenden Makroblocks sich auf verschiedene Referenzbilder beziehen, Auswählen eines Referenzbildes mit einem kleinsten Index als Referenzbild für jede Liste umfasse.
  35. Verfahren nach Anspruch 33 oder 34, wobei der Schritt den Schritt umfaßt: wenn zwei oder mehr benachbarte Blöcke des zu codierenden Makroblocks sich auf ein Referenzbild mit einem gleichen Index beziehen, Auswählen dieses Referenzbildes als das Referenzbild für jede Liste.
  36. Verfahren nach einem der Ansprüche 33 bis 35, wobei der Schritt den. Schritt umfaßt: Setzen seiner list-0- und list-1-Bewegungsvektoren zu 0, wenn einer der benachbarten Blöcke A, B und C des zu codierenden Makroblocks in dem Intra-Modus ist, Auswählen eines Bewegungsvektors, welcher die gleiche Richtung hat wie ein zeitlicher Ort des Referenzbildes für jede Liste eines benachbarten Blocks, und Gewinnen des Bewegungsvektors für jede Liste durch eine Median-Operation, oder Auswählen von nur einem der beiden Bewegungsvektoren dieses Blocks, wenn ein benachbarter Block zwei Bewegungsvektoren mit den gleichen Richtungen aufweist, und Gewinnen des Bewegungsvektors für jede Liste durch eine Medianoperation unter Einbeziehung des ausgewählten Bewegungsvektors.
  37. Verfahren nach einem der Ansprüche 33 bis 35, wobei der Schritt den Schritt umfaßt: wenn ein effektiver Referenzbildindex für jeden list-Modus nicht hergeleitet werden kann, den Schritt des Setzens der list-0- und list-1-Referenzbildindizes zu 0 und des Setzens des Bewegungsvektors für jeden list-Modus zu 0.
DE2003100533 2002-10-04 2003-01-09 Direktmodus-Bewegungsvektor-Berechnungsverfahren für B-Bilder Expired - Lifetime DE10300533B4 (de)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
KR20020060742 2002-10-04
KR2002-60742 2002-10-04
KR20020061243 2002-10-08
KR2002-61243 2002-10-08
KR10-2002-0071226A KR100506864B1 (ko) 2002-10-04 2002-11-15 모션벡터 결정방법
KR2002-71226 2002-11-15

Publications (3)

Publication Number Publication Date
DE10300533A1 true DE10300533A1 (de) 2004-04-15
DE10300533A9 DE10300533A9 (de) 2004-10-28
DE10300533B4 DE10300533B4 (de) 2005-11-17

Family

ID=35871226

Family Applications (13)

Application Number Title Priority Date Filing Date
DE60334339T Expired - Lifetime DE60334339D1 (de) 2002-10-04 2003-01-07 Verfahren zur Extraktion von Direktmodus-Bewegungsvektoren
DE60334330T Expired - Lifetime DE60334330D1 (de) 2002-10-04 2003-01-07 System zur Bewegungsvektorberechnung im Direktmodus für B-Bilder
DE60334941T Expired - Lifetime DE60334941D1 (de) 2002-10-04 2003-01-07 Bewegungsvektorberechnung im Direktmodus für B-Bilder
DE2003611720 Active DE60311720T9 (de) 2002-10-04 2003-01-07 Direkt-Modus Bewegungsvektorberechnung für B-Bilder
DE60334336T Expired - Lifetime DE60334336D1 (de) 2002-10-04 2003-01-07 Verfahren zur Extraktion von Direktmodus-Bewegungsvektoren
DE60335034T Expired - Lifetime DE60335034D1 (de) 2002-10-04 2003-01-07 Direkt-Modus Bewegungsvektorberechnung für B-Bilder
DE2003221473 Expired - Lifetime DE20321473U1 (de) 2002-10-04 2003-01-07 Direktmoduls-Bewegungsvektor-Berechnungssystem für B-Bilder
DE60334337T Expired - Lifetime DE60334337D1 (de) 2002-10-04 2003-01-07 Verfahren zur Extraktion von Direktmodus-Bewegungsvektoren
DE60334505T Expired - Lifetime DE60334505D1 (de) 2002-10-04 2003-01-07 Verfahren zur Extraktion von Direktmodus-Bewegungsvektoren
DE60335046T Expired - Lifetime DE60335046D1 (de) 2002-10-04 2003-01-07 Bewegungsvektorberechnung im Direktmodus für B-Bilder
DE60334338T Expired - Lifetime DE60334338D1 (de) 2002-10-04 2003-01-07 Verfahren zur Extraktion von Direktmodus-Bewegungsvektoren
DE2003100533 Expired - Lifetime DE10300533B4 (de) 2002-10-04 2003-01-09 Direktmodus-Bewegungsvektor-Berechnungsverfahren für B-Bilder
DE2003162106 Expired - Lifetime DE10362106B3 (de) 2002-10-04 2003-01-09 Direktmodus-Bewegungsvektor-Berechnungsverfahren für B-Bilder

Family Applications Before (11)

Application Number Title Priority Date Filing Date
DE60334339T Expired - Lifetime DE60334339D1 (de) 2002-10-04 2003-01-07 Verfahren zur Extraktion von Direktmodus-Bewegungsvektoren
DE60334330T Expired - Lifetime DE60334330D1 (de) 2002-10-04 2003-01-07 System zur Bewegungsvektorberechnung im Direktmodus für B-Bilder
DE60334941T Expired - Lifetime DE60334941D1 (de) 2002-10-04 2003-01-07 Bewegungsvektorberechnung im Direktmodus für B-Bilder
DE2003611720 Active DE60311720T9 (de) 2002-10-04 2003-01-07 Direkt-Modus Bewegungsvektorberechnung für B-Bilder
DE60334336T Expired - Lifetime DE60334336D1 (de) 2002-10-04 2003-01-07 Verfahren zur Extraktion von Direktmodus-Bewegungsvektoren
DE60335034T Expired - Lifetime DE60335034D1 (de) 2002-10-04 2003-01-07 Direkt-Modus Bewegungsvektorberechnung für B-Bilder
DE2003221473 Expired - Lifetime DE20321473U1 (de) 2002-10-04 2003-01-07 Direktmoduls-Bewegungsvektor-Berechnungssystem für B-Bilder
DE60334337T Expired - Lifetime DE60334337D1 (de) 2002-10-04 2003-01-07 Verfahren zur Extraktion von Direktmodus-Bewegungsvektoren
DE60334505T Expired - Lifetime DE60334505D1 (de) 2002-10-04 2003-01-07 Verfahren zur Extraktion von Direktmodus-Bewegungsvektoren
DE60335046T Expired - Lifetime DE60335046D1 (de) 2002-10-04 2003-01-07 Bewegungsvektorberechnung im Direktmodus für B-Bilder
DE60334338T Expired - Lifetime DE60334338D1 (de) 2002-10-04 2003-01-07 Verfahren zur Extraktion von Direktmodus-Bewegungsvektoren

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE2003162106 Expired - Lifetime DE10362106B3 (de) 2002-10-04 2003-01-09 Direktmodus-Bewegungsvektor-Berechnungsverfahren für B-Bilder

Country Status (15)

Country Link
US (31) US7233621B2 (de)
EP (21) EP1809048B1 (de)
JP (19) JP4020789B2 (de)
KR (1) KR100506864B1 (de)
CN (3) CN1812585B (de)
AT (10) ATE354259T1 (de)
CY (10) CY1106351T1 (de)
DE (13) DE60334339D1 (de)
DK (10) DK1821547T3 (de)
ES (1) ES2281573T3 (de)
GB (4) GB2406460B (de)
HK (5) HK1073555A1 (de)
NL (3) NL1022333C2 (de)
PT (10) PT2003899E (de)
SI (10) SI2009928T1 (de)

Families Citing this family (145)

* 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
EP3310049B1 (de) 2001-11-06 2019-01-30 Panasonic Intellectual Property Corporation of America Verfahren zur codierung bewegter bilder und verfahren zur decodierung bewegter bilder
US20030099294A1 (en) * 2001-11-27 2003-05-29 Limin Wang Picture level adaptive frame/field coding for digital video content
US7003035B2 (en) 2002-01-25 2006-02-21 Microsoft Corporation Video coding methods and apparatuses
JP2004088722A (ja) 2002-03-04 2004-03-18 Matsushita Electric Ind Co Ltd 動画像符号化方法および動画像復号化方法
ES2745059T3 (es) 2002-04-19 2020-02-27 Panasonic Ip Corp America Método de cálculo de vectores de movimiento
US20040001546A1 (en) 2002-06-03 2004-01-01 Alexandros Tourapis Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation
US7088776B2 (en) 2002-07-15 2006-08-08 Apple Computer, Inc. Method and apparatus for variable accuracy inter-picture timing specification for digital video encoding
US7154952B2 (en) 2002-07-19 2006-12-26 Microsoft Corporation Timestamp-independent motion vector prediction for predictive (P) and bidirectionally predictive (B) pictures
US6728315B2 (en) 2002-07-24 2004-04-27 Apple Computer, Inc. Method and apparatus for variable accuracy inter-picture timing specification for digital video encoding with reduced requirements for division operations
US8254461B2 (en) 2002-07-24 2012-08-28 Apple Inc. Method and apparatus for variable accuracy inter-picture timing specification for digital video encoding with reduced requirements for division operations
KR100506864B1 (ko) * 2002-10-04 2005-08-05 엘지전자 주식회사 모션벡터 결정방법
US7499493B2 (en) * 2003-06-20 2009-03-03 Lsi Corporation Dual block motion vector storage in compressed form
US20050013498A1 (en) 2003-07-18 2005-01-20 Microsoft Corporation Coding of motion vector information
US7609763B2 (en) * 2003-07-18 2009-10-27 Microsoft Corporation Advanced bi-directional predictive coding of video frames
US8085844B2 (en) * 2003-09-07 2011-12-27 Microsoft Corporation Signaling reference frame distances
US7623574B2 (en) * 2003-09-07 2009-11-24 Microsoft Corporation Selecting between dominant and non-dominant motion vector predictor polarities
US8064520B2 (en) 2003-09-07 2011-11-22 Microsoft Corporation Advanced bi-directional predictive coding of interlaced video
US7567617B2 (en) 2003-09-07 2009-07-28 Microsoft Corporation Predicting motion vectors for fields of forward-predicted interlaced video frames
US7724827B2 (en) 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US7577198B2 (en) 2003-09-07 2009-08-18 Microsoft Corporation Number of reference fields for an interlaced forward-predicted field
US7620106B2 (en) * 2003-09-07 2009-11-17 Microsoft Corporation Joint coding and decoding of a reference field selection and differential motion vector information
US7616692B2 (en) * 2003-09-07 2009-11-10 Microsoft Corporation Hybrid motion vector prediction for interlaced forward-predicted fields
FR2860678A1 (fr) * 2003-10-01 2005-04-08 Thomson Licensing Sa Procede de codage differentiel
US7400681B2 (en) * 2003-11-28 2008-07-15 Scientific-Atlanta, Inc. Low-complexity motion vector prediction for video codec with two lists of reference pictures
CN1225128C (zh) * 2003-12-31 2005-10-26 中国科学院计算技术研究所 直接编码模式下确定参考图像块的方法
CN1321534C (zh) * 2003-12-31 2007-06-13 中国科学院计算技术研究所 固定参考帧数编码方式下获取图像参考块的方法
US8036271B2 (en) * 2004-02-24 2011-10-11 Lsi Corporation Method and apparatus for determining a second picture for temporal direct-mode block prediction
KR100584603B1 (ko) * 2004-08-03 2006-05-30 학교법인 대양학원 다시점 영상의 다이렉트 모드 움직임 예측 방법 및 장치
WO2006052577A2 (en) * 2004-11-04 2006-05-18 Thomson Licensing Method and apparatus for fast mode decision of b-frames in a video encoder
US8634413B2 (en) 2004-12-30 2014-01-21 Microsoft Corporation Use of frame caching to improve packet loss recovery
JP2006352238A (ja) * 2005-06-13 2006-12-28 Sony Corp 画像処理装置、画像処理方法及びプログラム
KR100746006B1 (ko) * 2005-07-19 2007-08-06 삼성전자주식회사 계층적 구조에 적합하게 시간적 다이렉트 모드로인코딩하며, 디코딩하는 방법 및 장치
JP2007028393A (ja) * 2005-07-20 2007-02-01 Matsushita Electric Ind Co Ltd 双方向予測符号化ピクチャの直接モードブロックの動きベクトルを求める方法
US8498520B2 (en) * 2005-07-27 2013-07-30 Vbrick Systems, Inc. Video encoding and transmission technique for efficient, multi-speed fast forward and reverse playback
FR2891685B1 (fr) * 2005-10-03 2008-04-18 Envivio France Entpr Uniperson Procede et dispositif d'estimation de mouvement a references multiples, procede et dispositif de codage, produits programme d'ordinateur et moyens de stockage correspondants.
JP4702943B2 (ja) * 2005-10-19 2011-06-15 キヤノン株式会社 画像処理装置及びその方法
JP4879558B2 (ja) * 2005-11-02 2012-02-22 パナソニック株式会社 動きベクトル検出装置
JP5020829B2 (ja) * 2005-12-27 2012-09-05 シャープ株式会社 動画像復号装置および動画像符号化装置
EP1806930A1 (de) * 2006-01-10 2007-07-11 Thomson Licensing Verfahren und Einrichtung für scalierbares Video-referenzbild Aufbau.
US20070171977A1 (en) * 2006-01-25 2007-07-26 Shintaro Kudo Moving picture coding method and moving picture coding device
FR2897213A1 (fr) * 2006-02-08 2007-08-10 Thomson Licensing Sas Procede de codage par blocs d'images d'une sequence d'images video
JP4527677B2 (ja) * 2006-03-15 2010-08-18 富士通株式会社 動画像符号化方法、動画像符号化装置、動画像符号化プログラム
US8270492B2 (en) * 2006-05-12 2012-09-18 Panasonic Corporation Moving picture decoding device
AU2007311476C1 (en) * 2006-10-16 2013-01-17 Nokia Technologies Oy System and method for implementing efficient decoded buffer management in multi-view video coding
CN101227601B (zh) * 2007-01-15 2011-09-14 飞思卡尔半导体公司 在视频再现中进行几何变换的方法和设备
WO2008153262A1 (en) * 2007-06-15 2008-12-18 Sungkyunkwan University Foundation For Corporate Collaboration Bi-prediction coding method and apparatus, bi-prediction decoding method and apparatus, and recording midium
US8526499B2 (en) 2007-06-15 2013-09-03 Sungkyunkwan University Foundation For Corporate Collaboration Bi-prediction coding method and apparatus, bi-prediction decoding method and apparatus, and recording medium
US8254455B2 (en) 2007-06-30 2012-08-28 Microsoft Corporation Computing collocated macroblock information for direct mode macroblocks
CN101119493B (zh) * 2007-08-30 2010-12-01 威盛电子股份有限公司 区块式数字编码图像的译码方法及装置
JP2011501508A (ja) * 2007-10-12 2011-01-06 トムソン ライセンシング 幾何学分割された双方向予測モードパーティションのビデオエンコーディング及びデコーディングのための方法及び装置
US8743952B2 (en) * 2007-12-18 2014-06-03 Vixs Systems, Inc Direct mode module with motion flag precoding and methods for use therewith
KR101505195B1 (ko) * 2008-02-20 2015-03-24 삼성전자주식회사 직접 모드 부호화 및 복호화 방법
WO2009148412A1 (en) * 2008-06-06 2009-12-10 Agency For Science, Technology And Research Methods and devices for estimating motion in a plurality of frames
JP5578775B2 (ja) * 2008-09-02 2014-08-27 富士通株式会社 符号化装置および復号装置
JPWO2010035730A1 (ja) * 2008-09-24 2012-02-23 ソニー株式会社 画像処理装置および方法
US8189666B2 (en) 2009-02-02 2012-05-29 Microsoft Corporation Local picture identifier and computation of co-located information
TWI405469B (zh) * 2009-02-20 2013-08-11 Sony Corp Image processing apparatus and method
CN103826126B (zh) * 2009-06-18 2017-09-29 株式会社东芝 运动图像编码装置和运动图像编码方法
EP2765779B1 (de) 2009-06-18 2018-10-10 Kabushiki Kaisha Toshiba Videokodiergerät
CN103826127B (zh) * 2009-06-18 2017-03-01 株式会社东芝 运动图像编码装置和运动图像编码方法
US9628794B2 (en) 2009-06-18 2017-04-18 Kabushiki Kaisha Toshiba Video encoding apparatus and a video decoding apparatus
CN103888778B (zh) * 2009-06-18 2017-12-08 株式会社东芝 运动图像解码装置
KR20110008653A (ko) * 2009-07-20 2011-01-27 삼성전자주식회사 움직임 벡터 예측 방법과 이를 이용한 영상 부호화/복호화 장치 및 방법
US9060176B2 (en) * 2009-10-01 2015-06-16 Ntt Docomo, Inc. Motion vector prediction in video coding
US8594200B2 (en) * 2009-11-11 2013-11-26 Mediatek Inc. Method of storing motion vector information and video decoding apparatus
WO2011070730A1 (ja) * 2009-12-07 2011-06-16 日本電気株式会社 映像符号化装置および映像復号装置
KR101348613B1 (ko) 2009-12-23 2014-01-10 한국전자통신연구원 영상의 부호화/복호화 장치 및 그 방법
KR101522850B1 (ko) * 2010-01-14 2015-05-26 삼성전자주식회사 움직임 벡터를 부호화, 복호화하는 방법 및 장치
JP5368631B2 (ja) 2010-04-08 2013-12-18 株式会社東芝 画像符号化方法、装置、及びプログラム
KR101752418B1 (ko) 2010-04-09 2017-06-29 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
CN105681810B (zh) * 2010-05-26 2018-11-06 Lg电子株式会社 用于处理视频信号的方法和设备
JP2011259229A (ja) * 2010-06-09 2011-12-22 Jvc Kenwood Corp 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム
WO2011155171A1 (ja) * 2010-06-09 2011-12-15 株式会社Jvcケンウッド 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム、ならびに動画像復号装置、動画像復号方法及び動画像復号プログラム
JP2011259230A (ja) * 2010-06-09 2011-12-22 Jvc Kenwood Corp 動画像復号装置、動画像復号方法及び動画像復号プログラム
US9124898B2 (en) * 2010-07-12 2015-09-01 Mediatek Inc. Method and apparatus of temporal motion vector prediction
KR20120016991A (ko) * 2010-08-17 2012-02-27 오수미 인터 프리딕션 방법
SG10201506682SA (en) * 2010-09-30 2015-10-29 Mitsubishi Electric Corp Moving image encoding device, moving image decoding device, moving image coding method, and moving image decoding method
SG188501A1 (en) * 2010-10-06 2013-04-30 Ntt Docomo Inc Image predictive encoding device, image predictive encoding method, image predictive encoding program, image predictive decoding device, image predictive decoding method, and image predictive decoding program
KR102080449B1 (ko) * 2010-11-24 2020-02-21 벨로스 미디어 인터내셔널 리미티드 움직임 벡터 산출 방법, 화상 부호화 방법, 화상 복호 방법, 움직임 벡터 산출 장치 및 화상 부호화 복호 장치
US9137544B2 (en) * 2010-11-29 2015-09-15 Mediatek Inc. Method and apparatus for derivation of mv/mvp candidate for inter/skip/merge modes
US8711940B2 (en) 2010-11-29 2014-04-29 Mediatek Inc. Method and apparatus of motion vector prediction with extended motion vector predictor
WO2012073481A1 (ja) * 2010-11-29 2012-06-07 パナソニック株式会社 動画像符号化方法および動画像復号化方法
US9955155B2 (en) * 2010-12-31 2018-04-24 Electronics And Telecommunications Research Institute Method for encoding video information and method for decoding video information, and apparatus using same
CN106878742B (zh) 2011-01-12 2020-01-07 太阳专利托管公司 动态图像编解码装置
CN103299630B (zh) * 2011-01-19 2016-10-19 寰发股份有限公司 获取运动矢量预测子的方法和装置
US9008181B2 (en) 2011-01-24 2015-04-14 Qualcomm Incorporated Single reference picture list utilization for interprediction video coding
JP6057165B2 (ja) 2011-01-25 2017-01-11 サン パテント トラスト 動画像復号化方法
ES2398095B1 (es) * 2011-01-31 2014-01-27 Universidad Politécnica De Valencia Instalación para simular las condiciones de presión y temperatura del aire aspirado por un motor de combustión interna alternativo.
KR20120095814A (ko) * 2011-02-21 2012-08-29 한밭대학교 산학협력단 복수 참조 영상을 이용한 영상 부복호화 방법 및 이러한 방법을 사용하는 장치
JP6108309B2 (ja) * 2011-02-22 2017-04-05 サン パテント トラスト 動画像符号化方法、動画像符号化装置、動画像復号方法、および、動画像復号装置
US10171813B2 (en) 2011-02-24 2019-01-01 Qualcomm Incorporated Hierarchy of motion prediction video blocks
JP5358746B2 (ja) 2011-03-03 2013-12-04 パナソニック株式会社 動画像符号化方法、動画像符号化装置及びプログラム
US9288501B2 (en) 2011-03-08 2016-03-15 Qualcomm Incorporated Motion vector predictors (MVPs) for bi-predictive inter mode in video coding
AU2011361644A1 (en) 2011-03-09 2013-09-19 Kabushiki Kaisha Toshiba Image encoding method and image decoding method
CN107105286B (zh) * 2011-03-14 2020-01-21 寰发股份有限公司 推导运动向量预测子的方法与装置
KR101935620B1 (ko) 2011-04-12 2019-01-04 선 페이턴트 트러스트 동화상 부호화 방법, 동화상 부호화 장치, 동화상 복호화 방법, 동화상 복호화 장치, 및 동화상 부호화 복호화 장치
SG194600A1 (en) 2011-05-24 2013-12-30 Panasonic Corp Image coding method, image coding apparatus, image decoding method, image decoding apparatus, and image coding and decoding apparatus
US9485518B2 (en) 2011-05-27 2016-11-01 Sun Patent Trust Decoding method and apparatus with candidate motion vectors
EP3614665B1 (de) 2011-05-27 2022-03-23 Sun Patent Trust Vorrichtung, verfahren, und programm zur dekodierung von bewegtbildern
SG194746A1 (en) 2011-05-31 2013-12-30 Kaba Gmbh Image encoding method, image encoding device, image decoding method, image decoding device, and image encoding/decoding device
ES2779226T3 (es) 2011-05-31 2020-08-14 Sun Patent Trust Procedimiento de descodificación de vídeo y dispositivo de descodificación de vídeo
TWI530161B (zh) * 2011-06-07 2016-04-11 Sony Corp Image processing apparatus and method
US9282338B2 (en) * 2011-06-20 2016-03-08 Qualcomm Incorporated Unified merge mode and adaptive motion vector prediction mode candidates selection
KR20120140592A (ko) 2011-06-21 2012-12-31 한국전자통신연구원 움직임 보상의 계산 복잡도 감소 및 부호화 효율을 증가시키는 방법 및 장치
WO2012177052A2 (ko) 2011-06-21 2012-12-27 한국전자통신연구원 인터 예측 방법 및 그 장치
KR102083012B1 (ko) 2011-06-28 2020-02-28 엘지전자 주식회사 움직임 벡터 리스트 설정 방법 및 이러한 방법을 사용하는 장치
PL2728878T3 (pl) 2011-06-30 2020-06-15 Sun Patent Trust Sposób dekodowania obrazów, sposób kodowania obrazów, urządzenie do dekodowania obrazów, urządzenie do kodowania obrazów oraz urządzenie do kodowania/dekodowania obrazów
US9094689B2 (en) * 2011-07-01 2015-07-28 Google Technology Holdings LLC Motion vector prediction design simplification
MX2014000159A (es) 2011-07-02 2014-02-19 Samsung Electronics Co Ltd Metodo y aparato para la codificacion de video, y metodo y aparato para la decodificacion de video acompañada por inter prediccion utilizando imagen co-localizada.
MX341415B (es) 2011-08-03 2016-08-19 Panasonic Ip Corp America Metodo de codificacion de video, aparato de codificacion de video, metodo de decodificacion de video, aparato de decodificacion de video y aparato de codificacion/decodificacion de video.
CN108881903B (zh) 2011-10-19 2022-01-04 太阳专利托管公司 图像编码方法及装置、图像解码方法及装置、编解码装置
KR102014332B1 (ko) 2011-10-21 2019-08-26 노키아 테크놀로지스 오와이 비디오 코딩 방법 및 장치
TWI653880B (zh) 2011-10-31 2019-03-11 日商Jvc建伍股份有限公司 動態影像編碼裝置及動態影像編碼方法
CN104041041B (zh) 2011-11-04 2017-09-01 谷歌技术控股有限责任公司 用于非均匀运动向量栅格的运动向量缩放
SG10201502731VA (en) 2011-11-08 2015-05-28 Samsung Electronics Co Ltd Method and apparatus for motion vector determination in video encoding or decoding
PL409214A1 (pl) 2011-11-08 2015-07-20 Kt Corporation Sposób i urządzenie do skanowania współczynników na podstawie trybu podziału jednostki predykcji
ES2877369T3 (es) * 2011-12-16 2021-11-16 Jvc Kenwood Corp Dispositivo de codificación de imagen dinámica, procedimiento de codificación de imagen dinámica, programa de codificación de imagen dinámica, dispositivo de decodificación de imagen dinámica, procedimiento de decodificación de imagen dinámica y programa de decodificación de imagen dinámica
RU2628226C2 (ru) 2011-12-16 2017-08-15 Сан Пэтент Траст Способ кодирования видеоизображений, устройство кодирования видеоизображений, способ декодирования видеоизображений, устройство декодирования видеоизображений и устройство кодирования/декодирования видеоизображений
EP3965425A3 (de) 2011-12-23 2022-06-08 Electronics And Telecommunications Research Institute Verfahren und vorrichtung zur festlegung eines referenzbildindexes eines zeitlichen zusammenführungskandidaten
CN107257482A (zh) * 2012-02-07 2017-10-17 松下知识产权经营株式会社 图像处理装置、图像处理方法、程序以及集成电路
US9451277B2 (en) 2012-02-08 2016-09-20 Qualcomm Incorporated Restriction of prediction units in B slices to uni-directional inter prediction
US9426463B2 (en) 2012-02-08 2016-08-23 Qualcomm Incorporated Restriction of prediction units in B slices to uni-directional inter prediction
DK3833022T3 (da) 2012-04-12 2022-04-19 Jvckenwood Corp Fusionskandidatlistekonstruktion
MX354306B (es) * 2012-04-15 2018-02-23 Samsung Electronics Co Ltd Metodo y aparato para determinar imagenes de referencia para inter-prediccion.
US9172970B1 (en) 2012-05-29 2015-10-27 Google Inc. Inter frame candidate selection for a video encoder
US11317101B2 (en) 2012-06-12 2022-04-26 Google Inc. Inter frame candidate selection for a video encoder
US9672584B2 (en) 2012-09-06 2017-06-06 Imagination Technologies Limited Systems and methods of partial frame buffer updating
US9485515B2 (en) 2013-08-23 2016-11-01 Google Inc. Video coding using reference motion vectors
US9503746B2 (en) 2012-10-08 2016-11-22 Google Inc. Determine reference motion vectors
US9628790B1 (en) 2013-01-03 2017-04-18 Google Inc. Adaptive composite intra prediction for image and video compression
JP6032367B2 (ja) * 2013-07-16 2016-11-24 富士通株式会社 動画像符号化装置、動画像符号化方法及び動画像復号装置ならびに動画像復号方法
US9609343B1 (en) 2013-12-20 2017-03-28 Google Inc. Video coding using compound prediction
WO2015172348A1 (en) * 2014-05-15 2015-11-19 The Procter & Gamble Company Dentifrice compositions having dental plaque mitigation or improved fluoride uptake
RU2615677C1 (ru) * 2015-10-30 2017-04-06 Кабусики Кайся Тосиба Способ кодирования изображений и способ декодирования изображений
CN106658019B (zh) * 2015-10-31 2019-11-12 华为技术有限公司 参考帧编解码的方法与装置
CN110169059B (zh) 2017-01-13 2023-08-22 谷歌有限责任公司 视频代码化的复合预测
US10412410B2 (en) 2017-08-14 2019-09-10 Google Llc Compound motion-compensated prediction
US10880573B2 (en) 2017-08-15 2020-12-29 Google Llc Dynamic motion vector referencing for video coding
US10284869B2 (en) 2017-09-28 2019-05-07 Google Llc Constrained motion field estimation for hardware efficiency
RU2666275C1 (ru) * 2017-11-13 2018-09-06 ДжейВиСи КЕНВУД КОРПОРЕЙШН Устройство и способ кодирования движущегося изображения, долговременный считываемый компьютером носитель записи, на который записана программа кодирования изображения
US10779002B2 (en) * 2018-04-17 2020-09-15 Qualcomm Incorporated Limitation of the MVP derivation based on decoder-side motion vector derivation
CN108985279B (zh) * 2018-08-28 2020-11-03 上海仁童电子科技有限公司 多功能车辆总线mvb波形的故障诊断方法及装置
CN116866605A (zh) * 2019-01-03 2023-10-10 北京大学 视频处理方法和装置
CN114128292A (zh) * 2019-07-01 2022-03-01 三星电子株式会社 用邻近运动信息对运动信息进行编码和解码的装置和方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0863674A2 (de) * 1997-03-07 1998-09-09 General Instrument Corporation Prädiktion und Kodierung von bidirektional vorhergesagten Video-Objektflächen für digitales Video mit Zwischenbild

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US136461A (en) * 1873-03-04 Improvement in sash-balances
JPS58138655A (ja) * 1982-02-12 1983-08-17 Toshiba Corp 文書印刷制御装置
TW224553B (en) 1993-03-01 1994-06-01 Sony Co Ltd Method and apparatus for inverse discrete consine transform and coding/decoding of moving picture
SE519541C2 (sv) 1996-10-02 2003-03-11 Ericsson Telefon Ab L M Förfarande och anordning för transformering av en reell digital bredbandig bandpassignal till en uppsättning digitala basbandssignaler med I- och Q-komponenter
US6542642B2 (en) * 1996-02-29 2003-04-01 Canon Kabushiki Kaisha Image coding process and motion detecting process using bidirectional prediction
CN1297147C (zh) * 1997-03-07 2007-01-24 通用仪器公司 对交错数字视频的双向预测的视频目标平面的预测和编码
US6404813B1 (en) * 1997-03-27 2002-06-11 At&T Corp. Bidirectionally predicted pictures or video object planes for efficient and flexible video coding
KR100252342B1 (ko) 1997-08-12 2000-04-15 전주범 움직임 벡터 부호화 방법 및 그 장치
KR100257191B1 (ko) * 1997-12-31 2000-05-15 구자홍 움직임 벡터 디코더
JPH11215502A (ja) 1998-01-27 1999-08-06 Sanyo Electric Co Ltd 動きベクトル検出装置及び方法
KR100280871B1 (ko) 1998-07-13 2001-03-02 김남영 커플라인과 슬릿으로 구성된 마이크로 스트립 링 공진기
DE19840735C2 (de) 1998-09-07 2001-06-07 Bosch Gmbh Robert Blockbasierte Bewegungsschätzung bei der Bewegtbildkodierung
KR20010101329A (ko) * 1999-10-29 2001-11-14 요트.게.아. 롤페즈 비디오 인코딩 방법
WO2001058166A1 (en) * 2000-02-01 2001-08-09 Koninklijke Philips Electronics N.V. Video encoding with a two step motion estimation for p-frames
US6446118B1 (en) * 2000-02-29 2002-09-03 Designtech International, Inc. E-mail notification device
KR100708091B1 (ko) * 2000-06-13 2007-04-16 삼성전자주식회사 양방향 움직임 벡터를 이용한 프레임 레이트 변환 장치 및그 방법
RU2182727C2 (ru) 2000-07-20 2002-05-20 Дворкович Александр Викторович Способ поиска векторов движения деталей в динамических изображениях
US6834293B2 (en) * 2001-06-15 2004-12-21 Hitachi, Ltd. Vector scaling system for G.728 annex G
US20030099294A1 (en) * 2001-11-27 2003-05-29 Limin Wang Picture level adaptive frame/field coding for digital video content
US7003035B2 (en) * 2002-01-25 2006-02-21 Microsoft Corporation Video coding methods and apparatuses
JP2004088722A (ja) * 2002-03-04 2004-03-18 Matsushita Electric Ind Co Ltd 動画像符号化方法および動画像復号化方法
US7321626B2 (en) * 2002-03-08 2008-01-22 Sharp Laboratories Of America, Inc. System and method for predictive motion estimation using a global motion predictor
ES2745059T3 (es) * 2002-04-19 2020-02-27 Panasonic Ip Corp America Método de cálculo de vectores de movimiento
JP2004208258A (ja) 2002-04-19 2004-07-22 Matsushita Electric Ind Co Ltd 動きベクトル計算方法
US20040001546A1 (en) * 2002-06-03 2004-01-01 Alexandros Tourapis Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation
US7515634B2 (en) * 2002-06-28 2009-04-07 Qualcomm Incorporated Computationally constrained video encoding
US7822120B2 (en) * 2002-07-26 2010-10-26 Panasonic Corporation Moving picture encoding method, moving picture decoding method, and recording medium
KR100506864B1 (ko) * 2002-10-04 2005-08-05 엘지전자 주식회사 모션벡터 결정방법
US7463686B2 (en) * 2002-10-16 2008-12-09 Lg Electronics Inc. Method for determining motion vector and macroblock type
DE10311497B3 (de) 2003-03-15 2004-10-07 Atlas Elektronik Gmbh Verfahren zur synthetischen Generierung von Sonardaten
US7523330B2 (en) * 2004-06-30 2009-04-21 Sun Microsystems, Inc. Thread-based clock enabling in a multi-threaded processor

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0863674A2 (de) * 1997-03-07 1998-09-09 General Instrument Corporation Prädiktion und Kodierung von bidirektional vorhergesagten Video-Objektflächen für digitales Video mit Zwischenbild

Also Published As

Publication number Publication date
EP2003900A2 (de) 2008-12-17
EP2046057A3 (de) 2009-05-06
HK1073555A1 (en) 2005-10-07
US7558321B2 (en) 2009-07-07
JP2008182747A (ja) 2008-08-07
CY1111077T1 (el) 2015-06-11
PT1809048E (pt) 2010-12-28
US9066106B2 (en) 2015-06-23
CN1269361C (zh) 2006-08-09
US7606307B2 (en) 2009-10-20
NL1029485C2 (nl) 2006-05-23
DE60335046D1 (de) 2010-12-30
ATE354259T1 (de) 2007-03-15
DK2009928T3 (da) 2011-01-24
US20090067500A1 (en) 2009-03-12
ATE482574T1 (de) 2010-10-15
ATE482572T1 (de) 2010-10-15
SI2003899T1 (sl) 2011-02-28
US9042453B2 (en) 2015-05-26
US9042451B2 (en) 2015-05-26
JP2009135989A (ja) 2009-06-18
US20140098875A1 (en) 2014-04-10
DE10300533A9 (de) 2004-10-28
US8345757B2 (en) 2013-01-01
EP1406453B1 (de) 2007-02-14
US8351503B2 (en) 2013-01-08
CN1812585A (zh) 2006-08-02
NL1022333C2 (nl) 2005-07-25
GB2413721A (en) 2005-11-02
EP2046058A2 (de) 2009-04-08
PT2009928E (pt) 2010-12-29
DE10362106B3 (de) 2011-09-22
CY1111025T1 (el) 2015-06-11
SI1809048T1 (sl) 2011-02-28
EP2009927B1 (de) 2010-09-22
EP2046054B1 (de) 2013-07-03
NL1022333A1 (nl) 2004-04-06
EP1821547B1 (de) 2010-11-10
DK2003899T3 (da) 2011-01-24
US8351507B2 (en) 2013-01-08
EP2003900B1 (de) 2010-09-22
EP2015586A3 (de) 2009-01-21
EP2003899B1 (de) 2010-09-22
DE10300533B4 (de) 2005-11-17
EP2046060A2 (de) 2009-04-08
US7627035B2 (en) 2009-12-01
EP2003900A3 (de) 2009-01-21
JP2008182745A (ja) 2008-08-07
NL1029486A1 (nl) 2005-10-07
PT2003900E (pt) 2010-12-29
US8411748B2 (en) 2013-04-02
DE60335034D1 (de) 2010-12-30
JP2009135988A (ja) 2009-06-18
GB0426712D0 (en) 2005-01-12
US20050129118A1 (en) 2005-06-16
PT1796396E (pt) 2011-02-14
KR20040031556A (ko) 2004-04-13
EP2015585A2 (de) 2009-01-14
EP2009928B1 (de) 2010-09-22
EP2009928A3 (de) 2009-01-21
US20090074063A1 (en) 2009-03-19
CY1111024T1 (el) 2015-06-11
DE60311720T2 (de) 2007-09-13
EP2046056A2 (de) 2009-04-08
US20080031341A1 (en) 2008-02-07
ATE484156T1 (de) 2010-10-15
DK1603344T3 (da) 2011-03-07
US20080031343A1 (en) 2008-02-07
NL1029486C2 (nl) 2006-05-23
GB2413721B (en) 2006-11-22
EP2009925A2 (de) 2008-12-31
DE60334330D1 (de) 2010-11-04
ATE488964T1 (de) 2010-12-15
KR100506864B1 (ko) 2005-08-05
CY1111026T1 (el) 2015-06-11
JP4216852B2 (ja) 2009-01-28
JP2008182740A (ja) 2008-08-07
US20140098872A1 (en) 2014-04-10
JP4709241B2 (ja) 2011-06-22
DE60334505D1 (de) 2010-11-18
GB2406459A (en) 2005-03-30
DK1796396T3 (da) 2011-03-07
EP2003899A3 (de) 2009-01-21
US8351506B2 (en) 2013-01-08
EP2046056A3 (de) 2009-05-06
JP4625131B2 (ja) 2011-02-02
GB2406459B (en) 2005-09-28
CY1111204T1 (el) 2015-06-11
CY1111023T1 (el) 2015-06-11
DE60334338D1 (de) 2010-11-04
US8385417B2 (en) 2013-02-26
JP2008182744A (ja) 2008-08-07
US20090074064A1 (en) 2009-03-19
EP2046054A3 (de) 2009-05-06
EP2046059B1 (de) 2013-07-03
EP2046058A3 (de) 2009-05-06
US9743108B2 (en) 2017-08-22
EP2009926B1 (de) 2013-07-03
DK1809048T3 (da) 2011-01-24
JP4625103B2 (ja) 2011-02-02
JP4625132B2 (ja) 2011-02-02
JP2004129191A (ja) 2004-04-22
EP2015585B1 (de) 2010-10-06
EP1406453A1 (de) 2004-04-07
JP4709291B2 (ja) 2011-06-22
EP2046057A2 (de) 2009-04-08
EP1603344B1 (de) 2010-11-17
US20090074067A1 (en) 2009-03-19
US7233621B2 (en) 2007-06-19
EP2009926A3 (de) 2009-01-21
EP2046057B1 (de) 2013-07-03
EP2009925B1 (de) 2013-07-03
GB0513436D0 (en) 2005-08-10
DK2015585T3 (da) 2011-01-31
EP1809048A1 (de) 2007-07-18
US7634007B2 (en) 2009-12-15
PT2015585E (pt) 2010-12-28
US20080037639A1 (en) 2008-02-14
US20050129119A1 (en) 2005-06-16
EP2046060A3 (de) 2009-05-06
US8396128B2 (en) 2013-03-12
EP2059054B1 (de) 2013-07-03
PT1406453E (pt) 2007-05-31
EP2059054A1 (de) 2009-05-13
JP4020789B2 (ja) 2007-12-12
US8416854B2 (en) 2013-04-09
EP2015586B1 (de) 2013-07-03
JP2009135994A (ja) 2009-06-18
US20090067498A1 (en) 2009-03-12
EP2009927A3 (de) 2009-01-21
PT2003899E (pt) 2010-12-28
JP2008182742A (ja) 2008-08-07
JP4709292B2 (ja) 2011-06-22
SI2009927T1 (sl) 2011-03-31
US20090074066A1 (en) 2009-03-19
US8891623B2 (en) 2014-11-18
EP2003899A2 (de) 2008-12-17
US20090074068A1 (en) 2009-03-19
US20050129120A1 (en) 2005-06-16
EP2009928A2 (de) 2008-12-31
US20090067499A1 (en) 2009-03-12
EP2046056B1 (de) 2013-07-03
CY1111198T1 (el) 2015-06-11
US8891624B2 (en) 2014-11-18
CN1812586A (zh) 2006-08-02
US20090074065A1 (en) 2009-03-19
SI2015585T1 (sl) 2011-04-29
US20140098870A1 (en) 2014-04-10
JP2006191652A (ja) 2006-07-20
ATE488963T1 (de) 2010-12-15
CY1111027T1 (el) 2015-06-11
CY1111539T1 (el) 2015-08-05
US7643556B2 (en) 2010-01-05
EP2009926A2 (de) 2008-12-31
JP2008182743A (ja) 2008-08-07
US20080031332A1 (en) 2008-02-07
JP2009135991A (ja) 2009-06-18
US20080037640A1 (en) 2008-02-14
DK1821547T3 (da) 2011-02-28
JP4709242B2 (ja) 2011-06-22
HK1095458A1 (en) 2007-05-04
US8638856B2 (en) 2014-01-28
EP2046058B1 (de) 2013-07-03
HK1095457A1 (en) 2007-05-04
US8428134B2 (en) 2013-04-23
CN1487748A (zh) 2004-04-07
DE60334336D1 (de) 2010-11-04
SI1406453T1 (sl) 2007-08-31
US8416853B2 (en) 2013-04-09
EP1796396B8 (de) 2011-02-02
US9042452B2 (en) 2015-05-26
JP2008182741A (ja) 2008-08-07
ATE488097T1 (de) 2010-11-15
US8351505B2 (en) 2013-01-08
US8345758B2 (en) 2013-01-01
JP2008182739A (ja) 2008-08-07
US20150264394A1 (en) 2015-09-17
GB0426713D0 (en) 2005-01-12
US20140098874A1 (en) 2014-04-10
EP1821547A3 (de) 2007-09-05
DE60311720T9 (de) 2008-02-14
EP1809048B1 (de) 2010-09-22
CY1106351T1 (el) 2011-10-12
PT1821547E (pt) 2011-02-14
DE60334339D1 (de) 2010-11-04
GB2406460A (en) 2005-03-30
JP2008182738A (ja) 2008-08-07
DK2003900T3 (da) 2011-01-24
EP2046059A2 (de) 2009-04-08
ATE482573T1 (de) 2010-10-15
DE60311720D1 (de) 2007-03-29
DK2009927T3 (da) 2011-01-24
EP2009927A2 (de) 2008-12-31
US8422556B2 (en) 2013-04-16
EP2015585A3 (de) 2009-01-21
EP2046054A2 (de) 2009-04-08
US20140098873A1 (en) 2014-04-10
US8432969B2 (en) 2013-04-30
JP4625101B2 (ja) 2011-02-02
US20130215967A1 (en) 2013-08-22
CN100473170C (zh) 2009-03-25
GB0300288D0 (en) 2003-02-05
GB2393873A (en) 2004-04-07
EP2046059A3 (de) 2009-05-06
US20090067497A1 (en) 2009-03-12
ES2281573T3 (es) 2007-10-01
CN1812585B (zh) 2010-08-18
SI1603344T1 (sl) 2011-04-29
US8351504B2 (en) 2013-01-08
PT1603344E (pt) 2011-02-14
ATE482571T1 (de) 2010-10-15
ATE482575T1 (de) 2010-10-15
DE20321473U1 (de) 2007-07-05
SI1796396T1 (sl) 2011-04-29
EP1796396A1 (de) 2007-06-13
EP1603344A1 (de) 2005-12-07
DK1406453T3 (da) 2007-06-11
JP2008182748A (ja) 2008-08-07
JP2009135992A (ja) 2009-06-18
NL1029485A1 (nl) 2005-10-07
HK1073556A1 (en) 2005-10-07
US20090074069A1 (en) 2009-03-19
JP2008182746A (ja) 2008-08-07
EP2046060B1 (de) 2013-07-03
EP2046055A2 (de) 2009-04-08
EP2009925A3 (de) 2009-01-21
JP4625100B2 (ja) 2011-02-02
SI2003900T1 (sl) 2011-03-31
SI1821547T1 (sl) 2011-04-29
DE60334941D1 (de) 2010-12-23
US20080037644A1 (en) 2008-02-14
DE60334337D1 (de) 2010-11-04
US20140098871A1 (en) 2014-04-10
SI2009928T1 (sl) 2011-02-28
GB2406460B (en) 2005-10-19
HK1082625A1 (en) 2006-06-09
JP2009135993A (ja) 2009-06-18
US7643557B2 (en) 2010-01-05
EP2046055A3 (de) 2009-05-06
EP1796396B1 (de) 2010-11-17
EP2015586A2 (de) 2009-01-14
GB2393873B (en) 2005-05-18
JP4625102B2 (ja) 2011-02-02
PT2009927E (pt) 2010-12-29
US20080031342A1 (en) 2008-02-07
US20090074062A1 (en) 2009-03-19
US7570691B2 (en) 2009-08-04
EP1821547A2 (de) 2007-08-22
JP4625104B2 (ja) 2011-02-02
US20040066848A1 (en) 2004-04-08

Similar Documents

Publication Publication Date Title
DE60311720T9 (de) Direkt-Modus Bewegungsvektorberechnung für B-Bilder
DE10300528B4 (de) Berechnungsverfahren für einen Vorhersage-Bewegungsvektor
DE102010046508B4 (de) Verfahren und Vorrichtung, um einen Suchbereich für die Bewegungsabschätzung adaptiv auszuwählen
DE10300529B4 (de) Verfahren zum Kodieren bewegter Bilder
DE19825042C2 (de) Verfahren zur Bewegungsvektorcodierung bei MPEG-4
DE10362305B4 (de) Blockvorhersageverfahren unter Verwendung eines verbesserten Direkt-Modus
DE69735756T2 (de) Dynamische steuerung der kodierrate in einem blockbasierten videokodierungssystem
DE602004002455T2 (de) Bewegungsvektorschätzung durch adaptive zeitliche Vorhersage
DE60204447T2 (de) Verfahren zur codierung und decodierung von bewegungsschätzungen
US7609765B2 (en) Fast multi-frame motion estimation with adaptive search strategies
DE102010025816A1 (de) Verfahren und Systeme zum Abschätzen von Bewegung basierend auf rekonstruierten Referenzframes bei einem Videodecoder
DE102006043707A1 (de) Verfahren zur Datenkompression in einer Videosequenz
EP0259562A1 (de) Verfahren zur bewegungskompensierten Bild-zu-Bild-Prädiktionscodierung
DE60213039T2 (de) MPEG4-Videokodierung mit "skipped macroblock" Mode
DE102011008630A1 (de) Techniken zur Bewegungsseinschätzung
EP0414016B1 (de) Verfahren zur Bildung eines Prädiktionsbildes
DE10392466T5 (de) Verfahren zur Abschätzung von Rückwertsbewegungs-Vektoren innerhalb einer Videosequenz
DE112004002977T5 (de) Schnelle Multi-Frame-Bewegungsabschätzung mit adaptiven Suchstrategien
DE112004002564B4 (de) Verfahren zum Ermitteln eines Bildreferenzblocks in einem Codier-Modus mit fester Referenzvollbildanzahl
EP0513297B1 (de) Verfahren zur codierung und decodierung der videodaten einer bildfolge
DE20321296U1 (de) System zum Vorhersagen eines Bewegungsvektors

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
OP8 Request for examination as to paragraph 44 patent law
8369 Partition in:

Ref document number: 10362106

Country of ref document: DE

Kind code of ref document: P

Q171 Divided out to:

Ref document number: 10362106

Country of ref document: DE

Kind code of ref document: P

8364 No opposition during term of opposition
R071 Expiry of right