Codificación de vídeo usando resolución adaptativa de vectores de movimiento.

Un procedimiento (220; 320) de codificación por entropía de datos de video,

comprendiendo el procedimiento:

cuando un valor absoluto de un componente x de un valor de diferencia de vector de movimiento para un bloque actual es mayor que cero (226; 326), y cuando un valor absoluto de un componente y del valor de diferencia de vector de movimiento para el bloque actual es mayor que cero (228; 328), codificar por entropía información representativa de un valor de diferencia de vector de movimiento, en el que la codificación por entropía de la información representativa del valor de diferencia de vector de movimiento comprende:

intercalar información representativa de si el valor absoluto del componente x de un valor de diferencia de vector de movimiento para el bloque actual de datos de vídeo es o no mayor que cero, e información representativa de si el valor absoluto del componente y del valor de diferencia de vector de movimiento es o no mayor que cero; e

intercalar información representativa del valor absoluto del componente x del valor de diferencia de vector de movimiento, información representativa del valor absoluto del componente y del valor de diferencia de vector de movimiento,

un signo del componente x del valor de diferencia de vector de movimiento (230; 330) y un signo del componente y del valor de diferencia de vector de movimiento (232; 332).

Tipo: Patente Internacional (Tratado de Cooperación de Patentes). Resumen de patente/invención. Número de Solicitud: PCT/US2012/045078.

Solicitante: QUALCOMM INCORPORATED.

Nacionalidad solicitante: Estados Unidos de América.

Dirección: 5775 MOREHOUSE DRIVE SAN DIEGO, CA 92121-1714 ESTADOS UNIDOS DE AMERICA.

Inventor/es: KARCZEWICZ, MARTA, CHEN,Peisong, CHIEN,WEI-JUNG.

Fecha de Publicación: .

Clasificación Internacional de Patentes:

  • H04N19/13 SECCION H — ELECTRICIDAD.H04 TECNICA DE LAS COMUNICACIONES ELECTRICAS.H04N TRANSMISION DE IMAGENES, p. ej. TELEVISION. › H04N 19/00 Métodos o disposiciones para la codificación, decodificación, compresión o descompresión de señales de vídeo digital. › Codificación de entropía adaptativa, p. ej. codificación adaptativa de longitud variable [AVLC] o codificación adaptativa de contexto de aritmética binaria [CABAC].
  • H04N19/513 H04N 19/00 […] › Procesamiento de los vectores de movimiento.
  • H04N19/517 H04N 19/00 […] › por codificación.
  • H04N19/52 H04N 19/00 […] › por codificación predictiva.
  • H04N19/523 H04N 19/00 […] › con precisión de sub-pixel.
  • H04N19/61 H04N 19/00 […] › en combinación con codificación predictiva.
  • H04N19/70 H04N 19/00 […] › caracterizado por los aspectos relacionados con la sintaxis de codificación de vídeo, p. ej en relación con los estándares de compresión.
  • H04N19/91 H04N 19/00 […] › Codificación de entropía, p. ej. codificación de longitud variable [VLC] o la codificación aritmética.

PDF original: ES-2546678_T3.pdf

 


Fragmento de la descripción:

Codificación de vídeo usando resolución adaptativa de vectores de movimiento

Campo técnico

La presente divulgación se refiere a la codificación de vídeo y, más específicamente, a la codificación de datos de vídeo para la compensación de movimiento en la codificación de vídeo.

Antecedentes Las capacidades del vídeo digital pueden ser incorporadas en una amplia gama de dispositivos, incluyendo los televisores digitales, los sistemas digitales de difusión directa, los sistemas de difusión inalámbrica, los asistentes digitales personales (PDA) , los ordenadores portátiles o de sobremesa, las cámaras digitales, los dispositivos de grabación digital, los reproductores de medios digitales, los dispositivos de juegos de vídeo, las consolas de juegos de vídeo, los radioteléfonos celulares o por satélite, los dispositivos de teleconferencia de vídeo y similares. Los dispositivos de video digital implementan técnicas de compresión de vídeo, tales como las descritas en los estándares definidos por MPEG-2, MPEG-4, ITU-T H.263 o ITU-T H.264 / MPEG-4, Parte 10, Codificación de Vídeo Avanzada (AVC) y las extensiones de tales estándares, para transmitir y recibir más eficazmente información de vídeo digital.

Las técnicas de compresión de vídeo realizan la predicción espacial y / o la predicción temporal para reducir o eliminar la redundancia inherente en las secuencias de vídeo. Para la codificación basada en bloques, una trama o tajada de vídeo puede ser dividida en macro-bloques. Cada macro-bloque puede ser dividido adicionalmente. Los macro-bloques en una trama o tajada intra-codificada (I) son codificados usando la predicción espacial con respecto a los macro-bloques vecinos. Los macro-bloques en una trama o tajada inter-codificada (P o B) pueden usar la predicción espacial con respecto a los macro-bloques vecinos en la misma trama o tajada, o la predicción temporal con respecto a otras tramas de referencia.

El artículo "Codificación aritmética binaria adaptativa basada en el contexto en el estándar de compresión de vídeo H.264 / AVC" de Marpe et al, publicado en las Transacciones del IEEE sobre Circuitos y Sistemas, vol. 13, nº 7, páginas 620 a 636, del 1 de julio de 2003, describe una técnica para codificar el bit de signo para un componente x o y, junto con un valor representativo de la magnitud del valor de diferencia de vector de movimiento para ese componente x o y.

El documento US 2005 / 038837 describe un procedimiento y aparato para la binarización y la codificación aritmética de un valor de datos.

El artículo "CE12: Resolución adaptativa de vectores de movimiento de Qualcomm", 4. Reunión JCT-VC; 95. Reunión de MPEG, nº JCTVC-D394, del 16 de enero de 2011, describe un procedimiento de resolución adaptativa de vectores de movimiento dentro del ámbito del experimento central 12 que fue configurado en la 3º reunión de JCT-VC.

Sumario La invención está definida en las reivindicaciones a las cuales se dirige ahora la referencia.

Los detalles de uno o más ejemplos son enunciados en los dibujos adjuntos y la descripción a continuación. Otras características, objetos y ventajas serán evidentes a partir de la descripción y los dibujos, y a partir de las reivindicaciones.

Breve descripción de los dibujos La FIG. 1 es un diagrama de bloques que ilustra un ejemplo de un sistema de codificación y descodificación de vídeo congruente con las técnicas de esta divulgación.

La FIG. 2 es un diagrama de bloques que ilustra un ejemplo de un codificador de vídeo congruente con las técnicas de esta divulgación.

La FIG. 3 es un diagrama de bloques que ilustra un ejemplo de un descodificador de vídeo congruente con las técnicas de esta divulgación.

La FIG. 4 es un diagrama de flujo que ilustra un procedimiento ejemplar para codificar conjuntamente los componentes x e y de un valor de diferencia de vector de movimiento y para codificar por entropía un bloque actual.

La FIG. 5 es un diagrama de flujo que ilustra un procedimiento ejemplar de señalización por separado de un valor de diferencia de vector de movimiento de acuerdo al modelo de prueba HEVC 3.0 (HM 3.0) .

La FIG. 6 es un diagrama de flujo que ilustra un procedimiento ejemplar para codificar conjuntamente los componentes x e y de un valor de diferencia de vector de movimiento.

La FIG. 7 es un diagrama de flujo que ilustra un procedimiento ejemplar para codificar conjuntamente los componentes x e y de un valor de diferencia de vector de movimiento y para codificar la resolución de los componentes x e y de un valor de diferencia de vector de movimiento.

La FIG. 8 es un diagrama de flujo que ilustra un procedimiento ejemplar para descodificar conjuntamente los componentes x e y de un valor de diferencia de vector de movimiento y para descodificar datos codificados por entropía, para producir un bloque actual.

La Fig. 9 es un diagrama de flujo que ilustra un procedimiento ejemplar para descodificar conjuntamente los componentes x e y de un valor de diferencia de vector de movimiento.

Descripción detallada En general, esta divulgación describe técnicas para codificar datos para valores de diferencia de vectores de movimiento durante la codificación de vídeo. Los datos de vídeo incluyen una secuencia de tramas (o imágenes) reproducidas en rápida sucesión para simular el movimiento. Cada trama de datos de vídeo puede ser dividida en bloques. Durante la codificación de vídeo y, más específicamente, la inter-predicción, un dispositivo tal como un codificador de vídeo o un descodificador de vídeo puede predecir los valores de píxeles de un bloque. El codificador o descodificador de vídeo puede basar las predicciones para el bloque sobre los valores de píxel de un bloque procedente de otra trama, o a partir de los valores de píxel de un bloque vecino.

Para la intra-predicción, un codificador de vídeo puede indicar el desplazamiento de un bloque de referencia usando un vector de movimiento. El vector de movimiento puede tener un componente x y un componente y. Los componentes x e y del vector de movimiento pueden indicar un desplazamiento con precisión de sub-píxel, tal como una precisión de medio píxel, una precisión de un cuarto de píxel o una precisión de un octavo de píxel. Para lograr la precisión sub-píxel, un codificador o descodificador de vídeo puede usar una técnica, tal como la interpolación, para determinar los valores de sub-píxel en las ubicaciones indicadas por el vector de movimiento. Después de determinar los componentes x e y del vector de movimiento, un codificador de vídeo puede calcular valores de diferencia de vectores de movimiento (MVD) para los componentes del vector de movimiento, con respecto a un predictor de vector de movimiento.

Esta divulgación proporciona, en general, técnicas para codificar conjuntamente valores MVD de movimiento. En esta divulgación, la codificación conjunta puede referirse a técnicas de codificación en las cuales las informaciones referidas a los componentes x e y de un valor de diferencia de vector de movimiento están intercaladas, a diferencia de la codificación de toda la información referida a uno de los componentes x o y antes de codificar cualquier información referida al segundo componente del valor de diferencia de vector de movimiento. La codificación conjunta también puede referirse al uso de un valor para representar valores para ambos componentes x e y. Además, esta divulgación también describe técnicas para codificar diferencias de vectores de movimiento, que pueden tener diversas precisiones sub-píxel, p. ej., precisión de un cuarto de píxel o precisión de un octavo de píxel, y para indicar las precisiones de las diferencias de vectores de movimiento y los vectores de movimiento asociados a los vectores de movimiento.

Una secuencia de vídeo incluye una o más tramas o imágenes. Cada una de las imágenes puede ser dividida en uno o más bloques, cada uno de los cuales puede ser codificado individualmente. Están en marcha esfuerzos para producir un nuevo estándar de codificación, actualmente mencionado como codificación de vídeo de alta eficacia (HEVC) , y algunas veces mencionado como ITU H.265. Este estándar inminente se refiere a una unidad de codificación (CU) como un bloque específico de píxeles que incluye datos de luminancia y datos de crominancia, donde los datos de luminancia tienen una resolución de 2Nx2N y los datos de crominancia tienen una resolución de NxN. Una unidad de codificación puede ser dividida en cuatro unidades de sub-codificación no solapadas, cuadradas, de igual tamaño.

Cada una de las unidades de sub-codificación puede también ser dividida de esta manera... [Seguir leyendo]

 


Reivindicaciones:

1. Un procedimiento (220; 320) de codificación por entropía de datos de video, comprendiendo el procedimiento:

cuando un valor absoluto de un componente x de un valor de diferencia de vector de movimiento para un bloque actual es mayor que cero (226; 326) , y cuando un valor absoluto de un componente y del valor de diferencia de vector de movimiento para el bloque actual es mayor que cero (228; 328) , codificar por entropía información representativa de un valor de diferencia de vector de movimiento, en el que la codificación por entropía de la información representativa del valor de diferencia de vector de movimiento comprende:

intercalar información representativa de si el valor absoluto del componente x de un valor de diferencia de vector de movimiento para el bloque actual de datos de vídeo es o no mayor que cero, e información representativa de si el valor absoluto del componente y del valor de diferencia de vector de movimiento es o no mayor que cero; e intercalar información representativa del valor absoluto del componente x del valor de diferencia de vector de movimiento, información representativa del valor absoluto del componente y del valor de diferencia de vector de movimiento, un signo del componente x del valor de diferencia de vector de movimiento (230; 330) y un signo del componente y del valor de diferencia de vector de movimiento (232; 332) .

2. El procedimiento de la reivindicación 1, en el que la codificación por entropía comprende la codificación aritmética binaria adaptativa según el contexto, CABAC, comprendiendo además el procedimiento:

calcular un vector de movimiento para el bloque actual de datos de vídeo; y calcular (156) el valor de diferencia de vector de movimiento como una diferencia entre el vector de movimiento para el bloque actual de datos de vídeo y un predictor de vector de movimiento, determinado para el bloque actual de datos de vídeo.

3. El procedimiento de la reivindicación 1, en el que la codificación por entropía comprende la codificación de la codificación aritmética binaria adaptativa según el contexto, CABAC, comprendiendo además el procedimiento:

determinar (286) un predictor de vector de movimiento para el bloque actual de datos de vídeo; y calcular (288) un vector de movimiento para el bloque actual de datos de vídeo como una suma del valor de diferencia de vector de movimiento y el predictor de vector de movimiento.

4. El procedimiento de la reivindicación 1, que comprende además:

codificar un valor representativo de si un vector de movimiento del bloque actual de datos de vídeo tiene una primera precisión de sub-píxel o una segunda precisión de sub-píxel, en el que la segunda precisión de sub-píxel es mayor que la primera precisión de sub-píxel; y cuando el vector de movimiento tiene la segunda precisión de sub-píxel, cuando el componente x del valor de diferencia de vector de movimiento no es igual a cero, y cuando el componente y del valor de diferencia de vector de movimiento no es igual a cero, en el que, la codificación de información representativa del valor absoluto del componente x del valor de diferencia de vector de movimiento y la codificación de información representativa del valor absoluto del componente y del valor de diferencia de vector de movimiento comprenden codificar un valor conjuntamente codificado, representativo tanto del componente x del valor de diferencia de vector de movimiento como del componente y del valor de diferencia de vector de movimiento.

5. El procedimiento de la reivindicación 4, que comprende además determinar si el vector de movimiento tiene la primera precisión de sub-píxel o la segunda precisión de sub-píxel, y que comprende:

determinar un valor de umbral asociado al vector de movimiento; y determinar que el vector de movimiento tiene la primera precisión de sub-píxel cuando tanto el componente x del valor de diferencia de vector de movimiento como el componente y del valor de diferencia de vector de movimiento son mayores que el umbral.

6. El procedimiento de la reivindicación 5, en el que la determinación de si el vector de movimiento tiene la primera precisión de sub-píxel o la segunda precisión de sub-píxel comprende, cuando al menos uno entre el componente x del valor de diferencia de vector de movimiento y el componente x del valor de diferencia de vector de movimiento es menor o igual que el umbral, determinar si el vector de movimiento tiene la primera precisión de sub-píxel o la segunda precisión de sub-píxel, en base a un valor de un indicador de resolución de vector de movimiento.

7. El procedimiento de la reivindicación 1,

en el que la codificación de información representativa del valor absoluto del componente x de los valores de diferencia de vectores de movimiento comprende codificar el valor absoluto del componente x de los valores de diferencia de vectores de movimiento como mvd_x/2 -1, en el que mvd_x comprende el componente x del valor de diferencia de vector de movimiento; y en el que la codificación de información representativa del valor absoluto del componente y de los valores de diferencia de vectores de movimiento comprende codificar el valor absoluto del componente y de los valores de diferencia de vectores de movimiento como mvd_y/2 -1, en el que mvd_y comprende el componente y del valor de diferencia de vector de movimiento.

8. Un aparato (56; 70) para codificar por entropía datos de vídeo, comprendiendo el aparato:

medios para codificar por entropía información representativa de un valor de diferencia de vector de movimiento cuando el valor absoluto del componente x del valor de diferencia de vector de movimiento es mayor que cero y cuando el valor absoluto del componente y del valor de diferencia de vector de movimiento es mayor que cero, en el que el medio para codificar por entropía la información representativa del valor de diferencia de vector de movimiento comprende:

medios para intercalar información representativa de si un valor absoluto de un componente x de un valor de diferencia de vector de movimiento para un bloque actual de datos de vídeo es o no mayor que cero, e información representativa de si un valor absoluto de un componente y del valor de diferencia de vector de movimiento es o no mayor que cero; medios para intercalar información representativa del valor absoluto del componente x del valor de diferencia de vector de movimiento, información representativa del valor absoluto del componente y del valor de diferencia de vector de movimiento, un signo del componente x del valor de diferencia de vector de movimiento, y un signo del componente y del valor de diferencia de vector de movimiento.

9. El aparato de la reivindicación 8, en el que el medio para la codificación por entropía comprende medios para la codificación de la codificación aritmética binaria adaptativa según el contexto, CABAC, comprendiendo además el aparato:

medios para calcular un vector de movimiento para el bloque actual de datos de vídeo; y medios para calcular el valor de diferencia de vector de movimiento como una diferencia entre el vector de movimiento para el bloque actual de datos de vídeo y un predictor de vector de movimiento determinado para el bloque actual de datos de vídeo.

10. El aparato de la reivindicación 8, en el que el medio para la codificación por entropía comprende medios para la descodificación de la codificación aritmética binaria adaptativa según el contexto, CABAC, comprendiendo además el aparato:

medios para determinar un predictor de vector de movimiento para el bloque actual de datos de vídeo; y medios para calcular un vector de movimiento para el bloque actual de datos de vídeo como una suma del valor de diferencia de vector de movimiento y el predictor de vector de movimiento.

11. El aparato de la reivindicación 8, que comprende además:

medios para codificar un valor representativo de si un vector de movimiento del bloque actual de datos de vídeo tiene una primera precisión de sub-píxel o una segunda precisión de sub-píxel, en el que la segunda precisión de sub-píxel es mayor que la primera precisión de sub-píxel; y medios para codificar un valor conjuntamente codificado, representativo tanto del componente x del valor de diferencia de vector de movimiento como del componente y del valor de diferencia de vector de movimiento, cuando el vector de movimiento tiene la segunda precisión de sub-píxel, cuando el componente x del valor de diferencia de vector de movimiento no es igual a cero, y cuando el componente y del valor de diferencia de vector de movimiento no es igual a cero.

12. El aparato de la reivindicación 11, que comprende además medios para determinar si el vector de movimiento tiene la primera precisión de sub-píxel o la segunda precisión de sub-píxel, y que comprende:

medios para determinar un valor de umbral asociado al vector de movimiento; y medios para determinar que el vector de movimiento tiene la primera precisión de sub-píxel cuando tanto el componente x del valor de diferencia de vector de movimiento como el componente y del valor de diferencia del vector de movimiento son mayores que el umbral.

13. El aparato de la reivindicación 12, en el que el medio para determinar si el vector de movimiento tiene la primera

precisión de sub-píxel o la segunda precisión de sub-píxel comprende medios para determinar si el vector de movimiento tiene la primera precisión de sub-píxel o la segunda precisión de sub-píxel, en base a un valor de un indicador de resolución de vector de movimiento, cuando al menos uno entre el componente x del valor de diferencia de vector de movimiento y el componente y del valor de diferencia del vector de movimiento es menor o igual que el umbral.

14. El aparato de la reivindicación 8, en el que el medio para codificar información representativa del valor absoluto del componente x de los valores de diferencia de vectores de movimiento comprende medios para codificar el valor absoluto del componente x de los valores de diferencia de vectores de movimiento como mvd_x/2 - 1, en el que mvd_x comprende el componente x del valor de diferencia de vector de movimiento; y en el que el medio para codificar información representativa del valor absoluto del componente y de los valores de diferencia de vectores de movimiento comprende medios para codificar el valor absoluto del componente y de los valores de diferencia de vectores de movimiento como mvd_y/2 - 1, en el que mvd_y comprende el componente y del valor de diferencia de vector de movimiento.

15. Un producto de programa de ordenador que comprende un medio de almacenamiento legible por ordenador, que tiene almacenadas en el mismo instrucciones que, cuando son ejecutadas, provocan que uno o más procesadores de un dispositivo para codificar datos de vídeo lleven a cabo el procedimiento de cualquiera de las reivindicaciones 1 a 7.


 

Patentes similares o relacionadas:

Capa de sectores en códec de vídeo, del 27 de Noviembre de 2019, de Microsoft Technology Licensing, LLC: Un procedimiento de decodificación de vídeo e imágenes, que comprende: decodificar una imagen de un flujo de bits codificado que tiene una jerarquía […]

Transformación solapada condicional, del 20 de Noviembre de 2019, de Microsoft Technology Licensing, LLC: Un método para codificar un flujo de bits de vídeo utilizando una transformación solapada condicional, en donde el método comprende: la señalización de un modo de filtro […]

Codificación de imagen usando unidades de transformación grandes, del 13 de Noviembre de 2019, de SAMSUNG ELECTRONICS CO., LTD.: Un aparato de codificación de imagen que comprende: un procesador configurado para: generar información acerca de una unidad de codificación máxima, usada […]

Procedimiento de descodificación de imágenes en movimiento, del 6 de Noviembre de 2019, de Godo Kaisha IP Bridge 1: Un procedimiento de descodificación de imágenes para descodificar un flujo de bits de una señal de imagen codificada, comprendiendo el procedimiento […]

Procedimiento de descodificación de imágenes en movimiento, del 6 de Noviembre de 2019, de Godo Kaisha IP Bridge 1: Un procedimiento de descodificación de imágenes para descodificar un flujo de bits de una señal de imagen codificada, comprendiendo el procedimiento de descodificación […]

Método para señalizar información de imagen y método para decodificar información de imagen usándolo, del 6 de Noviembre de 2019, de LG ELECTRONICS INC.: Un método para decodificar información de vídeo mediante un aparato de decodificación, que comprende: recibir información de vídeo que incluye una bandera de omisión, información […]

Imagen de 'Método y aparato de predictor de vector de movimiento extendido'Método y aparato de predictor de vector de movimiento extendido, del 31 de Octubre de 2019, de HFI Innovation Inc: Metodo para derivar un predictor de vector de movimiento o candidato de predictor de vector de movimiento para codificar un vector de movimiento […]

Codificación entrópica de vectores de movimiento, del 30 de Octubre de 2019, de NIPPON TELEGRAPH AND TELEPHONE CORPORATION: Un dispositivo de codificacion de video que usa una prediccion de intertrama compensada por movimiento para cada bloque dividiendo una imagen en bloques, cada uno con […]

Utilizamos cookies para mejorar nuestros servicios y mostrarle publicidad relevante. Si continua navegando, consideramos que acepta su uso. Puede obtener más información aquí. .