MÉTODO DE CÁLCULO DE VECTORES DE MOVIMIENTO DE MODO DIRECTO PARA IMÁGENES B.
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
Tipo: Patente Europea. Resumen de patente/invención. Número de Solicitud: E05018606.
Solicitante: LG ELECTRONICS INC..
Nacionalidad solicitante: República de Corea.
Dirección: 20, YOIDO-DONG, YOUNGDUNGPO-GU SEOUL 150-010 REPUBLICA DE COREA.
Inventor/es: JEON,BYEONG MOON.
Fecha de Publicación: .
Fecha Solicitud PCT: 7 de Enero de 2003.
Clasificación PCT:
- H04N7/46
Clasificación antigua:
- H04N7/46
Países PCT: Austria, Bélgica, Suiza, Alemania, Dinamarca, Francia, Reino Unido, Grecia, Italia, Liechtensein, Luxemburgo, Países Bajos, Suecia, Mónaco, Portugal, Irlanda, Eslovenia, Finlandia, Chipre.
PDF original: ES-2356551_T3.pdf
Ver la galería de la patente con 13 ilustraciones.
Fragmento de la descripción:
ANTECEDENTES DE LA INVENCIÓN
Campo de la invención
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.
Descripción de la técnica relacionada
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.
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.
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.
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.
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.
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.
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
referencia de la lista 1 para modo directo de la B9 que ha de ser decodificada posteriormente es la B7 temporalmente precedente.
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
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.
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
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.
RESUMEN DE LA INVENCIÓN
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... [Seguir leyendo]
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:
determinar un bloque de ubicación conjunta en una imagen de referencia de la lista 1 para modo directo, y 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,
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, 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
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
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.
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
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.
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.
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:
MVF = TDB x MV / TDD
MVB = (TDB - TDD) x MV / TDD
ó 35
Z = TDB x 256 / TDD MVF = (Z 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.
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:
MVF,i = TDB,i x MVi/TDD,i
MVB,i = (TDB,i - TDD,i) x MVi/TDD,i
ó
Z = TDB,i x 256/TDD,i MVF,i = (Z 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.
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
MVF,i = TDB,i x MV /TDD
MVB,i = (TDB,i - TDD) x MV/TDD
ó
Z = TDB,i x 256/TDD MVF,i = (Z x MV + 128) >> 8
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.
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:
MVF = TDB x MV0 /TDD,0 35
MVB = (TDB - TDD,0) x MV0/TDD,0
ó
Z = TDB x 256/TDD,0 MVF = (Z 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.
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
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:
MVF = TDB x MV1/TDD,1
MVB = (TDB - TDD,1) x MV1 /TDD,1
ó 5
Z = TDB x 256/TDD,1 MVF = (Z 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.
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.
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.
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
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
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.
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.
Patentes similares o relacionadas:
Interpolación mejorada de cuadros de compresión de vídeo, del 4 de Diciembre de 2019, de DOLBY LABORATORIES LICENSING CORPORATION: Un método para compresión de imágenes de video usando predicción en modo directo, que incluye: proporcionar una secuencia de cuadros predichos […]
Interpolación mejorada de cuadros de compresión de vídeo, del 4 de Diciembre de 2019, de DOLBY LABORATORIES LICENSING CORPORATION: Un método de compresión de imágenes de video que comprende: proporcionar una secuencia de cuadros referenciables (I, P) y predichos bidireccionales […]
Método de cálculo de vectores de movimiento, del 12 de Junio de 2019, de Panasonic Intellectual Property Corporation of America: Un método de codificación de imágenes para codificar un bloque actual incluido en una imagen actual en modo directo, comprendiendo el método de codificación de imágenes: […]
Método de cálculo de vectores de movimiento, del 12 de Junio de 2019, de Panasonic Intellectual Property Corporation of America: Un sistema de codificación y descodificación de imágenes que incluye un aparato de codificación de imágenes que codifica un bloque actual incluido en una […]
Procedimiento de cálculo de vectores de movimiento, del 12 de Junio de 2019, de Panasonic Intellectual Property Corporation of America: Un procedimiento de codificación de imágenes para codificar un bloque actual incluido en una imagen actual, comprendiendo el procedimiento […]
Método de cálculo de vectores de movimiento, del 12 de Junio de 2019, de Panasonic Intellectual Property Corporation of America: Un sistema de codificación y descodificación de imágenes que incluye un aparato de codificación de imágenes que codifica un bloque actual incluido en una imagen actual […]
Procedimiento de cálculo de vectores de movimiento, del 5 de Junio de 2019, de Panasonic Intellectual Property Corporation of America: Un procedimiento de codificación de imágenes para codificar un bloque actual incluido en una imagen actual usando codificación de modo directo, caracterizado […]
Ponderación adaptativa de imágenes de referencia en codificación de vídeo, del 27 de Marzo de 2019, de InterDigital VC Holdings, Inc: Un aparato de codificación para producir datos de vídeo para una imagen que tiene una pluralidad de bloques de imagen, incluyendo los datos de […]