ES2548385T3 - Codificación de cuadro/campo adaptativa de nivel de macrobloques para contenido de vídeo digital - Google Patents
Codificación de cuadro/campo adaptativa de nivel de macrobloques para contenido de vídeo digital Download PDFInfo
- Publication number
- ES2548385T3 ES2548385T3 ES10182629.5T ES10182629T ES2548385T3 ES 2548385 T3 ES2548385 T3 ES 2548385T3 ES 10182629 T ES10182629 T ES 10182629T ES 2548385 T3 ES2548385 T3 ES 2548385T3
- Authority
- ES
- Spain
- Prior art keywords
- block
- field
- mode
- macroblock
- frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/112—Selection of coding mode or of prediction mode according to a given display mode, e.g. for interlaced or progressive display mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/573—Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Un método para codificar una instantánea en una secuencia de imágenes, que comprende: dividir dicha instantánea en una pluralidad de porciones más pequeñas, donde cada una de dichas porciones más pequeñas es un par de macrobloques verticalmente adyacentes; codificar de manera selectiva al menos una de dicha pluralidad de porciones más pequeñas en un momento en modo de codificación de cuadro y al menos una de dicha pluralidad de porciones más pequeñas en un momento en modo de codificación de campo; y codificar de manera selectiva al menos un bloque en al menos una de dicha pluralidad de porciones más pequeñas en un momento en modo de inter codificación.
Description
E10182629
25-09-2015
en la Figura 5, cada otra fila de píxeles está sombreada. Las áreas sombreadas representan las filas de píxeles en el campo superior del macrobloque (500) y las áreas no sombreadas representan las filas de píxeles en el campo inferior del macrobloque (500).
5 Como se muestra en las Figuras 6a-d, un macrobloque que se codifica en modo de campo puede dividirse en cuatro bloques adicionales. Se requiere que un bloque tenga una única paridad. El requisito de única paridad es que un bloque no pueda comprender ambos campos superior e inferior. En su lugar, debe contener una única paridad de campo. Por lo tanto, como se muestra en las Figuras 6a-d, un macrobloque de modo de campo puede dividirse en bloques de 16 por 8 píxeles (Figura 6a; 600), 8 por 8 píxeles (Figura 6b; 601), 4 por 8 píxeles (Figura 6c; 602) y 4 por 4 píxeles (Figura 6d; 603). Las Figuras 6a-d muestran que cada bloque contiene campos de una única paridad.
La codificación AFF en pares de macrobloques se explicará ahora. La codificación AFF en pares de macrobloques se denominará ocasionalmente como codificación AFF basada en pares. Una comparación de los tamaños de bloque en las Figuras 6a-d y en las Figuras 3a-f muestra que un macrobloque codificado en modo de campo puede
15 dividirse en menos patrones de bloques que lo que puede codificarse un macrobloque en modo de cuadro. Los tamaños de bloque de 16 por 16 píxeles, 8 por 16 píxeles y 8 por 4 píxeles no están disponibles para un macrobloque codificado en modo de campo debido al requisito de única paridad. Esto implica que el rendimiento de AFF basado en único macrobloque pueda no ser bueno para algunas secuencias o aplicaciones que favorecen fuertemente la codificación de modo de campo. Para garantizar el rendimiento de la codificación de macrobloques de modo de campo, es preferente en algunas aplicaciones para macrobloques que se codifiquen en modo de campo para tener los mismos tamaños de bloque como los macrobloques que se codifican en modo de cuadro. Esto puede conseguirse realizando codificación AFF en pares de macrobloques en lugar de macrobloques únicos.
La Figura 7 ilustra un par de macrobloques (700) ejemplar que puede usarse en codificación AFF en un par de
25 macrobloques de acuerdo con una realización de la presente invención. Si el par de macrobloques (700) se ha de codificar en modo de cuadro, el par se codifica como dos macrobloques basados en cuadro. En cada macrobloque, los dos campos en cada uno de los macrobloques se codifican conjuntamente. Una vez codificados como cuadros, los macrobloques pueden dividirse adicionalmente en los bloques más pequeños de las Figuras 3a-f para uso en la predicción temporal con algoritmo de compensación de movimiento.
Sin embargo, si el par de macrobloques (700) se ha de codificar en modo de campo, se parte en primer lugar en un bloque de campo superior de 16 por 16 píxeles (800) y un bloque de campo inferior de 16 por 16 píxeles (801), como se muestra en la Figura 8. Los dos campos se codifican a continuación por separado. En la Figura 8, cada macrobloque en el par de macrobloques (700) tiene N=16 columnas de píxeles y M=16 filas de píxeles. Por lo tanto,
35 las dimensiones del par de macrobloques (700) son 16 por 32 píxeles. Como se muestra en la Figura 8, cada otra fila de píxeles está sombreada. Las áreas sombreadas representan las filas de píxeles en el campo superior de los macrobloques y las áreas no sombreadas representan las filas de píxeles en el campo inferior de los macrobloques. El bloque de campo superior (800) y el bloque de campo inferior (801) pueden dividirse ahora en uno de los posibles tamaños de bloque de las Figuras 3a-f.
De acuerdo con una realización de la presente invención, en la codificación AFF de pares de macrobloques (700), existen dos posibles trayectorias de exploración. Una trayectoria de exploración determina el orden en el que se codifican los pares de macrobloques de una instantánea. La Figura 9 muestra las dos posibles trayectorias de exploración en codificación AFF de pares de macrobloques (700). Una de las trayectorias de exploración es una
45 trayectoria de exploración horizontal (900). En la trayectoria de exploración horizontal (900), los pares de macrobloques (700) de una instantánea (200) se codifican de izquierda a derecha y de arriba a abajo, como se muestra en la Figura 9. La otra trayectoria de exploración es una trayectoria de exploración vertical (901). En la trayectoria de exploración vertical (901), los pares de macrobloques (700) de una instantánea (200) se codifican de arriba abajo y de izquierda a derecha, como se muestra en la Figura 9. Para la codificación de modo de cuadro, la parte superior del macrobloque de un par de macrobloques (700) se codifica en primer lugar, seguido por el macrobloque inferior. Para la codificación de modo de campo, el macrobloque del campo superior de un par de macrobloques se codifica en primer lugar seguido por el macrobloque de campo inferior.
Otra realización de la presente invención amplía el concepto de codificación AFF en un par de macrobloques a
55 codificación AFF en un grupo de cuatro o más macrobloques vecinos (902), como se muestra en la Figura 10. La codificación AFF en un grupo de macrobloques se denominará ocasionalmente como codificación AFF basada en grupos. Las mismas trayectorias de exploración, horizontal (900) y vertical (901), como se usan en la exploración de pares de macrobloques se usan en la exploración de grupos de macrobloques vecinos (902). Aunque el ejemplo mostrado en la Figura 10 muestra un grupo de cuatro macrobloques, el grupo puede ser más de cuatro macrobloques.
Si el grupo de macrobloques (902) se ha de codificar en modo de cuadro, el grupo se codifica como cuatro macrobloques basado en cuadro. En cada macrobloque, los dos campos en cada uno de los macrobloques se codifican conjuntamente. Una vez codificados como cuadros, los macrobloques pueden dividirse adicionalmente en
65 los bloques más pequeños de las Figuras 3a-f para uso en la predicción temporal con algoritmo de compensación de movimiento.
E10182629
25-09-2015
está en modo de cuadro, el bloque A debe estar también en modo de cuadro para tener su vector de movimiento incluido en el cálculo del PMV para el bloque E. Si uno de los bloques vecinos de E no tiene el mismo modo de codificación que el que tiene el bloque E, sus vectores de movimiento no se usan en el cálculo del PMV del bloque
E.
5 El “método de siempre” puede usarse también para calcular el PMV para el bloque E. En el método de siempre, los bloques A, B, C y D se usan siempre al calcular el PMV para el bloque E, independientemente de su modo de codificación de cuadro o de campo. Si E está en modo de cuadro y un bloque vecino está en modo de campo, el componente vertical del bloque vecino se multiplica por 2 antes de incluirse en el cálculo del PMV para el bloque E.
10 Si E está en modo de campo y un bloque vecino está en modo de cuadro, el componente vertical del bloque vecino se divide por 2 antes de incluirse en el cálculo del PMV para el bloque E.
El “método selectivo” puede usarse también para calcular el PMV para el bloque E si el macrobloque se ha codificado usando codificación AFF basada en pares o codificación AFF basada en grupos. En el método selectivo,
15 un bloque basado en cuadro tiene un vector de movimiento basado en cuadro que apunta a un cuadro de referencia. Al bloque se asigna también un vector de movimiento basado en campo que apunta a un campo de referencia. El vector de movimiento basado en campo es el vector de movimiento basado en cuadro del bloque con el componente de vector de movimiento vertical dividido por dos. El número de campo de referencia es el número de cuadro de referencia multiplicado por dos. Un bloque basado en campo tiene un vector de movimiento basado en campo que
20 apunta a un campo de referencia. Al bloque se asigna también un vector de movimiento basado en cuadro que apunta a un cuadro de referencia. El vector de movimiento basado en cuadro es el vector de movimiento basado en campo del bloque con el componente de vector de movimiento vertical multiplicado por dos. El número de cuadro de referencia es el número de campo de referencia dividido por dos.
25 La derivación de un PMV del bloque usando el método selectivo se explicará ahora usando la Figura 12 como una referencia. En AFF basada en pares de macrobloques, cada bloque en un macrobloque se asocia con un bloque compañero que reside en la misma localización geométrica en el segundo macrobloque del par de macrobloques. En la Figura 12, cada uno de los bloques vecinos del bloque E (A, B, C y D) pueden o pueden no estar en el mismo modo de codificación de cuadro o de campo que el bloque E. Por lo tanto, se aplican las siguientes reglas:
30 Si E está en modo de cuadro y un bloque vecino está en modo de cuadro, se usa el vector de movimiento basado en cuadro verdadero del bloque vecino para el PMV de E.
Si E está en modo de cuadro y un bloque vecino está en modo de campo, se aplican las siguientes reglas al calcular
35 el PMV de E. Si el bloque vecino (por ejemplo; el bloque A) y su bloque basado en campo compañero tienen el mismo campo de referencia, se usa la media de los vectores de movimiento basados en campo asignados de los dos bloques para el cálculo del PMV de E. El número de cuadro de referencia usado para el cálculo de PMV es el número de campo de referencia del bloque vecino dividido por dos. Sin embargo, si el bloque vecino y su bloque de campo compañero tienen campos de referencia diferentes, entonces el bloque vecino no puede usarse en el cálculo
40 del PMV de E.
Si E está en modo de campo y un bloque vecino está en modo de cuadro, se aplican las siguientes reglas al calcular el PMV de E. Si el bloque vecino (por ejemplo; el bloque A) y su bloque basado en cuadro compañero tienen el mismo cuadro de referencia, se usa la media de los vectores de movimiento basados en campo asignados de los
45 dos bloques para el cálculo del PMV de E. El número de campo de referencia usado para el cálculo de PMV es el número de cuadro de referencia del bloque vecino multiplicado por dos. Sin embargo, si el bloque vecino y su bloque de campo compañero tienen diferentes cuadros de referencia, entonces el bloque vecino no puede usarse en el cálculo del PMV de E.
50 Si E está en modo de campo y un bloque vecino está en modo de campo, se usa el vector de movimiento basado en campo verdadero del bloque vecino en el cálculo del PMV de E.
Una opción preferente alternativa puede usarse en el método selectivo para calcular un PMV del bloque. En la Figura 12, cada uno de los bloques vecinos del bloque E (A, B, C y D) pueden o pueden no estar en el mismo modo
55 de codificación de cuadro o de campo que el bloque E. Por lo tanto, se aplican las siguientes reglas para esta opción preferente alternativa del método selectivo:
Si E está en modo de cuadro y un bloque vecino está en modo de cuadro, se usa el vector de movimiento basado en cuadro verdadero del bloque vecino para el PMV de E.
60 Si E está en modo de cuadro y un bloque vecino está en modo de campo, se usa la media ponderada de los vectores de movimiento basados en campo asignados del bloque vecino y su bloque basado en campo compañero para el cálculo del PMV de E. Los factores de ponderación están basados en los números de campo de referencia del bloque vecino y su bloque compañero.
65
E10182629
25-09-2015
Si E está en modo de campo, y un bloque vecino está en modo de cuadro, se usa la media ponderada de los vectores de movimiento basados en campo asignados del bloque vecino y su bloque basado en cuadro compañero para el cálculo del PMV de E. Los factores de ponderación están basados en los números de cuadro de referencia del bloque vecino y su bloque compañero.
5 Si E está en modo de campo y un bloque vecino está en modo de campo, se usa el vector de movimiento basado en campo verdadero del bloque vecino en el cálculo del PMV de E.
Otro método preferente para calcular un PMV del bloque es el “método selectivo alternativo”. Este método puede usarse en codificación AFF de macrobloques únicos, codificación AFF de macrobloques basada en pares o codificación AFF basada en grupos. En este método, a cada bloque se asigna un número de índice horizontal y uno vertical, que representan las coordenadas horizontales y verticales del bloque. A cada bloque se asigna también una coordenada de campo horizontal y vertical. Una coordenada de campo horizontal del bloque es la misma que su coordenada horizontal. Para un bloque en un macrobloque de campo superior, la coordenada de campo vertical es
15 la mitad de la coordenada vertical del bloque y se asigna una polaridad de campo superior. Para un bloque en el macrobloque de campo inferior, la coordenada de campo vertical del bloque se obtiene restando 4 de la coordenada vertical del bloque y dividiendo el resultado por 2. Al bloque se asigna también una polaridad de campo inferior. El resultado de asignar diferentes polaridades de campo a dos bloques es que existen ahora dos bloques con las mismas coordenadas de campo horizontal y vertical pero con diferentes polaridades de campo. Por lo tanto, dadas las coordenadas de un bloque, pueden calcularse las coordenadas de campo y su polaridad de campo y viceversa.
El método selectivo alternativo se explicará ahora en detalle usando la Figura 12 como una referencia. El PMV del bloque E se ha de calcular. Representando bx el tamaño horizontal del bloque E dividido por 4, que es el tamaño de un bloque en este ejemplo. Los PMV para E se obtienen como sigue dependiendo de si E está en modo de
25 cuadro/campo.
Estando el bloque E en modo de cuadro y representando (x,y) las coordenadas horizontal y vertical respectivamente de E. Los bloques vecinos de E se definen de la siguiente manera. A es el bloque cuyas coordenadas son (x-1,y). B es el bloque cuyas coordenadas son (x,y-1). D es el bloque cuyas coordenadas son (x-1,y-1). C es el bloque cuyas coordenadas son (x+bx+1,y-1). Si cualquiera de A, B, C o D están en modo de campo entonces su vector de movimiento vertical se divide por 2 antes de usarse para la predicción y su número de cuadro de referencia se calcula dividiendo su campo de referencia por 2.
Ahora, estando el bloque E en modo de campo superior o inferior y representando (xf,yf) las coordenadas de campo
35 horizontal y vertical respectivamente de E. En este caso, los vecinos de E se definen como sigue. A es el bloque cuyas coordenadas de campo son (xf-1,yf) y tiene la misma polaridad que E. B es el bloque cuyas coordenadas de campo son (xf,yf-1) y tiene la misma polaridad que E. D es el bloque cuyas coordenadas de campo son (xf-1,yf-1) y tiene la misma polaridad que E. C es el bloque cuyas coordenadas de campo son (xf+bx+1,yf) y tiene la misma polaridad que E. Si cualquiera de A, B, C o D están en modo de cuadro entonces su vector de movimiento vertical se multiplica por 2 antes de usarse para la predicción y su campo de referencia se calcula multiplicando su cuadro de referencia por 2.
En todos los métodos anteriores para determinar el PMV de un bloque, se supone una trayectoria de exploración horizontal. Sin embargo, la trayectoria de exploración puede ser también una trayectoria de exploración vertical. En
45 este caso, los bloques vecinos del bloque actual, E, se definen como se muestra en la Figura 13. Una trayectoria de exploración vertical es preferente en algunas aplicaciones puesto que la información en todos los bloques vecinos está disponible para el cálculo del PMV para el bloque actual E.
Otra realización de la presente invención es la predicción de segmentación direccional. En predicción de segmentación direccional, los bloques de 16 por 8 píxeles y los bloques de 8 por 16 píxeles tienen reglas que se aplican a sus cálculos de PMV únicamente. Estas reglas se aplican en todos los métodos de cálculo de PMV para estos tamaños de bloque. Las reglas se explicarán ahora en detalle en relación con la Figura 12. En cada una de estas reglas, un bloque actual E ha de tener su PMV calculado.
55 En primer lugar, un bloque de 16 por 8 píxeles consiste en un bloque superior y un bloque inferior. El bloque superior contiene las 8 filas de píxeles superiores. El bloque inferior contiene las 8 filas de píxeles inferiores. En la siguiente descripción, los bloques A-E de la Figura 12 son bloques de 16 por 8 píxeles. Para el bloque superior en un bloque de 16 por 8 píxeles, se usa el bloque B para predecir el PMV del bloque E si tiene la misma instantánea de referencia que el bloque E. De otra manera, se usa la predicción de la mediana para predecir el PMV del bloque E. Para el bloque inferior en un bloque de 16 por 8 píxeles, se usa el bloque A para predecir el PMV del bloque E si tiene la misma instantánea de referencia que el bloque E. De otra manera, se usa la predicción de la mediana para predecir el PMV del bloque E.
Un bloque de 8 por 16 píxeles se divide en un bloque izquierdo y derecho. Ambos bloques izquierdo y derecho son
65 de 8 por 16 píxeles. En la siguiente descripción, los bloques A-E de la Figura 12 son bloques de 8 por 16 píxeles. Para el bloque izquierdo, se usa el bloque A para predecir el PMV del bloque E si tiene la misma instantánea de
E10182629
25-09-2015
referencia que el bloque E. De otra manera, se usa la predicción de la mediana para predecir el PMV del bloque E. Para el bloque derecho, se usa el bloque C para predecir el PMV del bloque E si tiene la misma instantánea referenciada que el bloque E. De otra manera se usa la predicción de la mediana para predecir el PMV del bloque E.
5 Para tanto los bloques de 16 por 8 píxeles como los bloques de 8 por 16, A, B o C pueden estar en diferentes modos de codificación (de cuadro o de campo) que el bloque actual E. Se aplican las siguientes reglas para ambos tamaños de bloque. Si E está en modo de cuadro, y A, B o C están en modo de campo, el número de cuadro de referencia de A, B o C se calcula dividiendo su campo de referencia por 2. Si E está en modo de campo, y A, B o C están en modo de cuadro, el número de campo de referencia de A, B o C se calcula multiplicando su cuadro de referencia por 2.
De acuerdo con otra realización de la presente invención, un macrobloque en una instantánea P puede saltarse en codificación AFF. Si se salta un macrobloque, sus datos no se transmiten en la codificación de la instantánea. Un macrobloque saltado en una instantánea P se reconstruye copiando el macrobloque co-localizado en la instantánea de referencia codificada más recientemente. El macrobloque co-localizado se define como el de con compensación
15 de movimiento que usa PMV como se ha definido anteriormente o sin vectores de movimiento. Se aplican las siguientes reglas para macrobloques saltados en una instantánea P. Si se realiza codificación AFF por macrobloque, un macrobloque saltado está en modo de cuadro. Si se realiza codificación AFF en pares de macrobloques y si se saltan ambos macrobloques, entonces están en modo de cuadro. Sin embargo, si únicamente se salta uno de los macrobloques en un par de macrobloques, su modo de codificación de cuadro o de campo es el mismo que el del macrobloque no saltado en el mismo par de macrobloques. Si se realiza AFF en un grupo de macrobloques y si se salta todo el grupo de macrobloques, entonces todos los macrobloques están en modo de cuadro. Si existe al menos un macrobloque que no se salta, entonces los macrobloques saltados en el mismo grupo están en el mismo modo de codificación de cuadro o de campo que el del macrobloque no saltado.
25 Un método alternativo para macrobloques saltados es como sigue. Si se salta un par de macrobloques, su modo de codificación de cuadro y de campo sigue su par de macrobloques vecinos a la izquierda. Si el par de macrobloques vecino izquierdo no está disponible, su modo de codificación sigue su par de macrobloques vecinos de la parte superior. Si ni el par de macrobloques vecino izquierdo ni superior están disponibles, el macrobloque saltado se establece a modo de cuadro.
Otra realización de la presente invención es codificación de macrobloque de modo directo para instantáneas B. En codificación de modo directo, una instantánea B tiene dos vectores de movimiento, vectores de movimiento hacia delante y hacia atrás. Cada vector de movimiento apunta a una instantánea de referencia. Ambos vectores de movimiento hacia delante y hacia atrás pueden apuntar en la misma dirección temporal. Para codificación de
35 macrobloque de modo directo en instantáneas B, los vectores de movimiento hacia delante y hacia atrás de un bloque se calculan a partir del bloque co-localizado en la instantánea de referencia hacia atrás. El bloque colocalizado en la instantánea de referencia hacia atrás puede codificarse en modo de cuadro o en modo de campo. Se aplican las siguientes reglas en codificación de macrobloques de modo directo para la instantánea B.
Si el bloque co-localizado está en modo de cuadro y si el macrobloque de modo directo actual está también en modo de cuadro, los dos vectores de movimiento asociados de un bloque en el macrobloque de modo directo se calculan a partir del bloque co-localizado. El cuadro de referencia hacia delante es el usado mediante el bloque co-localizado. El cuadro de referencia hacia atrás es el mismo cuadro donde reside el bloque co-localizado.
45 Si el bloque co-localizado está en modo de cuadro y si el macrobloque de modo directo actual está en modo de campo, los dos vectores de movimiento asociados de un bloque en el macrobloque de modo directo se calculan a partir del vector de movimiento del bloque co-localizado con el componente vertical divido por dos. El campo de referencia hacia delante es el mismo campo de paridad del cuadro de referencia usado mediante el bloque colocalizado. El campo de referencia hacia atrás es el mismo campo de paridad del cuadro de referencia hacia atrás donde reside el bloque co-localizado.
Si el bloque co-localizado está en modo de campo y si el macrobloque de modo directo actual está también en modo de campo, los dos vectores de movimiento asociados de un bloque en el macrobloque de modo directo se calculan a partir del bloque co-localizado de la misma paridad de campo. El campo de referencia hacia delante es el campo
55 usado mediante el bloque co-localizado. El campo de referencia hacia atrás es el mismo campo donde reside el bloque co-localizado.
Si el bloque co-localizado está en modo de campo y si el macrobloque de modo directo actual está en modo de cuadro, los dos vectores de movimiento asociados del bloque en el macrobloque de modo directo se calculan a partir del vector de movimiento del bloque co-localizado con el componente vertical multiplicado por dos. El cuadro de referencia hacia delante es el cuadro de uno de cuyos campos se usa mediante el bloque co-localizado. El campo de referencia hacia atrás es el cuadro en uno de cuyos campos reside el bloque co-localizado.
Una opción alternativa es forzar el bloque de modo directo para que esté en el mismo modo de codificación de
65 cuadro o de campo que el bloque co-localizado. En este caso, si el bloque co-localizado para un bloque de modo directo está en modo de cuadro, el bloque de modo directo está en modo de cuadro también. Los dos vectores de
E10182629
25-09-2015
números de bloque 0, 2, 8 y 10 en el macrobloque de campo inferior (174), los bloques con número 5, 7, 13 y 15 respectivamente en el macrobloque de campo inferior (174) del par de macrobloques izquierdo (172) deberán considerarse como los bloques vecinos izquierdos al par de macrobloques actual (171), como se muestra en la Figura 17c.
5 Si el par de macrobloques izquierdo (172) se decodifica en modo de cuadro, entonces para los números de bloque 0, 2, 8 y 10 en el macrobloque de campo superior (173), los bloques con número 5, 7, 13 y 15 respectivamente en el macrobloque de cuadro superior (175) del par de macrobloques izquierdo (172) deberán considerarse como los bloques vecinos izquierdos al par de macrobloques actual (171), como se muestra en la Figura 17d. Para los números de bloque 0, 2, 8 y 10 en el macrobloque de campo inferior (174), los bloques con número 5, 7, 13 y 15 respectivamente en el macrobloque de cuadro inferior (176) del par de macrobloques izquierdo (172) deberán considerarse como los bloques vecinos izquierdos al par de macrobloques actual (171), como se muestra en la Figura 17d.
15 Para pares de macrobloques en el límite superior de un corte, si el par de macrobloques izquierdo (172) está en modo de decodificación de cuadro, entonces el valor de predicción de modo intra usado para predecir un macrobloque de campo deberá establecerse a predicción de DC.
Las descripciones anteriores de predicción de intra codificación y predicción de modo intra pueden ampliarse a transformaciones de bloque adaptativas.
Otra realización de la presente invención es que se realiza filtrado en bucle en los bloques reconstruidos. Un bloque reconstruido puede representarse en estructura de cuadro o de campo, independientemente del modo de codificación de cuadro/campo del bloque. El filtrado de bucle (deshacer los bloques) es un proceso de media
25 ponderada de los píxeles de los bloques vecinos. La Figura 12 se usará para explicar el filtrado en bucle. Suponiendo que E de la Figura 12 es un bloque reconstruido, y A, B, C y D son sus bloques reconstruidos vecinos, como se muestra en la Figura 12, y todos se representan en estructura de cuadro. Puesto que A, B, C, D y E pueden codificarse en cuadro o en campo, se aplican las siguientes reglas:
Regla 1: si E está codificado en cuadro, se realiza filtrado en bucle sobre los píxeles de E y sus bloques vecinos A B, C y D.
Regla 2: si E está codificado en campo, se realiza filtrado en bucle sobre los píxeles del campo superior y del campo inferior de E y sus bloques vecinos A B, C y D, por separado.
35 Otra realización de la presente invención es que se realiza relleno en el cuadro reconstruido repitiendo los píxeles de límite. Puesto que los bloques de límite pueden codificarse en modo de cuadro o de campo, se aplican las siguientes reglas:
Regla 1: los píxeles en la línea vertical izquierda o derecha de un bloque de límite se repiten, si fuera necesario.
Regla 2: si un bloque de límite está en codificación de cuadro, los píxeles en la línea superior o inferior del bloque de límite se repiten.
45 Regla 3: si un bloque de límite está en codificación de campo, los píxeles en las dos líneas horizontales superiores o inferiores (dos campos) del bloque de límite se repiten alternativamente.
Otra realización de la presente invención es que dos coeficientes de transformación bidimensional se convierten en una serie unidimensional de coeficientes antes de codificación por entropía. La trayectoria de exploración puede ser en zigzag o no en zigzag. El explorador en zigzag es preferente para secuencias progresivas, pero puede usarse también para secuencias entrelazadas con movimientos lentos. Los exploradores no en zigzag son preferentes para secuencias entrelazadas. Para codificación AFF de macrobloques, pueden usarse las siguientes opciones:
Opción 1: se usa el explorador en zigzag para macrobloques en modo de cuadro mientras que se usan exploradores 55 no en zigzag para macrobloques en codificación de campo.
Opción 2: el explorador en zigzag se usa para macrobloques en tanto modo de cuadro como de campo.
Opción 3: el explorador no en zigzag se usa para macrobloques en tanto modo de cuadro como de campo.
La descripción anterior se ha presentado únicamente para ilustrar y describir realizaciones de la invención. No pretende ser exhaustiva o limitar la invención a ninguna forma precisa desvelada. Son posibles muchas modificaciones y variaciones a la luz de las anteriores enseñanzas.
65 Un método para codificar o decodificar contenido de vídeo digital, comprendiendo dicho contenido de vídeo digital un flujo de instantáneas que puede ser cada una de intra instantáneas, instantáneas predichas o bi-predichas,
Claims (1)
-
imagen1 imagen2
Applications Claiming Priority (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US33300401P | 2001-11-21 | 2001-11-21 | |
US333004P | 2001-11-21 | ||
US33392101P | 2001-11-27 | 2001-11-27 | |
US333921P | 2001-11-27 | ||
US39573402P | 2002-07-12 | 2002-07-12 | |
US395734P | 2002-07-12 | ||
US39816102P | 2002-07-23 | 2002-07-23 | |
US398161P | 2002-07-23 | ||
US10/301,290 US6980596B2 (en) | 2001-11-27 | 2002-11-20 | Macroblock level adaptive frame/field coding for digital video content |
US301290 | 2002-11-20 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2548385T3 true ES2548385T3 (es) | 2015-10-16 |
Family
ID=27540869
Family Applications (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES02804054.1T Expired - Lifetime ES2545177T3 (es) | 2001-11-21 | 2002-11-21 | Codificación de cuadro/campo adaptativa de nivel de macrobloques para contenido de vídeo digital |
ES10182654.3T Expired - Lifetime ES2545394T3 (es) | 2001-11-21 | 2002-11-21 | Codificación de cuadro/campo adaptativa de nivel de macrobloques para contenido de vídeo digital |
ES10182726.9T Expired - Lifetime ES2545213T3 (es) | 2001-11-21 | 2002-11-21 | Codificación de cuadro/campo adaptativa de nivel de macrobloques para contenido de vídeo digital |
ES10182624.6T Expired - Lifetime ES2548384T3 (es) | 2001-11-21 | 2002-11-21 | Codificación de cuadro/campo adaptativa de nivel de macrobloques para contenido de vídeo digital |
ES10182629.5T Expired - Lifetime ES2548385T3 (es) | 2001-11-21 | 2002-11-21 | Codificación de cuadro/campo adaptativa de nivel de macrobloques para contenido de vídeo digital |
Family Applications Before (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES02804054.1T Expired - Lifetime ES2545177T3 (es) | 2001-11-21 | 2002-11-21 | Codificación de cuadro/campo adaptativa de nivel de macrobloques para contenido de vídeo digital |
ES10182654.3T Expired - Lifetime ES2545394T3 (es) | 2001-11-21 | 2002-11-21 | Codificación de cuadro/campo adaptativa de nivel de macrobloques para contenido de vídeo digital |
ES10182726.9T Expired - Lifetime ES2545213T3 (es) | 2001-11-21 | 2002-11-21 | Codificación de cuadro/campo adaptativa de nivel de macrobloques para contenido de vídeo digital |
ES10182624.6T Expired - Lifetime ES2548384T3 (es) | 2001-11-21 | 2002-11-21 | Codificación de cuadro/campo adaptativa de nivel de macrobloques para contenido de vídeo digital |
Country Status (10)
Country | Link |
---|---|
EP (1) | EP1449385B1 (es) |
JP (9) | JP2005510985A (es) |
KR (1) | KR101033398B1 (es) |
AU (1) | AU2002365338A1 (es) |
CA (1) | CA2468087C (es) |
DK (1) | DK1449385T3 (es) |
ES (5) | ES2545177T3 (es) |
MX (1) | MXPA04004724A (es) |
PT (5) | PT1449385E (es) |
WO (1) | WO2003047272A2 (es) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5914671A (en) | 1997-02-27 | 1999-06-22 | Micron Communications, Inc. | System and method for locating individuals and equipment, airline reservation system, communication system |
ES2665693T3 (es) | 2001-11-06 | 2018-04-26 | Panasonic Intellectual Property Corporation Of America | Método de codificación de imágenes en movimiento y método de decodificación de imágenes en movimiento |
EP2262269B1 (en) | 2001-12-17 | 2018-01-24 | Microsoft Technology Licensing, LLC | Skip macroblock coding |
US7003035B2 (en) | 2002-01-25 | 2006-02-21 | Microsoft Corporation | Video coding methods and apparatuses |
JP2004088722A (ja) | 2002-03-04 | 2004-03-18 | Matsushita Electric Ind Co Ltd | 動画像符号化方法および動画像復号化方法 |
US20040146109A1 (en) * | 2002-04-19 | 2004-07-29 | Satoshi Kondo | Method for calculation motion vector |
KR100931746B1 (ko) | 2002-04-19 | 2009-12-14 | 파나소닉 주식회사 | 움직임 벡터 계산방법 |
US20040001546A1 (en) | 2002-06-03 | 2004-01-01 | Alexandros Tourapis | Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation |
KR100693669B1 (ko) * | 2003-03-03 | 2007-03-09 | 엘지전자 주식회사 | 피일드 매크로 블록의 레퍼런스 픽쳐 결정 방법 |
DE602004026580D1 (de) * | 2003-06-25 | 2010-05-27 | Thomson Licensing | Schnelle modusentscheidung-codierung für interframes |
US20050013498A1 (en) | 2003-07-18 | 2005-01-20 | Microsoft Corporation | Coding of motion vector information |
US8179963B2 (en) | 2003-07-24 | 2012-05-15 | Panasonic Corporation | Coding mode determining apparatus, image coding apparatus, coding mode determining method and coding mode determining program |
CN1843038B (zh) | 2003-08-26 | 2010-09-22 | 汤姆森特许公司 | 用于解码混合内部-相互编码块的方法和装置 |
US8064520B2 (en) * | 2003-09-07 | 2011-11-22 | Microsoft Corporation | Advanced bi-directional predictive coding of interlaced video |
US7567617B2 (en) * | 2003-09-07 | 2009-07-28 | Microsoft Corporation | Predicting motion vectors for fields of forward-predicted interlaced video frames |
US7599438B2 (en) * | 2003-09-07 | 2009-10-06 | Microsoft Corporation | Motion vector block pattern coding and decoding |
US8085846B2 (en) | 2004-08-24 | 2011-12-27 | Thomson Licensing | Method and apparatus for decoding hybrid intra-inter coded blocks |
KR100679031B1 (ko) * | 2004-12-03 | 2007-02-05 | 삼성전자주식회사 | 다 계층 기반의 비디오 인코딩 방법, 디코딩 방법 및 상기방법을 이용한 장치 |
KR100667806B1 (ko) * | 2005-07-07 | 2007-01-12 | 삼성전자주식회사 | 영상 부호화 및 복호화 방법 및 장치 |
US9077960B2 (en) | 2005-08-12 | 2015-07-07 | Microsoft Corporation | Non-zero coefficient block pattern coding |
KR100727972B1 (ko) * | 2005-09-06 | 2007-06-14 | 삼성전자주식회사 | 영상의 인트라 예측 부호화, 복호화 방법 및 장치 |
KR100750128B1 (ko) * | 2005-09-06 | 2007-08-21 | 삼성전자주식회사 | 영상의 인트라 예측 부호화, 복호화 방법 및 장치 |
FR2894423A1 (fr) | 2005-12-05 | 2007-06-08 | Thomson Licensing Sas | Procede de prediction de donnees mouvement et de texture |
FR2897213A1 (fr) * | 2006-02-08 | 2007-08-10 | Thomson Licensing Sas | Procede de codage par blocs d'images d'une sequence d'images video |
JP4789719B2 (ja) * | 2006-07-06 | 2011-10-12 | キヤノン株式会社 | 動きベクトル検出装置、動きベクトル検出方法、コンピュータプログラム及び記憶媒体 |
JP4763549B2 (ja) * | 2006-08-18 | 2011-08-31 | 富士通セミコンダクター株式会社 | フレーム間予測処理装置、画像符号化装置、及び画像復号化装置 |
KR101365574B1 (ko) * | 2007-01-29 | 2014-02-20 | 삼성전자주식회사 | 영상 부호화 방법 및 장치, 복호화 방법 및 장치 |
JP4786612B2 (ja) * | 2007-08-14 | 2011-10-05 | Kddi株式会社 | 動画像符号化装置の予測動きベクトル生成装置 |
KR101452859B1 (ko) | 2009-08-13 | 2014-10-23 | 삼성전자주식회사 | 움직임 벡터를 부호화 및 복호화하는 방법 및 장치 |
KR101522850B1 (ko) | 2010-01-14 | 2015-05-26 | 삼성전자주식회사 | 움직임 벡터를 부호화, 복호화하는 방법 및 장치 |
JP5341786B2 (ja) * | 2010-01-20 | 2013-11-13 | 株式会社メガチップス | 画像符号化装置及び画像変換装置 |
KR20110113561A (ko) | 2010-04-09 | 2011-10-17 | 한국전자통신연구원 | 적응적인 필터를 이용한 인트라 예측 부호화/복호화 방법 및 그 장치 |
US8923395B2 (en) * | 2010-10-01 | 2014-12-30 | Qualcomm Incorporated | Video coding using intra-prediction |
JP7145822B2 (ja) * | 2019-07-18 | 2022-10-03 | ヤフー株式会社 | 情報提供装置、情報提供方法、および情報提供プログラム |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3125145B2 (ja) * | 1990-08-29 | 2001-01-15 | 日立電子株式会社 | 画像データの高能率符号化方法及びその装置 |
DE4113505A1 (de) | 1991-04-25 | 1992-10-29 | Thomson Brandt Gmbh | Verfahren zur bildsignalcodierung |
US6226327B1 (en) * | 1992-06-29 | 2001-05-01 | Sony Corporation | Video coding method and apparatus which select between frame-based and field-based predictive modes |
ES2438184T3 (es) * | 1993-03-24 | 2014-01-16 | Sony Corporation | Método de codificación y decodificación de vector de movimiento y aparato asociado y método de codificación y decodificación de señal de imagen y aparato asociado |
US5974184A (en) * | 1997-03-07 | 1999-10-26 | General Instrument Corporation | Intra-macroblock DC and AC coefficient prediction for interlaced digital video |
JP3559419B2 (ja) * | 1997-03-18 | 2004-09-02 | 松下電器産業株式会社 | 画像圧縮データの伸張方法及び装置 |
JP2001251627A (ja) * | 2000-03-03 | 2001-09-14 | Matsushita Electric Ind Co Ltd | 符号化装置、符号化方法及びプログラムを記録した記録媒体 |
FR2806570B1 (fr) * | 2000-03-15 | 2002-05-17 | Thomson Multimedia Sa | Procede et dispositif de codage d'images video |
-
2002
- 2002-11-21 PT PT2804054T patent/PT1449385E/pt unknown
- 2002-11-21 PT PT101826246T patent/PT2268039E/pt unknown
- 2002-11-21 KR KR1020047007762A patent/KR101033398B1/ko active IP Right Grant
- 2002-11-21 ES ES02804054.1T patent/ES2545177T3/es not_active Expired - Lifetime
- 2002-11-21 PT PT101826543T patent/PT2271115E/pt unknown
- 2002-11-21 JP JP2003548553A patent/JP2005510985A/ja active Pending
- 2002-11-21 ES ES10182654.3T patent/ES2545394T3/es not_active Expired - Lifetime
- 2002-11-21 AU AU2002365338A patent/AU2002365338A1/en not_active Abandoned
- 2002-11-21 DK DK02804054.1T patent/DK1449385T3/en active
- 2002-11-21 PT PT101826295T patent/PT2285121E/pt unknown
- 2002-11-21 PT PT101827269T patent/PT2268040E/pt unknown
- 2002-11-21 EP EP02804054.1A patent/EP1449385B1/en not_active Expired - Lifetime
- 2002-11-21 CA CA2468087A patent/CA2468087C/en not_active Expired - Lifetime
- 2002-11-21 ES ES10182726.9T patent/ES2545213T3/es not_active Expired - Lifetime
- 2002-11-21 WO PCT/US2002/037739 patent/WO2003047272A2/en active Application Filing
- 2002-11-21 ES ES10182624.6T patent/ES2548384T3/es not_active Expired - Lifetime
- 2002-11-21 ES ES10182629.5T patent/ES2548385T3/es not_active Expired - Lifetime
-
2004
- 2004-05-19 MX MXPA04004724A patent/MXPA04004724A/es active IP Right Grant
-
2008
- 2008-09-11 JP JP2008234061A patent/JP2008295111A/ja active Pending
-
2009
- 2009-10-23 JP JP2009244955A patent/JP5320254B2/ja not_active Expired - Lifetime
-
2012
- 2012-01-26 JP JP2012014662A patent/JP5697614B2/ja not_active Expired - Lifetime
-
2014
- 2014-11-27 JP JP2014240175A patent/JP2015062314A/ja active Pending
-
2016
- 2016-03-18 JP JP2016055782A patent/JP6681758B2/ja not_active Expired - Lifetime
- 2016-03-18 JP JP2016055783A patent/JP6507114B2/ja not_active Expired - Lifetime
- 2016-03-18 JP JP2016055781A patent/JP2016106504A/ja active Pending
-
2018
- 2018-06-11 JP JP2018110961A patent/JP2018139452A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
JP6507114B2 (ja) | 2019-04-24 |
JP2016136765A (ja) | 2016-07-28 |
WO2003047272A3 (en) | 2004-01-08 |
JP2016106504A (ja) | 2016-06-16 |
WO2003047272A2 (en) | 2003-06-05 |
JP6681758B2 (ja) | 2020-04-15 |
PT2285121E (pt) | 2015-10-27 |
JP2015062314A (ja) | 2015-04-02 |
PT2268040E (pt) | 2015-10-15 |
ES2548384T3 (es) | 2015-10-16 |
PT2268039E (pt) | 2015-10-26 |
AU2002365338A1 (en) | 2003-06-10 |
CA2468087A1 (en) | 2003-06-05 |
EP1449385B1 (en) | 2015-07-22 |
JP2012105348A (ja) | 2012-05-31 |
ES2545177T3 (es) | 2015-09-09 |
ES2545213T3 (es) | 2015-09-09 |
KR101033398B1 (ko) | 2011-05-09 |
EP1449385A2 (en) | 2004-08-25 |
MXPA04004724A (es) | 2004-07-30 |
JP2008295111A (ja) | 2008-12-04 |
JP5320254B2 (ja) | 2013-10-23 |
JP2018139452A (ja) | 2018-09-06 |
JP5697614B2 (ja) | 2015-04-08 |
PT1449385E (pt) | 2015-10-15 |
JP2016123131A (ja) | 2016-07-07 |
CA2468087C (en) | 2013-06-25 |
ES2545394T3 (es) | 2015-09-10 |
JP2010022058A (ja) | 2010-01-28 |
JP2005510985A (ja) | 2005-04-21 |
DK1449385T3 (en) | 2015-10-19 |
PT2271115E (pt) | 2015-10-15 |
KR20040070176A (ko) | 2004-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2548385T3 (es) | Codificación de cuadro/campo adaptativa de nivel de macrobloques para contenido de vídeo digital | |
ES2737843B2 (es) | Metodo y aparato para procesar una senal de video | |
ES2948265T3 (es) | Método de codificación/descodificación de señales de imagen y aparato para el mismo | |
US10499053B2 (en) | Method of improved directional intra prediction for video coding | |
ES2934221T3 (es) | Método de intrapredicción y aparato que utiliza el método | |
ES2737874B2 (es) | Metodo y aparato para procesar senal de video | |
ES2670326T3 (es) | Procedimiento de codificación de un modo de intra predicción | |
ES2705355B1 (es) | Método para inducir un bloque candidato de fusión y dispositivo que usa el mismo | |
JP4956556B2 (ja) | イントラ予測モードを使用した画像符号化方法 | |
ES2699725B2 (es) | Metodo y aparato para procesar senal de video | |
US20120106622A1 (en) | Method and Apparatus of Slice Grouping for High Efficiency Video Coding | |
ES2781556T3 (es) | Dispositivo de codificación por predicción de vídeo, método de codificación por predicción de vídeo, dispositivo de descodificación por predicción de vídeo y método de descodificación por predicción de vídeo | |
ES2719132A2 (es) | Procedimiento y dispositivo para procesar señales de vídeo | |
RU93039976A (ru) | Способ генерирования данных изображения | |
CN110475116B (zh) | 一种运动矢量导出方法、装置及电子设备 | |
CN117981301A (zh) | 帧内预测的方法、编码器、解码器和编解码*** |