Método para determinar vectores de movimiento de modo directo en una imagen B.

Un método de codificación de vídeo para obtener vectores de movimiento para un bloque de bi-predicción en modo directo

, el método comprende:

determinar los vectores de movimiento del bloque de bi-predicción; y

descodificar el bloque de bi-predicción basándose en los vectores de movimiento determinados;

caracterizado por que el método comprende además

el paso de determinar una clase de una imagen de referencia señalada por un vector de movimiento de un bloque situado de igual manera, la clase de la imagen de referencia incluyendo una imagen de referencia de larga duración y una imagen de referencia de corta duración;

en la determinación de los vectores de movimiento del bloque de bi-predicción, un vector de movimiento hacia atrás del bloque de bi-predicción es ajustado igual a cero, si la clase de la imagen de referencia es la imagen de referencia de larga duración.

Tipo: Patente Europea. Resumen de patente/invención. Número de Solicitud: E14173995.

Solicitante: LG ELECTRONICS INC..

Nacionalidad solicitante: República de Corea.

Dirección: 20, YOIDO-DONG YONGDUNGPO-KU SEOUL 150-010 REPUBLICA DE COREA.

Inventor/es: JEON,BYEONG MOON.

Fecha de Publicación: .

Clasificación Internacional de Patentes:

  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE IMAGENES, p. ej. TELEVISION > Detalles de los sistemas de televisión (detalles... > H04N5/14 (Circuitos de señal de imagen para la región de frecuencias de video (H04N 5/222 tiene prioridad))
  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE IMAGENES, p. ej. TELEVISION > Métodos o disposiciones para la codificación, decodificación,... > H04N19/51 (Estimación del movimiento o de compensación del movimiento)
  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE IMAGENES, p. ej. TELEVISION > Métodos o disposiciones para la codificación, decodificación,... > H04N19/105 (Selección de la unidad de referencia para la predicción dentro de un modo de codificación o la predicción seleccionada, p. ej elección de adaptación de posición y el número de píxeles utilizados para la predicción)
  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE IMAGENES, p. ej. TELEVISION > Métodos o disposiciones para la codificación, decodificación,... > H04N19/159 (Tipo de predicción, p. ej. intra-fotograma, entre-fotograma (frame) o predicción fotograma bidireccional)
  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE IMAGENES, p. ej. TELEVISION > Métodos o disposiciones para la codificación, decodificación,... > H04N19/172 (siendo la región una imagen, un fotograma o un campo)
  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE IMAGENES, p. ej. TELEVISION > Métodos o disposiciones para la codificación, decodificación,... > H04N19/176 (siendo la región de un bloque, p. ej. un macrobloque)
  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE IMAGENES, p. ej. TELEVISION > Métodos o disposiciones para la codificación, decodificación,... > H04N19/61 (en combinación con codificación predictiva)
  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE IMAGENES, p. ej. TELEVISION > Métodos o disposiciones para la codificación, decodificación,... > H04N19/577 (Compensación del movimiento con interpolación de fotogramas bidireccionales, es decir, utilizando imágenes B)
  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE IMAGENES, p. ej. TELEVISION > Métodos o disposiciones para la codificación, decodificación,... > H04N19/103 (Selección de modo de codificación o, de modo de predicción)
  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE IMAGENES, p. ej. TELEVISION > Métodos o disposiciones para la codificación, decodificación,... > H04N19/142 (Detección de corte de escena o de cambio de escena)
  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE IMAGENES, p. ej. TELEVISION > Métodos o disposiciones para la codificación, decodificación,... > H04N19/114 (La adaptación de la estrucutra del grupo de imágenes [GOP], p. ej número de B-fotogramas entre dos marcos de anclaje (H04N 19/107  tiene prioridad))
  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE IMAGENES, p. ej. TELEVISION > Métodos o disposiciones para la codificación, decodificación,... > H04N19/17 (siendo la unidad una región de imagen, p. ej. un objeto)
  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE IMAGENES, p. ej. TELEVISION > Métodos o disposiciones para la codificación, decodificación,... > H04N19/179 (siendo la unidad una escena o un disparo (shot))
  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE IMAGENES, p. ej. TELEVISION > Métodos o disposiciones para la codificación, decodificación,... > H04N19/503 (que implica predicción temporal (codificación adaptativa con la selección adaptativa entre codificación predictiva espacial y temporal H04N 19/107; codificación adaptativa con la selección adaptativa entre una pluralidad de modos codificación predictiva temporales H04N 19/109))
  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE IMAGENES, p. ej. TELEVISION > Métodos o disposiciones para la codificación, decodificación,... > H04N19/56 (Estimación del movimiento con la inicialización del vector de búsqueda, p. ej estimar un buen candidato para iniciar la búsqueda)
  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE IMAGENES, p. ej. TELEVISION > Métodos o disposiciones para la codificación, decodificación,... > H04N19/583 (Compensación del movimiento con bloques superpuestos)
  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE IMAGENES, p. ej. TELEVISION > Métodos o disposiciones para la codificación, decodificación,... > H04N19/87 (que implica corte de escena o de detección de cambio de escena en combinación con la compresión de vídeo)
  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE IMAGENES, p. ej. TELEVISION > Métodos o disposiciones para la codificación, decodificación,... > H04N19/139 (Análisis de vectores de movimiento, p. ej. su magnitud, la dirección, la variación o la fiabilidad)
  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE IMAGENES, p. ej. TELEVISION > Métodos o disposiciones para la codificación, decodificación,... > H04N19/527 (Estimación del vector de movimiento global)
google+ twitter facebookPin it
Ilustración 1 de Método para determinar vectores de movimiento de modo directo en una imagen B.
Ilustración 2 de Método para determinar vectores de movimiento de modo directo en una imagen B.
Ilustración 3 de Método para determinar vectores de movimiento de modo directo en una imagen B.
Ilustración 4 de Método para determinar vectores de movimiento de modo directo en una imagen B.
Ilustración 5 de Método para determinar vectores de movimiento de modo directo en una imagen B.
Método para determinar vectores de movimiento de modo directo en una imagen B.

Texto extraído del PDF original:

DESCRIPCIÓN

Método para determinar vectores de movimiento de modo directo en una imagen B ANTECEDENTES DE LA INVENCIÓN Campo de la Invención La presente invención se refiere a un sistema de codificación de imágenes en movimiento y, más en particular, a un método de codificación de imágenes en movimiento para mejorar la eficiencia de la codificación utilizando una imagen de referencia de larga duración.

Descripción de la técnica relacionada Para comprimir y codificar óptimamente una secuencia de imágenes en movimiento, es deseable detectar un cambio de escena en una secuencia. Esto es así porque muchas aplicaciones de vídeo, tales como en las noticias, las retransmisiones deportivas, una entrevista en forma de conversación en primer plano, y la conferencia de vídeo en múltiples lugares, incluyen cambios repetitivos de escenas. Tal cambio de escena puede tener lugar en una imagen completa o en alguna zona de la imagen.

El método de codificación de imágenes digitales puede cambiar cuando se detecta un cambio en la escena. Por ejemplo, como la similitud entre una imagen en la que tiene lugar un cambio de escena y una imagen de la escena anterior es muy baja, se codifica una imagen con cambio de escena por un intra-modo en el cual se codifica una imagen utilizando solamente la predicción a partir de muestras descodificadas dentro de la misma imagen, en lugar del inter-modo en el cual se codifica una imagen por compensación del movimiento a partir de las imágenes de referencia previamente descodificadas.

Con más detalle, una imagen en la cual tiene lugar un cambio de escena en toda la imagen, es una intra-imagen la que se codifica en un intra-modo en todos los bloques. Al mismo tiempo, en el caso de una imagen en la cual tiene lugar un cambio de escena en alguna zona, se codifican en intra-modo todos los bloques dentro de las zonas en las cuales tienen lugar un cambio de escena. Como tal intra-modo genera más bits en comparación con el inter-modo, una secuencia en la cual tienen lugar cambios de escena muy frecuentemente conlleva un problema fatal en una aplicación de velocidad de bits baja.

Generalmente, cuando se utiliza una imagen B en un sistema de codificación de imágenes en movimiento, el orden de codificación es diferente del orden de presentación.

La figura 1 ilustra un orden de presentación en el cual se presenta cada imagen cuando se utilizan dos imágenes B. Como se ilustra en la figura 1, se presenta primero una intra-imagen I entre las imágenes a presentar. Posteriormente se presentan dos imágenes B, B1 y B2, tras la intra-imagen I. Después de presentar las imágenes B, se presenta una imagen P, P3. Como se ha descrito anteriormente, se efectúan los pasos siguientes. En otras palabras, se presentan la cuarta y quinta imágenes B, B4 y B5, después de haber presentado la imagen P, P3. Posteriormente, se presenta una imagen P, P6.

Sin embargo, el orden de codificación de una imagen digital no es el mismo que el orden de presentación. En otras palabras, la imagen P se codifica antes de la imagen B.

La figura 2 ilustra un orden de codificación en el cual se presenta cada imagen cuando se utilizan dos imágenes B. Como se ilustra en la figura 2, si se codifica una intra-imagen I, la imagen P, P3, se codifica antes de las dos imágenes B, B1 y B2, que son presentadas antes de la imagen P, P3. Tras eso, se codifican posteriormente P6, B4, B5, P9, B7, B8, P12, B10 y B11.

Aquí, las imágenes B tienen cinco modos tales como el intra-modo, el modo de avance, el modo hacia atrás, el modo de bi-predicción y el modo directo. El modo de bi-predicción tiene dos imágenes de referencia. Las dos imágenes de referencia están todas ellas situadas antes o después de la imagen B o una de ellas está situada antes de la imagen B y la otra está situada después de la imagen B.

Especialmente, el modo directo utiliza la redundancia temporal para mantener la continuidad del movimiento entre dos imágenes contiguas. En otras palabras, en el modo directo, el vector de movimiento de avance y el vector de movimiento hacia atrás del modo directo en la imagen B se obtienen a partir del vector de movimiento de un bloque situado de igual manera en la imagen posterior que se sitúa justamente detrás de la imagen B. Tal modo directo no necesita bits de sobrecarga tales como la información del movimiento, de manera que puede reducirse la velocidad en bits.

En el presente documento, el vector MVf de movimiento de avance y el vector MVb de movimiento hacia atrás del modo directo convencional, se obtienen haciendo una escalación del vector MV de movimiento utilizando la distancia en tiempo entre las imágenes cuando el bloque situado de igual manera en la imagen posterior tiene un vector MV de movimiento. En otras palabras, el vector MVf de movimiento de avance y el vector MVb de movimiento hacia atrás se determinan utilizando las siguientes ecuaciones 1 y 2.

Ecuación 1:

TRb * MV

MV

f

TRd

Ecuación 2:

TRb

(  TRd)* MV

MV

b

TRd

donde MV es el vector de movimiento del bloque situado de igual manera en la imagen posterior, MVf es el vector de movimiento de avance del modo directo para una imagen B, MVb es el vector de movimiento hacia atrás del modo directo para la imagen B, TRd es una distancia en tiempo entre la imagen posterior y una imagen de referencia a la que apunta el vector de movimiento del bloque situado de igual manera en la imagen posterior, y TRb es una distancia en tiempo entre una imagen B y una imagen de referencia a la que apunta el vector de movimiento del bloque situado de igual manera en la imagen posterior.

Como resultado, el modo directo es un modo de codificación para obtener dos bloques con compensación de movimiento utilizando dos vectores MVf y MVb y obtiene un bloque de predicción promediando o mediante un cálculo de interpolación de dos bloques compensados en movimiento.

SUMARIO DE LA INVENCIÓN La presente invención está dirigida a un método de codificación de imágenes en movimiento que supera sustancialmente uno o más de los problemas debidos a las limitaciones y desventajas de la técnica relacionada.

Consecuentemente, un objeto de la presente invención es proporcionar un método de codificación de imágenes en movimiento capaz de mejorar la eficiencia de la codificación por el modo directo utilizando una imagen de referencia de larga duración para una imagen B.

Otro objeto de la presente invención es proporcionar un método de codificación de imágenes en movimiento capaz de reducir la cantidad de bits que se utilizan en inter-modo para la imagen en la cual ocurre un cambio de escena.

En la descripción que sigue se establecerán en parte ventajas, objetos y características adicionales de la invención, y en parte quedarán claras para los expertos normales en la técnica, al examinar lo que sigue, o bien se aprenderán al poner en práctica la invención. Los objetivos y otras ventajas de la invención pueden ser percibidos y alcanzados por la estructura particularmente señalada en la descripción escrita y en las reivindicaciones de la misma, así como en los dibujos anexos.

Para lograr estos objetos y otras ventajas y de acuerdo con el propósito de la invención, tal como se realiza y describe ampliamente aquí, un método para determinar vectores de movimiento de modo directo en una imagen B incluye el paso de: cuando se codifica cada bloque de la imagen B utilizando el modo directo, determinar diferenciadamente los vectores de movimiento del modo directo para la imagen B de acuerdo con una clase de memoria intermedia de referencia que almacena una imagen de referencia señalada por un vector de movimiento de un bloque situado de igual manera en una imagen especificada.

Se desea que la imagen especificada sea una imagen de las imágenes de referencia de corta duración utilizadas en la codificación de la imagen B.

La clase de imagen de referencia se determina utilizando un índice de imágenes de referencia calculado previamente en un bloque situado de igual manera en la imagen especificada.

El índice de la imagen de referencia se almacena en una memoria intermedia del sistema.

Cuando un vector de movimiento calculado en un bloque situado de igual manera en la imagen especificada, apunta a una imagen de referencia de larga duración, un vector de movimiento de avance del modo directo para la imagen B es un vector de movimiento del bloque situado de igual manera en la imagen especificada, y un vector de movimiento hacia atrás del modo directo para la imagen B se determina que es igual a cero.

El vector de movimiento calculado en el bloque situado de igual manera en la imagen especificada, es almacenado en una memoria intermedia del sistema.

Cuando un vector de movimiento calculado en el bloque situado de igual manera en la imagen especificada, apunta a una imagen de referencia de corta duración, los vectores de movimiento del modo directo para la imagen B se determinan mediante la escalación del vector de movimiento del bloque situado de igual manera en la imagen especificada por la distancia en tiempo entre las imágenes.

El vector de movimiento calculado en el bloque situado de igual manera en la imagen especificada es almacenado en una memoria intermedia del sistema.

En otro aspecto de la presente invención, un método para determinar los vectores de movimiento del modo directo en una imagen B comprende el paso de: cuando se codifica cada bloque de la imagen B utilizando el modo directo, determinar diferenciadamente los vectores de movimiento del modo directo para la imagen B de acuerdo con una clase de memoria intermedia de referencias que almacena una imagen especificada.

La memoria intermedia de referencias incluye una memoria intermedia de referencias de larga duración y una memoria intermedia de referencias de corta duración.

Se desea que la imagen especificada sea una entre la imagen de referencia de corta duración y la imagen de referencia de larga duración.

Cuando la imagen especificada está en la memoria intermedia de referencias de larga duración, un vector de movimiento de avance del modo directo para la imagen B es un vector de movimiento del bloque situado de igual manera en la imagen especificada, y un vector de movimiento hacia atrás del modo directo para la imagen B se determina que es igual a cero.

Cuando la imagen especificada está en la memoria de referencia de corta duración, los vectores de movimiento del modo directo para la imagen B se determinan de forma diferente de acuerdo con la clase de la memoria intermedia de referencia que almacena una imagen de referencia a la que apunta el vector de movimiento del bloque situado de igual manera en la imagen especificada.

La clase de la imagen de referencia se determina utilizando un índice de imágenes de referencia calculado previamente en el bloque situado de igual manera en la imagen especificada.

El índice de imágenes de referencia es almacenado en una memoria intermedia del sistema.

Cuando un vector de movimiento calculado en el bloque situado de igual manera en la imagen especificada, apunta a una imagen de referencia de larga duración, un vector de movimiento de avance del modo directo para la imagen B es un vector de movimiento del bloque situado de igual manera en la imagen especificada, y un vector de movimiento hacia atrás del modo directo para la imagen B se determina que es igual a cero.

El vector de movimiento calculado en el bloque situado de igual manera en la imagen especificada se almacena en una memoria intermedia del sistema.

Cuando un vector de movimiento calculado en el bloque situado de igual manera en la imagen especificada apunta a una imagen de referencia de corta duración, los vectores de movimiento del modo directo para la imagen B se determinan mediante una escalación del vector de movimiento del bloque situado de igual manera en la imagen especificada por la distancia en el tiempo entre imágenes.

El vector de movimiento calculado en el bloque situado de igual manera en la imagen especificada se almacena en una memoria intermedia del sistema.

En otro aspecto de la presente invención, un método de codificación de una imagen P de una imagen en movimiento en inter-modo, comprende los pasos de: (a) determinar si el cambio de escena tiene lugar en la imagen P; y (b) si el cambio de escena tiene lugar en la imagen P, codificar la imagen P con referencia a la imagen de referencia de larga duración.

Se desea que la imagen P en la cual tiene lugar el cambio de escena sea una imagen de corte de la escena y una imagen parcial del cambio de escena.

Si la imagen P en la cual tiene lugar el cambio de escena es una imagen parcial del cambio de escena, los bloques incluidos en una zona en la cual tiene lugar el cambio de escena son codificados utilizando la imagen de referencia de larga duración.

Una memoria intermedia de referencias de larga duración que almacena la imagen de referencia de larga duración es una memoria intermedia para almacenar una imagen codificada antes de un tiempo predeterminado.

Si la imagen P en la cual tiene lugar un cambio de escena es una imagen de cambio de escena parcial, los bloques incluidos en una zona en la cual no tiene lugar un cambio de escena son codificados utilizando una imagen de referencia de corta duración.

Una memoria intermedia de referencias de corta duración que almacena la imagen de referencia de corta duración, es una memoria intermedia para almacenar una imagen codificada tras un tiempo predeterminado.

En otro aspecto de la presente invención, un método de codificación de una secuencia de imágenes en movimiento en un sistema de codificación de imágenes en movimiento, comprende los pasos de: (a) determinar si tiene lugar un cambio de escena en una imagen P; (b) si hay una imagen P en la cual tiene lugar un cambio de escena, codificar la imagen P en inter-modo con referencia a la imagen de referencia de larga duración; (c) cuando se codifica cada bloque en una imagen B utilizando el modo directo de acuerdo con el orden de codificación, determinar una clase de memoria intermedia de referencias que almacene una imagen especificada; y (d) calcular los vectores de movimiento del modo directo para la imagen B de acuerdo con la clase de la memoria intermedia de referencias y codificar la imagen B en el modo directo.

El vector de movimiento calculado en el bloque situado de igual manera en la imagen especificada se almacena en una memoria intermedia del sistema.

Cuando la imagen especificada está en la memoria intermedia de referencias de larga duración en el paso (d), un vector de movimiento de avance del modo directo para la imagen B es un vector de movimiento del bloque situado de igual manera en la imagen especificada, y un vector de movimiento hacia atrás del modo directo para la imagen B se determina que es igual a cero.

Cuando la imagen especificada está en la memoria de referencias de corta duración en el paso (d), los vectores de movimiento del modo directo para la imagen B se determinan de forma diferente de acuerdo con la clase de la memoria intermedia de referencias que almacena una imagen de referencia a la que apunta el vector de movimiento del bloque situado de igual manera en la imagen especificada.

La clase de imagen de referencia se determina utilizando un índice de imágenes de referencia calculado anteriormente en un bloque situado de igual manera en la imagen especificada.

El índice de imágenes de referencia se almacena en una memoria intermedia del sistema.

Cuando un vector de movimiento calculado en un bloque situado de igual manera en la imagen especificada apunta a una imagen de referencia de larga duración, un vector de movimiento de avance del modo directo para la imagen B es un vector de movimiento del bloque situado de igual manera en la imagen especificada, y un vector de movimiento hacia atrás del modo directo para la imagen B se determina que es igual a cero.

El vector de movimiento calculado en el bloque situado de igual manera en la imagen especificada, se almacena en una memoria intermedia del sistema.

Cuando un vector de movimiento calculado en el bloque situado de igual manera en la imagen especificada apunta a una imagen de referencia de corta duración, los vectores de movimiento del modo directo para la imagen B se determinan mediante la escalación del vector de movimiento calculado en el bloque situado de igual manera en la imagen especificada por la distancia en tiempo entre las imágenes.

El vector de movimiento calculado en el bloque situado de igual manera en la imagen especificada es almacenado en una memoria intermedia del sistema.

La imagen P en la cual tiene lugar un cambio de escena, es una ente la imagen de corte de la escena y la imagen parcial de cambio de escena.

Si la imagen P en la cual tiene lugar un cambio de escena es una imagen parcial de cambio de escena, los bloques incluidos en una zona en la cual tiene lugar un cambio de escena son codificados utilizando una imagen de referencia de larga duración.

Una memoria intermedia de referencias de larga duración que almacena la imagen de referencia de larga duración es una memoria intermedia para almacenar una imagen codificada antes de un tiempo predeterminado.

Si la imagen P en la cual tiene lugar un cambio de escena es una imagen parcial de un cambio de escena, los bloques incluidos en una zona en la cual no tiene lugar el cambio de escena, son codificados utilizando una imagen de referencia de corta duración.

Una memoria intermedia de referencias de corta duración que almacena la imagen de referencia de corta duración, es una memoria intermedia para almacenar una imagen codificada después de un tiempo predeterminado.

Una memoria de referencias de corta duración consiste en una memoria FIFO (primera en entrar, primera en salir).

La imagen especificada para la codificación en modo directo de la imagen B es una de las imágenes de referencia utilizadas para codificar la imagen B.

Debe entenderse que tanto la descripción general precedente como la descripción detallada que sigue de la presente invención, son ejemplos y explicativas de las mismas, y están destinadas a proporcionar una explicación adicional de la invención, como está reivindicada.

BREVE DESCRIPCIÓN DE LOS DIBUJOS Los dibujos que se acompañan, que se incluyen para proporcionar una mejor comprensión de la invención, y están incorporados y constituyen una parte de esta solicitud, ilustran un modo (o modos) de realización de la invención y sirven, junto con la descripción, para explicar el principio de la invención. En los dibujos: La figura 1 ilustra un orden de presentación en el cual cada imagen se presenta utilizando dos imágenes B; La figura 2 ilustra un orden de codificación en el cual se presenta cada imagen cuando se utilizan dos imágenes B; Las figuras 3A a 3B son diagramas de flujo que ilustran un método de codificación de una secuencia de imágenes en movimiento en un sistema de codificación de imágenes en movimiento, de acuerdo con la realización preferida de la presente invención; La figura 4 ilustra un método de codificación de una secuencia de imágenes en movimiento en la cual tiene lugar un cambio de escena, de acuerdo con la realización preferida de la presente invención; y La figura 5 ilustra un método de codificación de una imagen B en modo directo, de acuerdo con la realización preferida de la presente invención.

DESCRIPCIÓN DETALLADA DE LA INVENCIÓN Se hará referencia ahora con detalle a los modos de realización preferidos de la presente invención, ejemplos de los cuales se ilustran en los dibujos que se acompañan. Cuando sea posible, se utilizarán las mismas referencias numéricas en todos los dibujos para referirse a las mismas partes o similares.

Para empezar, antes de describir un modo de realización de la presente invención, en imágenes en movimiento que tengan un cambio de escena, una imagen en la cual tiene lugar totalmente un cambio de escena en la imagen se define como una imagen de corte de escena, y una imagen en la cual ocurre parcialmente un cambio de escena en la imagen, se define como una imagen parcial de cambio de escena.

Las figuras 3A y 3B son diagramas de flujo que ilustran un método de codificación de una secuencia de imágenes en movimiento en un sistema de codificación de imágenes en movimiento de acuerdo con la realización preferida de la presente invención. Haciendo referencia a las figuras 3A y 3B, se introducen secuencialmente imágenes desde una secuencia de imágenes en movimiento (S111).

Se determinan las clases de imágenes (S114). En otras palabras, se determina si la imagen introducida es una imagen P o una imagen B. Aquí, en este modo de realización de la presente invención, se supone que se completa de antemano una codificación con respecto a una intra-imagen.

Si una imagen es la imagen P, se determina si tiene lugar o no un cambio de escena en la imagen P (S117). Aquí, el cambio de escena se determina comparando la imagen P con una imagen (imagen P o imagen B) presentada justamente antes de la imagen P.

Como resultado de la determinación del paso S117, si la escena cambia completamente entre las P imágenes, la imagen P es una imagen de corte de escena. Al mismo tiempo, si se determina que la imagen P es la imagen de corte de la escena, se lleva a cabo una codificación con referencia a una imagen de referencia de larga duración (S120).

Si la imagen P no es la imagen de corte de la escena, se determina si la imagen P es o no una imagen parcial del cambio de escena (S123).

Si la imagen P es una imagen parcial de cambio de escena, los bloques contenidos en una zona en la cual cambia la escena, son codificados con referencia a la imagen de referencia de larga duración volviendo al paso S120 (S126).

Los bloques contenidos en una zona en la cual la escena no cambia, son codificados con referencia a una imagen de referencia de corta duración (S129, S132).

Aquí, la imagen de referencia de larga duración es una imagen almacenada en una memoria intermedia de referencias de larga duración, y la imagen de referencia de corta duración es una imagen almacenada en una memoria intermedia de referencias de corta duración.

La memoria intermedia de referencias de corta duración está provista de una memoria FIFO (primera en entrar, primera en salir), en la cual una imagen que se introduce en primer lugar es entregada como salida en primer lugar, y las imágenes codificadas antes de un tiempo relativamente corto son almacenadas en la memoria intermedia de referencias de corta duración.

Las imágenes codificadas antes de un tiempo relativamente largo son almacenadas en una memoria intermedia de referencias de larga duración. Las primeras imágenes de los respectivos conjuntos de escenas, es decir, una intra- imagen, la imagen de corte de la escena, la imagen parcial de cambio de escena y similares, son almacenadas en la memoria intermedia de referencias de larga duración.

Si no hay una imagen de corte de la escena o bien la imagen parcial de cambio de escena en la memoria intermedia de referencias de larga duración, la imagen en la cual tiene lugar el cambio de escena puede ser almacenada también.

Consecuentemente, como se ilustra en la figura 4, una intra-imagen 10 que es la primera imagen de corte de escena de un conjunto A1 de escenas, una primera imagen P50 de corte de escena de un conjunto B1 de escenas y una primera imagen parcial P120 de cambio de escena, pueden ser almacenadas en la memoria intermedia de referencias de larga duración. Aquí, el conjunto de escenas es un conjunto de imágenes similares. Por ejemplo, supóngase un programa de debate en que aparece el locutor, aparece un grupo de personas A, aparece de nuevo el locutor y después aparece nuevamente el grupo A. La escena en que aparece el locutor en primer lugar es el conjunto A de escenas y la escena en que aparece posteriormente el grupo A es el conjunto B de escenas. El conjunto de escenas en que aparece nuevamente el locutor es el conjunto A de escenas y la escena en que aparece nuevamente el panel A es el conjunto B de escenas. Como se ha descrito anteriormente, cuando tiene lugar un cambio de escenas, la imagen P se codifica por medio de un inter-modo para codificarla con referencia a una referencia de corta duración o una imagen de referencia de larga duración en lugar del intra-modo. Esto reduce la cantidad de bits necesaria para mejorar la eficiencia de la codificación.

La descripción del paso S117 a S132 se hará con respecto a la figura 4. Como se ilustra en la figura 4, si la imagen P, P200, a codificar ahora es la imagen de corte de la escena que pertenece al conjunto B2 de escenas, las imágenes de referencia de corta duración almacenadas en la memoria intermedia de referencias de corta duración no serán utilizadas. Esto es debido a que la imagen P200 de corte de escena es la primera imagen del conjunto B2 de escenas, y el conjunto de escenas de la imagen P200 de corte de escena es diferente de las imágenes de referencia de corta duración, tales como P199, P198, P197, etc., que pertenecen al conjunto A2 de escenas. Así, la similitud de la imagen P200 de corte de escena con las imágenes de referencia de corta duración que pertenecen al conjunto A2 de escenas se reduce considerablemente y no puede conseguirse la codificación precisa a partir de tales imágenes de referencia.

En este caso, la imagen P se codifica en inter-modo con referencia a las otras imágenes de referencia, P50 y P120, que pertenecen a un conjunto B1 de escenas que es el mismo que el conjunto B2 de escenas.

Por otra parte, si el cambio parcial de escena tiene lugar en la imagen P, P250, la codificación se efectúa de forma diferente dependiendo de dos condiciones. En otras palabras, los bloques incluidos en la zona en la cual tiene lugar un cambio de escena parcial se codifica en inter-modo con referencia a las imágenes de referencia de larga duración, P50 y P120, almacenadas en la memoria intermedia de referencias de larga duración. Los bloques incluidos en la zona en la que no tiene lugar el cambio de escena parcial, se codifican en inter-modo con referencia a las imágenes de referencia de corta duración P249, P248, P247, etc., almacenadas en la memoria intermedia de referencias de corta duración.

Como se ha descrito anteriormente, una vez que se codifica una imagen P, se introduce la imagen siguiente (S159). Si la imagen correspondiente es una imagen B, se comprueban los cinco modos de predicción (intra-modo, modo de avance, modo hacia atrás, modo de bi-predicción y modo directo) y se selecciona uno de ellos como código de codificación óptimo (S135, S138). En esta memoria, se describirá principalmente el modo directo.

En primer lugar, se lee un bloque de la imagen B (S141). Naturalmente, los demás bloques pueden leerse posteriormente. Tras eso, se examina una clase de memoria de referencia que almacena una imagen especificada.

La imagen especificada se determina en las imágenes anteriores a la imagen B en el orden de codificación, independientemente del orden de presentación. En otras palabras, la imagen especificada es una de las imágenes de referencia utilizadas para codificar la imagen B. Por tanto, la imagen especificada puede ser una imagen de referencia de corta duración o una imagen de referencia de larga duración. Las imágenes de referencia de corta duración pueden estar antes o después de la imagen B en el orden de presentación, y son almacenadas en la memoria intermedia de referencias de corta duración. Las imágenes de referencia de larga duración son almacenadas en la memoria intermedia de referencias de larga duración. Si la imagen especificada es una imagen de referencia de larga duración, el vector de movimiento de avance del modo directo para la imagen B es un vector de movimiento del bloque situado de igual manera en la imagen especificada. El vector de movimiento hacia atrás del modo directo para la imagen B se determina que es igual a cero (S150). Sin embargo, si la imagen especificada es una imagen de referencia de corta duración, se lee el índice de imágenes de referencia y el vector de movimiento calculado en el bloque situado de igual manera en la imagen especificada (S144). Este índice de imágenes de referencia y el vector de movimiento se calculan previamente y se almacenan en la memoria intermedia del sistema. De acuerdo con el índice de imágenes de referencia, se determina si el vector de movimiento del bloque situado de igual manera en la imagen especificada apunta a una imagen de referencia de larga duración (S147). Como se ha descrito anteriormente, las imágenes de referencia son almacenadas en la memoria intermedia de referencias que incluye la memoria intermedia de referencias de corta duración y la memoria intermedia de referencias de larga duración.

Si el vector de movimiento del bloque situado de igual manera en la imagen especificada apunta a la imagen de referencia de larga duración, se codifica la imagen B utilizando las siguientes expresiones 3 y 4 (S150).

Expresión 3 MVf = MV donde MV es un vector de movimiento del bloque situado de igual manera en la imagen especificada, y MVf es un vector de movimiento de avance del modo directo para la imagen B Expresión 4 MVb = 0 donde MV es un vector de movimiento del bloque situado de igual manera en la imagen especificada, y MVb es un vector de movimiento hacia atrás del modo directo para la imagen B.

En otras palabras, si el vector de movimiento del bloque situado de igual manera en la imagen especificada apunta a la imagen de referencia de larga duración, el vector de movimiento de avance del modo directo para la imagen B es el vector de movimiento del bloque situado de igual manera en la imagen especificada y el vector de movimiento hacia atrás es cero.

Como se ilustra en la figura 5, en el paso S150, si el vector de movimiento del bloque situado de igual manera en la imagen especificada P200 apunta a la imagen P50 de referencia de larga duración, los términos TRd y TRb no tienen significado en las expresiones convencionales 1 y 2. En otras palabras, como TRd y TRb son la distancia en tiempo, incluyendo también el otro conjunto A2 de escenas, entre la imagen especificada P200 perteneciente al conjunto B2 de escenas y la imagen P50 de referencia de larga duración perteneciente al mismo conjunto B1 de escenas, el vector de movimiento de avance y el vector de movimiento hacia atrás del modo directo no pueden calcularse utilizando tales TRd y TRb.

Haciendo referencia a la figura 5, se hace una descripción más detallada. Cuando se insertan dos imágenes B en una secuencia de imágenes en movimiento y se codifican, la imagen P, P200, que es anterior a las imágenes B1 y B2 en el orden de codificación, se codifica en primer lugar. Aquí, como la imagen P, P200, es una imagen de corte de escena, en la cual tiene lugar un cambio de escena, la imagen P, P200, se codifica en inter-modo a partir de la imagen P50 de referencia de larga duración almacenada en la memoria intermedia de referencias de larga duración. De acuerdo con el orden de codificación, la siguiente imagen a codificar es la imagen B1. Como la imagen B1 pertenece a un conjunto A2 de escenas, la mayoría de los bloques son codificados en modo de avance a partir de las imágenes de referencia de corta duración pertenecientes al conjunto A2 de escenas, o en el modo de bi- predicción en el cual las dos imágenes de referencia pertenecen al conjunto A2 de escenas. Sin embargo, el intra- modo, el modo hacia atrás, o el modo de bi-predicción a partir de la imagen P, P200, perteneciente al otro conjunto B2 de escenas, y el modo directo para obtener vectores de movimiento del modo directo a partir del bloque situado de igual manera en la imagen P, P200, no serán utilizados probablemente como modo de codificación para los bloques de la imagen B1.

A diferencia de lo anterior, como no solamente la imagen B2, sino también la imagen especificada P200 utilizada para los vectores de movimiento del modo directo para la imagen B2, pertenecen al mismo conjunto B2 de escenas, se selecciona el modo directo como modo de codificación para la mayoría de los bloques en la imagen B2. En otras palabras, tras obtener el vector de movimiento de cada bloque en la imagen especificada P200, por medio del inter- modo a partir de la imagen P50 de referencia de larga duración perteneciente al mismo conjunto B2 de escenas, los vectores de movimiento del modo directo en la imagen B2 se calculan a partir del vector de movimiento del bloque situado de igual manera en la imagen especificada P200. Como la imagen B2 y la imagen especificada P200 pertenecen al conjunto B2 de escenas, la imagen P50 de referencia de larga duración pertenece también al conjunto B1 de escenas, y la similitud entre el conjunto B1 de escenas y el conjunto B2 de escenas es muy alta, se puede seleccionar el modo directo como modo de codificación para la mayoría de los bloques de la imagen B2. Consecuentemente, se mejora la eficiencia de la codificación para la imagen B2.

Por otra parte, si el vector de movimiento del bloque situado de igual manera en la imagen especificada, apunta a una imagen de referencia de corta duración, la imagen B se codifica utilizando las expresiones convencionales 1 y 2.

En este momento, como la imagen de referencia de corta duración almacenada en la memoria intermedia de referencias de corta duración pertenece al mismo conjunto de escenas al que pertenece la imagen B, y no existe otro conjunto de escenas entre la imagen especificada y la imagen de referencia de corta duración, el vector de movimiento de avance y el vector de movimiento hacia atrás del modo directo se determinan utilizando las expresiones convencionales 1 y 2, relacionadas con TRd y TRb que representan la distancia en el tiempo.

Si se codifica un bloque de la imagen B, se lee y se codifica posteriormente el siguiente bloque de la imagen B (S156). Tales procesos se realizan en todos los bloques de la imagen B. Una vez que la imagen B ha sido codificada, se introduce y se codifica la siguiente imagen, de manera que se consigue una codificación de imágenes en movimiento (S159).

Como se ha descrito anteriormente, de acuerdo con un método de codificación de imágenes en movimiento de la presente invención, el vector de movimiento de avance y el vector de movimiento hacia atrás del modo directo para la imagen B, se determinan de forma diferente basándose en la imagen de referencia a la que apunta el vector de movimiento del bloque situado de igual manera en la imagen especificada. Cuando se codifica la imagen B, se utiliza principalmente el modo directo como modo de codificación para mejorar la eficiencia total de codificación.

De acuerdo con el método de codificación de imágenes en movimiento de la presente invención, la imagen P en la cual ocurre un cambio de escena es codificada en inter-mode utilizando la compensación de movimiento a partir de una referencia de larga duración para reducir la cantidad de bits y mejorar la eficiencia de codificación.

Será obvio para los expertos en la técnica que varias modificaciones y variaciones pueden ser realizadas en la presente invención. Así pues, se pretende que la presente invención cubra las modificaciones y variaciones de esta invención en tanto y en cuanto estén dentro del alcance de las reivindicaciones adjuntas y sus equivalentes.

Resumiendo, la presente invención se refiere a un método de codificación de imágenes en movimiento, para mejorar la eficiencia de la codificación de una secuencia de codificación de imágenes en movimiento en inter-modo y en modo directo en una imagen B utilizando una imagen de referencia de larga duración. En la presente invención, una imagen P es codificada en inter-modo de acuerdo con el cambio de escena. Los vectores de movimiento del modo directo se calculan y codifican de acuerdo con la clase de imagen de referencia a la que apunta un vector de movimiento de un bloque situado de igual manera en la imagen especificada.

El contenido descrito en los párrafos siguientes, que están numerados para permitir una fácil referencia, es parte de la descripción de la presente invención, cada uno de los cuales puede ser reivindicado en la presente invención y en una o más divisionales futuras de la misma: (1) Un método para determinar vectores de movimiento de modo directo en una imagen B, en la cual, cuando al procesar cada bloque en la imagen B utilizando el modo directo, los vectores de movimiento del modo directo para la imagen B son determinado de manera diferente de acuerdo con una clase de una memoria intermedia de referencia que almacena una imagen de referencia indicada para un vector de movimiento de un bloque situado de igual manera en una imagen especificada. (2) El método de acuerdo con el párrafo (1) anterior, en el que la imagen especificada es una de las imágenes de referencia de corta duración almacenadas en una memoria intermedia de referencias de corta duración utilizada en el procesamiento de la imagen B.

(3) Un método para determinar vectores de movimiento de modo directo en una imagen B, en particular de acuerdo con uno de los párrafos (1) ó (2) anteriores, en el cual, cuando al procesar cada bloque en la imagen B utilizando el modo directo, los vectores de movimiento del modo directo para la imagen B son determinados de manera diferente de acuerdo con una clase de memoria intermedia de referencias que almacena una imagen especificada.

(4) El método de acuerdo con uno de los párrafos anteriores, en el que la memoria intermedia de referencias incluye una memoria intermedia de referencias de corta duración y una memoria intermedia de referencias de larga duración. (5) El método de acuerdo con uno de los párrafos anteriores, en el que la imagen especificada es una de las imágenes de referencia procesadas previamente para ser utilizadas para procesar la imagen B (6) El método de acuerdo con uno de los párrafos (3) a (5) anteriores, en el que la imagen especificada es una de entre una imagen de referencia de corta duración y una imagen de referencia de larga duración. (7) El método de acuerdo con uno de los párrafos (3) a (6) anteriores, en el que si la imagen especificada es almacenada en la memoria intermedia de referencias de larga duración, un vector de movimiento de avance del modo directo para la imagen B es ajustado a un vector de movimiento del bloque situado de igual manera en la imagen especificada, y un vector de movimiento hacia atrás del modo directo para la imagen B es ajustado a cero. (8) El método de acuerdo con uno de los párrafos (3) a (6) anteriores, en el que si la imagen especificada es almacenada en la memoria intermedia de corta duración, los vectores de movimiento de modo directo para la imagen B son determinadas de modo diferente de acuerdo con la clase de la memoria intermedia de referencias que almacena una imagen de referencia señalada por el vector de movimiento del bloque situado de igual manera en la imagen especificada.

(9) El método de acuerdo con uno de los párrafos anteriores, en el que la clase de la imagen de referencia se determina utilizando un índice de imágenes de referencia calculadas previamente en el bloque situado de igual manera en la imagen especificada. (10) El método de acuerdo con el párrafo (9) anterior, en el que el índice de imágenes de referencia es almacenado en una memoria intermedia del sistema. (11) El método de acuerdo con uno de los párrafos anteriores, en el que si un vector de movimiento calculado en el bloque situado de igual manera en la imagen especificada señala a una imagen de referencia almacenada en la memoria intermedia de referencias de larga duración, un vector de movimiento de avance del modo directo para la imagen B es un vector de movimiento del bloque situado de igual manera en la imagen especificada, y un vector de movimiento hacia atrás del modo directo para la imagen B es ajustado a cero. (12) El método de acuerdo con uno de los párrafos anteriores, en el que si un vector de movimiento calculado en el bloque situado de igual manera en la imagen especificada señala a una imagen de referencia almacenada en la memoria intermedia de referencias de corta duración, los vectores de movimiento del modo directo para la imagen B son determinados escalando el vector de movimiento del bloque situado de igual manera en la imagen especificada mediante la distancia temporal entre imágenes. (13) El método de acuerdo con los párrafos (11) ó (12) anteriores, en el que el vector de movimiento del bloque situado de igual manera en la imagen especificada es almacenado en una memoria intermedia del sistema.

(14) El método de acuerdo con uno de los párrafos anteriores, en el que la memoria de referencias de corta duración consta de una memoria FIFO (primera en entrar primera en salir). (15) Un método para obtener vectores de movimiento para un bloque de bi-predicción en modo directo, preferiblemente de acuerdo con uno de los párrafos anteriores, el método que comprende: leer el bloque de bi-predicción a ser procesado y un bloque situado de igual manera utilizado para obtener vectores de movimiento para el bloque de bi-predicción en modo directo; y obtener los vectores de movimiento para el bloque de bi-predicción basado en una clase de memoria intermedia de referencias que almacena una imagen de referencia. (16) El método de acuerdo con el párrafo (15) anterior, en el que si la clase de la memoria intermedia de referencias que almacena la imagen de referencia es una memoria intermedia de referencias de larga duración, un primer vector de movimiento para el bloque de bi-predicción es ajustado a un vector de movimiento del bloque situado de igual manera y un segundo vector de movimiento para el bloque de bi- predicción es ajustado a cero. (17) El método de acuerdo con los párrafos (15) ó (16) anteriores, en el que la clase de la memoria intermedia de referencias incluye una memoria intermedia de referencias de corta duración que almacena una imagen de referencia de corta duración. (18) El método de acuerdo con uno de los párrafos (15), (16) ó (17) anteriores, en el que si la clase de memoria intermedia de referencias que almacena la imagen de referencia es la memoria intermedia de referencias de corta duración, los vectores de movimiento del bloque de bi-predicción se obtienen escalando el vector de movimiento del bloque situado de igual manera utilizando una distancia temporal.

(19) El método de acuerdo con uno de los párrafos anteriores, en el que la imagen de referencia referida por el bloque situado de igual manera es utilizada para obtener los vectores de movimiento para el bloque de bi-predicción.

REIVINDICACIONES

1. Un método de codificación de vídeo para obtener vectores de movimiento para un bloque de bi-predicción en modo directo, el método comprende: determinar los vectores de movimiento del bloque de bi-predicción; y descodificar el bloque de bi-predicción basándose en los vectores de movimiento determinados; caracterizado por que el método comprende además el paso de determinar una clase de una imagen de referencia señalada por un vector de movimiento de un bloque situado de igual manera, la clase de la imagen de referencia incluyendo una imagen de referencia de larga duración y una imagen de referencia de corta duración; en la determinación de los vectores de movimiento del bloque de bi-predicción, un vector de movimiento hacia atrás del bloque de bi-predicción es ajustado igual a cero, si la clase de la imagen de referencia es la imagen de referencia de larga duración.