ES2356551T3 - METHOD OF CALCULATION OF DIRECT MODE MOVEMENT VECTORS FOR IMAGES B. - Google Patents

METHOD OF CALCULATION OF DIRECT MODE MOVEMENT VECTORS FOR IMAGES B. Download PDF

Info

Publication number
ES2356551T3
ES2356551T3 ES05018606T ES05018606T ES2356551T3 ES 2356551 T3 ES2356551 T3 ES 2356551T3 ES 05018606 T ES05018606 T ES 05018606T ES 05018606 T ES05018606 T ES 05018606T ES 2356551 T3 ES2356551 T3 ES 2356551T3
Authority
ES
Spain
Prior art keywords
list
image
tdd
field
tdb
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
ES05018606T
Other languages
Spanish (es)
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
Application granted granted Critical
Publication of ES2356551T3 publication Critical patent/ES2356551T3/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

Método para calcular vectores de movimiento de modo directo de una imagen B en un procesado de imágenes en movimiento, que comprende: determinar un bloque de ubicación conjunta en una imagen de referencia de la lista 1 para modo directo, y calcular dichos vectores de movimiento de modo directo de dicha imagen B basándose en un vector de movimiento de dicho bloque de ubicación conjunta, caracterizado porque el bloque de ubicación conjunta en dicha imagen de referencia de la lista 1 para modo directo tiene un vector de movimiento tanto de la lista 0 como de la lista 1, en donde dicha lista 0 y dicha lista 1 están respectivamente en concordancia con la norma H.264 / MPEG- 4 parte 10, y un vector de movimiento de la lista 0 del bloque de ubicación conjunta en dicha imagen de referencia de la lista 1 para modo directo se selecciona como vector de movimiento para obtener los vectores de movimiento de modo directo de la imagen B.Method for calculating direct mode motion vectors of an image B in a motion picture processing, comprising: determining a joint location block in a reference image of the list 1 for direct mode, and calculating said motion vectors of direct mode of said image B based on a motion vector of said joint location block, characterized in that the joint location block in said reference image of list 1 for direct mode has a motion vector of both list 0 and list 1, wherein said list 0 and said list 1 are respectively in accordance with the H.264 / MPEG-4 part 10 standard, and a motion vector of the list 0 of the joint location block in said reference image of list 1 for direct mode is selected as a motion vector to obtain the direct mode motion vectors of image B.

Description

ANTECEDENTES DE LA INVENCIÓN BACKGROUND OF THE INVENTION

Campo de la invención Field of the Invention

La presente invención se refiere a un método de codificación de imágenes en movimiento, y más particularmente a una técnica para obtener vectores de movimiento de modo directo de una imagen B (de predicción 5 bidireccional) definida en una técnica de compresión de imágenes en movimiento de nueva generación. The present invention relates to a method of encoding motion images, and more particularly to a technique for obtaining direct mode motion vectors of a B image (bidirectional prediction 5) defined in a motion image compression technique of new generation.

Descripción de la técnica relacionada Description of the related technique

El documento “Text of Final Committee Draft of Joint Video Specification (ITU-T REC. H-264 ISO/IEC 14496-10 AVC” de julio de 2000 proporciona una visión general sobre la tecnología antes de la fecha de prioridad de la presente solicitud. El documento da a conocer las características del preámbulo de la reivindicación independiente 1 en la 10 subcláusula 10.3.3.2. The "Text of Final Committee Draft of Joint Video Specification (ITU-T REC. H-264 ISO / IEC 14496-10 AVC") document of July 2000 provides an overview of the technology prior to the priority date of the present application The document discloses the characteristics of the preamble of independent claim 1 in 10 subclause 10.3.3.2.

Una imagen B convencional presenta cinco tipos de modos de predicción, tales como modo hacia delante, modo hacia atrás, modo bidireccional, modo directo y modo intra. En el modo hacia delante, el modo hacia atrás y el modo bidireccional, las direcciones de los vectores de movimiento se pueden reconocer a partir de los nombres de modo ya que la información de dirección está implícita en los nombres de modo. En el modo directo, se obtienen dos 15 vectores de movimiento de ambas direcciones a partir de un movimiento de un bloque de ubicación conjunta en una imagen vecina sobre la base de una característica de redundancia temporal según la cual la continuidad del movimiento se mantiene constantemente entre dos imágenes adyacentes. Este modo directo presenta una ventaja en términos de eficacia de la codificación ya que la información del movimiento no se envía a un decodificador. A conventional B image has five types of prediction modes, such as forward mode, backward mode, bidirectional mode, direct mode and intra mode. In forward mode, backward mode and bidirectional mode, the directions of the motion vectors can be recognized from the mode names since the address information is implicit in the mode names. In direct mode, two movement vectors of both directions are obtained from a movement of a joint location block in a neighboring image based on a temporal redundancy characteristic according to which the continuity of the movement is constantly maintained between Two adjacent images. This direct mode has an advantage in terms of coding efficiency since the movement information is not sent to a decoder.

Por otra parte, una imagen B propuesta en una técnica de compresión de imágenes en movimiento de nueva 20 generación, tal como la H.264 ó MPEG-4 parte 10, está caracterizada porque se permite que la imagen B sea usada como imagen de referencia ya que se puede almacenar en una memoria intermedia de imágenes de referencia. Esta imagen B está caracterizada además porque presenta cinco tipos de modos de predicción, tales como el modo de lista 0, el modo de lista 1, el modo de predicción bidireccional, el modo directo y el modo intra. On the other hand, an image B proposed in a new generation motion image compression technique, such as H.264 or MPEG-4 part 10, is characterized in that image B is allowed to be used as a reference image since it can be stored in a buffer of reference images. This image B is further characterized in that it has five types of prediction modes, such as list mode 0, list mode 1, bidirectional prediction mode, direct mode and intra mode.

El modo de lista 0 es similar al modo hacia delante convencional, y la información de movimiento tal como un 25 índice de imagen de referencia y la diferencia de vectores de movimiento se indican respectivamente con ref_idx_l0 y mvd_l0. El modo de lista 1 también es similar al modo hacia atrás convencional, y la información de movimiento tal como un índice de imagen de referencia y la diferencia de vectores de movimiento se indican respectivamente con ref_idx_l1 y mvd_l1. El modo de predicción bidireccional tiene dos imágenes de referencia, pudiendo estar situadas ambas temporalmente antes o después de la imagen B, o pudiendo estar situadas ambas temporalmente antes y 30 después de la imagen B, respectivamente. En este caso, dos índices de imágenes de referencia y dos diferencias de vectores de movimiento se indican respectivamente con ref_idx_l0, ref_idx_l1, mvd_l0, y mvd_l1, y cada imagen de referencia tiene datos de un contador de orden de las imágenes (POC), que constituyen información de ubicación temporal. List mode 0 is similar to conventional forward mode, and motion information such as a reference image index and motion vector difference are indicated respectively with ref_idx_l0 and mvd_l0. List mode 1 is also similar to conventional backward mode, and motion information such as a reference image index and the difference of motion vectors are indicated respectively with ref_idx_l1 and mvd_l1. The bidirectional prediction mode has two reference images, both of which may be temporarily located before or after image B, or both may be temporarily located before and 30 after image B, respectively. In this case, two indexes of reference images and two differences of motion vectors are indicated respectively with ref_idx_l0, ref_idx_l1, mvd_l0, and mvd_l1, and each reference image has data from an image order counter (POC), which They constitute temporary location information.

En el modo directo, los vectores de movimiento se obtienen seleccionando una cualquiera de una técnica 35 espacial y una técnica temporal. La técnica de modo directo espacial está destinada a obtener índices de imágenes de referencia de la lista 0 y la lista 1 y vectores de movimiento a partir de bloques vecinos de un macrobloque que ha de ser codificado. La técnica de modo directo temporal está destinada a obtener un vector de movimiento de la lista 0, MVF, y un vector de movimiento de la lista 1, MVB, cambiando la escala de un vector de movimiento de la lista 0 de un bloque de ubicación conjunta en una imagen de referencia de la lista 1 para modo directo, que es similar a la imagen B 40 convencional. En este caso, la imagen de referencia de la lista 1 para modo directo es una imagen en la que un índice para la predicción de la lista 1 es 0, y una imagen de referencia de la lista 0 para modo directo es una imagen de referencia de la lista 0 apuntada por un vector de movimiento de un bloque de ubicación conjunta en la imagen de referencia de la lista 1 para modo directo. In direct mode, motion vectors are obtained by selecting any one of a spatial technique and a temporal technique. The spatial direct mode technique is intended to obtain indexes of reference images from list 0 and list 1 and motion vectors from neighboring blocks of a macroblock to be encoded. The temporary direct mode technique is intended to obtain a movement vector from list 0, MVF, and a movement vector from list 1, MVB, by changing the scale of a movement vector from list 0 of a location block combined in a reference image of list 1 for direct mode, which is similar to conventional image B 40. In this case, the reference image of list 1 for direct mode is an image in which an index for the prediction of list 1 is 0, and a reference image of list 0 for direct mode is a reference image from list 0 pointed by a motion vector of a joint location block in the reference image of list 1 for direct mode.

Las Figs. 1a a 1c muestran índices por defecto para la predicción de la lista 0, índices por defecto para la 45 predicción de la lista 1 e imágenes de referencia de la lista 1 para modo directo de imágenes B respectivas en un patrón IBBBP cuando el número de imágenes de referencia disponibles de la lista 0 y la lista 1 (o el tamaño de una memoria intermedia a corto plazo) es 6, respectivamente. En este caso, los índices por defecto para la predicción de la lista 0 y los índices por defecto para la predicción de la lista 1 dependen de un orden de salida, o valor POC, de una imagen de referencia decodificada previamente, con independencia de un orden de decodificación. En la Fig. 1, todas las imágenes 50 B usan una imagen P temporalmente sucesiva como imagen de referencia de la lista 1 para modo directo. Figs. 1a to 1c show default indices for prediction of list 0, default indices for prediction of list 1 and reference images of list 1 for direct mode of respective B images in an IBBBP pattern when the number of images Reference values available from list 0 and list 1 (or the size of a short-term buffer) is 6, respectively. In this case, the default indexes for the prediction of list 0 and the default indexes for the prediction of list 1 depend on an output order, or POC value, of a previously decoded reference image, regardless of a decoding order. In Fig. 1, all images 50 B use a temporarily successive image P as the reference image of list 1 for direct mode.

Las Figs. 2a a 2c muestran índices por defecto para la predicción de la lista 0, índices por defecto para la predicción de la lista 1 e imágenes de referencia de la lista 1 para modo directo de imágenes B respectivas en un patrón IBBB que usa sólo las imágenes B, respectivamente. En la Fig. 2a, cuando una imagen B a codificar es B8, una B5 precedente temporalmente con un índice 0 de la lista 1 es una imagen de referencia de la lista 1 para modo directo. Tal 55 como muestra la Fig. 2b, una imagen de referencia de la lista 1 para modo directo de la B7 que ha de ser decodificada posteriormente es la B8 temporalmente sucesiva. Por último, tal como se muestra en la Fig. 2c, una imagen de Figs. 2a to 2c show default indexes for prediction of list 0, default indexes for prediction of list 1 and reference images of list 1 for direct mode of respective B images in an IBBB pattern that uses only B images respectively. In Fig. 2a, when an image B to be encoded is B8, a temporarily preceding B5 with an index 0 of list 1 is a reference image of list 1 for direct mode. As shown in Fig. 2b, a reference image of the list 1 for direct mode of the B7 to be subsequently decoded is the B8 temporarily successive. Finally, as shown in Fig. 2c, an image of

referencia de la lista 1 para modo directo de la B9 que ha de ser decodificada posteriormente es la B7 temporalmente precedente. Reference of list 1 for direct mode of the B9 to be decoded later is the temporarily preceding B7.

En conclusión, tal como se observa a partir de las Figs. 1a a 2c, una imagen de referencia de la lista 1 para modo directo puede ser una imagen P o B que sucede temporalmente a una imagen B que ha de ser codificada, o una imagen B que la precede temporalmente. 5 In conclusion, as seen from Figs. 1a to 2c, a reference image of the list 1 for direct mode may be a P or B image that temporarily happens to an image B to be encoded, or an image B that temporarily precedes it. 5

Las Figs. 3a a 3h muestran los modos que puede tener un bloque de ubicación conjunta en una imagen de referencia de la lista 1 para modo directo cuando la imagen de referencia de la lista 1 sucede temporalmente a una imagen B. En este caso, debido a que la imagen de referencia de la lista 1 puede ser una imagen P o una imagen B, el bloque de ubicación conjunta de la misma tiene uno o dos vectores de movimiento, o el modo intra. La técnica de compresión de imágenes en movimiento de nueva generación, tal como H.264 o MPEG-4 parte 10, permite la 10 reordenación de índices de imágenes de referencia a un nivel de franjas (slice), de modo que a una imagen justo después de una imagen B se le puede asignar un índice 0 para predicción de la lista 1. Es decir, como la imagen de referencia de la lista 1 puede existir justo después de una imagen B, un vector de movimiento del bloque de ubicación conjunta puede estar dirigido hacia delante o hacia atrás. Figs. 3a to 3h show the ways that a joint location block can have in a reference image of list 1 for direct mode when the reference image of list 1 temporarily happens to an image B. In this case, because the Reference image of list 1 may be an image P or an image B, the joint location block thereof has one or two motion vectors, or intra mode. The new generation motion image compression technique, such as H.264 or MPEG-4 part 10, allows the reordering of reference image indexes at a slice level, so that at a fair image after an image B it can be assigned an index 0 for prediction of the list 1. That is, since the reference image of the list 1 can exist just after an image B, a motion vector of the joint location block can Be directed forward or backward.

Las Figs. 4a a 4h muestran los modos que puede tener un bloque de ubicación conjunta en una imagen de 15 referencia de la lista 1 para modo directo cuando la imagen de referencia de la lista 1 precede temporalmente a una imagen B. En este caso, el bloque de ubicación conjunta tiene uno o dos vectores de movimiento, o el modo intra, tal como se ha descrito anteriormente. Entre la imagen de referencia de la lista 1 y la imagen B puede haber presentes otras imágenes de referencia, de modo que un vector de movimiento del bloque de ubicación conjunta puede apuntar a la dirección temporal hacia delante o hacia atrás. 20 Figs. 4a to 4h show the ways that a joint location block can have in a reference image of list 1 for direct mode when the reference image of list 1 temporarily precedes an image B. In this case, the block of Joint location has one or two motion vectors, or intra mode, as described above. Other reference images may be present between the reference image in list 1 and image B, so that a motion vector of the joint location block may point to the temporal direction forward or backward. twenty

Tal como se observa a partir de las Figs. 3a a 4h, la imagen de referencia de la lista 1 para modo directo puede presentar varios modos de predicción, lo cual da como resultado una necesidad de explorar un método para calcular vectores de movimiento de modo directo teniendo en cuenta dichos diversos casos. As seen from Figs. 3a to 4h, the reference image of the list 1 for direct mode may have several prediction modes, which results in a need to explore a method for calculating motion vectors directly, taking into account these various cases.

RESUMEN DE LA INVENCIÓN SUMMARY OF THE INVENTION

Por lo tanto, la presente invención se ha realizado en vista de los problemas anteriores, y es un objetivo de la 25 presente invención proporcionar un método para calcular vectores de movimiento de modo directo de una imagen B (de predicción bidireccional) definida en una técnica de compresión de imágenes en movimiento de nueva generación, en la que se propone una técnica para obtener los vectores de movimiento de modo directo de la imagen B con el fin de aumentar la probabilidad de que se seleccione un modo directo como modo de predicción de un macrobloque, para mejorar la eficacia de codificación de una imagen B. 30 Therefore, the present invention has been carried out in view of the above problems, and it is an object of the present invention to provide a method for calculating direct mode motion vectors of a B (bi-directional prediction) image defined in a technique. of new-generation motion image compression, in which a technique is proposed to obtain the motion vectors directly from image B in order to increase the probability that a direct mode will be selected as the prediction mode of a macroblock, to improve the coding efficiency of an image B. 30

El objetivo anterior se logra con la combinación de características de la reivindicación independiente 1. The above objective is achieved with the combination of features of independent claim 1.

Un método para calcular vectores de movimiento de modo directo de una imagen B (de predicción bidireccional) en un sistema de codificación de imágenes en movimiento con el fin de extraer los vectores de movimiento de modo directo de la imagen B, comprende la etapa de, si un bloque de ubicación conjunta en una imagen de referencia de la lista 1 para modo directo tiene dos vectores de movimiento, seleccionar uno cualquiera (un vector de 35 movimiento de la lista 0 o un vector de movimiento de la lista 1) de los dos vectores de movimiento, y obtener los vectores de movimiento de modo directo de la imagen B a partir del vector de movimiento seleccionado. A method for calculating direct mode motion vectors of an image B (bidirectional prediction) in a motion picture coding system in order to extract the motion mode vectors directly from the image B, comprises the step of, If a joint location block in a reference image of list 1 for direct mode has two motion vectors, select any one (a motion vector from list 0 or a motion vector from list 1) of the two motion vectors, and obtain motion vectors directly from image B from the selected motion vector.

Preferentemente, la etapa anterior puede incluir la etapa de seleccionar uno de los vectores de movimiento de la lista 0 y la lista 1, que apunta a una imagen más cercana temporalmente a la imagen de referencia de la lista 1 para modo directo, como vector de movimiento para la obtención de los vectores de movimiento de modo directo, seleccionar 40 el vector de movimiento de la lista 0 como vector de movimiento para la obtención de los vectores de movimiento de modo directo si los dos vectores de movimiento apuntan a la misma imagen de referencia, determinar una imagen de referencia apuntada por el vector de movimiento seleccionado como imagen de referencia de la lista 0 para modo directo, y obtener los vectores de movimiento de modo directo de la imagen B. Alternativamente, la etapa anterior puede incluir la etapa de seleccionar incondicionalmente el vector de movimiento de la lista 0 como vector de movimiento para 45 la obtención de los vectores de movimiento de modo directo con independencia de una distancia temporal, determinar una imagen de referencia apuntada por el vector de movimiento de la lista 0 como imagen de referencia de la lista 0 para modo directo, y obtener los vectores de movimiento de modo directo de la imagen B. Preferably, the previous step may include the step of selecting one of the movement vectors from list 0 and list 1, which points to an image that is temporarily closer to the reference image of list 1 for direct mode, as a vector for movement to obtain the motion vectors directly, select the motion vector from the list 0 as a motion vector to obtain the motion vectors directly if the two motion vectors point to the same image of reference, determine a reference image pointed by the motion vector selected as a reference image of the list 0 for direct mode, and obtain the direct mode motion vectors of the image B. Alternatively, the previous stage may include the stage of unconditionally select the motion vector from the list 0 as a motion vector to obtain the motion vectors directly with i ndependence of a temporal distance, determine a reference image pointed by the movement vector of the list 0 as a reference image of the list 0 for direct mode, and obtain the direct mode motion vectors of the image B.

De acuerdo con otro aspecto de la presente invención, se proporciona un método para calcular vectores de movimiento de modo directo de una imagen B (de predicción bidireccional) en un sistema de codificación de imágenes 50 en movimiento con el fin de extraer los vectores de movimiento de modo directo de la imagen B, que comprende la etapa de seleccionar uno cualquiera de los vectores de movimiento de un bloque de ubicación conjunta en una imagen de referencia de la lista 1 para modo directo como vector de movimiento para la obtención de los vectores de movimiento de modo directo con independencia de los modos (un modo de lista 0 y/o un modo de lista 1) de los vectores de movimiento del bloque de 55 ubicación conjunta, determinar una imagen de referencia apuntada por el vector de movimiento seleccionado como imagen de referencia de la lista 0 para modo directo, y calcular los vectores de movimiento de modo directo de la In accordance with another aspect of the present invention, there is provided a method for calculating motion vectors directly from an image B (bidirectional prediction) in a motion image coding system 50 for the purpose of extracting motion vectors directly of image B, which comprises the step of selecting any one of the motion vectors of a joint location block in a reference image of list 1 for direct mode as a motion vector for obtaining the vectors of Direct mode movement regardless of the modes (a list mode 0 and / or a list mode 1) of the motion vectors of the joint location block, determine a reference image pointed by the selected motion vector as image reference list 0 for direct mode, and calculate the motion vectors for direct mode of the

imagen B. Se ha propuesto un método convencional para obtener vectores de movimiento de modo directo a partir de un vector de movimiento de la lista 0 de un bloque de ubicación conjunta. Si este método convencional se aplica a un caso en el que un bloque de ubicación conjunta en una imagen de referencia de la lista 1 tiene sólo un vector de movimiento de la lista 1, todos los vectores de movimiento de modo directo se hacen 0 puesto que el vector de movimiento de la lista 0 es 0. Sin embargo, el presente método puede superar este problema. 5 Image B. A conventional method for obtaining motion vectors directly from a motion vector from the list 0 of a joint location block has been proposed. If this conventional method applies to a case where a joint location block in a reference image of list 1 has only one motion vector of list 1, all direct mode motion vectors are made 0 since the motion vector of list 0 is 0. However, the present method can overcome this problem. 5

De acuerdo con un aspecto adicional de la presente invención, se proporciona un método para calcular vectores de movimiento de modo directo de una imagen B (de predicción bidireccional) en un sistema de codificación de imágenes en movimiento con el fin de extraer los vectores de movimiento de modo directo de la imagen B, que comprende la etapa de, si un bloque de ubicación conjunta en una imagen de referencia de la lista 1 para modo directo tiene sólo un vector de movimiento de la lista 1, considerar que el bloque de ubicación conjunta tiene un movimiento 10 cero, determinar una imagen decodificada situada temporalmente justo antes de la imagen B como imagen de referencia de la lista 0 para modo directo, y obtener los vectores de movimiento de modo directo de la imagen B. In accordance with a further aspect of the present invention, there is provided a method for calculating motion vectors directly from an image B (bidirectional prediction) in a motion image coding system in order to extract motion vectors directly from image B, which comprises the step of, if a joint location block in a reference image of list 1 for direct mode has only one motion vector of list 1, consider that the joint location block has a zero movement 10, determine a decoded image temporarily located just before image B as a reference image of list 0 for direct mode, and obtain the direct mode motion vectors of image B.

De acuerdo con un aspecto adicional de la presente invención, se proporciona un método para calcular vectores de movimiento de modo directo de una imagen B (de predicción bidireccional) en un sistema de codificación de imágenes en movimiento con el fin de extraer los vectores de movimiento de modo directo de la imagen B, que 15 comprende la etapa de, si un bloque de ubicación conjunta en una imagen de referencia de la lista 1 para modo directo tiene sólo un vector de movimiento de la lista 1, usar el vector de movimiento de la lista 1 del bloque de ubicación conjunta como vector de movimiento para la obtención de los vectores de movimiento de modo directo, determinar una imagen decodificada situada temporalmente justo antes de la imagen B como imagen de referencia de la lista 0 para modo directo, y obtener los vectores de movimiento de modo directo de la imagen B. 20 In accordance with a further aspect of the present invention, there is provided a method for calculating motion vectors directly from an image B (bidirectional prediction) in a motion image coding system in order to extract motion vectors directly from image B, which comprises the step of, if a joint location block in a reference image of list 1 for direct mode has only one motion vector of list 1, use the motion vector of List 1 of the joint location block as a motion vector for obtaining the motion vectors directly, determine a decoded image temporarily located just before the image B as a reference image of the list 0 for direct mode, and obtain the direct mode motion vectors of the image B. 20

De acuerdo con un aspecto adicional de la presente invención, se proporciona un método para calcular vectores de movimiento de modo directo de una imagen B (de predicción bidireccional) en un sistema de codificación de imágenes en movimiento con el fin de extraer los vectores de movimiento de modo directo de la imagen B, que comprende la etapa de, si un bloque de ubicación conjunta en una imagen de referencia de la lista 1 para modo directo tiene sólo un vector de movimiento de la lista 1, usar el vector de movimiento de la lista 1 del bloque de ubicación 25 conjunta como vector de movimiento para la obtención de los vectores de movimiento de modo directo, determinar una imagen de referencia apuntada por el vector de movimiento de la lista 1 del bloque de ubicación conjunta como imagen de referencia de la lista 0 para modo directo, y obtener los vectores de movimiento de modo directo de la imagen B. In accordance with a further aspect of the present invention, there is provided a method for calculating motion vectors directly from an image B (bidirectional prediction) in a motion image coding system in order to extract motion vectors directly from image B, which comprises the step of, if a joint location block in a reference image of list 1 for direct mode has only one motion vector of list 1, use the motion vector of the list 1 of the joint location block 25 as a motion vector for obtaining the motion vectors directly, determine a reference image pointed by the motion vector of the list 1 of the joint location block as a reference image of the list 0 for direct mode, and get the direct mode motion vectors of image B.

De acuerdo con un aspecto adicional de la presente invención, se proporciona un método para calcular vectores de movimiento de modo directo de una imagen B (de predicción bidireccional) en un sistema de codificación de 30 imágenes en movimiento con el fin de extraer los vectores de movimiento de modo directo de la imagen B, que comprende la etapa de fijar una imagen decodificada en último lugar como imagen de referencia de la lista 1 para modo directo, cambiar la escala de un vector de movimiento de un bloque de ubicación conjunta en la imagen de referencia de la lista 1 para modo directo con el fin de obtener un vector de movimiento de la lista 0, MVF, y un vector de movimiento de la lista 1 ,MVB, y calcular los vectores de movimiento de modo directo de la imagen B. En un método convencional, 35 una imagen que tiene un índice 0 para la predicción de la lista 1 se define de manera que sea una imagen de referencia de la lista 1 para modo directo. Cuando se decodifica una imagen diferente entre la imagen B y la imagen con el índice 0, debe mantenerse la información de movimiento y la información de imagen de referencia de la imagen con el índice 0, lo cual da como resultado un uso de memoria adicional. Sin embargo, el presente método puede ahorrar el uso de memoria adicional. 40 In accordance with a further aspect of the present invention, there is provided a method for calculating motion vectors directly from an image B (bidirectional prediction) in a coding system of 30 moving images in order to extract the vectors from Direct mode movement of image B, comprising the step of fixing a decoded image last as a reference image of list 1 for direct mode, changing the scale of a motion vector of a joint location block in the image reference list 1 for direct mode in order to obtain a motion vector from list 0, MVF, and a motion vector from list 1, MVB, and calculate the direct mode motion vectors of image B In a conventional method, an image having an index 0 for the prediction of list 1 is defined to be a reference image of list 1 for direct mode. When a different image is decoded between image B and the image with the index 0, the movement information and the reference image information of the image with the index 0 must be maintained, which results in an additional memory usage. However, the present method can save the use of additional memory. 40

De acuerdo con un aspecto adicional de la presente invención, se proporciona un método para calcular vectores de movimiento de modo directo de una imagen B (de predicción bidireccional) en un sistema de codificación de imágenes en movimiento con el fin de extraer los vectores de movimiento de modo directo de la imagen B, que comprende la etapa de, si una imagen de referencia de la lista 1 para modo directo precede temporalmente a la imagen B, cambiar la escala de un vector de movimiento de un bloque de ubicación conjunta en la imagen de referencia de la 45 lista 1 para modo directo para obtener un vector de movimiento de la lista 0, MVF, y un vector de movimiento de la lista 1, MVB, y calcular los vectores de movimiento de modo directo de la imagen B. In accordance with a further aspect of the present invention, there is provided a method for calculating motion vectors directly from an image B (bidirectional prediction) in a motion image coding system in order to extract motion vectors directly of image B, which comprises the step of, if a reference image of the list 1 for direct mode temporarily precedes image B, change the scale of a motion vector of a joint location block in the image of reference from list 1 for direct mode to obtain a motion vector from list 0, MVF, and a motion vector from list 1, MVB, and calculate the direct mode motion vectors of image B.

Preferentemente, la etapa anterior puede incluir la etapa de, si tanto un macrobloque de la imagen B como un macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 están en un modo de cuadro y una imagen de referencia de la lista 0 para modo directo precede temporalmente a la imagen de referencia de la lista 1, calcular los 50 vectores de movimiento de modo directo MVF y MVB de la imagen B de la siguiente manera: Preferably, the previous step may include the step of, if both a macroblock of the image B and a macroblock of the joint location of the reference image of list 1 are in a frame mode and a reference image of list 0 for Direct mode temporarily precedes the reference image in list 1, calculate the 50 MVF and MVB direct mode motion vectors of image B as follows:

MVF = TDB x MV/TDD MVF = TDB x MV / TDD

MVB = (TDB - TDD) x MV/TDD MVB = (TDB - TDD) x MV / TDD

ó or

Z = TDB x 256/TDD MVF = (Z x MV + 128) >> 8 55 Z = TDB x 256 / TDD MVF = (Z x MV + 128) >> 8 55

W = Z - 256 MVB = (W x MV + 128) >> 8 W = Z - 256 MVB = (W x MV + 128) >> 8

donde TDB representa una distancia temporal entre un cuadro B actual y un cuadro de referencia de la lista 0, TDD representa una distancia temporal entre un cuadro de referencia de la lista 1 y el cuadro de referencia de la lista 0, y MV representa un vector de movimiento del bloque de ubicación conjunta en la imagen de referencia de la lista 1 para modo directo. where TDB represents a time distance between a current frame B and a reference frame of list 0, TDD represents a time distance between a reference frame of list 1 and the reference frame of list 0, and MV represents a vector of movement of the joint location block in the reference image of list 1 for direct mode.

Además, la etapa anterior puede incluir la etapa de, si tanto un macrobloque de la imagen B como un 5 macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 están en un modo de cuadro y una imagen de referencia de la lista 0 para modo directo sucede temporalmente a la imagen de referencia de la lista 1, calcular los vectores de movimiento de modo directo MVF y MVB de la imagen B de la siguiente manera: In addition, the previous step may include the step of, if both a macroblock of the image B and a macroblock of joint location of the reference image of list 1 are in a frame mode and a reference image of list 0 For direct mode it happens temporarily to the reference image of list 1, calculate the MVF and MVB direct mode motion vectors of image B as follows:

MVF =-TDB x MV/TDD MVF = -TDB x MV / TDD

MVB = - (TDB + TDD) x MV/TDD 10 MVB = - (TDB + TDD) x MV / TDD 10

ó or

Z = - TDB x 256/TDD MVF = (Z x MV + 128) >> 8 Z = - TDB x 256 / TDD MVF = (Z x MV + 128) >> 8

W = Z-256 MVB = (W x MV + 128) >> 8 W = Z-256 MVB = (W x MV + 128) >> 8

donde TDB representa una distancia temporal entre un cuadro B actual y un cuadro de referencia de la lista 0, TDD representa una distancia temporal entre un cuadro de referencia de la lista 1 y el cuadro de referencia de la lista 0, 15 y MV representa un vector de movimiento del bloque de ubicación conjunta en la imagen de referencia de la lista 1 para modo directo. where TDB represents a temporary distance between a current frame B and a reference frame of list 0, TDD represents a time distance between a reference frame of list 1 and the reference frame of list 0, 15 and MV represents a Motion vector of the joint location block in the reference image of list 1 for direct mode.

Además, la etapa anterior puede incluir la etapa de, si tanto un macrobloque de la imagen B como un macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 están en un modo de campo y una imagen de referencia de la lista 0 para modo directo precede temporalmente a la imagen de referencia de la lista 1, calcular los 20 vectores de movimiento de modo directo MVF,i y MVB,i para cada campo i de un cuadro B de la siguiente manera: In addition, the previous step may include the step of, if both a macroblock of the image B and a joint macroblock of the reference image of the list 1 are in a field mode and a reference image of the list 0 for direct mode temporarily precedes the reference image in list 1, calculate the 20 motion vectors of direct mode MVF, i and MVB, i for each field i of a table B as follows:

MVF,i=TDB,i x MVi/TDD,i MVF, i = TDB, i x MVi / TDD, i

MVB,i=(TDB,i-TDD,i)xMVi/TDD,i MVB, i = (TDB, i-TDD, i) xMVi / TDD, i

ó or

Z=TDB,i x 256/TDD,i MVF,i=(Z x MVi+128) >> 8 25 Z = TDB, i x 256 / TDD, i MVF, i = (Z x MVi + 128) >> 8 25

W=Z-256 MVB,i=(W x MVi+128) >> 8 W = Z-256 MVB, i = (W x MVi + 128) >> 8

donde TDB,i representa una distancia temporal entre un campo B actual y un campo de referencia de la lista 0, TDD,i representa una distancia temporal entre un campo de referencia de la lista 1 y el campo de referencia de la lista 0, y MVi representa un vector de movimiento de un bloque de ubicación conjunta en un campo de referencia de la lista 1 para modo directo. 30 where TDB, i represents a time distance between a current field B and a reference field of list 0, TDD, i represents a time distance between a reference field of list 1 and the reference field of list 0, and MVi represents a motion vector of a joint location block in a reference field of list 1 for direct mode. 30

Además, la etapa anterior puede incluir la etapa de, si tanto un macrobloque de la imagen B como un macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 están en un modo de campo y una imagen de referencia de la lista 0 para modo directo sucede temporalmente a la imagen de referencia de la lista 1, calcular los vectores de movimiento de modo directo MVF,i y MVB,i para cada campo i de un cuadro B de la siguiente manera: In addition, the previous step may include the step of, if both a macroblock of the image B and a joint macroblock of the reference image of the list 1 are in a field mode and a reference image of the list 0 for Direct mode temporarily happens to the reference image in list 1, calculate the motion vectors of direct mode MVF, i and MVB, i for each field i of a table B as follows:

MVF,i=-TDB,i x MVi/TDD,i 35 MVF, i = -TDB, i x MVi / TDD, i 35

MVB,i=-(TDB,i+TDD,i) x MVi/TDD,i MVB, i = - (TDB, i + TDD, i) x MVi / TDD, i

ó or

Z=-TDB,i x 256/TDD,i MVF,i=(Z x MVi+128) >> 8 Z = -TDB, i x 256 / TDD, i MVF, i = (Z x MVi + 128) >> 8

W=Z-256 MVB,i=(W x MVi+128) >> 8 W = Z-256 MVB, i = (W x MVi + 128) >> 8

donde TDB,i representa una distancia temporal entre un campo B actual y un campo de referencia de la lista 0, 40 TDD,i representa una distancia temporal entre un campo de referencia de la lista 1 y el campo de referencia de la lista 0, y MVi representa un vector de movimiento de un bloque de ubicación conjunta en un campo de referencia de la lista 1 para modo directo. where TDB, i represents a time distance between a current field B and a reference field of list 0, 40 TDD, i represents a time distance between a reference field of list 1 and the reference field of list 0, and MVi represents a motion vector of a joint location block in a reference field of list 1 for direct mode.

Además, la etapa anterior puede incluir la etapa de, si un macrobloque de la imagen B está en un modo de campo, un macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 está en un modo de cuadro y una 45 imagen de referencia de la lista 0 para modo directo precede temporalmente a la imagen de referencia de la lista 1, calcular los vectores de movimiento de modo directo MVF,i y MVB,i para cada campo i de un cuadro B de la siguiente manera: In addition, the previous stage may include the stage of, if a macroblock of the image B is in a field mode, a joint macroblock of the reference image of the list 1 is in a frame mode and a picture of reference of list 0 for direct mode temporarily precedes the reference image of list 1, calculate the motion vectors of direct mode MVF, i and MVB, i for each field i of a table B as follows:

MVF,i=TDB,i x MV /TDD MVF, i = TDB, i x MV / TDD

MVB,i=(TDB,i-TDD) x MV /TDD MVB, i = (TDB, i-TDD) x MV / TDD

ó or

Z=TDB,i x 256/TDD MVF,i=(Z x MV+128) >> 8 Z = TDB, i x 256 / TDD MVF, i = (Z x MV + 128) >> 8

W=Z-256 MVB,i=(W x MV+128) >> 8 5 W = Z-256 MVB, i = (W x MV + 128) >> 8 5

donde TDB,i representa una distancia temporal entre un campo B actual y un campo de referencia de la lista 0, TDD representa una distancia temporal entre un cuadro de referencia de la lista 1 y un cuadro de referencia de la lista 0, y MV representa un vector de movimiento de un bloque de ubicación conjunta en un cuadro de referencia de la lista 1 para modo directo. where TDB, i represents a time distance between a current field B and a reference field of list 0, TDD represents a time distance between a reference box of list 1 and a reference box of list 0, and MV represents a motion vector of a joint location block in a reference chart in list 1 for direct mode.

Además, la etapa anterior puede incluir la etapa de, si un macrobloque de la imagen B está en un modo de 10 campo, un macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 está en un modo de cuadro y una imagen de referencia de la lista 0 para modo directo sucede temporalmente a la imagen de referencia de la lista 1, calcular los vectores de movimiento de modo directo MVF,i y MVB,i para cada campo i de un cuadro B de la siguiente manera: In addition, the previous stage may include the stage of, if a macroblock of the image B is in a 10-field mode, a joint macroblock of the reference image of the list 1 is in a frame mode and an image of Reference of list 0 for direct mode temporarily happens to the reference image of list 1, calculate the motion vectors of direct mode MVF, i and MVB, i for each field i of a table B as follows:

MVF,i=-TDB,i x MV/TDD 15 MVF, i = -TDB, i x MV / TDD 15

MVB,i = - (TDB,i+TDD)xMV/TDD MVB, i = - (TDB, i + TDD) xMV / TDD

ó or

Z = - TDB,i x 256/TDD MVF,i = (Z x MV + 128) >> 8 Z = - TDB, i x 256 / TDD MVF, i = (Z x MV + 128) >> 8

W = Z-256 MVB,i=(W x MV + 128) >> 8 W = Z-256 MVB, i = (W x MV + 128) >> 8

donde TDB,i representa una distancia temporal entre un campo B actual y un campo de referencia de la lista 0, 20 TDD representa una distancia temporal entre un cuadro de referencia de la lista 1 y un cuadro de referencia de la lista 0, y MV representa un vector de movimiento de un bloque de ubicación conjunta en un cuadro de referencia de la lista 1 para modo directo. where TDB, i represents a time distance between a current field B and a reference field of list 0, 20 TDD represents a time distance between a reference box of list 1 and a reference box of list 0, and MV represents a motion vector of a joint location block in a reference chart in list 1 for direct mode.

Además, la etapa anterior puede incluir la etapa de, si un macrobloque de la imagen B está en un modo de cuadro, un macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 está en un modo de campo y una 25 imagen de referencia de la lista 0 para modo directo precede temporalmente a la imagen de referencia de la lista 1, calcular los vectores de movimiento de modo directo MVF y MVB de un cuadro B a partir de la siguiente ecuación donde, para el cálculo de los vectores de movimiento de modo directo, se usa información de movimiento de un bloque de ubicación conjunta en un campo 1 de un cuadro de referencia de la lista 1: In addition, the previous stage may include the stage of, if a macroblock of the image B is in a frame mode, a joint macroblock of the reference image of the list 1 is in a field mode and a picture of reference of list 0 for direct mode temporarily precedes the reference image of list 1, calculate the MVF and MVB direct mode motion vectors of a table B from the following equation where, for the calculation of the vectors of Direct mode movement, movement information from a joint location block is used in a field 1 of a reference list in list 1:

MVF=TDB x MV1 /TDD,1 30 MVF = TDB x MV1 / TDD, 1 30

MVB=(TDB-TDD,1)xMV1 /TDD,1 MVB = (TDB-TDD, 1) xMV1 / TDD, 1

ó or

Z=TDB x 256/TDD,1 MVF=(Z x MV1+ 128) >> 8 Z = TDB x 256 / TDD, 1 MVF = (Z x MV1 + 128) >> 8

W=Z-256 MVB=(W x MV1+ 128) >> 8 W = Z-256 MVB = (W x MV1 + 128) >> 8

donde TDB representa una distancia temporal entre un cuadro B actual y un cuadro de referencia de la lista 0, 35 TDD,1 representa una distancia temporal entre un campo 1 del cuadro de referencia de la lista 1 y un campo de referencia de la lista 0, y MV1 representa un vector de movimiento de un bloque de ubicación conjunta en el campo 1 del cuadro de referencia de la lista 1 para modo directo. where TDB represents a time distance between a current frame B and a reference frame of list 0, 35 TDD, 1 represents a time distance between a field 1 of the reference frame of list 1 and a reference field of list 0 , and MV1 represents a motion vector of a joint location block in field 1 of the reference table in list 1 for direct mode.

Además, la etapa anterior puede incluir la etapa de, si un macrobloque de la imagen B está en un modo de cuadro, un macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 está en un modo de campo y una 40 imagen de referencia de la lista 0 para modo directo sucede temporalmente a la imagen de referencia de la lista 1, calcular los vectores de movimiento de modo directo MVF y MVB de un cuadro B a partir de la siguiente ecuación donde, para el cálculo de los vectores de movimiento de modo directo, se usa información de movimiento de un bloque de ubicación conjunta en un campo 1 de un cuadro de referencia de la lista 1: In addition, the previous stage may include the stage of, if a macroblock of the image B is in a frame mode, a joint macroblock of the reference image of the list 1 is in a field mode and a picture of reference of list 0 for direct mode temporarily happens to the reference image of list 1, calculate the MVF and MVB direct mode motion vectors of a table B from the following equation where, for the calculation of the vectors of Direct mode movement, movement information from a joint location block is used in a field 1 of a reference list in list 1:

MVF=-TDB x MV1/TDD,1 45 MVF = -TDB x MV1 / TDD, 1 45

MVB=-(TDB+TDD,1)xMV1/TDD,1 MVB = - (TDB + TDD, 1) xMV1 / TDD, 1

ó or

Z=-TDB x 256/TDD,1 MVF=(Z x MV1+ 128) >> 8 Z = -TDB x 256 / TDD, 1 MVF = (Z x MV1 + 128) >> 8

W=Z-256 MVB=(W x MV1+ 128) >> 8 W = Z-256 MVB = (W x MV1 + 128) >> 8

donde TDB representa una distancia temporal entre un cuadro B actual y un cuadro de referencia de la lista 0, TDD,1 representa una distancia temporal entre un campo 1 del cuadro de referencia de la lista 1 y un campo de referencia de la lista 0, y MV1 representa un vector de movimiento de un bloque de ubicación conjunta en el campo 1 del cuadro de referencia de la lista 1 para modo directo. 5 where TDB represents a time distance between a current frame B and a reference frame of list 0, TDD, 1 represents a time distance between a field 1 of the reference frame of list 1 and a reference field of list 0, and MV1 represents a motion vector of a joint location block in field 1 of the reference table in list 1 for direct mode. 5

De acuerdo con otro aspecto de la presente invención, se proporciona un método para calcular vectores de movimiento de modo directo de una imagen B(de predicción bidireccional) en un sistema de codificación de imágenes en movimiento con el fin de extraer los vectores de movimiento de modo directo de la imagen B, que comprende la etapa de, si tanto una imagen de referencia de la lista 0 como la imagen de referencia de la lista 1 para modo directo suceden temporalmente a la imagen B, cambiar de escala un vector de movimiento de un bloque de ubicación conjunta 10 en la imagen de referencia de la lista 1 para modo directo para obtener un vector de movimiento de la lista 0, MVF, y un vector de movimiento de la lista 1, MVB, y calcular los vectores de movimiento de modo directo de la imagen B. In accordance with another aspect of the present invention, there is provided a method for calculating motion vectors directly from an image B (bidirectional prediction) in a motion image coding system in order to extract motion vectors from direct mode of image B, comprising the step of, if both a reference image of list 0 and the reference image of list 1 for direct mode temporarily occur to image B, scale a motion vector of a joint location block 10 in the reference image of list 1 for direct mode to obtain a motion vector of list 0, MVF, and a motion vector of list 1, MVB, and calculate the motion vectors of direct mode of image B.

Preferentemente, la etapa anterior puede incluir la etapa de, si tanto un macrobloque de la imagen B como un macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 están en un modo de cuadro y la imagen de referencia de la lista 0 para modo directo sucede temporalmente a la imagen de referencia de la lista 1, calcular los 15 vectores de movimiento de modo directo MVF y MVB de la imagen B de la siguiente manera: Preferably, the previous step may include the step of, if both a macroblock of image B and a macroblock of joint location of the reference image of list 1 are in a frame mode and the reference image of list 0 for Direct mode temporarily happens to the reference image in list 1, calculate the 15 MVF and MVB direct mode motion vectors of image B as follows:

MVF=TDB x MV/TDD MVF = TDB x MV / TDD

MVB=(TDB-TDD) x MV/TDD MVB = (TDB-TDD) x MV / TDD

ó or

Z=TDB x 256/TDD MVF=(Z x MV+ 128) >> 8 20 Z = TDB x 256 / TDD MVF = (Z x MV + 128) >> 8 20

W=Z-256 MVB=(W x MV+ 128) >> 8 W = Z-256 MVB = (W x MV + 128) >> 8

donde TDB representa una distancia temporal entre un cuadro B actual y un cuadro de referencia de la lista 0, TDD representa una distancia temporal entre un cuadro de referencia de la lista 1 y el cuadro de referencia de la lista 0, y MV representa un vector de movimiento del bloque de ubicación conjunta en la imagen de referencia de la lista 1 para modo directo. 25 where TDB represents a time distance between a current frame B and a reference frame of list 0, TDD represents a time distance between a reference frame of list 1 and the reference frame of list 0, and MV represents a vector of movement of the joint location block in the reference image of list 1 for direct mode. 25

Además, la etapa anterior puede incluir la etapa de, si tanto un macrobloque de la imagen B como un macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 están en un modo de cuadro y la imagen de referencia de la lista 0 para modo directo precede temporalmente a la imagen de referencia de la lista 1, calcular los vectores de movimiento de modo directo MVF y MVB de la imagen B de la siguiente manera: In addition, the previous stage may include the stage of, if both a macroblock of the image B and a joint macroblock of the reference image of the list 1 are in a frame mode and the reference image of the list 0 for Direct mode temporarily precedes the reference image in list 1, calculate the MVF and MVB direct mode motion vectors of image B as follows:

MVF=-TDB x MV/TDD 30 MVF = -TDB x MV / TDD 30

MVB=-(TDB+TDD) x MV/TDD MVB = - (TDB + TDD) x MV / TDD

ó or

Z=-TDB x 256/TDD MVF=(Z x MV+ 128) >> 8 Z = -TDB x 256 / TDD MVF = (Z x MV + 128) >> 8

W=Z-256 MVB=(W x MV+ 128) >> 8 W = Z-256 MVB = (W x MV + 128) >> 8

donde TDB representa una distancia temporal entre un cuadro B actual y un cuadro de referencia de la lista 0, 35 TDD representa una distancia temporal entre un cuadro de referencia de la lista 1 y el cuadro de referencia de la lista 0, y MV representa un vector de movimiento del bloque de ubicación conjunta en la imagen de referencia de la lista 1 para modo directo. where TDB represents a time distance between a current frame B and a reference frame of list 0, 35 TDD represents a time distance between a reference frame of list 1 and the reference frame of list 0, and MV represents a Motion vector of the joint location block in the reference image of list 1 for direct mode.

Además, la etapa anterior puede incluir la etapa de, si tanto un macrobloque de la imagen B como un macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 están en un modo de campo y la imagen de 40 referencia de la lista 0 para modo directo sucede temporalmente a la imagen de referencia de la lista 1, calcular los vectores de movimiento de modo directo MVF,i y MVB,i para cada campo i de un cuadro B de la siguiente manera: In addition, the previous step may include the step of, if both a macroblock of the image B and a macroblock of joint location of the reference image of list 1 are in a field mode and the reference image of list 0 for direct mode it happens temporarily to the reference image of list 1, calculate the motion vectors of direct mode MVF, i and MVB, i for each field i of a table B as follows:

MVF,i=TDB,i x MVi/TDD,i MVF, i = TDB, i x MVi / TDD, i

MVB,i=(TDB,i-TDD,i) x MVi/TDD,i MVB, i = (TDB, i-TDD, i) x MVi / TDD, i

ó 45 or 45

Z=TDB,i x 256/TDD,i MVF,i=(Z x MVi+ 128) >> 8 Z = TDB, i x 256 / TDD, i MVF, i = (Z x MVi + 128) >> 8

W=Z-256 MVB,i=(W x MVi+ 128) >> 8 W = Z-256 MVB, i = (W x MVi + 128) >> 8

donde TDB,i representa una distancia temporal entre un campo B actual y un campo de referencia de la lista 0, where TDB, i represents a temporary distance between a current field B and a reference field from list 0,

TDD,i representa una distancia temporal entre un campo de referencia de la lista 1 y el campo de referencia de la lista 0, y MVi representa un vector de movimiento de un bloque de ubicación conjunta en un campo de referencia de la lista 1 para modo directo. TDD, i represents a temporal distance between a reference field of list 1 and the reference field of list 0, and MVi represents a motion vector of a joint location block in a reference field of list 1 for mode direct.

Además, la etapa anterior puede incluir la etapa de, si tanto un macrobloque de la imagen B como un macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 están en un modo de campo y la imagen de 5 referencia de la lista 0 para modo directo precede temporalmente a la imagen de referencia de la lista 1, calcular los vectores de movimiento de modo directo MVF,i y MVB,i para cada campo i de un cuadro B de la siguiente manera: In addition, the previous stage may include the stage of, if both a macroblock of the image B and a joint macroblock of the reference image of the list 1 are in a field mode and the reference image of the list 0 for direct mode, it temporarily precedes the reference image in list 1, calculate the motion vectors of direct mode MVF, i and MVB, i for each field i of a table B as follows:

MVF,i=-TDB,i x MVi/TDD,i MVF, i = -TDB, i x MVi / TDD, i

MVB,i=-(TDB,i+TDD,i) x MVi/TDD,i MVB, i = - (TDB, i + TDD, i) x MVi / TDD, i

ó 10 or 10

Z=-TDB,i x 256/TDD,i MVF,i=(Z x MVi+ 128) >> 8 Z = -TDB, i x 256 / TDD, i MVF, i = (Z x MVi + 128) >> 8

W=Z-256 MVB,i=(W x MVi+ 128) >> 8 W = Z-256 MVB, i = (W x MVi + 128) >> 8

donde TDB,i representa una distancia temporal entre un campo B actual y un campo de referencia de la lista 0, TDD,i representa una distancia temporal entre un campo de referencia de la lista 1 y el campo de referencia de la lista 0, y MVi representa un vector de movimiento de un bloque de ubicación conjunta en un campo de referencia de la lista 1 15 para modo directo. where TDB, i represents a time distance between a current field B and a reference field of list 0, TDD, i represents a time distance between a reference field of list 1 and the reference field of list 0, and MVi represents a motion vector of a joint location block in a reference field of list 1 15 for direct mode.

Además, la etapa anterior puede incluir la etapa de, si un macrobloque de la imagen B está en un modo de campo, un macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 está en un modo de cuadro y la imagen de referencia de la lista 0 para modo directo sucede temporalmente a la imagen de referencia de la lista 1, calcular los vectores de movimiento de modo directo MVF,i y MVB,i para cada campo i de un cuadro B de la siguiente 20 manera: In addition, the previous stage may include the stage of, if a macroblock of the image B is in a field mode, a joint macroblock of the reference image of the list 1 is in a frame mode and the reference image from list 0 for direct mode it happens temporarily to the reference image of list 1, calculate the motion vectors of direct mode MVF, i and MVB, i for each field i of a table B in the following way:

MVF,i=TDB,i x MV /TDD MVF, i = TDB, i x MV / TDD

MVB,i=(TDB,i-TDD) x MV /TDD MVB, i = (TDB, i-TDD) x MV / TDD

ó or

Z=TDB,i x 256/TDD MVF,i=(Z x MV+ 128) >> 8 25 Z = TDB, i x 256 / TDD MVF, i = (Z x MV + 128) >> 8 25

W=Z-256 MVB,i=(W x MV+ 128) >> 8 W = Z-256 MVB, i = (W x MV + 128) >> 8

donde TDB,i representa una distancia temporal entre un campo B actual y un campo de referencia de la lista 0, TDD representa una distancia temporal entre un cuadro de referencia de la lista 1 y un cuadro de referencia de la lista 0, y MV representa un vector de movimiento de un bloque de ubicación conjunta en un cuadro de referencia de la lista 1 para modo directo. 30 where TDB, i represents a time distance between a current field B and a reference field of list 0, TDD represents a time distance between a reference box of list 1 and a reference box of list 0, and MV represents a motion vector of a joint location block in a reference chart in list 1 for direct mode. 30

Además, la etapa anterior puede incluir la etapa de, si un macrobloque de la imagen B está en un modo de campo, un macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 está en un modo de cuadro y la imagen de referencia de la lista 0 para modo directo precede temporalmente a la imagen de referencia de la lista 1, calcular los vectores de movimiento de modo directo MVF,i y MVB,i para cada campo i de un cuadro B de la siguiente manera: 35 In addition, the previous stage may include the stage of, if a macroblock of the image B is in a field mode, a joint macroblock of the reference image of the list 1 is in a frame mode and the reference image from list 0 for direct mode temporarily precedes the reference image from list 1, calculate the motion vectors of direct mode MVF, i and MVB, i for each field i of a table B as follows:

MVF,i=-TDB,i x MV/TDD MVF, i = -TDB, i x MV / TDD

MVB,i=-(TDB,i+TDD) x MV/TDD MVB, i = - (TDB, i + TDD) x MV / TDD

ó or

Z=-TDB,i x 256/TDD MVF,i=(Z x MV+ 128) >> 8 Z = -TDB, i x 256 / TDD MVF, i = (Z x MV + 128) >> 8

W=Z-256 MVB,i=(W x MV+ 128) >> 8 40 W = Z-256 MVB, i = (W x MV + 128) >> 8 40

donde TDB,i representa una distancia temporal entre un campo B actual y un campo de referencia de la lista 0, TDD representa una distancia temporal entre un cuadro de referencia de la lista 1 y un cuadro de referencia de la lista 0, y MV representa un vector de movimiento de un bloque de ubicación conjunta en un cuadro de referencia de la lista 1 para modo directo. where TDB, i represents a time distance between a current field B and a reference field of list 0, TDD represents a time distance between a reference box of list 1 and a reference box of list 0, and MV represents a motion vector of a joint location block in a reference chart in list 1 for direct mode.

Además, la etapa anterior puede incluir la etapa de, si un macrobloque de la imagen B está en un modo de 45 cuadro, un macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 está en un modo de campo y la imagen de referencia de la lista 0 para modo directo sucede temporalmente a la imagen de referencia de la lista 1, calcular los vectores de movimiento de modo directo MVF y MVB de un cuadro B a partir de la siguiente ecuación donde, para el cálculo de los vectores de movimiento de modo directo, se usa información de movimiento de un bloque de In addition, the previous stage may include the stage of, if a macroblock of the image B is in a frame mode, a joint macroblock of the reference image of the list 1 is in a field mode and the image of reference of list 0 for direct mode temporarily happens to the reference image of list 1, calculate the MVF and MVB direct mode motion vectors of a table B from the following equation where, for the calculation of the vectors of Direct mode movement, movement information from a block of

ubicación conjunta en un campo 0 de un cuadro de referencia de la lista 1: joint location in a field 0 of a reference chart in list 1:

MVF=TDB x MV0 /TDD,0 MVF = TDB x MV0 / TDD, 0

MVB=(TDB-TDD,0) x MV0 /TDD,0 MVB = (TDB-TDD, 0) x MV0 / TDD, 0

ó or

Z=TDB x 256/TDD,0 MVF=(Z x MV0+ 128) >> 8 5 Z = TDB x 256 / TDD, 0 MVF = (Z x MV0 + 128) >> 8 5

W=Z-256 MVB=(W x MV0+ 128) >> 8 W = Z-256 MVB = (W x MV0 + 128) >> 8

donde TDB representa una distancia temporal entre un cuadro B actual y un cuadro de referencia de la lista 0, TDD,0 representa una distancia temporal entre un campo 0 del cuadro de referencia de la lista 1 y un campo de referencia de la lista 0, y MV0 representa un vector de movimiento de un bloque de ubicación conjunta en el campo 0 del cuadro de referencia de la lista 1 para modo directo. Además, la etapa anterior puede incluir la etapa de, si un 10 macrobloque de la imagen B está en un modo de cuadro, un macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 está en un modo de campo y la imagen de referencia de la lista 0 para modo directo precede temporalmente a la imagen de referencia de la lista 1, calcular los vectores de movimiento de modo directo MVF y MVB de un cuadro B a partir de la siguiente ecuación, donde, para el cálculo de los vectores de movimiento de modo directo, se usa información de movimiento de un bloque de ubicación conjunta en un campo 0 de un cuadro de referencia de la 15 lista 1: where TDB represents a temporary distance between a current frame B and a reference frame of list 0, TDD, 0 represents a time distance between a field 0 of the reference frame of list 1 and a reference field of list 0, and MV0 represents a motion vector of a joint location block in field 0 of the reference table in list 1 for direct mode. In addition, the previous stage may include the stage of, if a macroblock of the image B is in a frame mode, a joint macroblock of the reference image of the list 1 is in a field mode and the image of reference of list 0 for direct mode temporarily precedes the reference image of list 1, calculate the MVF and MVB direct mode motion vectors of a table B from the following equation, where, for the calculation of vectors of direct mode movement, movement information of a joint location block is used in a field 0 of a reference table of list 1:

MVF=-TDB x MV0/TDD,0 MVF = -TDB x MV0 / TDD, 0

MVB=-(TDB+TDD,0) x MV0/TDD,0 MVB = - (TDB + TDD, 0) x MV0 / TDD, 0

ó or

Z=-TDB x 256/TDD,0 MVF=(Z x MV0+ 128) >> 8 20 Z = -TDB x 256 / TDD, 0 MVF = (Z x MV0 + 128) >> 8 20

W=Z-256 MVB=(W x MV0+ 128) >> 8 W = Z-256 MVB = (W x MV0 + 128) >> 8

donde TDB representa una distancia temporal entre un cuadro B actual y un cuadro de referencia de la lista 0, TDD,0 representa una distancia temporal entre un campo 0 del cuadro de referencia de la lista 1 y un campo de referencia de la lista 0, y MV0 representa un vector de movimiento de un bloque de ubicación conjunta en el campo 0 del cuadro de referencia de la lista 1 para modo directo. 25 where TDB represents a temporary distance between a current frame B and a reference frame of list 0, TDD, 0 represents a time distance between a field 0 of the reference frame of list 1 and a reference field of list 0, and MV0 represents a motion vector of a joint location block in field 0 of the reference table in list 1 for direct mode. 25

De acuerdo con otro aspecto de la presente invención, se proporciona un método para calcular vectores de movimiento de modo directo de una imagen B (de predicción bidireccional) en un sistema de codificación de imágenes en movimiento con el fin de extraer los vectores de movimiento de modo directo de la imagen B, que comprende la etapa de asignar un signo a un valor de distancia temporal entre imágenes, cambiar de escala un vector de movimiento de un bloque de ubicación conjunta en una imagen de referencia de la lista 1 para modo directo con independencia de 30 las ubicaciones de las imágenes de referencia de la lista 0 y de la lista 1 para modo directo con el fin de obtener un vector de movimiento de la lista 0, MVF, y un vector de movimiento de la lista 1, MVB, y calcular los vectores de movimiento de modo directo de la imagen B. In accordance with another aspect of the present invention, there is provided a method for calculating motion vectors directly from an image B (bidirectional prediction) in a motion image coding system in order to extract motion vectors from direct mode of image B, which comprises the step of assigning a sign to a time distance value between images, scaling a motion vector of a joint location block in a reference image of list 1 for direct mode with Independence of the locations of the reference images of list 0 and list 1 for direct mode in order to obtain a movement vector from list 0, MVF, and a movement vector from list 1, MVB, and calculate the motion vectors directly from image B.

Preferentemente, la etapa anterior puede incluir la etapa de, si tanto un macrobloque de la imagen B como un macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 están en un modo de cuadro, calcular los 35 vectores de movimiento de modo directo MVF y MVB de la imagen B de la siguiente manera: Preferably, the previous step may include the step of, if both a macroblock of image B and a macroblock of joint location of the reference image of list 1 are in a frame mode, calculate the 35 motion vectors directly MVF and MVB of image B as follows:

MVF = TDB x MV/TDD MVF = TDB x MV / TDD

MVB = (TDB - TDD) x MV/TDD MVB = (TDB - TDD) x MV / TDD

ó or

Z = TDB x 256/TDD MVF = (Z x MV + 128) >> 8 40 Z = TDB x 256 / TDD MVF = (Z x MV + 128) >> 8 40

W = Z - 256 MVB = (W x MV + 128) >> 8 W = Z - 256 MVB = (W x MV + 128) >> 8

donde TDB representa una distancia temporal entre un cuadro B actual y un cuadro de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el cuadro B y un signo negativo (-) si se mide desde el cuadro de referencia de la lista 0, TDD representa una distancia temporal entre un cuadro de referencia de la lista 1 y el cuadro de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el cuadro de referencia de la lista 1 y un 45 signo negativo (-) si se mide desde el cuadro de referencia de la lista 0, y MV representa un vector de movimiento del bloque de ubicación conjunta en la imagen de referencia de la lista 1 para modo directo. where TDB represents a temporary distance between a current B frame and a reference chart of list 0, to which a positive sign (+) is assigned if measured from table B and a negative sign (-) if measured from the reference table of list 0, TDD represents a time distance between a reference box of list 1 and the reference box of list 0, to which a positive sign (+) is assigned if measured from the table reference list 1 and a negative sign (-) if measured from the reference table of list 0, and MV represents a motion vector of the joint location block in the reference image of list 1 for mode direct.

Además, la etapa anterior puede incluir la etapa de, si tanto un macrobloque de la imagen B como un macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 están en un modo de campo, calcular los vectores de movimiento de modo directo MVF,i y MVB,i para cada campo i de un cuadro B de la siguiente manera: 50 In addition, the previous stage may include the step of, if both a macroblock of the image B and a macroblock of the joint location of the reference image of the list 1 are in a field mode, calculate the MVF direct mode motion vectors , i and MVB, i for each field i of a table B as follows: 50

MVF,i = TDB,i x MVi/TDD,i MVF, i = TDB, i x MVi / TDD, i

MVB,i = (TDB,i - TDD,i) x MVi/TDD,i MVB, i = (TDB, i - TDD, i) x MVi / TDD, i

ó or

Z = TDB,i x 256/TDD,i MVF,i = (Z x MVi + 128) >> 8 Z = TDB, i x 256 / TDD, i MVF, i = (Z x MVi + 128) >> 8

W = Z - 256 MVB,i = (W x MVi + 128) >> 8 5 W = Z - 256 MVB, i = (W x MVi + 128) >> 8 5

donde TDB,i representa una distancia temporal entre un campo B actual y un campo de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el campo B y un signo negativo (-) si se mide desde el campo de referencia de la lista 0, TDD,i representa una distancia temporal entre un campo de referencia de la lista 1 y el campo de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el campo de referencia de la lista 1 y un signo negativo (-) si se mide desde el campo de referencia de la lista 0, y MVi representa un vector de movimiento de 10 un bloque de ubicación conjunta en un campo de referencia de la lista 1 para modo directo. where TDB, i represents a time distance between a current field B and a reference field from list 0, to which a positive sign (+) is assigned if measured from field B and a negative sign (-) if measured from the reference field of list 0, TDD, i represents a temporal distance between a reference field of list 1 and the reference field of list 0, to which a positive sign (+) is assigned if measured from the reference field of list 1 and a negative sign (-) if measured from the reference field of list 0, and MVi represents a motion vector of 10 a joint location block in a reference field of List 1 for direct mode.

Además, la etapa anterior puede incluir la etapa de, si un macrobloque de la imagen B está en un modo de campo y un macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 está en un modo de cuadro, calcular los vectores de movimiento de modo directo MVF,i y MVB,i para cada campo i de un cuadro B de la siguiente manera: 15 In addition, the previous stage may include the stage of, if a macroblock of the image B is in a field mode and a joint macroblock of the reference image of the list 1 is in a frame mode, calculate the vectors of Direct mode movement MVF, i and MVB, i for each field i of a frame B as follows:

MVF,i = TDB,i x MV /TDD MVF, i = TDB, i x MV / TDD

MVB,i = (TDB,i - TDD) x MV/TDD MVB, i = (TDB, i - TDD) x MV / TDD

ó or

Z = TDB,i x 256/TDD MVF,i = (Z x MV + 128) >> 8 Z = TDB, i x 256 / TDD MVF, i = (Z x MV + 128) >> 8

W = Z - 256 MVB,i = (W x MV + 128) >> 8 20 W = Z - 256 MVB, i = (W x MV + 128) >> 8 20

donde TDB,i representa una distancia temporal entre un campo B actual y un campo de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el campo B y un signo negativo (-) si se mide desde el campo de referencia de la lista 0, TDD representa una distancia temporal entre el cuadro de referencia de la lista 1 y el cuadro de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el cuadro de referencia de la lista 1 y un signo negativo (-) si se mide desde el cuadro de referencia de la lista 0, y MV representa un vector de movimiento de 25 un bloque de ubicación conjunta en un cuadro de referencia de la lista 1 para modo directo. where TDB, i represents a time distance between a current field B and a reference field from list 0, to which a positive sign (+) is assigned if measured from field B and a negative sign (-) if measured from the reference field of list 0, TDD represents a temporary distance between the reference table of list 1 and the reference box of list 0, to which a positive sign (+) is assigned if measured from the reference chart in list 1 and a negative sign (-) if measured from the reference chart in list 0, and MV represents a motion vector of 25 a joint location block in a reference chart in the list 1 for direct mode.

Además, la etapa anterior puede incluir la etapa de, si un macrobloque de la imagen B está en un modo de cuadro, un macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 está en un modo de campo y la imagen de referencia de la lista 1 sucede temporalmente a la imagen B, calcular los vectores de movimiento de modo directo MVF y MVB de un cuadro B a partir de la siguiente ecuación donde, para el cálculo de los vectores de movimiento 30 de modo directo, se usa información de movimiento de un bloque de ubicación conjunta en un campo 0 de un cuadro de referencia de la lista 1: In addition, the previous stage may include the stage of, if a macroblock of the image B is in a frame mode, a joint macroblock of the reference image of the list 1 is in a field mode and the reference image from list 1 it happens temporarily to image B, calculate the motion vectors of direct mode MVF and MVB of a table B from the following equation where, for the calculation of motion vectors 30 directly, information is used of movement of a joint location block in a field 0 of a reference chart in list 1:

MVF = TDB x MV0 /TDD,0 MVF = TDB x MV0 / TDD, 0

MVB = (TDB - TDD,0) x MV0/TDD,0 MVB = (TDB - TDD, 0) x MV0 / TDD, 0

ó 35 or 35

Z = TDB x 256/TDD,0 MVF = (Z x MV0+ 128) >> 8 Z = TDB x 256 / TDD, 0 MVF = (Z x MV0 + 128) >> 8

W = Z - 256 MVB = (W x MV0+ 128) >> 8 W = Z - 256 MVB = (W x MV0 + 128) >> 8

donde TDB representa una distancia temporal entre un cuadro B actual y un cuadro de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el cuadro B y un signo negativo (-) si se mide desde el cuadro de referencia de la lista 0, TDD,0 representa una distancia temporal entre un campo 0 del cuadro de referencia de la lista 1 y 40 un campo de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el campo 0 del cuadro de referencia de la lista 1 y un signo negativo (-) si se mide desde el campo de referencia de la lista 0, y MV0 representa un vector de movimiento de un bloque de ubicación conjunta en el campo 0 del cuadro de referencia de la lista 1 para modo directo. where TDB represents a temporary distance between a current B frame and a reference chart of list 0, to which a positive sign (+) is assigned if measured from table B and a negative sign (-) if measured from The reference table of list 0, TDD, 0 represents a time distance between a field 0 of the reference box of list 1 and 40 a reference field of list 0, to which a positive sign (+) is assigned if measured from field 0 of the reference table in list 1 and a negative sign (-) if measured from the reference field in list 0, and MV0 represents a motion vector of a joint location block in the field 0 of the reference list in list 1 for direct mode.

Además, la etapa anterior puede incluir la etapa de, si un macrobloque de la imagen B está en un modo de 45 cuadro, un macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 está en un modo de campo y la imagen de referencia de la lista 1 precede temporalmente a la imagen B, calcular los vectores de movimiento de modo directo MVF y MVB de un cuadro B a partir de la siguiente ecuación donde, para el cálculo de los vectores de movimiento de modo directo, se usa información de movimiento de un bloque de ubicación conjunta en un campo 1 de un cuadro de referencia de la lista 1: 50 In addition, the previous stage may include the stage of, if a macroblock of the image B is in a frame mode, a joint macroblock of the reference image of the list 1 is in a field mode and the image of reference from list 1 temporarily precedes image B, calculating the MVF and MVB direct mode motion vectors of a table B from the following equation where, for the calculation of the direct mode motion vectors, information is used of movement of a joint location block in a field 1 of a reference chart of the 1: 50 list

MVF = TDB x MV1/TDD,1 MVF = TDB x MV1 / TDD, 1

MVB = (TDB - TDD,1) x MV1 /TDD,1 MVB = (TDB - TDD, 1) x MV1 / TDD, 1

ó or

Z = TDB x 256/TDD,1 MVF = (Z x MV1 + 128) >> 8 Z = TDB x 256 / TDD, 1 MVF = (Z x MV1 + 128) >> 8

W = Z - 256 MVB = (W x MV1 + 128) >> 8 5 W = Z - 256 MVB = (W x MV1 + 128) >> 8 5

donde TDB representa una distancia temporal entre un cuadro B actual y un cuadro de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el cuadro B y un signo negativo (-) si se mide desde el cuadro de referencia de la lista 0, TDD,1 representa una distancia temporal entre un campo 1 del cuadro de referencia de la lista 1 y un campo de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el campo 1 del cuadro de referencia de la lista 1 y un signo negativo (-) si se mide desde el campo de referencia de la lista 0, y MV1 representa un 10 vector de movimiento de un bloque de ubicación conjunta en el campo 1 del cuadro de referencia de la lista 1 para modo directo. where TDB represents a temporary distance between a current B frame and a reference chart of list 0, to which a positive sign (+) is assigned if measured from table B and a negative sign (-) if measured from the reference table of list 0, TDD, 1 represents a time distance between a field 1 of the reference box of list 1 and a reference field of list 0, to which a positive sign (+) is assigned if it is measured from field 1 of the reference table of list 1 and a negative sign (-) if measured from the reference field of list 0, and MV1 represents a motion vector of a joint location block in the field 1 of the reference table in list 1 for direct mode.

De acuerdo con todavía otro aspecto de la presente invención, se proporciona un método para calcular vectores de movimiento de modo directo de una imagen B (de predicción bidireccional) en un sistema de codificación de imágenes en movimiento con el fin de extraer los vectores de movimiento de modo directo de la imagen B, que 15 comprende la etapa de, si un macrobloque de ubicación conjunta en una imagen de referencia de la lista 1 para modo directo está en un modo intra, predecir y calcular imágenes de referencia de la lista 0 y la lista 1 y vectores de movimiento a partir de bloques vecinos de un macrobloque de la imagen B a codificar, sobre la base de una redundancia espacial, y calcular los vectores de movimiento de modo directo de la imagen B. In accordance with yet another aspect of the present invention, there is provided a method for calculating motion vectors directly from an image B (bidirectional prediction) in a motion image coding system in order to extract motion vectors directly from image B, which comprises the step of, if a joint location macroblock in a reference image of list 1 for direct mode is in an intra mode, predict and calculate reference images of list 0 and list 1 and motion vectors from neighboring blocks of a macroblock of image B to be encoded, based on spatial redundancy, and calculate motion vectors directly from image B.

Preferentemente, la etapa anterior puede incluir la etapa de, si bloques vecinos A, B y C del macrobloque que 20 ha de ser codificado se refieren a diferentes imágenes de referencia, seleccionar una imagen de referencia con un índice más pequeño como imagen de referencia para cada lista. Preferably, the previous step may include the step of, if neighboring blocks A, B and C of the macroblock to be encoded refer to different reference images, select a reference image with a smaller index as the reference image for each list

Además, la etapa anterior puede incluir la etapa de, si dos o más de los bloques vecinos del macrobloque que ha de ser codificado se refieren a una imagen de referencia con el mismo índice, seleccionar esa imagen de referencia como imagen de referencia para cada lista. 25 In addition, the previous stage may include the stage of, if two or more of the neighboring blocks of the macroblock to be encoded refer to a reference image with the same index, select that reference image as a reference image for each list . 25

Además, la etapa anterior puede incluir la etapa de, fijar a 0 sus vectores de movimiento de la lista 0 y la lista 1 si uno cualquiera de los bloques vecinos A, B y C del macrobloque que ha de ser codificado está en el modo intra, seleccionar un vector de movimiento que tiene la misma dirección que la de una ubicación temporal de la imagen de referencia para cada lista de un bloque vecino, y adquirir el vector de movimiento para cada lista a través de una operación de mediana, o seleccionar sólo uno de los dos vectores de movimiento de ese bloque si un bloque vecino 30 tiene dos vectores de movimiento con las mismas direcciones y adquirir el vector de movimiento para cada lista a través de la operación de mediana incluyendo el vector de movimiento seleccionado. In addition, the previous stage may include the step of setting its movement vectors of list 0 and list 1 to 0 if any one of the neighboring blocks A, B and C of the macroblock to be encoded is in intra mode , select a motion vector that has the same direction as that of a temporary location of the reference image for each list of a neighboring block, and acquire the motion vector for each list through a median operation, or select only one of the two motion vectors of that block if a neighboring block 30 has two motion vectors with the same directions and acquire the motion vector for each list through the median operation including the selected motion vector.

Además, la etapa anterior puede incluir la etapa de, si no puede obtenerse ningún índice efectivo de imagen de referencia para cada modo de lista, fijar a 0 los índices de imágenes de referencia de la lista 0 y la lista 1 y fijar a 0 el vector de movimiento para cada modo de lista. 35 In addition, the previous step may include the step of, if no effective reference image index can be obtained for each list mode, set the reference image indexes of list 0 and list 1 to 0 and set 0 to 0 Motion vector for each list mode. 35

BREVE DESCRIPCIÓN DE LOS DIBUJOS BRIEF DESCRIPTION OF THE DRAWINGS

Los anteriores y otros objetivos, características y otras ventajas de la presente invención se comprenderán más claramente a partir de la siguiente descripción detallada considerada conjuntamente con los dibujos adjuntos, en los que: The foregoing and other objectives, features and other advantages of the present invention will be more clearly understood from the following detailed description considered in conjunction with the accompanying drawings, in which:

las Figs. 1a a 1c son vistas que ilustran imágenes de referencia de la lista 1 para modo directo en un patrón 40 IBBBP general; Figs. 1a to 1c are views illustrating reference images of list 1 for direct mode in a general IBBBP pattern;

las Figs. 2a a 2c son vistas que ilustran imágenes de referencia de la lista 1 para modo directo en un patrón IBBB general; Figs. 2a to 2c are views illustrating reference images of list 1 for direct mode in a general IBBB pattern;

las Figs. 3a a 3h son vistas que ilustran casos donde una imagen de referencia de la lista 1 para modo directo sucede temporalmente a una imagen B (L0 MV: vector de movimiento de la lista 0 y L1 MV: vector de movimiento de la lista 45 1); Figs. 3a to 3h are views illustrating cases where a reference image of list 1 for direct mode temporarily happens to an image B (L0 MV: movement vector of list 0 and L1 MV: movement vector of list 45 1) ;

las Figs. 4a a 4h son vistas que ilustran casos donde una imagen de referencia de la lista 1 para modo directo precede temporalmente a una imagen B (L0 MV: vector de movimiento de la lista 0 y L1 MV: vector de movimiento de la lista 1); Figs. 4a to 4h are views illustrating cases where a reference image of list 1 for direct mode temporarily precedes an image B (L0 MV: movement vector of list 0 and L1 MV: movement vector of list 1);

la Fig. 5 es una vista que ilustra la predicción de vectores de movimiento de un bloque E usando vectores de 50 movimiento de bloques vecinos A, B y C teniendo en cuenta una redundancia espacial general; Fig. 5 is a view illustrating the prediction of motion vectors of a block E using motion vectors of neighboring blocks A, B and C taking into account a general spatial redundancy;

las Figs. 6a a 6c son vistas que ilustran casos donde tanto un macrobloque de una imagen B como un Figs. 6a to 6c are views that illustrate cases where both a macroblock of an image B and a

macrobloque de ubicación conjunta en una imagen de referencia de la lista 1 para modo directo están en un modo de cuadro y la imagen de referencia de la lista 1 sucede temporalmente a la imagen B; Joint location macroblock in a reference image of list 1 for direct mode are in a frame mode and the reference image of list 1 temporarily happens to image B;

las Figs. 7a a 7d son vistas que ilustran casos donde tanto un macrobloque de una imagen B como un macrobloque de ubicación conjunta en una imagen de referencia de la lista 1 para modo directo están en un modo de campo y la imagen de referencia de la lista 1 sucede temporalmente a la imagen B; 5 Figs. 7a to 7d are views illustrating cases where both a macroblock of an image B and a macroblock of joint location in a reference image of list 1 for direct mode are in a field mode and the reference image of list 1 happens temporarily to image B; 5

las Figs. 8a a 8c son vistas que ilustran casos donde un macrobloque de una imagen B está en un modo de campo, un macrobloque de ubicación conjunta en una imagen de referencia de la lista 1 para modo directo está en un modo de cuadro, y la imagen de referencia de la lista 1 sucede temporalmente a la imagen B; Figs. 8a to 8c are views illustrating cases where a macroblock of an image B is in a field mode, a joint location macroblock in a reference image of the list 1 for direct mode is in a frame mode, and the image of reference of list 1 temporarily happens to image B;

las Figs. 9a a 9c son vistas que ilustran casos donde un macrobloque de una imagen B está en un modo de cuadro, un macrobloque de ubicación conjunta en una imagen de referencia de la lista 1 para modo directo está en un modo 10 de campo, y la imagen de referencia de la lista 1 sucede temporalmente a la imagen B; Figs. 9a to 9c are views illustrating cases where a macroblock of an image B is in a frame mode, a joint location macroblock in a reference image of the list 1 for direct mode is in a field mode 10, and the image reference list 1 temporarily happens to image B;

las Figs. 10a y 10b son vistas que ilustran casos donde tanto un macrobloque de una imagen B como un macrobloque de ubicación conjunta en una imagen de referencia de la lista 1 para modo directo están en un modo de cuadro y la imagen de referencia de la lista 1 precede temporalmente a la imagen B; Figs. 10a and 10b are views illustrating cases where both a macroblock of an image B and a macroblock of joint location in a reference image of list 1 for direct mode are in a frame mode and the reference image of list 1 precedes temporarily to image B;

las Figs. 11a a 11d son vistas que ilustran casos donde tanto un macrobloque de una imagen B como un 15 macrobloque de ubicación conjunta en una imagen de referencia de la lista 1 para modo directo están en un modo de campo y la imagen de referencia de la lista 1 precede temporalmente a la imagen B; Figs. 11a to 11d are views illustrating cases where both a macroblock of an image B and a joint macroblock in a reference image of the list 1 for direct mode are in a field mode and the reference image of the list 1 temporarily precedes image B;

las Figs. 12a y 12b son vistas que ilustran casos donde un macrobloque de una imagen B está en un modo de campo, un macrobloque de ubicación conjunta en una imagen de referencia de la lista 1 para un modo directo general está en un modo de cuadro, y la imagen de referencia de la lista 1 precede temporalmente a la imagen B; y 20 Figs. 12a and 12b are views illustrating cases where a macroblock of an image B is in a field mode, a joint location macroblock in a reference image of the list 1 for a general direct mode is in a frame mode, and the reference image from list 1 temporarily precedes image B; and 20

las Figs. 13a y 13b son vistas que ilustran casos donde un macrobloque de una imagen B está en un modo de cuadro, un macrobloque de ubicación conjunta en una imagen de referencia de la lista 1 para un modo directo general está en un modo de campo, y la imagen de referencia de la lista 1 precede temporalmente a la imagen B. Figs. 13a and 13b are views illustrating cases where a macroblock of an image B is in a frame mode, a joint location macroblock in a reference image of the list 1 for a general direct mode is in a field mode, and the reference image from list 1 temporarily precedes image B.

DESCRIPCIÓN DE LAS REALIZACIONES PREFERIDAS DESCRIPTION OF THE PREFERRED EMBODIMENTS

La presente invención propone un método para obtener vectores de movimiento de modo directo cuando un 25 macrobloque de ubicación conjunta en una imagen de referencia de la lista 1 para modo directo está en un modo intra, y un método para adquirir los vectores de movimiento de modo directo en un caso donde la imagen de referencia de la lista 1 sucede temporalmente a una imagen B y en un caso donde la imagen de referencia de la lista 1 precede temporalmente a la imagen B. The present invention proposes a method for obtaining direct mode motion vectors when a joint location macroblock in a reference image of the list 1 for direct mode is in an intra mode, and a method for acquiring mode motion vectors direct in a case where the reference image of list 1 temporarily happens to an image B and in a case where the reference image of list 1 temporarily precedes image B.

La presente invención propone además un método para calcular los vectores de movimiento de modo directo 30 independientemente de las ubicaciones de las imágenes de referencia de la lista 0 y la lista 1 para modo directo asignando un signo a un valor de distancia temporal entre imágenes para simplificar algoritmos usados para el cálculo de los vectores de movimiento de modo directo. The present invention further proposes a method for calculating motion vectors directly directly 30 regardless of the locations of the reference images of list 0 and list 1 for direct mode by assigning a sign to a time distance value between images to simplify Algorithms used to calculate motion vectors directly.

Por otra parte, un modo de cuadro y un modo de campo se conmutan a un nivel de imagen, de manera que la imagen B y la imagen de referencia de la lista 1 se pueden codificar en modo de cuadro o modo de campo. Como resultado, 35 un macrobloque de la imagen B y un macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 tienen cuatro tipos de combinaciones codificadas por cuadros/campos. On the other hand, a frame mode and a field mode are switched to an image level, so that image B and the reference image of list 1 can be encoded in frame mode or field mode. As a result, a macroblock of the image B and a joint macroblock of the reference image of the list 1 have four types of combinations encoded by frames / fields.

[1] CASO EN EL QUE EL MACROBLOQUE DE UBICACIÓN CONJUNTA DE LA IMAGEN DE REFERENCIA DE LA LISTA 1 ESTÁ EN MODO INTRA. [1] CASE IN WHICH THE JOINT LOCATION MACROBLOCK OF THE REFERENCE IMAGE OF LIST 1 IS IN INTRA MODE.

Tal como se muestra en las Figs. 3f y 4f, un macrobloque de ubicación conjunta en una imagen de referencia de la 40 lista 1 para modo directo puede estar en el modo intra independientemente de una ubicación temporal de la imagen de referencia. Debido a que el macrobloque en este modo no tiene información de movimiento, un método convencional simplemente fija a 0 vectores de movimiento de modo directo y define una imagen de referencia de la lista 0 para que sea la imagen decodificada en último lugar. Sin embargo, el método convencional no puede garantizar una alta eficacia de codificación. Por lo tanto, la presente invención predice y calcula imágenes de referencia de la lista 0 y la lista 1 y vectores de 45 movimiento a partir de bloques vecinos de un macrobloque de una imagen B que ha de ser codificada, sobre la base de una redundancia espacial. As shown in Figs. 3f and 4f, a joint location macroblock in a reference image of the list 1 for direct mode may be in intra mode regardless of a temporary location of the reference image. Because the macroblock in this mode has no movement information, a conventional method simply sets 0 motion vectors directly and defines a reference image from list 0 to be the last decoded image. However, the conventional method cannot guarantee high coding efficiency. Therefore, the present invention predicts and calculates reference images of list 0 and list 1 and motion vectors from neighboring blocks of a macroblock of an image B to be encoded, based on a redundancy space.

Un índice de imagen de referencia para cada modo de lista se adquiere de la siguiente manera. La Fig. 5 es una vista que ilustra la predicción de vectores de movimiento de un bloque E usando vectores de movimiento de bloques vecinos A, B y C teniendo en cuenta una redundancia espacial general. 50 A reference image index for each list mode is acquired as follows. Fig. 5 is a view illustrating the prediction of motion vectors of a block E using motion vectors of neighboring blocks A, B and C taking into account a general spatial redundancy. fifty

-- si los bloques vecinos A, B y C tienen índices diferentes de imágenes de referencia, se determina que uno más pequeño de los índices de imágenes de referencia sea un índice de imagen de referencia para el modo directo. - if the neighboring blocks A, B and C have different indexes of reference images, it is determined that a smaller one of the reference image indexes is a reference image index for the direct mode.

-- si dos de los bloques vecinos tienen el mismo índice de imagen de referencia, se determina que este índice sea - if two of the neighboring blocks have the same reference image index, this index is determined to be

un índice de imagen de referencia para el modo directo. a reference image index for direct mode.

-- si todos los bloques vecinos tienen el mismo índice de imagen de referencia, se determina que este índice sea un índice de imagen de referencia para el modo directo. - If all neighboring blocks have the same reference image index, this index is determined to be a reference image index for the direct mode.

Además, un vector de movimiento para cada modo de lista se adquiere a través de la siguiente predicción de vectores de movimiento. En este momento, si uno cualquiera de los bloques vecinos A, B y C está en el modo intra, sus 5 vectores de movimiento de la lista 0 y la lista 1 se fijan a 0. In addition, a motion vector for each list mode is acquired through the following prediction of motion vectors. At this time, if any one of the neighboring blocks A, B and C is in intra mode, its 5 movement vectors of list 0 and list 1 are set to 0.

-- se selecciona de un bloque vecino un vector de movimiento que tiene la misma dirección que la de una ubicación temporal de la imagen de referencia adquirida anteriormente para cada modo de lista, y, a través de una operación de mediana, se adquiere un vector de movimiento para cada modo de lista. - a motion vector is selected from a neighboring block that has the same direction as that of a temporary location of the previously acquired reference image for each list mode, and, through a median operation, a vector is acquired of movement for each list mode.

-- si un bloque vecino tiene dos vectores de movimiento con las mismas direcciones, en ese bloque se selecciona 10 sólo uno de los dos vectores de movimiento y el mismo se incluye en la operación de mediana. - if a neighboring block has two motion vectors with the same directions, only one of the two motion vectors is selected in that block and it is included in the median operation.

Por otra parte, si de un bloque vecino no puede obtenerse ninguno de los índices efectivos de imágenes de referencia de la lista 0 y la lista 1, los mismos se fijan a 0 y un vector de movimiento para cada modo de lista se fija a 0. On the other hand, if none of the effective indexes of reference images from list 0 and list 1 can be obtained from a neighboring block, they are set to 0 and a motion vector for each list mode is set to 0 .

[2] CASO EN EL QUE LA IMAGEN DE REFERENCIA DE LA LISTA 1 PARA MODO DIRECTO SUCEDE TEMPORALMENTE A LA IMAGEN B 15 [2] CASE IN WHICH THE REFERENCE IMAGE OF LIST 1 FOR DIRECT MODE TEMPORARILY HAPPENS TO IMAGE B 15

CASO 1: TANTO EL MACROBLOQUE DE LA IMAGEN B COMO EL MACROBLOQUE DE UBICACIÓN CONJUNTA DE LA IMAGEN DE REFERENCIA DE LA LISTA 1 ESTÁN EN MODO DE CUADRO CASE 1: BOTH THE MACROBLOCK OF IMAGE B AS THE JOINT LOCATION MACROBLOCK OF THE REFERENCE IMAGE OF LIST 1 ARE IN PICTURE MODE

Tal como se observa a partir de las Figs. 3a a 3h, el bloque de ubicación conjunta en la imagen de referencia de la lista 1 puede tener un vector de movimiento o dos vectores de movimiento. En la presente invención, si el bloque de ubicación conjunta tiene dos vectores de movimiento, se selecciona uno (L0 MV ó L1 MV) de los dos vectores de movimiento 20 y se obtienen vectores de movimiento de modo directo a partir del vector de movimiento seleccionado (esto se describirá en lo sucesivo sobre la base del caso en el que se selecciona L0 MV (vector de movimiento de la lista 0)). As seen from Figs. 3a to 3h, the joint location block in the reference image of list 1 may have a motion vector or two motion vectors. In the present invention, if the joint location block has two motion vectors, one (L0 MV or L1 MV) of the two motion vectors 20 is selected and motion vectors are obtained directly from the selected motion vector (This will be described hereinafter on the basis of the case in which L0 MV (movement vector from list 0) is selected).

Por consiguiente, las Figs. 3a y 3c pueden representarse simplemente como la Fig. 6a, las Figs. 3b, 3d y 3e como la Fig. 6c, y las Figs. 3g y 3h como la Fig. 6b, respectivamente. Accordingly, Figs. 3a and 3c can simply be represented as Fig. 6a, Figs. 3b, 3d and 3e as Fig. 6c, and Figs. 3g and 3h as Fig. 6b, respectively.

Si la imagen de referencia de la lista 0 y la imagen de referencia de la lista 1 para modo directo están ubicadas 25 temporalmente antes y después de la imagen B, respectivamente (Fig. 6a), o si las imágenes de referencia tanto de la lista 0 como de la lista 1 para el modo directo están ubicadas temporalmente después de la imagen B y la imagen de referencia de la lista 0 sucede temporalmente a la imagen de referencia de la lista 1 (Fig. 6b), los vectores de movimiento de modo directo MVF y MVB se calculan de la siguiente manera: If the reference image of list 0 and the reference image of list 1 for direct mode are temporarily located before and after image B, respectively (Fig. 6a), or if the reference images of both the list 0 as of list 1 for direct mode are temporarily located after image B and the reference image of list 0 temporarily happens to the reference image of list 1 (Fig. 6b), mode motion vectors Direct MVF and MVB are calculated as follows:

MVF=TDB x MV/TDD 30 MVF = TDB x MV / TDD 30

MVB=(TDB-TDD) x MV/TDD MVB = (TDB-TDD) x MV / TDD

donde TDB representa una distancia temporal entre un cuadro B actual y un cuadro de referencia de la lista 0, y TDD representa una distancia temporal entre un cuadro de referencia de la lista 1 y el cuadro de referencia de la lista 0. where TDB represents a temporary distance between a current frame B and a reference frame of list 0, and TDD represents a time distance between a reference frame of list 1 and the reference frame of list 0.

Aplicando una operación a nivel de bits al cálculo de los vectores de movimiento de modo directo MVF y MVB en su beneficio, la ecuación anterior puede expresarse de la siguiente manera: 35 Applying a bit-level operation to the calculation of the MVF and MVB motion vectors directly to their benefit, the above equation can be expressed as follows:

Z=TDB x 256/TDD MVF=(Z x MV+ 128) >> 8 Z = TDB x 256 / TDD MVF = (Z x MV + 128) >> 8

W=Z-256 MVB=(W x MV+ 128) >> 8 W = Z-256 MVB = (W x MV + 128) >> 8

Si las imágenes de referencia tanto de la lista 0 como de la lista 1 para el modo directo están ubicadas temporalmente después de la imagen B y la imagen de referencia de la lista 0 precede temporalmente a la imagen de referencia de la lista 1 (Fig. 6c), los vectores de movimiento de modo directo MVF y MVB se calculan de la siguiente manera: 40 If the reference images of both list 0 and list 1 for direct mode are temporarily located after image B and the reference image of list 0 temporarily precedes the reference image of list 1 (Fig. 6c), MVF and MVB direct mode motion vectors are calculated as follows: 40

MVF= - TDB x MV/TDD MVF = - TDB x MV / TDD

MVB= - (TDB+TDD) x MV/TDD MVB = - (TDB + TDD) x MV / TDD

Esta ecuación puede expresarse de la siguiente manera: This equation can be expressed as follows:

Z = - TDB x 256/TDD MVF = (Z x MV + 128) >> 8 Z = - TDB x 256 / TDD MVF = (Z x MV + 128) >> 8

W =Z-256 MVB = (W x MV + 128) >> 8 45 W = Z-256 MVB = (W x MV + 128) >> 8 45

CASO 2: TANTO EL MACROBLOQUE DE LA IMAGEN B COMO EL MACROBLOQUE DE UBICACIÓN CONJUNTA DE LA IMAGEN DE REFERENCIA DE LA LISTA 1 ESTÁN EN MODO DE CAMPO CASE 2: BOTH THE MACROBLOCK OF IMAGE B AS THE JOINT LOCATION MACROBLOCK OF THE REFERENCE IMAGE OF LIST 1 ARE IN FIELD MODE

Las Figs. 7a a 7d muestran casos donde tanto el macrobloque de la imagen B como el macrobloque de ubicación Figs. 7a to 7d show cases where both the macroblock of image B and the location macroblock

conjunta de la imagen de referencia de la lista 1 están en el modo de campo. Cada vector de movimiento del macrobloque de la imagen B se obtiene a partir de un vector de movimiento de un bloque de ubicación conjunta en un campo de referencia de la lista 1 de la misma paridad. Joint reference image from list 1 are in field mode. Each motion vector of the macroblock of the image B is obtained from a motion vector of a joint location block in a reference field of the list 1 of the same parity.

Si las imágenes de referencia de la lista 0 y la lista 1 para el modo directo están ubicadas temporalmente antes y después de la imagen B, respectivamente (Fig. 7a), o si las imágenes de referencia tanto de la lista 0 como de la lista 1 para 5 el modo directo están ubicadas temporalmente después de la imagen B y la imagen de referencia de la lista 0 sucede temporalmente a la imagen de referencia de la lista 1 (Fig. 7b), los vectores de movimiento de modo directo de la lista 0 y la lista 1, MVF,i y MVB,i, para cada campo i de un cuadro B (i=0 significa un primer campo e i=1 significa un segundo campo) se calculan de la siguiente manera: If the reference images of list 0 and list 1 for direct mode are temporarily located before and after image B, respectively (Fig. 7a), or if the reference images of both list 0 and list 1 to 5 the direct mode are temporarily located after the image B and the reference image of the list 0 temporarily happens to the reference image of the list 1 (Fig. 7b), the direct mode motion vectors of the list 0 and the list 1, MVF, i and MVB, i, for each field i of a table B (i = 0 means a first field and i = 1 means a second field) are calculated as follows:

MVF,i=TDB,i x MVi/TDD,i 10 MVF, i = TDB, i x MVi / TDD, i 10

MVB,i=(TDB,i-TDD,i) x MVi/TDD,i MVB, i = (TDB, i-TDD, i) x MVi / TDD, i

donde MVi representa un vector de movimiento de un bloque de ubicación conjunta de un campo i en un cuadro de referencia de la lista 1, TDB,i representa una distancia temporal entre un campo B actual y un campo de referencia de la lista 0, y TDD,i representa una distancia temporal entre un campo de referencia de la lista 1 y el campo de referencia de la lista 0. 15 where MVi represents a motion vector of a joint location block of a field i in a reference box of list 1, TDB, i represents a temporal distance between a current field B and a reference field of list 0, and TDD, i represents a time distance between a reference field in list 1 and the reference field in list 0. 15

La ecuación anterior puede expresarse de la siguiente manera: The above equation can be expressed as follows:

Z=TDB,i x 256/TDD,i MVF,i=(Z x MVi+ 128) >> 8 Z = TDB, i x 256 / TDD, i MVF, i = (Z x MVi + 128) >> 8

W=Z-256 MVB,i=(W x MVi+ 128) >> 8 W = Z-256 MVB, i = (W x MVi + 128) >> 8

Si, debido a que el bloque de ubicación conjunta del campo i en el cuadro de referencia de la lista 1 tiene un vector de movimiento que apunta a un campo en un cuadro que sucede temporalmente a la imagen B, las imágenes de 20 referencia tanto de la lista 0 como de la lista 1 para el modo directo están ubicadas temporalmente después de la imagen B y la imagen de referencia de la lista 0 precede temporalmente a la imagen de referencia de la lista 1 (Figs. 7c y 7d), los vectores de movimiento de modo directo de la lista 0 y la lista 1, MVF,i y MVB,i, se calculan de la siguiente manera: If, because the joint location block of field i in the reference frame in list 1 has a motion vector that points to a field in a frame that temporarily happens to image B, the reference images of both list 0 as of list 1 for direct mode are temporarily located after image B and the reference image of list 0 temporarily precedes the reference image of list 1 (Figs. 7c and 7d), the vectors Direct mode movement of list 0 and list 1, MVF, i and MVB, i, are calculated as follows:

MVF,i= - TDB,i x MVi/TDD,i 25 MVF, i = - TDB, i x MVi / TDD, i 25

MVB,i= - (TDB,i+TDD,i) x MVi/TDD,i MVB, i = - (TDB, i + TDD, i) x MVi / TDD, i

La ecuación anterior puede expresarse de la siguiente manera: The above equation can be expressed as follows:

Z= - TDB,i x 256/TDD,i MVF,i=(Z x MVi+ 128) >> 8 Z = - TDB, i x 256 / TDD, i MVF, i = (Z x MVi + 128) >> 8

W=Z-256 MVB,i=(W x MVi+ 128) >> 8 W = Z-256 MVB, i = (W x MVi + 128) >> 8

CASO 3: EL MACROBLOQUE DE LA IMAGEN B ESTÁ EN MODO DE CAMPO Y EL MACROBLOQUE DE 30 UBICACIÓN CONJUNTA DE LA IMAGEN DE REFERENCIA DE LA LISTA 1 ESTÁ EN MODO DE CUADRO CASE 3: THE MACROBLOCK OF IMAGE B IS IN FIELD MODE AND THE MACROBLOCK OF 30 JOINT LOCATION OF THE REFERENCE IMAGE OF LIST 1 IS IN PICTURE MODE

Las Figs. 8a a 8c muestran casos en los que el macrobloque de la imagen B está en el modo de campo y el macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 está en el modo de cuadro. En este caso, suponiendo que la coordenada vertical del macrobloque actual es yactual, y la coordenada vertical del macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 es yubicación conjunta, entre las dos coordenadas se establece la 35 relación de yubicación conjunta = 2 x yactual. Además, los campos de referencia de la lista 0 y la lista 1 están presentes en las mismas paridades de los cuadros de referencia de la lista 0 y la lista 1, respectivamente. Figs. 8a to 8c show cases where the macroblock of image B is in field mode and the joint location macroblock of the reference image of list 1 is in frame mode. In this case, assuming that the vertical coordinate of the current macroblock is now current, and the vertical coordinate of the joint location macroblock of the reference image in list 1 is joint location, the joint joint relationship is established between the two coordinates = 2 x current. In addition, the reference fields of list 0 and list 1 are present in the same parities of the reference tables of list 0 and list 1, respectively.

Si las imágenes de referencia de la lista 0 y la lista 1 para el modo directo están ubicadas temporalmente antes y después de la imagen B, respectivamente (Fig. 8a), o si las imágenes de referencia tanto de la lista 0 como de la lista 1 para el modo directo están ubicadas temporalmente después de la imagen B y la imagen de referencia de la lista 0 40 sucede temporalmente a la imagen de referencia de la lista 1 (Fig. 8b), los vectores de movimiento de modo directo de la lista 0 y la lista 1, MVF,i y MVB,i, para cada campo i del cuadro B se calculan de la siguiente manera: If the reference images of list 0 and list 1 for direct mode are temporarily located before and after image B, respectively (Fig. 8a), or if the reference images of both list 0 and list 1 for direct mode are temporarily located after image B and the reference image of list 0 40 temporarily happens to the reference image of list 1 (Fig. 8b), the direct mode motion vectors of the list 0 and list 1, MVF, i and MVB, i, for each field i of table B are calculated as follows:

MVF,i=TDB,i x MV/TDD MVF, i = TDB, i x MV / TDD

MVB,i=(TDB,i-TDD) x MV/TDD MVB, i = (TDB, i-TDD) x MV / TDD

La ecuación anterior puede expresarse de la siguiente manera: 45 The above equation can be expressed as follows:

Z=TDB,i x 256/TDD MVF,i=(Z x MV+ 128) >> 8 Z = TDB, i x 256 / TDD MVF, i = (Z x MV + 128) >> 8

W=Z-256 MVB,i=(W x MV+ 128) >> 8 W = Z-256 MVB, i = (W x MV + 128) >> 8

Si, debido a que el bloque de ubicación conjunta en el cuadro de referencia de la lista 1 tiene un vector de movimiento que apunta a un cuadro que sucede temporalmente a la imagen B, las imágenes de referencia tanto de la If, because the joint location block in the reference frame in list 1 has a motion vector that points to a frame that temporarily happens to image B, the reference images of both the

lista 0 como de la lista 1 para el modo directo están ubicadas temporalmente después de la imagen B y la imagen de referencia de la lista 0 precede temporalmente a la imagen de referencia de la lista 1 (Fig. 8c), los vectores de movimiento de modo directo de la lista 0 y la lista 1, MVF,i y MVB,i, para cada campo i del cuadro B se calculan de la siguiente manera: list 0 as of list 1 for direct mode are temporarily located after image B and the reference image of list 0 temporarily precedes the reference image of list 1 (Fig. 8c), the motion vectors of Direct mode of list 0 and list 1, MVF, i and MVB, i, for each field i of table B are calculated as follows:

MVF,i= -TDB,i x MV/TDD 5 MVF, i = -TDB, i x MV / TDD 5

MVB,i= - (TDB,i+TDD,i) x MV/TDD MVB, i = - (TDB, i + TDD, i) x MV / TDD

La ecuación anterior puede expresarse de la siguiente manera The above equation can be expressed as follows

Z= - TDB,i x 256/TDD MVF,i=(Z x MV+ 128) >> 8 Z = - TDB, i x 256 / TDD MVF, i = (Z x MV + 128) >> 8

W=Z-256 MVB,i=(W x MV+ 128) >> 8 W = Z-256 MVB, i = (W x MV + 128) >> 8

donde TDB,i representa una distancia temporal entre el campo B actual y el campo de referencia de la lista 0, 10 TDD representa una distancia temporal entre el cuadro de referencia de la lista 1 y el cuadro de referencia de la lista 0, y MV representa un vector de movimiento del bloque de ubicación conjunta en el cuadro de referencia de la lista 1 para modo directo. where TDB, i represents a time distance between the current field B and the reference field of list 0, 10 TDD represents a time distance between the reference box of list 1 and the reference box of list 0, and MV represents a motion vector of the joint location block in the reference table in list 1 for direct mode.

CASO 4: EL MACROBLOQUE DE LA IMAGEN B ESTÁ EN MODO DE CUADRO Y EL MACROBLOQUE DE UBICACIÓN CONJUNTA DE LA IMAGEN DE REFERENCIA DE LA LISTA 1 ESTÁ EN MODO DE CAMPO 15 CASE 4: THE MACROBLOCK OF IMAGE B IS IN PICTURE MODE AND THE JOINT LOCATION MACROBLOCK OF THE REFERENCE IMAGE OF LIST 1 IS IN FIELD MODE 15

Las Figs. 9a a 9c muestran casos en los que el macrobloque de la imagen B está en el modo de cuadro y el macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 está en el modo de campo. En este caso, suponiendo que la coordenada vertical del macrobloque actual es yactual, y la coordenada vertical del macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 es yubicación conjunta, entre las dos coordenadas se establece la relación de yubicación conjunta = yactual/2. Además, debido a que el campo 0 del cuadro de referencia de la lista 1 está 20 temporalmente más cerca de la imagen B que el campo 1 del mismo, la información de movimiento de un bloque de ubicación conjunta del campo 0 se usa para el cálculo de los vectores de movimiento de modo directo. Figs. 9a to 9c show cases where the macroblock of image B is in frame mode and the joint location macroblock of the reference image of list 1 is in field mode. In this case, assuming that the vertical coordinate of the current macroblock is now actual, and the vertical coordinate of the joint location macroblock of the reference image in list 1 is joint location, the joint ylocation relationship is established between the two coordinates /2. In addition, because field 0 of the reference chart in list 1 is temporarily closer to image B than field 1 thereof, the movement information of a joint location block of field 0 is used for the calculation of motion vectors directly.

Si las imágenes de referencia de la lista 0 y la lista 1 para el modo directo están ubicadas temporalmente antes y después de la imagen B, respectivamente (Fig. 9a), o si las imágenes de referencia tanto de la lista 0 como de la lista 1 para el modo directo están ubicadas temporalmente después de la imagen B y la imagen de referencia de la lista 0 25 sucede temporalmente a la imagen de referencia de la lista 1 (Fig. 9b), los vectores de movimiento de modo directo de la lista 0 y la lista 1, MVF y MVB, del cuadro B se calculan de la siguiente manera: If the reference images of list 0 and list 1 for direct mode are temporarily located before and after image B, respectively (Fig. 9a), or if the reference images of both list 0 and list 1 for direct mode are temporarily located after image B and the reference image of the list 0 25 temporarily happens to the reference image of the list 1 (Fig. 9b), the direct mode motion vectors of the list 0 and list 1, MVF and MVB, in Table B are calculated as follows:

MVF=TDB x MV0 /TDD,0 MVF = TDB x MV0 / TDD, 0

MVB=(TDB-TDD,0) x MV0/TDD,0 MVB = (TDB-TDD, 0) x MV0 / TDD, 0

La ecuación anterior puede expresarse de la siguiente manera: 30 The above equation can be expressed as follows: 30

Z=TDB x 256/TDD,0 MVF=(Z x MV0+ 128) >> 8 Z = TDB x 256 / TDD, 0 MVF = (Z x MV0 + 128) >> 8

W=Z-256 MVB=(W x MV0+ 128) >> 8 W = Z-256 MVB = (W x MV0 + 128) >> 8

Si, debido a que el bloque de ubicación conjunta del campo 0 del cuadro de referencia de la lista 1 tiene un vector de movimiento que apunta a un campo de un cuadro que sucede temporalmente a la imagen B, las imágenes de referencia tanto de la lista 0 como de la lista 1 para el modo directo están ubicadas temporalmente después de la 35 imagen B y la imagen de referencia de la lista 0 precede temporalmente a la imagen de referencia de la lista 1 (Fig. 9c), los vectores de movimiento de modo directo de la lista 0 y la lista 1, MVF y MVB, se calculan de la siguiente manera: If, because the joint location block of field 0 of the reference frame of list 1 has a motion vector that points to a field of a frame that temporarily happens to image B, the reference images of both the list 0 as of list 1 for direct mode are temporarily located after image B and the reference image of list 0 temporarily precedes the reference image of list 1 (Fig. 9c), the motion vectors of Direct mode of list 0 and list 1, MVF and MVB, are calculated as follows:

MVF= -TDB x MV0/TDD,0 MVF = -TDB x MV0 / TDD, 0

MVB= - (TDB+TDD,0) x MV0/TDD,0 MVB = - (TDB + TDD, 0) x MV0 / TDD, 0

La ecuación anterior puede expresarse de la siguiente manera: 40 The above equation can be expressed as follows: 40

Z= - TDB x 256/TDD,0 MVF=(Z x MV0+ 128) >> 8 Z = - TDB x 256 / TDD, 0 MVF = (Z x MV0 + 128) >> 8

W=Z-256 MVB=(W x MV0+ 128) >> 8 W = Z-256 MVB = (W x MV0 + 128) >> 8

donde TDB representa una distancia temporal entre el cuadro B actual y el cuadro de referencia de la lista 0, TDD,0 representa una distancia temporal entre un campo 0 del cuadro de referencia de la lista 1 y el campo de referencia de la lista 0, y MV0 representa un vector de movimiento del bloque de ubicación conjunta en el campo 0 del cuadro de 45 referencia de la lista 1 para modo directo. where TDB represents a temporary distance between the current table B and the reference table of list 0, TDD, 0 represents a temporary distance between a field 0 of the reference table of list 1 and the reference field of list 0, and MV0 represents a motion vector of the joint location block in field 0 of the reference table in list 1 for direct mode.

[3] CASO EN EL QUE LA IMAGEN DE REFERENCIA DE LA LISTA 1 PARA MODO DIRECTO PRECEDE TEMPORALMENTE A LA IMAGEN B [3] CASE IN WHICH THE REFERENCE IMAGE OF LIST 1 FOR DIRECT MODE TEMPORARILY PRECEDES IMAGE B

En este caso, las imágenes de referencia tanto de la lista 0 como de la lista 1 están siempre ubicadas temporalmente antes de la imagen B. In this case, the reference images of both list 0 and list 1 are always temporarily located before image B.

CASO 1: TANTO EL MACROBLOQUE DE LA IMAGEN B COMO EL MACROBLOQUE DE UBICACIÓN CONJUNTA DE LA IMAGEN DE REFERENCIA DE LA LISTA 1 ESTÁN EN MODO DE CUADRO CASE 1: BOTH THE MACROBLOCK OF IMAGE B AS THE JOINT LOCATION MACROBLOCK OF THE REFERENCE IMAGE OF LIST 1 ARE IN PICTURE MODE

Tal como se observa a partir de las Figs. 4a a 4h, el bloque de ubicación conjunta en la imagen de referencia de la 5 lista 1 puede tener un vector de movimiento o dos vectores de movimiento. En la presente invención, si el bloque de ubicación conjunta tiene dos vectores de movimiento, se selecciona uno (L0 MV ó L1 MV) de los dos vectores de movimiento y se obtienen vectores de movimiento de modo directo a partir del vector de movimiento seleccionado (esto se describirá en lo sucesivo sobre la base del caso donde se selecciona L0 MV (vector de movimiento de la lista 0)). As seen from Figs. 4a to 4h, the joint location block in the reference image of list 5 may have a motion vector or two motion vectors. In the present invention, if the joint location block has two motion vectors, one (L0 MV or L1 MV) of the two motion vectors is selected and motion vectors are obtained directly from the selected motion vector ( This will be described hereinafter on the basis of the case where L0 MV (movement vector from list 0) is selected.

Por consiguiente, las Figs. 4a, 4c, 4e, 4g y 4h pueden representarse simplemente como la Fig. 10a, y las Figs. 4b y 10 4d como la Fig. 10b, respectivamente. Accordingly, Figs. 4a, 4c, 4e, 4g and 4h can simply be represented as Fig. 10a, and Figs. 4b and 10 4d as Fig. 10b, respectively.

Si la imagen de referencia de la lista 0 para modo directo precede temporalmente a la imagen de referencia de la lista 1 para modo directo, los vectores de movimiento de modo directo MVF y MVB se calculan de la siguiente manera (Fig. 10a): If the reference image of list 0 for direct mode temporarily precedes the reference image of list 1 for direct mode, the MVF and MVB direct mode motion vectors are calculated as follows (Fig. 10a):

MVF=TDB x MV/TDD 15 MVF = TDB x MV / TDD 15

MVB=(TDB-TDD) x MV/TDD MVB = (TDB-TDD) x MV / TDD

donde TDB representa una distancia temporal entre un cuadro B actual y un cuadro de referencia de la lista 0, TDD representa una distancia temporal entre un cuadro de referencia de la lista 1 y el cuadro de referencia de la lista 0, y MV representa un vector de movimiento del bloque de ubicación conjunta en la imagen de referencia de la lista 1 para modo directo. 20 where TDB represents a time distance between a current frame B and a reference frame of list 0, TDD represents a time distance between a reference frame of list 1 and the reference frame of list 0, and MV represents a vector of movement of the joint location block in the reference image of list 1 for direct mode. twenty

La ecuación anterior puede expresarse de la siguiente manera: The above equation can be expressed as follows:

Z=TDB x 256/TDD MVF=(Z x MV+ 128) >> 8 Z = TDB x 256 / TDD MVF = (Z x MV + 128) >> 8

W=Z-256 MVB=(W x MV+ 128) >> 8 W = Z-256 MVB = (W x MV + 128) >> 8

Si la imagen de referencia de la lista 0 sucede temporalmente a la imagen de referencia de la lista 1, los vectores de movimiento de modo directo MVF y MVB se calculan de la siguiente manera (Fig. 10b): 25 If the reference image of list 0 temporarily happens to the reference image of list 1, the MVF and MVB direct mode motion vectors are calculated as follows (Fig. 10b): 25

MVF= - TDB x MV/TDD MVF = - TDB x MV / TDD

MVB= - (TDB+TDD) x MV/TDD MVB = - (TDB + TDD) x MV / TDD

Esta ecuación puede expresarse de la siguiente manera: This equation can be expressed as follows:

Z= - TDB x 256/TDD MVF=(Z x MV+ 128) >> 8 Z = - TDB x 256 / TDD MVF = (Z x MV + 128) >> 8

W=Z-256 MVB=(W x MV+ 128) >> 8 30 W = Z-256 MVB = (W x MV + 128) >> 8 30

donde TDB representa una distancia temporal entre el cuadro B actual y el cuadro de referencia de la lista 0, TDD representa una distancia temporal entre el cuadro de referencia de la lista 1 y el cuadro de referencia de la lista 0, y MV representa un vector de movimiento del bloque de ubicación conjunta en la imagen de referencia de la lista 1 para modo directo. where TDB represents a temporary distance between the current frame B and the reference frame of list 0, TDD represents a time distance between the reference frame of list 1 and the reference frame of list 0, and MV represents a vector of movement of the joint location block in the reference image of list 1 for direct mode.

CASO 2: TANTO EL MACROBLOQUE DE LA IMAGEN B COMO EL MACROBLOQUE DE UBICACIÓN 35 CONJUNTA DE LA IMAGEN DE REFERENCIA DE LA LISTA 1 ESTÁN EN MODO DE CAMPO CASE 2: BOTH THE MACROBLOCK OF IMAGE B AS THE MACROBLOCK OF LOCATION 35 JOINT OF THE REFERENCE IMAGE OF LIST 1 ARE IN FIELD MODE

Si la imagen de referencia de la lista 0 para modo directo precede temporalmente a la imagen de referencia de la lista 1 para modo directo, los vectores de movimiento de modo directo de la lista 0 y la lista 1, MVF,i y MVB,i, para cada campo i de un cuadro B se calculan de la siguiente manera (Figs. 11a y 11b): If the reference image of list 0 for direct mode temporarily precedes the reference image of list 1 for direct mode, the direct mode motion vectors of list 0 and list 1, MVF, i and MVB, i, for each field i of a table B they are calculated as follows (Figs. 11a and 11b):

MVF,i=TDB,i x MVi/TDD,i 40 MVF, i = TDB, i x MVi / TDD, i 40

MVB,i=(TDB,i-TDD,i) x MVi/TDD,i MVB, i = (TDB, i-TDD, i) x MVi / TDD, i

La ecuación anterior puede expresarse de la siguiente manera: The above equation can be expressed as follows:

Z=TDB,i x 256/TDD,i MVF,i=(Z x MVi+128) >> 8 Z = TDB, i x 256 / TDD, i MVF, i = (Z x MVi + 128) >> 8

W=Z-256 MVB,i=(W x MVi+128) >> 8 W = Z-256 MVB, i = (W x MVi + 128) >> 8

donde TDB,i representa una distancia temporal entre un campo B actual y un campo de referencia de la lista 0, 45 TDD,i representa una distancia temporal entre un campo de referencia de la lista 1 y el campo de referencia de la lista 0, y MVi representa un vector de movimiento de un bloque de ubicación conjunta en un campo de referencia de la lista 1 where TDB, i represents a time distance between a current field B and a reference field of list 0, 45 TDD, i represents a time distance between a reference field of list 1 and the reference field of list 0, and MVi represents a motion vector of a joint location block in a reference field of list 1

para modo directo. For direct mode.

Si, debido a que el bloque de ubicación conjunta del campo i en el cuadro de referencia de la lista 1 tiene un vector de movimiento que apunta a un campo en un cuadro sucesivo temporalmente, la imagen de referencia de la lista 0 precede temporalmente a la imagen de referencia de la lista 1, los vectores de movimiento de modo directo de la lista 0 y la lista 1, MVF,i y MVB,i, se calculan de la siguiente manera (Figs. 11c y 11d): 5 If, because the joint location block of field i in the reference frame of list 1 has a motion vector that points to a field in a successive frame temporarily, the reference image of list 0 temporarily precedes the reference image of list 1, the direct mode motion vectors of list 0 and list 1, MVF, i and MVB, i, are calculated as follows (Figs. 11c and 11d): 5

MVF,i= - TDB,i x MVi/TDD,i MVF, i = - TDB, i x MVi / TDD, i

MVB,i= - (TDB,i+TDD,i) x MVi/TDD,i MVB, i = - (TDB, i + TDD, i) x MVi / TDD, i

La ecuación anterior puede expresarse de la siguiente manera: The above equation can be expressed as follows:

Z= - TDB,i x 256/TDD,i MVF,i=(Z x MVi+128) >> 8 Z = - TDB, i x 256 / TDD, i MVF, i = (Z x MVi + 128) >> 8

W=Z-256 MVB,i=(W x MVi+128) >> 8 10 W = Z-256 MVB, i = (W x MVi + 128) >> 8 10

donde TDB,i representa una distancia temporal entre el campo B actual y el campo de referencia de la lista 0, TDD,i representa una distancia temporal entre el campo de referencia de la lista 1 y el campo de referencia de la lista 0, y MVi representa un vector de movimiento del bloque de ubicación conjunta en el campo de referencia de la lista 1 para modo directo. where TDB, i represents a time distance between the current field B and the reference field of list 0, TDD, i represents a time distance between the reference field of list 1 and the reference field of list 0, and MVi represents a motion vector of the joint location block in the reference field of list 1 for direct mode.

CASO 3: EL MACROBLOQUE DE LA IMAGEN B ESTÁ EN MODO DE CAMPO Y EL MACROBLOQUE DE 15 UBICACIÓN CONJUNTA DE LA IMAGEN DE REFERENCIA DE LA LISTA 1 ESTÁ EN MODO DE CUADRO CASE 3: THE MACROBLOCK OF IMAGE B IS IN FIELD MODE AND THE MACROBLOCK OF 15 JOINT LOCATION OF THE REFERENCE IMAGE OF LIST 1 IS IN PICTURE MODE

Si la imagen de referencia de la lista 0 para modo directo precede temporalmente a la imagen de referencia de la lista 1 para modo directo, los vectores de movimiento de modo directo de la lista 0 y la lista 1, MVF,i y MVB,i, para cada campo i del cuadro B se calculan de la siguiente manera (Fig. 12a): If the reference image of list 0 for direct mode temporarily precedes the reference image of list 1 for direct mode, the direct mode motion vectors of list 0 and list 1, MVF, i and MVB, i, for each field i of table B they are calculated as follows (Fig. 12a):

MVF,i=TDB,i x MV/TDD 20 MVF, i = TDB, i x MV / TDD 20

MVB,i=(TDB,i-TDD) x MV/TDD MVB, i = (TDB, i-TDD) x MV / TDD

La ecuación anterior puede expresarse de la siguiente manera: The above equation can be expressed as follows:

Z=TDB,i x 256/TDD MVF,i=(Z x MV+128) >> 8 Z = TDB, i x 256 / TDD MVF, i = (Z x MV + 128) >> 8

W=Z-256 MVB,i=(W x MV+128) >> 8 W = Z-256 MVB, i = (W x MV + 128) >> 8

donde TDB,i representa una distancia temporal entre el campo B actual y el campo de referencia de la lista 0, 25 TDD representa una distancia temporal entre el cuadro de referencia de la lista 1 y el cuadro de referencia de la lista 0, y MV representa un vector de movimiento del bloque de ubicación conjunta en el cuadro de referencia de la lista 1 para modo directo. where TDB, i represents a time distance between the current field B and the reference field of list 0, 25 TDD represents a time distance between the reference box of list 1 and the reference box of list 0, and MV represents a motion vector of the joint location block in the reference table in list 1 for direct mode.

Si, debido a que el bloque de ubicación conjunta en el cuadro de referencia de la lista 1 tiene un vector de movimiento que apunta a un cuadro sucesivo temporalmente, la imagen de referencia de la lista 0 sucede 30 temporalmente a la imagen de referencia de la lista 1, los vectores de movimiento de modo directo de la lista 0 y la lista 1, MVF,i y MVB,i, para cada campo i del cuadro B se calculan de la siguiente manera (Fig. 12b): If, because the joint location block in the reference frame of list 1 has a motion vector that points to a successive frame temporarily, the reference image of list 0 happens temporarily to the reference image of the list 1, the direct mode motion vectors of list 0 and list 1, MVF, i and MVB, i, for each field i of table B are calculated as follows (Fig. 12b):

MVF,i= - TDB,i x MV/TDD MVF, i = - TDB, i x MV / TDD

MVB,i= - (TDB,i+TDD) x MV/TDD MVB, i = - (TDB, i + TDD) x MV / TDD

La ecuación anterior puede expresarse de la siguiente manera: 35 The above equation can be expressed as follows:

Z= - TDB,i x 256/TDD MVF,i=(Z x MV+128) >> 8 Z = - TDB, i x 256 / TDD MVF, i = (Z x MV + 128) >> 8

W=Z-256 MVB,i=(W x MV+128) >> 8 W = Z-256 MVB, i = (W x MV + 128) >> 8

donde TDB,i representa una distancia temporal entre el campo B actual y el campo de referencia de la lista 0, TDD representa una distancia temporal entre el cuadro de referencia de la lista 1 y el cuadro de referencia de la lista 0, y MV representa un vector de movimiento del bloque de ubicación conjunta en el cuadro de referencia de la lista 1 para 40 modo directo. where TDB, i represents a time distance between the current field B and the reference field of list 0, TDD represents a time distance between the reference box of list 1 and the reference box of list 0, and MV represents a motion vector of the joint location block in the reference chart in list 1 for 40 direct mode.

CASO 4: EL MACROBLOQUE DE LA IMAGEN B ESTÁ EN MODO DE CUADRO Y EL MACROBLOQUE DE UBICACIÓN CONJUNTA DE LA IMAGEN DE REFERENCIA DE LA LISTA 1 ESTÁ EN MODO DE CAMPO CASE 4: THE MACROBLOCK OF IMAGE B IS IN PICTURE MODE AND THE JOINT LOCATION MACROBLOCK OF THE REFERENCE IMAGE OF LIST 1 IS IN FIELD MODE

Debido a que el campo 1 f1 del cuadro de referencia de la lista 1 está temporalmente más cerca de la imagen B que el campo 0 f0 del mismo, la información de movimiento de un bloque de ubicación conjunta del campo 1 f1 se usa 45 para el cálculo de los vectores de movimiento de modo directo. Because field 1 f1 of the reference chart in list 1 is temporarily closer to image B than field 0 f0 thereof, the movement information of a joint location block of field 1 f1 is used for the calculation of motion vectors directly.

Si la imagen de referencia de la lista 0 para modo directo precede temporalmente a la imagen de referencia de If the reference image in list 0 for direct mode temporarily precedes the reference image of

la lista 1 para modo directo, los vectores de movimiento de modo directo de la lista 0 y la lista 1, MVF y MVB, para cada campo i del cuadro B se calculan de la siguiente manera (Fig. 13a): the list 1 for direct mode, the direct mode motion vectors of list 0 and list 1, MVF and MVB, for each field i of table B are calculated as follows (Fig. 13a):

MVF=TDB x MV1/TDD,1 MVF = TDB x MV1 / TDD, 1

MVB=(TDB-TDD,1) x MV1/TDD,1 MVB = (TDB-TDD, 1) x MV1 / TDD, 1

La ecuación anterior puede expresarse de la siguiente manera: 5 The above equation can be expressed as follows: 5

Z=TDB x 256/TDD,1 MVF=(Z x MV1+128) >> 8 Z = TDB x 256 / TDD, 1 MVF = (Z x MV1 + 128) >> 8

W=Z-256 MVB=(W x MV1+128) >> 8 W = Z-256 MVB = (W x MV1 + 128) >> 8

donde TDB representa una distancia temporal entre el cuadro B actual y el cuadro de referencia de la lista 0, TDD,1 representa una distancia temporal entre un campo 1 del cuadro de referencia de la lista 1 y el campo de referencia de la lista 0, y MV1 representa un vector de movimiento del bloque de ubicación conjunta en el campo 1 del cuadro de 10 referencia de la lista 1 para modo directo. where TDB represents a temporary distance between the current table B and the reference table of list 0, TDD, 1 represents a temporary distance between a field 1 of the reference table of list 1 and the reference field of list 0, and MV1 represents a motion vector of the joint location block in field 1 of the reference table in list 1 for direct mode.

Si, debido a que el bloque de ubicación conjunta del campo 1 f1 del cuadro de referencia de la lista 1 tiene un vector de movimiento que apunta a un campo de un cuadro sucesivo temporalmente, la imagen de referencia de la lista 0 sucede temporalmente a la imagen de referencia de la lista 1, los vectores de movimiento de modo directo de la lista 0 y la lista 1, MVF y MVB, se calculan de la siguiente manera (Fig. 13b): 15 If, because the joint location block of field 1 f1 of the reference frame of list 1 has a motion vector that points to a field of a successive frame temporarily, the reference image of list 0 temporarily happens to the reference image of list 1, the direct mode motion vectors of list 0 and list 1, MVF and MVB, are calculated as follows (Fig. 13b): 15

MVF= -TDB x MV1/TDD,1 MVF = -TDB x MV1 / TDD, 1

MVB= - (TDB+TDD,1) x MV1/TDD,1 MVB = - (TDB + TDD, 1) x MV1 / TDD, 1

La ecuación anterior puede expresarse de la siguiente manera: The above equation can be expressed as follows:

Z= - TDB x 256/TDD,1 MVF=(Z x MV1+128) >> 8 Z = - TDB x 256 / TDD, 1 MVF = (Z x MV1 + 128) >> 8

W=Z-256 MVB=(W x MV1+128) >> 8 20 W = Z-256 MVB = (W x MV1 + 128) >> 8 20

donde TDB representa una distancia temporal entre el cuadro B actual y el cuadro de referencia de la lista 0, TDD,1 representa una distancia temporal entre un campo 1 del cuadro de referencia de la lista 1 y el campo de referencia de la lista 0, y MV1 representa un vector de movimiento del bloque de ubicación conjunta en el campo 1 del cuadro de referencia de la lista 1 para modo directo. where TDB represents a temporary distance between the current table B and the reference table of list 0, TDD, 1 represents a temporary distance between a field 1 of the reference table of list 1 and the reference field of list 0, and MV1 represents a motion vector of the joint location block in field 1 of the reference table in list 1 for direct mode.

[4] CASO EN EL QUE LOS VECTORES DE MOVIMIENTO DE MODO DIRECTO SE CALCULAN ASIGNANDO 25 UN SIGNO AL VALOR DE DISTANCIA TEMPORAL ENTRE IMÁGENES [4] CASE IN WHICH DIRECT MODE MOVEMENT VECTORS ARE CALCULATED ASSIGNING 25 A SIGN TO THE TEMPORARY DISTANCE VALUE BETWEEN IMAGES

En caso de que la imagen de referencia de la lista 1 para modo directo esté ubicada temporalmente antes o después de la imagen B, en cada caso se dan dos tipos de algoritmos. Dichos algoritmos pueden expresarse simplemente asignando un signo a un valor de distancia temporal entre imágenes, de la siguiente manera. If the reference image of the list 1 for direct mode is temporarily located before or after the image B, in each case there are two types of algorithms. Such algorithms can be expressed simply by assigning a sign to a time distance value between images, as follows.

CASO 1: TANTO EL MACROBLOQUE DE LA IMAGEN B COMO EL MACROBLOQUE DE UBICACIÓN 30 CONJUNTA DE LA IMAGEN DE REFERENCIA DE LA LISTA 1 ESTÁN EN MODO DE CUADRO CASE 1: BOTH THE MACROBLOCK OF IMAGE B AS THE LOCATION MACROBLOCK 30 SET OF THE REFERENCE IMAGE OF LIST 1 ARE IN PICTURE MODE

Si tanto el macrobloque de la imagen B como el macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 están en el modo de cuadro, los vectores de movimiento de modo directo MVF y MVB de la imagen B pueden calcularse de la siguiente manera: If both the macroblock of image B and the joint location macroblock of the reference image in list 1 are in frame mode, the MVF and MVB direct mode motion vectors of image B can be calculated as follows :

MVF=TDB x MV / TDD 35 MVF = TDB x MV / TDD 35

MVB=(TDB-TDD) x MV/TDD MVB = (TDB-TDD) x MV / TDD

ó or

Z=TDB x 256/TDD MVF=(Z x MV+128) >> 8 Z = TDB x 256 / TDD MVF = (Z x MV + 128) >> 8

W=Z-256 MVB=(W x MV+128) >> 8 W = Z-256 MVB = (W x MV + 128) >> 8

donde TDB representa una distancia temporal entre un cuadro B actual y un cuadro de referencia de la lista 0, a 40 la que se asigna un signo positivo (+) si se mide desde el cuadro B y un signo negativo (-) si se mide desde el cuadro de referencia de la lista 0, TDD representa una distancia temporal entre un cuadro de referencia de la lista 1 y el cuadro de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el cuadro de referencia de la lista 1 y un signo negativo (-) si se mide desde el cuadro de referencia de la lista 0, y MV representa un vector de movimiento del bloque de ubicación conjunta en la imagen de referencia de la lista 1 para modo directo. 45 where TDB represents a time distance between a current frame B and a reference frame of list 0, to which a positive sign (+) is assigned if measured from frame B and a negative sign (-) if measured from the reference table of list 0, TDD represents a time distance between a reference box of list 1 and the reference box of list 0, to which a positive sign (+) is assigned if measured from the reference chart of list 1 and a negative sign (-) if measured from the reference chart of list 0, and MV represents a motion vector of the joint location block in the reference image of list 1 for mode direct. Four. Five

CASO 2: TANTO EL MACROBLOQUE DE LA IMAGEN B COMO EL MACROBLOQUE DE UBICACIÓN CONJUNTA DE LA IMAGEN DE REFERENCIA DE LA LISTA 1 ESTÁN EN MODO DE CAMPO CASE 2: BOTH THE MACROBLOCK OF IMAGE B AS THE JOINT LOCATION MACROBLOCK OF THE REFERENCE IMAGE OF LIST 1 ARE IN FIELD MODE

Si tanto el macrobloque de la imagen B como el macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 están en el modo de campo, los vectores de movimiento de modo directo MVF,i y MVB,i para cada campo i del cuadro B pueden calcularse de la siguiente manera: If both the macroblock of image B and the joint location macroblock of the reference image in list 1 are in field mode, the MVF, i and MVB, direct mode motion vectors for each field i of frame B They can be calculated as follows:

MVF,i=TDB,i x MVi/TDD,i MVF, i = TDB, i x MVi / TDD, i

MVB,i=(TDB,i-TDD,i) x MVi/TDD,i 5 MVB, i = (TDB, i-TDD, i) x MVi / TDD, i 5

ó or

Z=TDB,i x 256/TDD,i MVF,i=(Z x MVi+128) >> 8 Z = TDB, i x 256 / TDD, i MVF, i = (Z x MVi + 128) >> 8

W=Z-256 MVB,i=(W x MVi+128) >> 8 W = Z-256 MVB, i = (W x MVi + 128) >> 8

donde TDB,i representa una distancia temporal entre un campo B actual y un campo de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el campo B y un signo negativo (-) si se mide desde el campo 10 de referencia de la lista 0, TDD,i representa una distancia temporal entre un campo de referencia de la lista 1 y el campo de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el campo de referencia de la lista 1 y un signo negativo (-) si se mide desde el campo de referencia de la lista 0, y MVi representa un vector de movimiento de un bloque de ubicación conjunta en un campo de referencia de la lista 1 para modo directo. where TDB, i represents a time distance between a current field B and a reference field from list 0, to which a positive sign (+) is assigned if measured from field B and a negative sign (-) if measured from the reference field 10 of the list 0, TDD, i represents a time distance between a reference field of the list 1 and the reference field of the list 0, to which a positive sign (+) is assigned if it is measured from the reference field of list 1 and a negative sign (-) if measured from the reference field of list 0, and MVi represents a motion vector of a joint location block in a reference field of List 1 for direct mode.

CASO 3: EL MACROBLOQUE DE LA IMAGEN B ESTÁ EN MODO DE CAMPO Y EL MACROBLOQUE DE 15 UBICACIÓN CONJUNTA DE LA IMAGEN DE REFERENCIA DE LA LISTA 1 ESTÁ EN MODO DE CUADRO CASE 3: THE MACROBLOCK OF IMAGE B IS IN FIELD MODE AND THE MACROBLOCK OF 15 JOINT LOCATION OF THE REFERENCE IMAGE OF LIST 1 IS IN PICTURE MODE

Si el macrobloque de la imagen B está en el modo de campo y el macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 está en el modo de cuadro, los vectores de movimiento de modo directo MVF,i y MVB,i para cada campo i del cuadro B pueden calcularse de la siguiente manera: If the macroblock of image B is in field mode and the joint location macroblock of the reference image in list 1 is in frame mode, the MVF, i and MVB, i direct mode motion vectors for each field i of table B can be calculated as follows:

MVF,i=TDB,i x MV/TDD 20 MVF, i = TDB, i x MV / TDD 20

MVB,i=(TDB,i-TDD) x MV /TDD MVB, i = (TDB, i-TDD) x MV / TDD

ó or

Z=TDB,i x 256/TDD MVF,i=(Z x MV+128) >> 8 Z = TDB, i x 256 / TDD MVF, i = (Z x MV + 128) >> 8

W=Z-256 MVB,i=(W x MV+128) >> 8 W = Z-256 MVB, i = (W x MV + 128) >> 8

donde TDB,i representa una distancia temporal entre el campo B actual y el campo de referencia de la lista 0, a 25 la que se asigna un signo positivo (+) si se mide desde el campo B y un signo negativo (-) si se mide desde el campo de referencia de la lista 0, TDD representa una distancia temporal entre el cuadro de referencia de la lista 1 y el cuadro de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el cuadro de referencia de la lista 1 y un signo negativo (-) si se mide desde el cuadro de referencia de la lista 0, y MV representa un vector de movimiento del bloque de ubicación conjunta en el cuadro de referencia de la lista 1 para modo directo. 30 where TDB, i represents a temporary distance between the current field B and the reference field of list 0, to which a positive sign (+) is assigned if measured from field B and a negative sign (-) if measured from the reference field of list 0, TDD represents a time distance between the reference box of list 1 and the reference box of list 0, to which a positive sign (+) is assigned if measured from the reference chart in list 1 and a negative sign (-) if measured from the reference chart in list 0, and MV represents a motion vector of the joint location block in the reference chart in list 1 For direct mode. 30

CASO 4: EL MACROBLOQUE DE LA IMAGEN B ESTÁ EN MODO DE CUADRO Y EL MACROBLOQUE DE UBICACIÓN CONJUNTA DE LA IMAGEN DE REFERENCIA DE LA LISTA 1 ESTÁ EN MODO DE CAMPO CASE 4: THE MACROBLOCK OF IMAGE B IS IN PICTURE MODE AND THE JOINT LOCATION MACROBLOCK OF THE REFERENCE IMAGE OF LIST 1 IS IN FIELD MODE

Si el macrobloque de la imagen B está en el modo de cuadro, el macrobloque de ubicación conjunta de la imagen de referencia de la lista 1 está en el modo de campo y la imagen de referencia de la lista 1 sucede temporalmente a la imagen B, el campo 0 del cuadro de referencia de la lista 1 está temporalmente más cerca de la 35 imagen B que el campo 1 del mismo, de manera que, para el cálculo de los vectores de movimiento de modo directo, se usa información de movimiento de un bloque de ubicación conjunta del campo 0. Como resultado, los vectores de movimiento de modo directo MVF y MVB del cuadro B pueden obtenerse a partir de la siguiente ecuación, donde la información de movimiento del bloque de ubicación conjunta en el campo 0 del cuadro de referencia de la lista 1 se usa para el cálculo de los vectores de movimiento de modo directo: 40 If the macroblock of image B is in frame mode, the joint location macroblock of the reference image of list 1 is in field mode and the reference image of list 1 temporarily happens to image B, field 0 of the reference table in list 1 is temporarily closer to image B than field 1 thereof, so that, for the calculation of motion vectors directly, movement information of a joint location block of field 0. As a result, the direct mode motion vectors MVF and MVB of table B can be obtained from the following equation, where the movement information of the joint location block in field 0 of the table of List 1 reference is used to calculate motion vectors directly: 40

MVF=TDB x MV0/TDD,0 MVF = TDB x MV0 / TDD, 0

MVB=(TDB-TDD,0) x MV0/TDD,0 MVB = (TDB-TDD, 0) x MV0 / TDD, 0

ó or

Z=TDB x 256/TDD,0 MVF=(Z x MV0+128) >> 8 Z = TDB x 256 / TDD, 0 MVF = (Z x MV0 + 128) >> 8

W=Z-256 MVB=(W x MV0+128) >> 8 45 W = Z-256 MVB = (W x MV0 + 128) >> 8 45

donde TDB representa una distancia temporal entre el cuadro B actual y el cuadro de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el cuadro B y un signo negativo (-) si se mide desde el cuadro de referencia de la lista 0, TDD,0 representa una distancia temporal entre un campo 0 del cuadro de referencia de la lista 1 y el campo de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el campo 0 del cuadro de where TDB represents a temporary distance between the current table B and the reference table in list 0, to which a positive sign (+) is assigned if measured from table B and a negative sign (-) if measured from the reference table of list 0, TDD, 0 represents a time distance between a field 0 of the reference box of list 1 and the reference field of list 0, to which a positive sign (+) is assigned if it is measured from field 0 of the table

referencia de la lista 1 y un signo negativo (-) si se mide desde el campo de referencia de la lista 0, y MV0 representa un vector de movimiento del bloque de ubicación conjunta en el campo 0 del cuadro de referencia de la lista 1 para modo directo. reference of list 1 and a negative sign (-) if measured from the reference field of list 0, and MV0 represents a motion vector of the joint location block in field 0 of the reference table of list 1 for direct mode

Si la imagen de referencia de la lista 1 precede temporalmente a la imagen B, el campo 1 del cuadro de referencia de la lista 1 está temporalmente más cerca de la imagen B que el campo 0 del mismo, de manera que, para 5 el cálculo de los vectores de movimiento de modo directo, se usa información de movimiento de un bloque de ubicación conjunta del campo 1. Como resultado, los vectores de movimiento de modo directo MVF y MVB del cuadro B pueden obtenerse a partir de la siguiente ecuación, donde la información de movimiento del bloque de ubicación conjunta en el campo 1 del cuadro de referencia de la lista 1 se usa para el cálculo de los vectores de movimiento de modo directo: If the reference image of list 1 temporarily precedes image B, field 1 of the reference box of list 1 is temporarily closer to image B than field 0 of it, so that for calculation 5 of the direct mode motion vectors, movement information of a joint location block of field 1 is used. As a result, the direct mode motion vectors MVF and MVB of table B can be obtained from the following equation, where The movement information of the joint location block in field 1 of the reference table in list 1 is used for the calculation of motion vectors directly:

MVF=TDB x MV1 /TDD,1 10 MVF = TDB x MV1 / TDD, 1 10

MVB=(TDB-TDD,1) x MV1 /TDD,1 MVB = (TDB-TDD, 1) x MV1 / TDD, 1

ó or

Z=TDB x 256/TDD,1 MVF=(Z x MV1+128) >> 8 Z = TDB x 256 / TDD, 1 MVF = (Z x MV1 + 128) >> 8

W=Z-256 MVB=(W x MV1+128) >> 8 W = Z-256 MVB = (W x MV1 + 128) >> 8

donde TDB representa una distancia temporal entre el cuadro B actual y el cuadro de referencia de la lista 0, a 15 la que se asigna un signo positivo (+) si se mide desde el cuadro B y un signo negativo (-) si se mide desde el cuadro de referencia de la lista 0, TDD,1 representa una distancia temporal entre un campo 1 del cuadro de referencia de la lista 1 y el campo de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el campo 1 del cuadro de referencia de la lista 1 y un signo negativo (-) si se mide desde el campo de referencia de la lista 0, y MV1 representa un vector de movimiento del bloque de ubicación conjunta en el campo 1 del cuadro de referencia de la lista 1 para modo 20 directo. where TDB represents a temporary distance between the current B frame and the reference chart of list 0, to which a positive sign (+) is assigned if measured from table B and a negative sign (-) if measured from the reference table of list 0, TDD, 1 represents a time distance between a field 1 of the reference box of list 1 and the reference field of list 0, to which a positive sign (+) is assigned if measured from field 1 of the reference table in list 1 and a negative sign (-) if measured from the reference field of list 0, and MV1 represents a motion vector of the joint location block in the field 1 of the reference chart in list 1 for direct mode 20.

Tal como se pone de manifiesto a partir de la descripción anterior, la presente invención proporciona un método para calcular vectores de movimiento de modo directo de una imagen B (de predicción bidireccional) definida en una técnica de compresión de imágenes en movimiento de nueva generación. Se propone una técnica para extraer los vectores de movimiento de modo directo de la imagen B con el fin de aumentar la probabilidad de que se seleccione un 25 modo directo como modo de predicción de un macrobloque, mejorando así la eficacia de codificación de una imagen B. As is apparent from the above description, the present invention provides a method for calculating motion vectors directly from an image B (bidirectional prediction) defined in a new generation motion image compression technique. A technique is proposed to extract motion vectors directly from image B in order to increase the probability that a direct mode will be selected as the prediction mode of a macroblock, thereby improving the coding efficiency of an image B .

Claims (15)

REIVINDICACIONES 1. Método para calcular vectores de movimiento de modo directo de una imagen B en un procesado de imágenes en movimiento, que comprende: 1. Method for calculating motion vectors directly from an image B in a motion image processing, comprising: determinar un bloque de ubicación conjunta en una imagen de referencia de la lista 1 para modo directo, y 5   determine a joint location block in a reference image from list 1 for direct mode, and 5 calcular dichos vectores de movimiento de modo directo de dicha imagen B basándose en un vector de movimiento de dicho bloque de ubicación conjunta,   calculating said direct mode motion vectors of said image B based on a motion vector of said joint location block, caracterizado porque   characterized because el bloque de ubicación conjunta en dicha imagen de referencia de la lista 1 para modo directo tiene un vector de movimiento tanto de la lista 0 como de la lista 1, 10   the joint location block in said reference image of list 1 for direct mode has a motion vector of both list 0 and list 1, 10 en donde dicha lista 0 y dicha lista 1 están respectivamente en concordancia con la norma H.264 / MPEG-4 parte 10, y   wherein said list 0 and said list 1 are respectively in accordance with the H.264 / MPEG-4 part 10 standard, and un vector de movimiento de la lista 0 del bloque de ubicación conjunta en dicha imagen de referencia de la lista 1 para modo directo se selecciona como vector de movimiento para obtener los vectores de movimiento de modo directo de la imagen B. 15   a motion vector from list 0 of the joint location block in said reference image of list 1 for direct mode is selected as a motion vector to obtain the direct mode motion vectors of image B. 15 2. Método según la reivindicación 1, en el que el método se aplica en un sistema de codificación de imágenes en movimiento. 2. Method according to claim 1, wherein the method is applied in a motion image coding system. 3. Método según la reivindicación 1 ó 2, que comprende además determinar una imagen de referencia a la que apunta dicho vector de movimiento seleccionado de la lista 0 como imagen de referencia de la lista 0 para dicho modo directo. 20 3. A method according to claim 1 or 2, further comprising determining a reference image pointed to said motion vector selected from list 0 as a reference image from list 0 for said direct mode. twenty 4. Método según la reivindicación 1 ó 2, que comprende además determinar una imagen de referencia a la que hace referencia dicho bloque de ubicación conjunta que incluye dicho vector de movimiento de la lista 0 como imagen de referencia de la lista 0. 4. A method according to claim 1 or 2, further comprising determining a reference image referenced by said joint location block which includes said movement vector from list 0 as a reference image from list 0. 5. Método según una de las reivindicaciones 1 a 4, que comprende además la etapa de asignar un signo a un valor de distancia temporal entre imágenes, cambiar de escala un vector de movimiento de un bloque de 25 ubicación conjunta en una imagen de referencia de la lista 1 para modo directo con independencia de las ubicaciones de las imágenes de referencia de la lista 0 y de dicha lista 1 para modo directo con el fin de obtener un vector de movimiento de la lista 0, MVF, y un vector de movimiento de la lista 1, MVB. 5. Method according to one of claims 1 to 4, further comprising the step of assigning a sign to a time distance value between images, scaling a movement vector of a joint location block in a reference image of list 1 for direct mode irrespective of the locations of the reference images of list 0 and of said list 1 for direct mode in order to obtain a movement vector of list 0, MVF, and a movement vector of list 1, MVB. 6. Método según la reivindicación 5, en el que dicha etapa incluye la etapa de, si tanto un macrobloque de dicha imagen B como un macrobloque de ubicación conjunta de dicha imagen de referencia de la lista 1 están en 30 un modo de cuadro, calcular dichos vectores de movimiento de modo directo MVF y MVB de dicha imagen B de la siguiente manera: Method according to claim 5, wherein said step includes the step of, if both a macroblock of said image B and a macroblock of joint location of said reference image of list 1 are in a frame mode, calculate said MVF and MVB direct mode motion vectors of said image B as follows: MVF = TDB x MV / TDD     MVF = TDB x MV / TDD MVB = (TDB - TDD) x MV / TDD MVB = (TDB - TDD) x MV / TDD ó 35 or 35 Z = TDB x 256 / TDD MVF = (Z x MV + 128) >> 8   Z = TDB x 256 / TDD MVF = (Z x MV + 128) >> 8 W = Z - 256 MVB = (W x MV + 128) >> 8 W = Z - 256 MVB = (W x MV + 128) >> 8 donde TDB representa una distancia temporal entre un cuadro B actual y un cuadro de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el cuadro B y un signo negativo (-) si se mide desde el cuadro de referencia de la lista 0, TDD representa una distancia temporal entre un cuadro de referencia de 40 la lista 1 y el cuadro de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el cuadro de referencia de la lista 1 y un signo negativo (-) si se mide desde el cuadro de referencia de la lista 0, y MV representa un vector de movimiento de dicho bloque de ubicación conjunta en dicha imagen de referencia de la lista 1 para dicho modo directo. where TDB represents a temporary distance between a current B frame and a reference chart of list 0, to which a positive sign (+) is assigned if measured from table B and a negative sign (-) if measured from the reference table of list 0, TDD represents a time distance between a reference box of 40 list 1 and the reference box of list 0, to which a positive sign (+) is assigned if measured from the reference table of list 1 and a negative sign (-) if measured from the reference table of list 0, and MV represents a motion vector of said joint location block in said reference image of list 1 for said direct mode. 7. Método según la reivindicación 5 ó 6, en el que dicha etapa incluye la etapa de, si tanto un macrobloque de 45 dicha imagen B como un macrobloque de ubicación conjunta de dicha imagen de referencia de la lista 1 están en un modo de campo, calcular dichos vectores de movimiento de modo directo MVF,i y MVB,i para cada campo i de un cuadro B de la siguiente manera: A method according to claim 5 or 6, wherein said step includes the step of, if both a macroblock of said image B and a macroblock of joint location of said reference image of list 1 are in a field mode , calculate said motion vectors directly MVF, i and MVB, i for each field i of a table B as follows: MVF,i = TDB,i x MVi/TDD,i MVF, i = TDB, i x MVi / TDD, i MVB,i = (TDB,i - TDD,i) x MVi/TDD,i MVB, i = (TDB, i - TDD, i) x MVi / TDD, i ó or Z = TDB,i x 256/TDD,i MVF,i = (Z x MVi + 128) >> 8 Z = TDB, i x 256 / TDD, i MVF, i = (Z x MVi + 128) >> 8 W = Z - 256 MVB,i = (W x MVi + 128) >> 8 W = Z - 256 MVB, i = (W x MVi + 128) >> 8 donde TDB,i representa una distancia temporal entre un campo B actual y un campo de referencia de la lista 5 0, a la que se asigna un signo positivo (+) si se mide desde el campo B y un signo negativo (-) si se mide desde el campo de referencia de la lista 0, TDD,i representa una distancia temporal entre un campo de referencia de la lista 1 y el campo de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el campo de referencia de la lista 1 y un signo negativo (-) si se mide desde el campo de referencia de la lista 0, y MVi representa un vector de movimiento de un bloque de ubicación conjunta en un 10 campo de referencia de la lista 1 para dicho modo directo. where TDB, i represents a time distance between a current B field and a reference field of the 5 0 list, to which a positive sign (+) is assigned if measured from field B and a negative sign (-) if it is measured from the reference field of list 0, TDD, i represents a temporal distance between a reference field of list 1 and the reference field of list 0, to which a positive sign (+) is assigned if it is measured from the reference field of list 1 and a negative sign (-) if measured from the reference field of list 0, and MVi represents a motion vector of a joint location block in a reference field from list 1 for said direct mode. 8. Método según una de las reivindicaciones 5 a 7, en el que dicha etapa incluye la etapa de, si un macrobloque de dicha imagen B está en un modo de campo y un macrobloque de ubicación conjunta de dicha imagen de referencia de la lista 1 está en un modo de cuadro, calcular dichos vectores de movimiento de modo directo MVF,i y MVB,i para cada campo i de un cuadro B de la siguiente manera: 15 A method according to one of claims 5 to 7, wherein said step includes the step of, if a macroblock of said image B is in a field mode and a joint macroblock of said reference image in list 1 In a frame mode, calculate said motion vectors directly MVF, i and MVB, i for each field i of a frame B as follows: MVF,i = TDB,i x MV /TDD MVF, i = TDB, i x MV / TDD MVB,i = (TDB,i - TDD) x MV/TDD MVB, i = (TDB, i - TDD) x MV / TDD ó or Z = TDB,i x 256/TDD MVF,i = (Z x MV + 128) >> 8 Z = TDB, i x 256 / TDD MVF, i = (Z x MV + 128) >> 8 W = Z - 256 MVB,i = (W x MV + 128) >> 8 20 W = Z - 256 MVB, i = (W x MV + 128) >> 8 20 donde TDB,i representa una distancia temporal entre un campo B actual y un campo de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el campo B y un signo negativo (-) si se mide desde el campo de referencia de la lista 0, TDD representa una distancia temporal entre un cuadro de referencia de la lista 1 y un cuadro de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el cuadro de referencia de la lista 1 y un signo negativo (-) si se mide desde el cuadro de 25 referencia de la lista 0, y MV representa un vector de movimiento de un bloque de ubicación conjunta en un cuadro de referencia de la lista 1 para dicho modo directo. where TDB, i represents a time distance between a current field B and a reference field from list 0, to which a positive sign (+) is assigned if measured from field B and a negative sign (-) if measured from the reference field of list 0, TDD represents a time distance between a reference box of list 1 and a reference box of list 0, to which a positive sign (+) is assigned if measured from the reference frame in list 1 and a negative sign (-) if measured from the reference frame in list 0, and MV represents a motion vector of a joint location block in a reference frame in the list 1 for said direct mode. 9. Método según una de las reivindicaciones 5 a 8, en el que dicha etapa incluye la etapa de, si un macrobloque de dicha imagen B está en un modo de cuadro, un macrobloque de ubicación conjunta de dicha imagen de referencia de la lista 1 está en un modo de campo y dicha imagen de referencia de la lista 1 sucede 30 temporalmente a dicha imagen B, calcular dichos vectores de movimiento de modo directo MVF y MVB de un cuadro B a partir de la siguiente ecuación donde, para el cálculo de dichos vectores de movimiento de modo directo, se usa información de movimiento de un bloque de ubicación conjunta en un campo 0 de un cuadro de referencia de la lista 1: A method according to one of claims 5 to 8, wherein said step includes the step of, if a macroblock of said image B is in a frame mode, a macroblock of joint location of said reference image of list 1 it is in a field mode and said reference image from list 1 happens temporarily to said image B, calculating said motion vectors directly MVF and MVB from a table B from the following equation where, for the calculation of said direct mode motion vectors, movement information of a joint location block is used in a field 0 of a reference table in list 1: MVF = TDB x MV0 /TDD,0 35 MVF = TDB x MV0 / TDD, 0 35 MVB = (TDB - TDD,0) x MV0/TDD,0 MVB = (TDB - TDD, 0) x MV0 / TDD, 0 ó or Z = TDB x 256/TDD,0 MVF = (Z x MV0+ 128) >> 8 Z = TDB x 256 / TDD, 0 MVF = (Z x MV0 + 128) >> 8 W = Z - 256 MVB = (W x MV0+ 128) >> 8 W = Z - 256 MVB = (W x MV0 + 128) >> 8 donde TDB representa una distancia temporal entre un cuadro B actual y un cuadro de referencia de la lista 0, 40 a la que se asigna un signo positivo (+) si se mide desde el cuadro B y un signo negativo (-) si se mide desde el cuadro de referencia de la lista 0, TDD,0 representa una distancia temporal entre un campo 0 del cuadro de referencia de la lista 1 y un campo de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el campo 0 del cuadro de referencia de la lista 1 y un signo negativo (-) si se mide desde el campo de referencia de la lista 0, y MV0 representa un vector de movimiento de un bloque de ubicación 45 conjunta en el campo 0 del cuadro de referencia de la lista 1 para dicho modo directo. where TDB represents a time distance between a current B frame and a reference chart of list 0, 40 to which a positive sign (+) is assigned if measured from table B and a negative sign (-) if measured from the reference table of list 0, TDD, 0 represents a time distance between a field 0 of the reference box of list 1 and a reference field of list 0, to which a positive sign (+) is assigned if measured from field 0 of the reference chart in list 1 and a negative sign (-) if measured from the reference field in list 0, and MV0 represents a motion vector of a joint location block 45 in field 0 of the reference table in list 1 for said direct mode. 10. Método según una de las reivindicaciones 5 a 9, en el que dicha etapa incluye la etapa de, si un macrobloque de dicha imagen B está en un modo de cuadro, un macrobloque de ubicación conjunta de dicha imagen de referencia de la lista 1 está en un modo de campo y dicha imagen de referencia de la lista 1 precede temporalmente a dicha imagen B, calcular dichos vectores de movimiento de modo directo MVF y MVB de un 50 cuadro B a partir de la siguiente ecuación donde, para el cálculo de dichos vectores de movimiento de modo A method according to one of claims 5 to 9, wherein said step includes the step of, if a macroblock of said image B is in a frame mode, a macroblock of joint location of said reference image of list 1 it is in a field mode and said reference image of list 1 temporarily precedes said image B, calculating said MVF and MVB direct motion vectors of a table B from the following equation where, for the calculation of said mode motion vectors directo, se usa información de movimiento de un bloque de ubicación conjunta en un campo 1 de un cuadro de referencia de la lista 1: Directly, movement information from a joint location block is used in a field 1 of a reference chart in list 1: MVF = TDB x MV1/TDD,1 MVF = TDB x MV1 / TDD, 1 MVB = (TDB - TDD,1) x MV1 /TDD,1 MVB = (TDB - TDD, 1) x MV1 / TDD, 1 ó 5 or 5 Z = TDB x 256/TDD,1 MVF = (Z x MV1 + 128) >> 8 Z = TDB x 256 / TDD, 1 MVF = (Z x MV1 + 128) >> 8 W = Z - 256 MVB = (W x MV1 + 128) >> 8 W = Z - 256 MVB = (W x MV1 + 128) >> 8 donde TDB representa una distancia temporal entre un cuadro B actual y un cuadro de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el cuadro B y un signo negativo (-) si se mide desde el cuadro de referencia de la lista 0, TDD,1 representa una distancia temporal entre un campo 1 del cuadro de 10 referencia de la lista 1 y un campo de referencia de la lista 0, a la que se asigna un signo positivo (+) si se mide desde el campo 1 del cuadro de referencia de la lista 1 y un signo negativo (-) si se mide desde el campo de referencia de la lista 0, y MV1 representa un vector de movimiento de un bloque de ubicación conjunta en el campo 1 del cuadro de referencia de la lista 1 para dicho modo directo. where TDB represents a temporary distance between a current B frame and a reference chart of list 0, to which a positive sign (+) is assigned if measured from table B and a negative sign (-) if measured from the reference table of list 0, TDD, 1 represents a time distance between a field 1 of the reference table of list 1 and a reference field of list 0, to which a positive sign (+) is assigned if measured from field 1 of the reference table in list 1 and a negative sign (-) if measured from the reference field in list 0, and MV1 represents a motion vector of a joint location block in the field 1 of the reference table in list 1 for said direct mode. 11. Método según una de las reivindicaciones 1 a 10, que comprende además la etapa de, si un macrobloque de 15 ubicación conjunta en una imagen de referencia de la lista 1 para modo directo está en un modo intra, predecir y calcular imágenes de referencia de la lista 0 y la lista 1 y vectores de movimiento a partir de bloques vecinos de un macrobloque de dicha imagen B a codificar, sobre la base de una redundancia espacial. Method according to one of claims 1 to 10, further comprising the step of, if a macroblock of joint location in a reference image of the list 1 for direct mode is in an intra mode, predict and calculate reference images from list 0 and list 1 and motion vectors from neighboring blocks of a macroblock of said image B to be encoded, based on spatial redundancy. 12. Método según la reivindicación 11, en el que dicha etapa incluye la etapa de, si bloques vecinos A, B y C de 20 dicho macrobloque a codificar se refieren a imágenes de referencia diferentes, seleccionar una imagen de referencia con un índice más pequeño como dicha imagen de referencia para cada lista. 12. Method according to claim 11, wherein said step includes the step of, if neighboring blocks A, B and C of said macroblock to be encoded refer to different reference images, select a reference image with a smaller index as said reference image for each list. 13. Método según la reivindicación 11 ó 12, en el que dicha etapa incluye la etapa de, si dos o más de los bloques vecinos de dicho macrobloque a codificar se refieren a una imagen de referencia con el mismo índice, seleccionar esa imagen de referencia como dicha imagen de referencia para cada lista. 25 13. Method according to claim 11 or 12, wherein said step includes the step of, if two or more of the neighboring blocks of said macroblock to be encoded refer to a reference image with the same index, select that reference image as said reference image for each list. 25 14. Método según una de las reivindicaciones 11 a 13, en el que dicha etapa incluye la etapa de, fijar sus vectores de movimiento de la lista 0 y la lista 1 a 0 si uno cualquiera de los bloques vecinos A, B y C de dicho macrobloque a codificar está en el modo intra, seleccionar un vector de movimiento que tiene la misma dirección que la de una ubicación temporal de dicha imagen de referencia para cada lista a partir de un bloque vecino, y adquirir dicho vector de movimiento para cada lista a través de una operación de mediana, o 30 seleccionar uno cualquiera de los dos vectores de movimiento de ese bloque si un bloque vecino tiene dos 14. Method according to one of claims 11 to 13, wherein said step includes the step of setting its movement vectors from list 0 and list 1 to 0 if any one of the neighboring blocks A, B and C of said macroblock to be encoded is in intra mode, select a motion vector that has the same address as that of a temporary location of said reference image for each list from a neighboring block, and acquire said motion vector for each list through a median operation, or select any one of the two motion vectors of that block if a neighboring block has two vectores de movimiento con las mismas direcciones y adquirir dicho vector de movimiento para cada lista a través de la operación de mediana incluyendo el vector de movimiento seleccionado. motion vectors with the same directions and acquire said motion vector for each list through the median operation including the selected motion vector. 15. Método según una de las reivindicaciones 11 a 14, en el que dicha etapa incluye la etapa de, si no puede obtenerse ningún índice efectivo de imagen de referencia para cada modo de lista, fijar a 0 índices de imágenes de referencia de la lista 0 y la lista 1 y fijar a 0 dicho vector de movimiento para cada modo de lista. 15. A method according to one of claims 11 to 14, wherein said step includes the step of, if no effective index of reference image can be obtained for each list mode, set to 0 indexes of reference images of the list 0 and list 1 and set said movement vector to 0 for each list mode.
ES05018606T 2002-10-04 2003-01-07 METHOD OF CALCULATION OF DIRECT MODE MOVEMENT VECTORS FOR IMAGES B. Expired - Lifetime ES2356551T3 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2002-0060742 2002-10-04
KR20020060742 2002-10-04
KR10-2002-0061243 2002-10-08
KR10-2002-0071226 2002-11-15

Publications (1)

Publication Number Publication Date
ES2356551T3 true ES2356551T3 (en) 2011-04-11

Family

ID=36083199

Family Applications (9)

Application Number Title Priority Date Filing Date
ES07003014T Expired - Lifetime ES2353423T3 (en) 2002-10-04 2003-01-07 DIRECT MODE MOTION VECTOR CALCULATION SYSTEM FOR IMAGES B.
ES08016895T Expired - Lifetime ES2354253T3 (en) 2002-10-04 2003-01-07 METHOD FOR REMOVING DIRECT MODE MOVEMENT VECTORS.
ES08016893T Expired - Lifetime ES2354246T3 (en) 2002-10-04 2003-01-07 METHOD FOR REMOVING DIRECT MODE MOVEMENT VECTORS.
ES08016891T Expired - Lifetime ES2354251T3 (en) 2002-10-04 2003-01-07 METHOD FOR REMOVING DIRECT MODE MOVEMENT VECTORS.
ES05018606T Expired - Lifetime ES2356551T3 (en) 2002-10-04 2003-01-07 METHOD OF CALCULATION OF DIRECT MODE MOVEMENT VECTORS FOR IMAGES B.
ES07003015T Expired - Lifetime ES2356085T3 (en) 2002-10-04 2003-01-07 METHOD OF CALCULATION OF DIRECT MODE MOVEMENT VECTORS FOR IMAGES B.
ES08016888T Expired - Lifetime ES2354252T3 (en) 2002-10-04 2003-01-07 METHOD FOR REMOVING DIRECT MODE MOVEMENT VECTORS.
ES07003016T Expired - Lifetime ES2356566T3 (en) 2002-10-04 2003-01-07 METHOD OF CALCULATION OF DIRECT MODE MOVEMENT VECTORS FOR IMAGES B.
ES08016890T Expired - Lifetime ES2354248T3 (en) 2002-10-04 2003-01-07 METHOD FOR REMOVING DIRECT MODE MOVEMENT VECTORS.

Family Applications Before (4)

Application Number Title Priority Date Filing Date
ES07003014T Expired - Lifetime ES2353423T3 (en) 2002-10-04 2003-01-07 DIRECT MODE MOTION VECTOR CALCULATION SYSTEM FOR IMAGES B.
ES08016895T Expired - Lifetime ES2354253T3 (en) 2002-10-04 2003-01-07 METHOD FOR REMOVING DIRECT MODE MOVEMENT VECTORS.
ES08016893T Expired - Lifetime ES2354246T3 (en) 2002-10-04 2003-01-07 METHOD FOR REMOVING DIRECT MODE MOVEMENT VECTORS.
ES08016891T Expired - Lifetime ES2354251T3 (en) 2002-10-04 2003-01-07 METHOD FOR REMOVING DIRECT MODE MOVEMENT VECTORS.

Family Applications After (4)

Application Number Title Priority Date Filing Date
ES07003015T Expired - Lifetime ES2356085T3 (en) 2002-10-04 2003-01-07 METHOD OF CALCULATION OF DIRECT MODE MOVEMENT VECTORS FOR IMAGES B.
ES08016888T Expired - Lifetime ES2354252T3 (en) 2002-10-04 2003-01-07 METHOD FOR REMOVING DIRECT MODE MOVEMENT VECTORS.
ES07003016T Expired - Lifetime ES2356566T3 (en) 2002-10-04 2003-01-07 METHOD OF CALCULATION OF DIRECT MODE MOVEMENT VECTORS FOR IMAGES B.
ES08016890T Expired - Lifetime ES2354248T3 (en) 2002-10-04 2003-01-07 METHOD FOR REMOVING DIRECT MODE MOVEMENT VECTORS.

Country Status (3)

Country Link
ES (9) ES2353423T3 (en)
RU (2) RU2319318C1 (en)
TW (1) TWI229825B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014005280A1 (en) * 2012-07-03 2014-01-09 Mediatek Singapore Pte. Ltd. Method and apparatus to improve and simplify inter-view motion vector prediction and disparity vector prediction
CN112040244B (en) 2018-03-29 2021-06-29 华为技术有限公司 Bidirectional interframe prediction method and device

Also Published As

Publication number Publication date
ES2353423T3 (en) 2011-03-02
RU2319317C1 (en) 2008-03-10
ES2354253T3 (en) 2011-03-11
ES2354246T3 (en) 2011-03-11
ES2354248T3 (en) 2011-03-11
TW200405987A (en) 2004-04-16
ES2354251T3 (en) 2011-03-11
ES2356085T3 (en) 2011-04-04
TWI229825B (en) 2005-03-21
ES2354252T3 (en) 2011-03-11
RU2319318C1 (en) 2008-03-10
ES2356566T3 (en) 2011-04-11

Similar Documents

Publication Publication Date Title
ES2281573T3 (en) DIRECT MODE MOTION VECTOR CALCULATION PROCEDURE FOR IMAGE B.
ES2356551T3 (en) METHOD OF CALCULATION OF DIRECT MODE MOVEMENT VECTORS FOR IMAGES B.