ES2767966T3 - Codificación de intra-predicción bajo representaciones planas - Google Patents

Codificación de intra-predicción bajo representaciones planas Download PDF

Info

Publication number
ES2767966T3
ES2767966T3 ES18167914T ES18167914T ES2767966T3 ES 2767966 T3 ES2767966 T3 ES 2767966T3 ES 18167914 T ES18167914 T ES 18167914T ES 18167914 T ES18167914 T ES 18167914T ES 2767966 T3 ES2767966 T3 ES 2767966T3
Authority
ES
Spain
Prior art keywords
prediction
target
pixel
pixels
target block
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.)
Active
Application number
ES18167914T
Other languages
English (en)
Inventor
Frank Jan Bossen
Sandeep Kanumuri
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NTT Docomo Inc filed Critical NTT Docomo Inc
Application granted granted Critical
Publication of ES2767966T3 publication Critical patent/ES2767966T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/146Data rate or code amount at the encoder output
    • H04N19/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Abstract

Método de codificación de vídeo para predecir valores de píxel de cada píxel objetivo en un bloque objetivo en un modo plano, comprendiendo el método etapas ejecutables por ordenador ejecutadas mediante un procesador de un codificador de vídeo para implementar: generar, cuando ni los píxeles de límite horizontal en la parte exterior superior del bloque objetivo ni los píxeles de límite vertical en la parte exterior izquierda del bloque objetivo están disponibles para la predicción, píxeles de límite generado horizontal en la parte exterior superior y píxeles de límite generado vertical en la parte exterior izquierda usando una asignación P(i, 0) = P(0, j) = (1 << (Nb-1)), (1<= i, j <=2N), en la que Nb representa una profundidad de bits usada para representar valores de pixel, calcular un primer valor de predicción de cada píxel objetivo usando interpolación lineal entre valores de píxel de los píxeles de límite generado horizontal respectivos, en la misma posición horizontal que los píxeles objetivo respectivos, en la parte exterior superior del bloque objetivo y un valor de píxel del más inferior de los píxeles de límite generado vertical adyacentes al bloque objetivo en la parte exterior izquierda del bloque objetivo; calcular un segundo valor de predicción de cada píxel objetivo usando interpolación lineal entre valores de píxel de los píxeles de límite generado vertical respectivos, en la misma posición vertical que los píxeles objetivo respectivos, y un valor de píxel del más a la derecha de los píxeles de límite generado horizontal adyacentes al bloque objetivo en la parte exterior superior del bloque objetivo; y promediar, para cada píxel objetivo, el primer valor de predicción y el segundo valor de predicción para obtener un valor de píxel de predicción para ese píxel objetivo en un bloque de predicción.

Description

DESCRIPCIÓN
Codificación de intra-predicción bajo representaciones planas
Solicitudes relacionadas
El presente documento de patente reivindica el beneficio de la fecha de presentación en 35 U.S.C. §119(e) de las solicitudes de patente estadounidenses provisionales n.os 61/425670, presentada el 21 de diciembre de 2010 y 61/449528 presentada el 4 de marzo de 2011.
Antecedentes de la invención
1. Campo de la invención
La presente invención se refiere a una codificación de vídeo y en particular a predicción intra-trama mejorada con codificación de modo de predicción plana de baja complejidad.
2. Descripción de la técnica relacionada
El vídeo digital requiere una gran cantidad de datos para representar todas y cada una de las tramas de una secuencia de vídeo digital (por ejemplo, serie de tramas) de una manera sin comprimir. Para la mayoría de las aplicaciones no resulta viable transmitir vídeo digital sin comprimir a través de redes informáticas debido a limitaciones del ancho de banda. Además, el vídeo digital sin comprimir requiere una gran cantidad de espacio de almacenamiento. Normalmente, el vídeo digital se codifica de manera que se reduzcan los requisitos de almacenamiento y se reduzcan los requisitos de ancho de banda.
Una técnica para codificar vídeo digital es la predicción inter-trama, o inter-predicción. La inter-predicción aprovecha redundancias temporales entre diferentes tramas. Las tramas de vídeo temporalmente adyacentes incluyen normalmente bloques de píxeles, que permanecen sustancialmente iguales. Durante el procedimiento de codificación, un vector de movimiento interrelaciona el movimiento de un bloque de píxeles en una trama con un bloque de píxeles similares en otra trama. Por consiguiente, no se requiere que el sistema codifique el bloque de píxeles dos veces, sino que en vez de eso codifica el bloque de píxeles una vez y proporciona un vector de movimiento para predecir el otro bloque de píxeles.
Otra técnica para codificar vídeo digital es la predicción intra-trama o intra-predicción. La intra-predicción codifica una trama o una parte de la misma sin referencia a píxeles en otras tramas. La intra-predicción aprovecha redundancias espaciales entre bloques de píxeles dentro de una trama. Dado que bloques de píxeles espacialmente adyacentes tienen generalmente atributos similares, la eficacia del procedimiento de codificación se mejora haciendo referencia a la correlación espacial entre bloques adyacentes. Esta correlación puede aprovecharse mediante predicción de un bloque objetivo basándose en modos de predicción usados en bloques adyacentes.
Normalmente, un codificador comprende un predictor de píxeles, que comprende un inter-predictor, un intra-predictor y un selector de modo. El inter-predictor realiza la predicción para una imagen recibida, basándose en una trama de referencia de movimiento compensado. El intra-predictor realiza la predicción para la imagen recibida basándose en partes ya procesadas de la imagen o trama actual. El intra-predictor comprende además una pluralidad de modos de intra-predicción diferentes y realiza la predicción en los modos de predicción respectivos. Las salidas del interpredictor y el intra-predictor se suministran al selector de modo.
El selector de modo determina qué método de codificación va a usarse, la codificación inter-predicción o la codificación intra-predicción, y, cuando va a usarse la codificación intra-predicción, determina qué modo de la codificación intra-predicción va a usarse de entre la pluralidad de modos de intra-predicción. En el proceso de determinación, el selector de modo usa funciones de coste para analizar qué método de codificación o qué modo proporciona el resultado más eficiente con respecto a costes de procesamiento y eficiencia de codificación.
Los modos de intra-predicción comprenden un modo DC y modos direccionales. El modo DC representa adecuadamente un bloque cuyos valores de píxel son constantes a través del bloque. Los modos direccionales son adecuados para representar un bloque que tiene un diseño a rayas en una dirección determinada. Existe otro diseño de imagen en el que la imagen se suaviza y sus valores de píxel cambian gradualmente en un bloque. El modo DC y los modos direccionales no son adecuados para predecir pequeños cambios graduales en el contenido de imagen y pueden crear artefactos de bloqueo molestos especialmente a tasas de bits de bajas a medias. Esto es debido a que cuando se codifican bloques con valores de píxel que cambian gradualmente, los coeficientes de AC de los bloques tienden a cuantificarse a cero, mientras que los coeficientes DC tienen valores no nulos.
Con el fin de hacer frente a este problema, los modos de intra-predicción en la norma H.264/AVC incluyen de manera adicional un modo plano para representar un bloque con una imagen suavizada cuyos valores de píxel cambian gradualmente con un gradiente plano pequeño. En el modo plano de la norma H.264/AVC, se estima y señala un gradiente plano en un flujo de bits a un descodificador. El documento Ugur K (Nokia) et al: “Video coding technology proposal" por Tandberg, Nokia y Ericsson", 1a reunión de JCT-VC; 15-4-2010 - 23-4-2010; Dresde; (Joint Collaborative Team on Video Coding of ISO/IEC JTC1/SC29/WG11 and ITU-TSG.16); URL: HTTP://WFTP3.ITU.INT/AV-ARCH/ JCTVC-SITE/, n.° JCTVC-A119, 24 de abril de 2010 (24-04-2010), XP030007563, ISSN: 0000-0049 da a conocer una codificación de vídeo con predicción plana que usa interpolación bilineal entre la fila superior, la fila inferior, la columna izquierda y la columna derecha de píxeles en un macrobloque.
Sumario de la invención
La presente invención proporciona una codificación de modo plano de baja complejidad que puede mejorar la eficacia de codificación de la codificación de intra-predicción. En la presente invención, bajo el modo de predicción plano, un codificador calcula un primer valor de predicción y un segundo valor de predicción. El primer valor de predicción se calcula usando interpolación lineal entre un valor de píxeles de límite horizontal respectivos y un valor de uno de los píxeles de límite vertical. El segundo valor de predicción se calcula usando interpolación lineal ente un valor de píxeles de límite vertical respectivo y un valor de uno de los valores de límite horizontal. El codificador promedia además el primer y el segundo valor de predicción para obtener un valor de predicción respectivo en un bloque de predicción. La invención se explica en el juego de reivindicaciones adjunto; los ejemplos adicionales denominados realizaciones, o aspectos de la invención, en la descripción son ejemplos ilustrativos.
En un aspecto de la presente invención, las señales de codificador son residuales entre el bloque de predicción y un bloque objetivo en un flujo de bits a un descodificador.
En otro aspecto de la presente invención, un conjunto primario de núcleo de transformación HN(i.j) se conmuta a un conjunto secundario de núcleo de transformación GN(i.,j). El codificador transforma el residuo, usando el conjunto secundario de núcleo de transformación GN(i.,j).
El conjunto secundario de núcleo de transformación GN(i.,j) puede definirse mediante una de las siguientes ecuaciones:
GN( i , j ) = k¡ x sen(
Figure imgf000003_0001
(a) '
Gp (i,j) = k¡ xsen
(b)
Figure imgf000003_0002
G ' (i. j) A xcos((/ lH 2 / l) -T ).
(c) ! 2 N
En otro aspecto de la presente invención, el conjunto secundario de núcleo de transformación GN(i.,j) para un tamaño NxN se define mediante el conjunto primario de núcleo de transformación HM(i.j) para un tamaño MxM, donde M>N. Específicamente, el conjunto secundario de núcleo de transformación GN(i., j) puede definirse mediante GN(i, j) = ki x H2N (2i, N 1 - j), si los núcleos de transformación de tamaño 2Nx2N(H2N) están soportados, o GN(i, j) = HN(i, j) de lo contrario.
La presente invención también proporciona codificación de modo plano de baja complejidad usada para descodificar. Bajo el modo plano, un descodificador calcula un primer valor de predicción y un segundo valor de predicción. El primer valor de predicción se calcula usando interpolación lineal entre un valor de los píxeles de límite horizontal respectivos y un valor de uno de los píxeles de límite vertical. El segundo valor de predicción se calcula usando interpolación lineal entre un valor de píxeles de límite vertical respectivos y un valor de uno de los píxeles de límite horizontal. El descodificador promedia entonces el primer y el segundo valor de predicción para obtener un valor de píxel de predicción respectivo en un bloque de predicción. El descodificador descodifica un residuo señalado desde el codificador que se generó bajo el modo plano en el codificador y añade el residuo descodificado al bloque de predicción para reconstruir datos de imágenes.
Breve descripción de los dibujos
La figura 1 es un diagrama de bloques que muestra una arquitectura de hardware a modo de ejemplo en la que puede implementarse la presente invención.
La figura 2 es un diagrama de bloques que muestra una vista general de un codificador de vídeo al que puede aplicarse la presente invención.
La figura 3 es un diagrama de bloques que muestra una vista general de un descodificador de vídeo al que puede aplicarse la presente invención.
La figura 4 es un diagrama de bloques que muestra los módulos funcionales de un codificador según una realización de la presente invención.
La figura 5 es un diagrama de flujo que muestra un proceso de codificación realizado por el codificador de vídeo según una realización de la presente invención.
La figura 6 es un diagrama de bloques que muestra los módulos funcionales de un descodificador según una realización de la presente invención.
La figura 7 es un diagrama que muestra un proceso de descodificación realizado por el descodificador de vídeo según una realización de la presente invención.
La figura 8 es una representación esquemática de un bloque objetivo que contiene píxeles de 8x8 P(i, j) y píxeles de referencia usados para predecir los píxeles P(i, j).
La figura 9 es una representación esquemática que muestra el proceso de generación de píxeles de predicción según la codificación de modo plano propuesta en el documento JCT-VC A119.
La figura 10 es una representación esquemática que muestra el proceso de generación de píxeles de predicción según la codificación de modo plano de la presente invención.
La figura 11 es otra representación esquemática que muestra el proceso de generación de píxeles de predicción según la codificación de modo plano de la presente invención.
La figura 12 es un diagrama de flujo que muestra el proceso de conmutación entre un conjunto primario de núcleo de transformación y un conjunto secundario de núcleo de transformación.
Descripción detallada de los dibujos y las realizaciones preferidas en el presente documento
La figura 1 muestra una arquitectura de hardware a modo de ejemplo de un ordenador 100 en el que puede implementarse la presente invención. Obsérvese que la arquitectura de hardware mostrada en la figura 1 puede ser común tanto en un codificador de vídeo como en un descodificador de vídeo que implementan las realizaciones de la presente invención. El ordenador 100 incluye un procesador 101, memoria 102, dispositivo 105 de almacenamiento y uno o más dispositivos 106 de entrada y/o salida (I/O) (o periféricos) que están acoplados en comunicación a través de una interfaz 107 local. La interfaz 105 local puede ser, por ejemplo, pero no se limita a, uno o más buses u otras conexiones por cable o inalámbricas, tal como se conoce en la técnica.
El procesador 101 es un dispositivo de hardware para ejecutar software, particularmente el almacenado en la memoria 102. El procesador 101 puede ser cualquier procesador fabricado a medida o comercialmente disponible, una unidad de procesamiento central (CPU), un procesador auxiliar entre varios procesadores asociados con el ordenador 100, un microprocesador basado en semiconductor (en forma de un microchip o conjunto de chips) o generalmente cualquier dispositivo para ejecutar instrucciones de software.
La memoria 102 comprende un medio legible por ordenador que puede incluir cualquiera de o una combinación de elementos de memoria volátil (por ejemplo, memoria de acceso aleatorio (RAM, tal como DRAM, SRAM, SDRAM, etc.)) y elementos de memoria no volátil (por ejemplo, ROM, disco duro, cinta, CD-ROM, etc.). Además, la memoria 102 puede incorporar medios de almacenamiento electrónicos, magnéticos, ópticos y/o de otros tipos. Un medio legible por ordenador puede ser cualquier medio que puede almacenar, comunicar, propagar o transportar el programa para su uso por o en conexión con el sistema, aparato o dispositivo de ejecución de instrucciones. Obsérvese que la memoria 102 puede tener una arquitectura distribuida, en la que diversos componentes están situados alejados unos de otros, pero a los que puede acceder el procesador 101.
El software 103 en la memoria 102 puede incluir uno o más programas separados, cada uno de los cuales contiene una lista ordenada de instrucciones ejecutable para implementar funciones lógicas del ordenador 100, tal como se describe a continuación. En el ejemplo de la figura 1, el software 103 en la memoria 102 define la funcionalidad de codificación de vídeo o descodificación de vídeo del ordenador 100 según la presente invención. Además, aunque no se requiere, es posible que la memoria 102 contenga un sistema 104 operativo (O/S). El sistema 104 operativo controla esencialmente la ejecución de programas informáticos y proporciona planificación, control de entrada-salida, gestión de archivos y datos, gestión de memoria y control de comunicación y servicios relacionados.
El dispositivo 105 de almacenamiento del ordenador 100 puede ser uno de muchos tipos diferentes de dispositivo de almacenamiento, incluyendo un dispositivo de almacenamiento estacionario o dispositivo de almacenamiento portátil. Como ejemplo, el dispositivo 105 de almacenamiento puede ser una cinta magnética, disco, memoria flash, memoria volátil o un dispositivo de almacenamiento diferente. Además, el dispositivo 105 de almacenamiento puede ser una tarjeta de memoria digital segura o cualquier otro dispositivo 105 de almacenamiento extraíble.
Los dispositivos 106 de I/O pueden incluir dispositivos de entrada, por ejemplo, pero sin limitarse a, una pantalla táctil, un teclado, ratón, escáner, micrófono u otro dispositivo de entrada. Además, los dispositivos 106 de I/O también pueden incluir dispositivos de salida, por ejemplo, pero sin limitarse a, una pantalla u otros dispositivos de salida. Los dispositivos 106 de I/O pueden incluir además dispositivos que se comunican a través tanto de entradas como de salidas, por ejemplo, pero sin limitarse a, un modulador/desmodulador (módem; para acceder a otro dispositivo, sistema o red), un transceptor de radiofrecuencia (RF), inalámbrico u otro, una interfaz telefónica, un puente, un enrutador u otros dispositivos que funcionan como entrada y como salida.
Tal como conocen bien los expertos habituales en la técnica, la compresión de vídeo se logra eliminando información redundante en una secuencia de vídeo. Existen muchas normas diferentes de codificación de vídeo, entre los ejemplos de las cuales incluyen MPEG-1, MPEG-2, MPEG-4, H.261, H.263 y H.264/AVC. Debe observarse que la presente invención no pretende limitarse en cuanto a la aplicación de cualquier norma de codificación de vídeo específica. Sin embargo, la siguiente descripción de la presente invención se proporciona usando el ejemplo de la norma H.264/AVC, que se incorpora al presente documento como referencia. H.264/AVC es la norma de codificación de vídeo más reciente y logra una mejora de rendimiento significativa con respecto a las normas de codificación anteriores tales como m PeG-1, MPEG-2, H.261 y H.263.
En H.264/AVC, cada trama o imagen de un vídeo puede descomponerse en varios segmentos. Los segmentos se dividen entonces en bloques de 16X16 píxeles denominados macrobloques, que después pueden dividirse adicionalmente en bloques de 8X16, 16x8, 8X8, 4X8, 8x4, hasta 4X4 píxeles. Hay cinco tipos de segmentos soportados por H.264/AVC. En los segmentos I, todos los macrobloques se codifican usando intra-predicción. En los segmentos P, los macrobloques pueden codificarse usando intra o inter-predicción. Los segmentos P solo permiten usar una señal de predicción compensada por movimiento (MCP) por macrobloque. En los segmentos B, pueden codificarse macrobloques usando intra o inter-predicción. Pueden usarse dos señales de MCP por predicción. Los segmentos SP permiten conmutar segmentos P entre diferentes flujos de vídeo de manera eficaz. Un segmento SI es una coincidencia exacta para un segmento SP para acceso aleatorio o recuperación de error, mientras que solo se usa intra-predicción.
La figura 2 muestra una vista general de un codificador de vídeo al que puede aplicarse la presente invención. Los bloques mostrados en la figura representan módulos funcionales realizados por el procesador 101 que ejecuta el software 103 en la memoria 102. Se alimenta una imagen 200 de trama de vídeo a un codificador 201 de vídeo. El codificador de vídeo trata la imagen 200 en unidades de macrobloques 200A. Cada macrobloque contiene varios píxeles de imagen 200. En cada macrobloque se realiza una transformación en coeficientes de transformación seguida por una cuantificación en niveles de coeficientes de transformación. Además, se usa intra-predicción o inter­ predicción, para no realizar las etapas de codificación directamente en los datos de píxel sino en las diferencias de los mismos con respecto a valores de píxel predichos, logrando así valores pequeños que se comprimen más fácilmente.
Para cada segmento, el codificador 201 genera varios elementos de sintaxis, que forman una versión codificada de los macrobloques del segmento respectivo. Todos los elementos de datos residuales en los elementos de sintaxis, que están relacionados con la codificación de coeficientes de transformación, tales como los niveles de coeficientes de transformación o un mapa de significación que indica niveles de coeficientes de transformación omitidos, se denominan elementos de sintaxis de datos residuales. Además de estos elementos de sintaxis de datos residuales, los elementos de sintaxis generados por el codificador 201 contienen elementos de sintaxis de información de control que contienen información de control sobre cómo se ha codificado cada macrobloque y cómo tiene que descodificarse, respectivamente. En otras palabras, los elementos de sintaxis pueden dividirse en dos categorías. La primera categoría, los elementos de sintaxis de información de control, contiene los elementos relacionados con un tipo de macrobloque, tipo de sub-macrobloque e información sobre modos de predicción de tipos tanto espacial como temporal, así como información de control basada en segmento y basada en macrobloque, por ejemplo. En la segunda categoría, todos los elementos de datos residuales, tales como un mapa de significación que indica las ubicaciones de todos los coeficientes significativos dentro de un bloque de coeficientes de transformación cuantificados y los valores de los coeficientes significativos, que se indican en unidades de niveles correspondientes a las etapas de cuantificación, se combinan y se convierten en elementos de sintaxis de datos residuales.
El codificador 201 comprende un codificador de entropía que codifica elementos de sintaxis y genera contraseñas aritméticas para cada segmento. Cuando se generan las contraseñas aritméticas para un segmento, el codificador de entropía aprovecha dependencias estadísticas entre los valores de datos de elementos de sintaxis en el flujo de bits de la señal de vídeo. El codificador 201 emite una señal de vídeo codificada para un segmento de imagen 200 a un descodificador 301 de vídeo mostrado en la figura 3.
La figura 3 muestra una vista general de un descodificador de vídeo al que puede aplicarse la presente invención.
Asimismo, los bloques mostrados en la figura representan módulos funcionales realizados por el procesador 101 que ejecuta el software 103 en la memoria 102. El descodificador 301 de vídeo recibe la señal de vídeo codificada y en primer lugar realiza la descodificación de entropía de la señal de vuelta a los elementos de sintaxis. El descodificador 301 usa los elementos de sintaxis para reconstruir, macrobloque por macrobloque y después segmento por segmento, las muestras 300A de imagen de píxeles en la imagen 300.
La figura 4 muestra los módulos funcionales del codificador 201 de vídeo. Estos módulos funcionales se realizan mediante el procesador 101 que ejecuta el software 103 en la memoria 102. Una imagen de vídeo de entrada es una trama o un campo de una imagen de vídeo natural (sin comprimir) definida por puntos de muestra que representan componentes de colores originales, tales como crominancia (“croma”) y luminancia (“luma”) (otras componentes son posibles, por ejemplo, tono, saturación y valor). La imagen de vídeo de entrada se divide en macrobloques 400 que representan cada uno un área de imagen cuadrada que consiste en 16X16 píxeles de la componente luma del color de la imagen. La imagen de vídeo de entrada también se reparte en macrobloques que representan cada uno 8X8 píxeles de cada una de las dos componentes de croma del color de la imagen. En el funcionamiento de codificador general, los macrobloques introducidos pueden predecirse de manera temporal o espacial usando inter o intrapredicción. Sin embargo, con el propósito de discusión, se supone que los macrobloques 400 son todos macrobloques de tipo segmento I y se someten únicamente a intra-predicción.
La intra-predicción se logra en un módulo 401 de intra-predicción, cuyo funcionamiento se comentará con detalle a continuación. El módulo 401 de intra-predicción genera un bloque 402 de predicción a partir de píxeles de límite horizontal y vertical de bloques adyacentes, que se han codificado, reconstruido y almacenado anteriormente en una memoria 403 de trama. Un residuo 404 del bloque 402 de predicción, que es la diferencia entre un bloque 400 objetivo y el bloque 402 de predicción, se transforma por un módulo 405 y después se cuantifica usando un cuantificador 406. El módulo 405 de transformación transforma el residuo 404 en un bloque de coeficientes 407 de transformación. Entonces se someten los coeficientes 407 de transformación cuantificados a codificación de entropía en un módulo 408 de codificación de entropía y se transmiten (junto con otra información relacionada con la intrapredicción) como una señal 409 de vídeo codificada.
El codificador 201 de vídeo contiene funcionalidad de descodificación para realizar la intra-predicción en bloques objetivo. La funcionalidad de descodificación comprende un cuantificador 410 y un módulo 411 de transformación inversa que realiza la cuantificación inversa y la transformación inversa en los coeficientes 406 de transformación cuantificados para producir el residuo 410 de predicción descodificado, que se añade al bloque 402 de predicción. La suma del residuo 410 de predicción descodificado y el bloque 402 de predicción es un bloque 413 reconstruido, que se almacena en la memoria 403 de trama y se leerá de la misma y será usado por el módulo 401 de intrapredicción para generar un bloque 402 de predicción para descodificar un siguiente bloque 400 objetivo. Un filtro de desbloqueo puede colocarse de manera opcional o bien en la entrada o bien en la salida de la memoria 403 de trama para eliminar los artefactos de bloqueo de las imágenes reconstruidas.
La figura 5 es un diagrama de flujo que muestra procedimientos realizados por el codificador 401 de vídeo. Según la norma H.264/AVC, la intra-predicción implica predecir cada píxel del bloque 400 objetivo en una pluralidad de modos de predicción, usando interpolaciones de píxeles de límite (“píxeles de referencia”) de bloques adyacentes anteriormente codificados y reconstruidos. Los modos de predicción se identifican mediante números enteros positivos 0, 1, 2..., cada uno asociado con una instrucción o un algoritmo diferente para predecir píxeles específicos en el bloque 400 objetivo. El módulo 401 de intra-predicción ejecuta una intra-predicción en los modos de predicción respectivos y genera diferentes bloques de predicción. En un algoritmo de búsqueda completa (“FS”), cada uno de los bloques de predicción generados se compara con el bloque 400 objetivo para encontrar el modo de predicción óptimo, lo cual minimiza el residuo 404 de predicción o produce un residuo 404 de predicción menor entre los modos de predicción. La identificación del modo de predicción óptimo se comprime y se envía al descodificador 301 con otros elementos de sintaxis de información de control.
Cada modo de predicción puede describirse mediante una dirección general de predicción tal como se describe verbalmente (es decir, horizontal hacia arriba, vertical y diagonal hacia abajo y a la izquierda). Una dirección de predicción puede describirse gráficamente mediante una dirección angular. El ángulo correspondiente a un modo de predicción tiene una relación general con respecto a la dirección desde la ubicación promedio ponderada de los píxeles de referencia usados para predecir un píxel objetivo en la ubicación de píxel objetivo. En el modo de predicción DC, el bloque 402 de predicción se genera de tal manera que cada píxel en el bloque 402 de predicción se establece uniformemente al valor medio de los píxeles de referencia.
Volviendo a la figura 5, el módulo 401 de intra-predicción emite el bloque 402 de predicción, que se resta del bloque 400 objetivo para obtener el residuo 404 (etapa 503). El módulo 405 de transformación transforma el residuo 404 en un bloque de coeficientes de transformación (etapa 504). El cuantificador 406 cuantifica los coeficientes de transformación en coeficientes de transformación cuantificados. El modo 408 de codificación de entropía realiza la codificación de entropía de los coeficientes de transformación cuantificados (etapa 506), que se envían junto con la identificación comprimida del modo de predicción óptimo. El cuantificador 410 inverso cuantifica de manera inversa los coeficientes de transformación cuantificados (etapa 507). El módulo 411 de transformación inversa realiza la transformación inversa para obtener el residuo 412 de predicción descodificado (etapa 508), que se añade con el bloque 402 de predicción para convertirse en el bloque 413 reconstruido (etapa 509).
La figura 6 muestra los módulos funcionales del descodificador 301 de vídeo. Estos módulos funcionales se realizan mediante el procesador 101 ejecutando el software 103 en la memoria 102. La señal de vídeo codificada del codificador 201 es recibida en primer lugar por un descodificador 600 de entropía y se realiza la descodificación de entropía de vuelta a los coeficientes 601 de transformación cuantificados. Los coeficientes 601 de transformación cuantificados se cuantifican de manera inversa mediante un cuantificador 602 inverso y se transforman de manera inversa mediante un módulo 603 de transformación inversa para generar un residuo 604 de predicción. A un módulo 605 de intra-predicción se le notifica el modo de predicción seleccionado por el codificador 201. Según el modo de predicción seleccionado, el módulo 605 de intra-predicción realiza un proceso de intra-predicción similar al que se realizó en la etapa 503 de la figura 5 para generar un bloque 606 de predicción, usando píxeles de límite de bloques adyacentes previamente reconstruidos y almacenados en una memoria 607 de trama. El bloque 606 de predicción se añade al residuo 604 de predicción para reconstruir un bloque 608 de señal de vídeo descodificada. El bloque 608 reconstruido se almacena en la memoria 607 de trama para su uso en la predicción de un próximo bloque. La figura 7 es un diagrama de flujo que muestra los procesos realizados por el codificador 201 de vídeo. El descodificador 301 de vídeo descodifica la identificación del modo de predicción óptimo señalado desde el codificador 201 de vídeo (etapa 701). Usando el modo de predicción descodificado, el módulo 605 de intrapredicción genera el bloque 606 de predicción, usando píxeles de límite de bloques adyacentes previamente reconstruidos y almacenados en una memoria 607 de trama (etapa 702). El descodificador 600 aritmético descodifica la señal de vídeo codificada del codificador 201 de vuelta a los coeficientes 601 de transformación cuantificados (etapa 703). El cuantificador 602 inverso cuantifica de manera inversa los coeficientes de transformación cuantificados a los coeficientes de transformación (etapa 704). El módulo 603 de transformación inversa transforma de manera inversa los coeficientes de transformación en el residuo 604 de predicción (etapa 705), que se añade con el bloque 606 de predicción para reconstruir el bloque 608 de señal de vídeo descodificada (etapa 706).
El proceso de codificación realizado por el codificador 201 de vídeo puede explicarse adicionalmente con referencia a la figura 8. La figura 8 es una representación esquemática de un bloque objetivo que contiene píxeles de 8x8 P(i,j) y píxeles de referencia usados para predecir los píxeles P(i,j). En la figura 8, los píxeles de referencia consisten en 17 píxeles horizontales y 17 píxeles verticales, en la que el píxel de la parte superior izquierda es común tanto para límites horizontales como verticales. Por tanto, 32 píxeles diferentes están disponibles para generar píxeles de predicción para el bloque objetivo. Obsérvese que aunque la figura 8 muestra un bloque de 8x8 que va a predecirse, la siguiente explicación se generaliza para convertirse en aplicable para diversos números de píxeles en configuraciones diferentes. Por ejemplo, un bloque que va a predecirse puede comprender una matriz 4x4 de píxeles. Un bloque de predicción también puede comprender una matriz 8 x 8 de píxeles, una matriz 16 x 16 de píxeles, o matrices de píxeles más grandes. Otras configuraciones píxel, incluyendo tanto matrices cuadradas como rectangulares, también pueden constituir un bloque de predicción.
Suponiendo que un bloque de píxeles ({P(i,j) : 1 < i,j < N}) experimente la codificación intra-predicción que usa píxeles de referencia horizontales y verticales ( í P ( f f i ) ' ( ) < i< 2N} u { /* (() ,/) : 0 < j < 2N }) Donde P0 (i,j) indica los valores de píxel originales del bloque objetivo, Pp (i,j) indica los valores de píxel predichos, Pr (i,j) indica los valores de residuo, Pq (i,j) indica los valores de residuo comprimidos y Pc (i,j) indica los valores comprimidos para los píxeles P(i,j), las siguientes ecuaciones definen su relación:
PR( i , j ) = P0( i , j ) - Pp( i, j ) , \ f \ < i j < N
PT( l :N , l : N) = QF( H * * P R{ 1: N , l : N) * (H F )T)
PQ(1: N , l : N ) = H? *Q,(PT( 1: AM : N)) * ( H ? f
Pc(pj) = P0( i , j ) + Pp(U Í), VI Í U £ N
F , es una matriz N x N que representa el núcleo de transformación hacia delante.
Figure imgf000007_0001
es una matriz N x N que representa el núcleo de transformación inversa. Pt (1 : N, 1: N) representa las señales de residuo cuantificadas y transformadas en un flujo de bits. Qf ( ) representa la operación cuantificación y Qi ( ) representa la operación cuantificación inversa.
Los valores de píxel predichos Pp (i,j) se determinan mediante un modo de intra-predicción realizado con los píxeles de referencia í P(ifi) : 0 < i < 2N\ o {P(Q,./): 0 < j < 2N\ . H.264/ AVC soporta predicción Intra_4x4, predicción Intra_8x8 y predicción Intra_16x16. La predicción Intra_4x4 se realiza en nueve modos de predicción, incluyendo un modo de predicción vertical, un modo de predicción horizontal, un modo de predicción DC y seis modos de predicción angular. La predicción Intra_8x8 se realiza en los nueve modos de predicción tal como se realiza en predicción Intra_4x4. La predicción Intra_16x 16 se realiza en cuatro modos de predicción, incluyendo un modo de predicción vertical, un modo de predicción horizontal, un modo de predicción DC y un modo de predicción plana. Por ejemplo, los valores de píxel predichos Pp (i.j) obtenidos en el modo de predicción DC, el modo de predicción vertical y el modo de predicción horizontal están definidos tal como sigue:
Modo de predicción DC:
2> c(*.0 ) ¿>c(0,*)
PP O', j ) = — ---------------------- , VI < i, j < N
Modo de predicción vertical:
Pp(í,j) = P c ( 0 , j ) , y i < i J < N
Modo de predicción horizontal:
Recientemente, la propuesta n.° JCT-VC A119 se presentó al Joint Collaborative Team on Video Coding (JCT-VC), la cual se incorpora en el presente documento como referencia. La propuesta n.° JCT-VC A119 propone una operación de modo plano de baja complejidad que usa una combinación de operaciones de interpolación lineal y bilineal para predecir valores de píxel que cambian gradualmente con un gradiente plano pequeño. El proceso de modo plano propuesto se muestra esquemáticamente en la figura 9. El proceso comienza con la identificación del valor Pp (N,N) del píxel de la parte inferior derecha en un bloque que va a predecirse. Entonces, se realizan interpolaciones lineales entre el valor Pp (N,N) y el valor de píxel de referencia Pc (n ,0) para obtener valores de píxel predichos Pp (N,j) de la fila inferior en el bloque. Del mismo modo, se realizan interpolaciones lineales entre el valor Pp (N,N) y el valor de píxel de referencia Pc (0,N) para obtener valores de píxel predichos Pp (i,N) de la columna más a la derecha en el bloque. Tras esto, se realizan interpolaciones bilineales de entre los valores de píxel predichos Pp (N,j) y Pp (i,N) y los valores de píxel de referencia Pc (i,0) y Pc (0,j) para obtener el resto de los valores de píxel Pp (ij) en el bloque. El proceso de modo plano propuesto puede expresarse mediante las siguientes ecuaciones:
Columna derecha:
Figure imgf000008_0001
Resto de los píxeles:
Existen dos problemas a resolver que pueden encontrarse en el proceso de modo plano propuesto en el documento JCT-VC A119. En el proceso propuesto, el valor Pp (N,N) del píxel de la parte inferior derecha está señalado en un flujo de bits al descodificador y usado para descodificar el bloque objetivo en el descodificador. En otras palabras, el descodificador necesita el valor del píxel de la parte inferior derecha para realizar la predicción en el modo plano propuesto. Además, en el proceso propuesto, el residuo no se obtiene en el modo plano y, por tanto, no se señala al descodificador. La omisión de la señalización residual puede contribuir a la reducción de datos de vídeo codificados que van a transmitirse, pero limita la aplicación del modo plano a codificación de vídeo de baja tasa de bits.
El modo plano según la presente invención está diseñado para resolver los problemas anteriormente mencionados asociados al proceso de modo plano propuesto en el documento JCT-VC A119. Según una realización de la presente invención, el valor Pp (N,N) del píxel de la parte inferior derecha se obtiene a partir de los píxeles de referencia. Por tanto, no es necesario señalar el valor de píxel Pp (N,N) del píxel de la parte inferior derecha al descodificador. En otra realización de la presente invención, el bloque de predicción formado en el modo plano se usa para obtener un residuo, que se transforma y cuantifica para señalarse al descodificador. La aplicación de transformación de coseno discreta convencional (DCT) y la cuantificación con un parámetro de cuantificación medio o grueso tiende a dar coeficientes de AC nulos y coeficientes de DC no nulos a partir de residuos obtenidos en el modo plano. Para evitar esto, una realización de la presente invención usa un núcleo de transformación secundario, en lugar del núcleo de transformación primario, para transformar un residuo obtenido en el modo plano. Además, otra realización realiza cuantificación adaptativa en el modo plano en la que el parámetro de cuantificación cambia de manera adaptativa según la actividad espacial en el bloque objetivo.
En una realización de la presente invención, el valor Pp (N,N) del píxel de la parte inferior derecha se calcula a partir de los píxeles de referencia. El valor Pp (N,N) se calcula según uno de los tres métodos siguientes:
Método 1:
Figure imgf000009_0004
en la que el operador “>>” representa una operación de desplazamiento hacia la derecha con o sin redondeo.
Método 2:
Figure imgf000009_0005
en la que wh y wv son pesos determinados, usando Pc (0,1 : N) y Pc (1 : N,0). Por ejemplo, wh y wv se calculan de la siguiente manera:
Figure imgf000009_0006
en la que el operador “var()” representa una operación para calcular una varianza.
Método 3:
Figure imgf000009_0007
en la que
Figure imgf000009_0008
y
Figure imgf000009_0009
representa una operación aritmética. En una realización
de la presente invención, la operación aritmética se define como
Figure imgf000009_0001
. En otra realización de la presente invención, la operación aritmética se define simplemente como
Figure imgf000009_0010
. Obsérvese que en la presente invención, el valor Pp (N,N) del píxel de la parte inferior
derecha no se señala al descodificador. En cambio, el descodificador calcula el valor Pp (N,N) según el método adoptado por el codificador, que puede estar predeterminado, o la identificación del cual puede señalarse al descodificador.
La figura 10 es una vista esquemática que muestra el proceso de predicción de valores de píxel realizado en el modo plano según la realización de la presente invención, en el que está implementado el método 1 anterior. El proceso comienza con calcular el valor Pp (N,N) del píxel de la parte inferior derecha en un bloque usando el método 1. Después de que se calcula el valor Pp (N,N), se realizan interpolaciones lineales entre el valor Pp (N,N) y el valor de píxel de referencia Pc (N,0) para obtener valores de píxel predichos Pp (N,j) de la fila inferior en el bloque. Del mismo modo, se realizan interpolaciones lineales entre el valor Pp (N,N) y el valor de píxel de referencia Pc (0,N) para obtener valores de píxel predichos Pp (i,N) de la columna más a la derecha en el bloque. Tras esto, se realizan interpolaciones bilineales de entre los valores de píxel predichos Pp (N,j) y Pp (i,N) y los valores de píxel de referencia Pc (i,0) y Pc (0,j) para obtener el resto de los valores de píxel Pp (i,j) en el bloque. Tal como se muestra mediante las siguientes ecuaciones y la figura 11, el método 1 puede simplificar la operación de predicción de los valores de píxel Pp (i,j) en un bloque objetivo:
Figure imgf000009_0002
en los que
Figure imgf000009_0003
y
( N - i ) x P c ( 0 , j ) i x P c (N ,0 )
W J ) = N si se necesita exactitud relativa.
Las ecuaciones anteriores requieren divisiones por el valor N para calcular los valores de píxel Pp (ij) en el bloque. Las operaciones de división pueden evitarse usando una operación aritmética entera tal como sigue:
PP ( i , j ) = ((Pp (i, j ) + P'p (J, / ) ) » (1 log, N), VI < i , j < N ,
en los que (6 J) = (N ~ j ) x^ (¿ ,0 ) j x ^ c (0 ,N) y
P'p ( i , j ) = ( N - i ) X Pc (0 , j ) IX PC(N, 0)
Si la exactitud entera es suficiente, los valores de píxel Pp (i,j) pueden expresarse mediante
Pp(iJ) = ( (PpUJ) P ; ( i J ) ) > > l ) , VI < i j < N
En \osquep£V-j) = í(N - J ) * pc(W) jxPc<P.N))» Qog2N ) y
p ; a , j ) = «AT - i) X Pc(0, j ) + i X PC(N, 0 ) ) » ( lo fe N)
El método 1 puede modificarse tal como sigue:
Figure imgf000010_0001
en el que J ./(x0,x l ,...,x2A ^representa una operación aritmética. En una realización de la presente invención, la y = t-, = — XN- \ ------ f 4- I .
operación aritmética se define como " 4 En otra realización de la presente invención, la operación aritmética se define simplemente como y = /(*<,* * ........... ) = X2N
El método 1 puede modificarse tal como sigue:
Figure imgf000010_0002
en el que y g ( i , x^,x^,--;x 1N) representa una función que puede definirse mediante una de las cuatro ecuaciones siguientes:
Ecuación 1:
Figure imgf000011_0001
Ecuación 2:
Figure imgf000011_0002
Ecuación 3:
Figure imgf000011_0003
Ecuación 4:
Figure imgf000011_0004
cuando se aplica un filtro sobre la
matriz r IAo’^ i.—^ vJ i. En una realización de la presente invención, el filtro puede ser un filtro de tres pasos
Figure imgf000011_0005
En las realizaciones anteriores, se asume que los píxeles de referencia y horizontales están todos disponibles
referencia pueden no estar disponibles si el bloque objetivo está ubicado en un límite de segmento o trama. Si los píxeles de referencia verticales i P ( í f i ) '■ 0 — l — 27V ¡ no están disponibles para la predicción, pero los píxeles de referencia horizontales {^ (0 , j ) í 0 — J — 2 A }están disponibles, la asignación ^ ( ¡ ,0 ) = PC(0,1),V1 < ; < 2N se realiza para generar los píxeles de referencia verticales para la predicción. Si los píxeles de referencia horizontales < 2JV}no están disponibles para la predicción pero los píxeles de referencia verticales : 0 £ j £ 2N} están disponibles, la asignación de ^¿ (6 ,7 ) = í¿ ( l ,0 ) ,V l < / < 2 N se realiza para generar los píxeles de referencia horizontales para la predicción. Si ni los píxeles de referencia verticales ni los píxeles de referencia horizontales están disponibles para la predicción, la asignación de í] (./,0) = Pt-(0, /) = í I - 1 A\ 1 i L v 1 s 2,-Vse realiza para generar tanto píxeles de referencia verticales como horizontales. En la ecuación, Nb representa la profundidad de bits usada para representar los valores de píxel.
En una realización de la presente invención, tal como los bloques de predicción generados en los otros modos de predicción, un bloque de predicción generado en el modo plano se usa para obtener un residuo ^ 6 : AU : ■'Oque se transforma mediante el módulo 405 de transformación y se cuantifica mediante el cuantificador 406. El residuo transformado y cuantificado ( • : A .1: V ) se señaliza en un flujo de bits al descodificador. Además, el residuo transformado y cuantificado 0 0 : A -1: N ) se transforma y se cuantifica de manera inversa mediante el módulo 410 de transformación inversa y el cuantificador 411 inverso para convertirse en un residuo comprimido 00* ■ A ,1. N ) ^ que se almacena en la memoria 403 de trama para su uso en la predicción de bloques objetivo posteriores.
El residuo transformado y cuantificado completo 0 -0 : A M: JV) puede señalarse en un flujo de bits al descodificador. De manera alternativa, solo una parte del residuo PT( i ‘ K , l : K ) pUede señalarse en un flujo de bits al descodificador. K es más pequeño que N (K < N) y se establece a un valor predeterminado, por ejemplo, 1. El valor de K puede señalarse en un flujo de bits al descodificador. Si el descodificador recibe solo una parte del residuo (1 : A , l : K) descodifica la parte del residuo y establece 0 para la parte restante del residuo. Aunque solo una parte del residuo se señaliza al descodificador, el residuo completo ^ (1: A ,1: A ) se transforma y cuantifica de manera inversa para obtener un residuo comprimido : AM : N) con e| f¡n de predecir bloques objetivo posteriores.
Además, en otra realización de la presente invención, el parámetro de cuantificación se cambia de manera adaptativa para cuantificar un residuo generado en el modo plano. El modo plano se aplica a un bloque con una imagen suavizada cuyos valores de píxel cambian gradualmente con un gradiente plano pequeño. Un residuo a partir de un bloque suavizado de este tipo tiende a cuantificarse a cero con un parámetro de cuantificación medio o grueso. Para garantizar que la cuantificación produce coeficientes no nulos, en la realización de la presente invención, el parámetro de cuantificación se conmuta a un parámetro de cuantificación más fino cuando se cuantifica un residuo generado en el modo plano. El parámetro de cuantificación (QPplano) usado para cuantificar un residuo generado en el modo plano puede definirse con un parámetro de cuantificación de base (QPbase). Qbase puede establecerse a un valor predeterminado que representa un parámetro de cuantificación más fino. Si QPbaseP no es conocido para el descodificador, puede señalarse en un flujo de bits al descodificador, o más específicamente señalarse en el encabezado de segmento o en el parámetro de imagen establecido, tal como se define en el documento H.264/AVC.
En una realización de la presente invención, QPplano se establece simplemente a QPbaseP ( QPplano = QPbaseP ). QPplano puede definirse con una suma de QPbaseP y QPn (QPplano = QPbaseP QPn), donde QPn se determina, usando una tabla de consulta que indica valores de QPn en relación con valores de N. QPplano puede definirse de manera alternativa como QPplano = QPbaseP QPdiff (N). QPdiff (N) es una función del valor N y se señaliza en un flujo de bits al descodificador, o más específicamente se señala en el encabezado de segmento o en el parámetro de imagen establecido, tal como se define en el documento H.264/AVC. El descodificador determina QPdiff (N) a partir del flujo de bits para cada uno de los valores N soportados en su esquema de códec de vídeo.
En otra realización de la presente invención, añadiendo un parámetro de cuantificación diferencial (QPdelta), QPbaseP se modifica como QPbaseP = QPbaseP QPdelta. QPdelta es un parámetro de cuantificación determinado a partir de una actividad espacial en un bloque o grupo de bloques para ajustar QPbaseP de manera adaptativa a la actividad espacial. QPdelta está señalado en un flujo de bits al descodificador. Como QPdelta se determina a partir de una actividad espacial en un bloque, puede volverse nulo dependiendo del contenido de imagen en el bloque y no afecta a QPbaseP para el modo de predicción plana.
Además, en otra realización de la presente invención, QPplano se determina con un parámetro de cuantificación normal QPnormal, que se usa para cuantificar residuos generados en modos de predicción distintos del modo plano. En una realización de este tipo, QPplano se determina según una de las siguientes cinco maneras:
1 QP plano. = QP normal
2. QPplano = QPnormal QPn, donde QPn se determina a partir de una tabla de consulta que indica valores de QPn en relación a valores de N.
3. QPplano = QPnormal QPdiff (N), donde QPdiff (N) es una función del valor N y se señaliza en un flujo de bits al descodificador.
4. QPplano = QPnormal QPdelta, donde QPdelta es un parámetro de cuantificación determinado a partir de una actividad espacial en un bloque o grupo de bloques para ajustar de manera adaptativa QPnormal y está señalado en un flujo de bits al descodificador.
5. QPPlano = QP normal QPN QP delta
En otra realización de la presente invención, el módulo 405 de transformación y el módulo 410 de transformación inversa usan un conjunto secundario de núcleos de transformación hacia delante e inversa an^ ©■ ) para |a transformación hacia delante e inversa de un residuo generado en el modo plano, en lugar de usar el conjunto primario de núcleos de transformación hacia delante e inversa (H ¡ ‘ an(l ). El conjunto primario de núcleos de transformación se usa para transformar residuos generados en modos de predicción distintos del modo plano y adecuados para bloques en los que existe energía de alta frecuencia. Por otra parte, los bloques que van a someterse al modo de predicción plano tienen actividades espaciales bajas en los mismos y necesitan núcleos de transformación adaptados para bloques con imágenes suavizadas. En esta realización, el módulo 405 de transformación y el módulo 410 de transformación inversa se conmutan entre el conjunto primario de núcleos de transformación y el conjunto secundario de núcleos de transformación, tal como se muestra en la figura 12, y usan el conjunto primario de núcleo de transformación al transformar residuos generados en modos de predicción distintos del modo plano, mientras que usan el conjunto secundario de núcleo de transformación al transformar residuos generados en el modo de predicción plana. Sin embargo, obsérvese que el conjunto secundario de núcleo de transformación no se limita a transformar residuos generados en el modo de predicción plano y puede usarse para transformar residuos generados en modos de predicción distintos del modo plano.
El conjunto secundario de núcleo de transformación hacia delante
Figure imgf000012_0001
puede ser una aproximación de punto fijo obtenida a partir de una de las siguientes opciones:
Opción 1 (tipo-7 DST):
© í 0', j ) = k, xsen(
Figure imgf000012_0002
M J
Opción 2 (tipo-4 DST):
Figure imgf000013_0001
Opción 3 (tipo-2 DCT, conocida normalmente como DCT):
Figure imgf000013_0002
los núcleos de transformación de tamaño 2Nx2N ( \ n J-f F1N ' > i están
soportados por el códec de vídeo. De lo contrario,
. Por tanto, en la opción 4, si los tamaños de transformación más pequeño y más grande soportados en un código de vídeo son 4x4 y 32x32, el conjunto secundario de núcleo de transformación para un tamaño 4x4 se obtiene a partir del conjunto primario de núcleo de transformación para un tamaño 8x8. Del mismo modo, el conjunto secundario de núcleo de transformación para un tamaño 8x8 se obtiene a partir del conjunto primario de núcleo de transformación para un tamaño 16x16, y el conjunto secundario de núcleo de transformación para un tamaño 16x 16 se obtiene a partir del conjunto primario de núcleo de transformación para un tamaño 32x32. Sin embargo, debido a la limitación de tamaño en la que el tamaño más grande soportado es 32x32, el conjunto secundario de núcleo de transformación para un tamaño 32x32 se obtiene a partir del conjunto primario de núcleo de transformación para un tamaño 32x32.
¿(Gfv(r\/))2 =l,Vl</< N
El factor de escala k¡ puede definirse para satisfacer . El factor de escala ki puede usarse para ajustar el parámetro de cuantificación tal como se usa en el documento H.264/AVC. El conjunto secundario de
núcleo de transformación inversa 1 puede obtenerse, usando el núcleo de transformación hacia delante a partir de G -¡ N *G'V = / jV donde IN representa la matriz de identificación de tamaño NxN.
Si el conjunto primario de núcleo de transformación satisface la propiedad
es preferible el conjunto secundario de núcleo de transformación definido en la opción 4. La opción 4 es ventajosa porque el conjunto secundario de núcleo de transformación no necesita almacenarse de manera independiente al conjunto primario de núcleo de transformación debido a que el conjunto secundario puede obtenerse a partir del conjunto primario. Si el conjunto primario de núcleo i V i
de transformación para un tamaño 2Nx2N v ? > es una aproximación de tipo-2 DCT, se satisface la propiedad anterior, y el conjunto secundario de núcleo de transformación para un tamaño NxN (^ v ) puede ser una aproximación de tipo-4 DST. Si el conjunto primario de núcleo de transformación no satisface la propiedad anterior, es preferible el conjunto secundario de núcleo de transformación definido en la opción 1.
El modo de predicción plano puede seleccionarse de una de dos maneras. En la primera manera, un bloque de predicción generado en el modo de predicción plano se evalúa la eficiencia de codificación, junto con los bloques de predicción generados en los otros modos de predicción. Si el bloque de predicción generado en el modo plano muestra la mejor eficiencia de codificación de entre los bloques de predicción, se selecciona el modo plano. Alternativamente, se evalúa solo la eficiencia de codificación del modo plano. El modo de predicción plano es preferible para un área en la que una imagen se suaviza y su gradiente plano es pequeño. Por consiguiente, el contenido de un bloque objetivo se analiza para ver la cantidad de energía de alta frecuencia en el bloque y de las discontinuidades de imagen a lo largo de los bordes del bloque. Si la cantidad de energía de alta frecuencia sobrepasa un umbral, y no se encuentran discontinuidades importantes a lo largo de los bordes del bloque, se selecciona el modo plano. De lo contrario, se evalúan bloques de predicción generados en los otros modos de predicción para seleccionar un modo. En ambos casos, se señala una selección del modo de predicción plano en un flujo de bits al descodificador.

Claims (5)

REIVINDICACIONES
1. Método de codificación de vídeo para predecir valores de píxel de cada píxel objetivo en un bloque objetivo en un modo plano, comprendiendo el método etapas ejecutables por ordenador ejecutadas mediante un procesador de un codificador de vídeo para implementar:
generar, cuando ni los píxeles de límite horizontal en la parte exterior superior del bloque objetivo ni los píxeles de límite vertical en la parte exterior izquierda del bloque objetivo están disponibles para la predicción, píxeles de límite generado horizontal en la parte exterior superior y píxeles de límite generado vertical en la parte exterior izquierda usando una asignación P(i, 0) = P(0, j) = (1 << (Nb-1)), (1< i, j <2N), en la que Nb representa una profundidad de bits usada para representar valores de pixel,
calcular un primer valor de predicción de cada píxel objetivo usando interpolación lineal entre valores de píxel de los píxeles de límite generado horizontal respectivos, en la misma posición horizontal que los píxeles objetivo respectivos, en la parte exterior superior del bloque objetivo y un valor de píxel del más inferior de los píxeles de límite generado vertical adyacentes al bloque objetivo en la parte exterior izquierda del bloque objetivo;
calcular un segundo valor de predicción de cada píxel objetivo usando interpolación lineal entre valores de píxel de los píxeles de límite generado vertical respectivos, en la misma posición vertical que los píxeles objetivo respectivos, y un valor de píxel del más a la derecha de los píxeles de límite generado horizontal adyacentes al bloque objetivo en la parte exterior superior del bloque objetivo; y
promediar, para cada píxel objetivo, el primer valor de predicción y el segundo valor de predicción para obtener un valor de píxel de predicción para ese píxel objetivo en un bloque de predicción.
2. Método según la reivindicación 1, que comprende además señalar un residuo entre el bloque de predicción y el bloque objetivo.
3. Método de descodificación de vídeo para predecir valores de píxel de cada píxel objetivo en un bloque objetivo en un modo plano, comprendiendo el método etapas ejecutables por ordenador ejecutadas mediante un procesador de un descodificador de vídeo para implementar:
generar, cuando ni los píxeles de límite horizontal en la parte exterior superior del bloque objetivo ni los píxeles de límite vertical en la parte exterior izquierda del bloque objetivo están disponibles para la predicción, píxeles de límite generado horizontal en la parte exterior superior y píxeles de límite generado vertical en la parte exterior izquierda usando una asignación P(i, 0) = P(0, j) = (1 << (Nb-1)), (1< i, j <2N), en la que Nb representa una profundidad de bits usada para representar valores de píxel,
calcular un primer valor de predicción de cada píxel objetivo usando interpolación lineal entre valores de píxel de los píxeles de límite generado horizontal respectivos, en la misma posición horizontal que los píxeles objetivo respectivos, en la parte exterior superior del bloque objetivo y un valor de píxel del más inferior de los píxeles de límite generado vertical adyacentes al bloque objetivo en la parte exterior izquierda del bloque objetivo;
calcular un segundo valor de predicción de cada píxel objetivo usando interpolación lineal entre valores de píxel de los píxeles de límite generado vertical respectivos, en la misma posición vertical que los píxeles objetivo respectivos, y un valor de píxel del más a la derecha de los píxeles de límite generado horizontal adyacentes al bloque objetivo en la parte exterior superior del bloque objetivo; y
promediar, para cada píxel objetivo, el primer valor de predicción y el segundo valor de predicción para obtener un valor de píxel de predicción para ese píxel objetivo en un bloque de predicción.
4. Método según la reivindicación 3, que comprende además:
descodificar un residuo señalado desde un codificador que se generó en el modo plano en un codificador; y añadir el residuo descodificado al bloque de predicción para reconstruir datos de imágenes.
5. Codificador de vídeo que predice valores de píxel de cada píxel objetivo en un bloque objetivo en un modo plano, que comprende un procesador de un sistema informático y una memoria que almacena programas ejecutables por el procesador para:
generar, cuando ni los píxeles de límite horizontal en la parte exterior superior del bloque objetivo ni los píxeles de límite vertical en la parte exterior izquierda del bloque objetivo están disponibles para la predicción, píxeles de límite generado horizontal en la parte exterior superior y píxeles de límite generado vertical en la parte exterior izquierda usando una asignación P(i, 0) = P(0, j) = (1 << (Nb-1)), (1£ i, j á2N), en la que Nb representa una profundidad de bits usada para representar valores de píxel,
calcular un primer valor de predicción de cada píxel objetivo usando interpolación lineal entre valores de píxel de los píxeles de límite generado horizontal respectivos, en la misma posición horizontal que los píxeles objetivo respectivos, en la parte exterior superior del bloque objetivo y un valor de píxel del más inferior de los píxeles de límite generado vertical adyacentes al bloque objetivo en la parte exterior izquierda del bloque objetivo;
calcular un segundo valor de predicción de cada píxel objetivo usando interpolación lineal entre valores de píxel de los píxeles de límite generado vertical respectivos, en la misma posición vertical que los píxeles objetivo respectivos, y un valor de píxel del más a la derecha de los píxeles de límite generado horizontal adyacentes al bloque objetivo en la parte exterior superior del bloque objetivo; y
promediar, para cada píxel objetivo, el primer valor de predicción y el segundo valor de predicción para obtener un valor de píxel de predicción para ese píxel objetivo en un bloque de predicción.
Codificador de vídeo según la reivindicación 5, en el que el procesador señala un residuo entre el bloque de predicción y el bloque objetivo.
Descodificador de vídeo que predice valores de píxel de cada píxel objetivo en un bloque objetivo en un modo plano, que comprende un procesador de un sistema informático y una memoria que almacena programas ejecutables por el procesador para:
generar, cuando ni los píxeles de límite horizontal en la parte exterior superior del bloque objetivo ni los píxeles de límite vertical en la parte exterior izquierda del bloque objetivo están disponibles para la predicción, píxeles de límite generado horizontal en la parte exterior superior y píxeles de límite generado vertical en la parte exterior izquierda usando una asignación P(i, 0) = P(0, j) = (1 << (Nb-1)), (1á i, j <2N), en la que Nb representa una profundidad de bits usada para representar valores de píxel,
calcular un primer valor de predicción de cada píxel objetivo usando interpolación lineal entre valores de píxel de píxeles de límite generado horizontal respectivos, en la misma posición horizontal que los píxeles objetivo respectivos, en la parte exterior superior del bloque objetivo y un valor de píxel del más inferior de los píxeles de límite generado vertical adyacentes al bloque objetivo en la parte exterior izquierda del bloque objetivo;
calcular un segundo valor de predicción de cada píxel objetivo usando interpolación lineal entre valores de píxel de los píxeles de límite generado vertical respectivos, en la misma posición vertical que los píxeles objetivo respectivos, y un valor de píxel del más a la derecha de los píxeles de límite generado horizontal adyacentes al bloque objetivo en la parte exterior superior del bloque objetivo; y
promediar, para cada píxel objetivo, el primer valor de predicción y el segundo valor de predicción para obtener un valor de píxel de predicción para ese píxel objetivo en un bloque de predicción.
Descodificador de vídeo según la reivindicación 7, en el que el procesador además:
descodifica un residuo señalado desde un codificador; y
añade el residuo descodificado al bloque de predicción.
ES18167914T 2010-12-21 2011-12-21 Codificación de intra-predicción bajo representaciones planas Active ES2767966T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201061425670P 2010-12-21 2010-12-21
US201161449528P 2011-03-04 2011-03-04

Publications (1)

Publication Number Publication Date
ES2767966T3 true ES2767966T3 (es) 2020-06-19

Family

ID=46314437

Family Applications (9)

Application Number Title Priority Date Filing Date
ES18167918T Active ES2767926T3 (es) 2010-12-21 2011-12-21 Codificación y descodificación de intra-predicción mejoradas usando representaciones planas
ES18167922T Active ES2752723T3 (es) 2010-12-21 2011-12-21 Codificación de intra-predicción mejorada usando representaciones planas
ES15187580.4T Active ES2682102T3 (es) 2010-12-21 2011-12-21 Codificación y descodificación de intra-predicción en un modo plano
ES18167935T Active ES2770312T3 (es) 2010-12-21 2011-12-21 Codificación intra-predicción mejorada usando representaciones planas
ES15190603.9T Active ES2681838T3 (es) 2010-12-21 2011-12-21 Codificación y descodificación de intra-predicción en un modo plano
ES18167909T Active ES2750325T3 (es) 2010-12-21 2011-12-21 Codificación de intra-predicción mejorada usando representaciones planas
ES11851099.9T Active ES2627907T3 (es) 2010-12-21 2011-12-21 Codificación de intra-predicción mejorada usando representaciones planas
ES18167958T Active ES2773887T3 (es) 2010-12-21 2011-12-21 Codificación de intra-predicción mejorada usando representaciones planas
ES18167914T Active ES2767966T3 (es) 2010-12-21 2011-12-21 Codificación de intra-predicción bajo representaciones planas

Family Applications Before (8)

Application Number Title Priority Date Filing Date
ES18167918T Active ES2767926T3 (es) 2010-12-21 2011-12-21 Codificación y descodificación de intra-predicción mejoradas usando representaciones planas
ES18167922T Active ES2752723T3 (es) 2010-12-21 2011-12-21 Codificación de intra-predicción mejorada usando representaciones planas
ES15187580.4T Active ES2682102T3 (es) 2010-12-21 2011-12-21 Codificación y descodificación de intra-predicción en un modo plano
ES18167935T Active ES2770312T3 (es) 2010-12-21 2011-12-21 Codificación intra-predicción mejorada usando representaciones planas
ES15190603.9T Active ES2681838T3 (es) 2010-12-21 2011-12-21 Codificación y descodificación de intra-predicción en un modo plano
ES18167909T Active ES2750325T3 (es) 2010-12-21 2011-12-21 Codificación de intra-predicción mejorada usando representaciones planas
ES11851099.9T Active ES2627907T3 (es) 2010-12-21 2011-12-21 Codificación de intra-predicción mejorada usando representaciones planas
ES18167958T Active ES2773887T3 (es) 2010-12-21 2011-12-21 Codificación de intra-predicción mejorada usando representaciones planas

Country Status (16)

Country Link
US (8) US10863195B2 (es)
EP (9) EP2996334B1 (es)
JP (9) JP5625124B2 (es)
KR (9) KR101949720B1 (es)
CN (8) CN104796714B (es)
AU (1) AU2011349244C1 (es)
BR (1) BR112013016043B1 (es)
CA (8) CA3029045C (es)
ES (9) ES2767926T3 (es)
MX (7) MX337948B (es)
PL (9) PL2996334T3 (es)
PT (9) PT2996334T (es)
RU (9) RU2600536C2 (es)
SG (1) SG191267A1 (es)
TR (2) TR201811262T4 (es)
WO (1) WO2012088211A1 (es)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101781874B1 (ko) * 2010-05-25 2017-09-26 엘지전자 주식회사 신규한 평면 예측 모드
KR20120016991A (ko) * 2010-08-17 2012-02-27 오수미 인터 프리딕션 방법
US9462272B2 (en) * 2010-12-13 2016-10-04 Electronics And Telecommunications Research Institute Intra prediction method and apparatus
WO2012081895A1 (ko) 2010-12-13 2012-06-21 한국전자통신연구원 인트라 예측 방법 및 그 장치
ES2767926T3 (es) * 2010-12-21 2020-06-19 Ntt Docomo Inc Codificación y descodificación de intra-predicción mejoradas usando representaciones planas
WO2012115420A2 (ko) * 2011-02-23 2012-08-30 엘지전자 주식회사 필터링을 이용한 화면 내 예측 방법 및 이러한 방법을 사용하는 장치
US9516349B2 (en) * 2011-07-12 2016-12-06 Futurewei Technologies, Inc. Pixel-based intra prediction for coding in HEVC
US10645398B2 (en) * 2011-10-25 2020-05-05 Texas Instruments Incorporated Sample-based angular intra-prediction in video coding
US9667965B2 (en) * 2012-06-25 2017-05-30 Industry-University Cooperation Foundation Hanyang University Video encoding and decoding method
KR101307257B1 (ko) * 2012-06-28 2013-09-12 숭실대학교산학협력단 영상의 인트라 예측 장치
US9277212B2 (en) * 2012-07-09 2016-03-01 Qualcomm Incorporated Intra mode extensions for difference domain intra prediction
WO2015056945A1 (ko) * 2013-10-14 2015-04-23 삼성전자 주식회사 깊이 인트라 부호화 방법 및 그 장치, 복호화 방법 및 그 장치
WO2015056941A1 (ko) * 2013-10-14 2015-04-23 한국전자통신연구원 다계층 기반의 영상 부호화/복호화 방법 및 장치
CN110225349B (zh) 2013-10-14 2023-06-02 韩国电子通信研究院 用于支持多层的视频编码/解码方法和计算机可读记录介质
WO2015058718A1 (en) * 2013-10-25 2015-04-30 Mediatek Inc. Method and apparatus for controlling transmission of compressed picture according to transmission synchronization events
WO2016200235A1 (ko) * 2015-06-11 2016-12-15 엘지전자(주) 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
WO2017030418A1 (ko) * 2015-08-19 2017-02-23 엘지전자(주) 다중 그래프 기반 모델에 따라 최적화된 변환을 이용하여 비디오 신호를 인코딩/ 디코딩하는 방법 및 장치
CN110199523B (zh) 2017-01-13 2023-06-13 Vid拓展公司 用于帧内平面编码的预测方法
WO2018174457A1 (ko) * 2017-03-22 2018-09-27 엘지전자(주) 영상 처리 방법 및 이를 위한 장치
EP3643067A1 (en) * 2017-07-05 2020-04-29 Huawei Technologies Co., Ltd. Apparatus and method for directional intra prediction using a fitting plane and a plurality of primary reference samples as well as a plurality of secondary reference samples
WO2019078629A1 (ko) 2017-10-18 2019-04-25 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
CN111684809B (zh) * 2017-12-15 2022-08-19 Lg电子株式会社 基于变换的图像编码方法和用于该方法的装置
CN111699383B (zh) 2018-02-06 2022-08-23 日本碍子株式会社 气体传感器
EP3759915A1 (en) 2018-03-22 2021-01-06 Huawei Technologies Co., Ltd. Apparatus and method for coding an image
KR20200047723A (ko) * 2018-05-03 2020-05-07 엘지전자 주식회사 영상 코딩 시스템에서 블록 사이즈에 따른 변환을 사용하는 영상 디코딩 방법 및 그 장치
US10687081B2 (en) 2018-06-29 2020-06-16 Tencent America LLC Method, apparatus and medium for decoding or encoding
MX2021006089A (es) 2018-11-26 2021-09-10 Huawei Tech Co Ltd Método para intrapredicción de un bloque de una imagen.
CA3121563A1 (en) 2019-06-25 2020-12-30 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Mapping method, encoder, decoder, and computer storage medium
US11485874B2 (en) 2019-06-27 2022-11-01 Prc-Desoto International, Inc. Addition polymer for electrodepositable coating compositions
US11274167B2 (en) * 2019-06-27 2022-03-15 Prc-Desoto International, Inc. Carbamate functional monomers and polymers and use thereof
US11313048B2 (en) 2019-06-27 2022-04-26 Prc-Desoto International, Inc. Addition polymer for electrodepositable coating compositions
EP4315854A1 (en) * 2021-03-31 2024-02-07 Telefonaktiebolaget LM Ericsson (publ) Smooth surface prediction
US20220345690A1 (en) * 2021-04-16 2022-10-27 Tencent America LLC Harmonized Design Among Multiple Reference Line Intra Prediction, Transform Partitioning and Transform Kernels

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5631318A (en) 1979-08-22 1981-03-30 Matsushita Electric Works Ltd Leakage breaker
JPH0595538A (ja) 1991-10-02 1993-04-16 Toshiba Corp 画像符号化装置
EP0750428B1 (en) * 1995-06-22 2004-03-31 Canon Kabushiki Kaisha Image processing apparatus and method
RU2201654C2 (ru) * 1997-12-23 2003-03-27 Томсон Лайсенсинг С.А. Способ низкошумового кодирования и декодирования
US6950469B2 (en) * 2001-09-17 2005-09-27 Nokia Corporation Method for sub-pixel value interpolation
US20050013498A1 (en) * 2003-07-18 2005-01-20 Microsoft Corporation Coding of motion vector information
US20050129130A1 (en) * 2003-12-10 2005-06-16 Microsoft Corporation Color space coding framework
US8422546B2 (en) * 2005-05-25 2013-04-16 Microsoft Corporation Adaptive video encoding using a perceptual model
RU2406254C2 (ru) * 2006-03-29 2010-12-10 Квэлкомм Инкорпорейтед Видеообработка с масштабируемостью
EP2056606A1 (en) * 2006-07-28 2009-05-06 Kabushiki Kaisha Toshiba Image encoding and decoding method and apparatus
TW200808067A (en) 2006-07-31 2008-02-01 Univ Nat Cheng Kung Prediction module
CA2664668C (en) * 2006-10-10 2014-04-01 Nippon Telegraph And Telephone Corporation Intra prediction encoding control method and apparatus, program therefor, and storage medium which stores the program
FR2908007A1 (fr) 2006-10-31 2008-05-02 Thomson Licensing Sas Procede de codage d'une sequence d'images
EP2099210B1 (en) * 2006-11-24 2015-10-21 NEC Corporation Coding and decoding device, coding and decoding method and program
EP2136564A1 (en) * 2007-01-09 2009-12-23 Kabushiki Kaisha Toshiba Image encoding and decoding method and device
RU2496252C2 (ru) * 2007-06-29 2013-10-20 Шарп Кабусики Кайся Устройство кодирования изображения, способ кодирования изображения, устройство декодирования изображения, способ декодирования изображения, программа и запоминающий носитель
KR101517768B1 (ko) * 2008-07-02 2015-05-06 삼성전자주식회사 영상의 부호화 방법 및 장치, 그 복호화 방법 및 장치
JP5187062B2 (ja) * 2008-08-15 2013-04-24 富士通株式会社 動画像符号化装置および動画像符号化方法
EP2173101A3 (en) * 2008-10-06 2010-08-18 LG Electronics Inc. A method and an apparatus for decoding a video signal
KR101647376B1 (ko) * 2009-03-30 2016-08-10 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
WO2010131903A2 (en) * 2009-05-12 2010-11-18 Lg Electronics Inc. Method and apparatus for processing a video signal
US8995776B2 (en) 2010-06-17 2015-03-31 Sharp Kabushiki Kaisha Image filter device, decoding apparatus, encoding apparatus, and data structure
KR101530284B1 (ko) 2010-07-16 2015-06-19 삼성전자주식회사 영상의 인트라 예측 부호화, 복호화 방법 및 장치
ES2767926T3 (es) * 2010-12-21 2020-06-19 Ntt Docomo Inc Codificación y descodificación de intra-predicción mejoradas usando representaciones planas

Also Published As

Publication number Publication date
KR20190033654A (ko) 2019-03-29
KR101962284B1 (ko) 2019-03-26
US20190052902A1 (en) 2019-02-14
AU2011349244C1 (en) 2016-02-18
ES2773887T3 (es) 2020-07-15
CA2900863A1 (en) 2012-06-28
PT3370420T (pt) 2019-10-31
KR20160086974A (ko) 2016-07-20
CN104796714A (zh) 2015-07-22
BR112013016043B1 (pt) 2019-10-08
CN104796715A (zh) 2015-07-22
RU2713610C1 (ru) 2020-02-05
KR20130128441A (ko) 2013-11-26
JP2014241643A (ja) 2014-12-25
US20190052901A1 (en) 2019-02-14
KR101839466B1 (ko) 2018-03-16
US20190052899A1 (en) 2019-02-14
KR101640873B1 (ko) 2016-07-19
EP3373582B1 (en) 2020-01-22
EP2656507B1 (en) 2017-05-24
MX2013007169A (es) 2013-08-01
JP6953497B2 (ja) 2021-10-27
PL2993903T3 (pl) 2018-09-28
CN104811714A (zh) 2015-07-29
JP2020018023A (ja) 2020-01-30
PL3373582T3 (pl) 2020-07-13
KR20160086972A (ko) 2016-07-20
ES2752723T3 (es) 2020-04-06
KR20180029108A (ko) 2018-03-19
US10841611B2 (en) 2020-11-17
KR20160085922A (ko) 2016-07-18
PL3370421T3 (pl) 2020-06-01
US10863195B2 (en) 2020-12-08
AU2011349244A1 (en) 2013-06-20
PT2656507T (pt) 2017-06-15
EP3373579B1 (en) 2019-09-11
CN103270700B (zh) 2015-05-06
WO2012088211A1 (en) 2012-06-28
EP3373581B1 (en) 2019-12-18
KR101838122B1 (ko) 2018-03-13
PT2993903T (pt) 2018-07-25
US10771812B2 (en) 2020-09-08
KR20160085376A (ko) 2016-07-15
MX2019003465A (es) 2022-06-22
JP2016184970A (ja) 2016-10-20
US10834423B2 (en) 2020-11-10
JP6242438B2 (ja) 2017-12-06
PL2996334T3 (pl) 2018-11-30
CN104796716B (zh) 2017-12-29
KR101838123B1 (ko) 2018-03-13
ES2767926T3 (es) 2020-06-19
US10805632B2 (en) 2020-10-13
EP3370421A1 (en) 2018-09-05
JP2018019445A (ja) 2018-02-01
CA3029042A1 (en) 2012-06-28
PL2656507T3 (pl) 2017-08-31
JP2020018024A (ja) 2020-01-30
PT3370421T (pt) 2020-02-28
PL3370420T3 (pl) 2020-03-31
RU2600536C2 (ru) 2016-10-20
PT3373579T (pt) 2019-10-25
ES2627907T3 (es) 2017-08-01
ES2770312T3 (es) 2020-07-01
EP3373582A1 (en) 2018-09-12
PT2996334T (pt) 2018-09-28
PT3373581T (pt) 2020-01-27
MX2019003463A (es) 2022-06-22
CN104796714B (zh) 2018-03-27
CA3029043A1 (en) 2012-06-28
KR20180030244A (ko) 2018-03-21
KR101949720B1 (ko) 2019-02-19
CA3029038A1 (en) 2012-06-28
CA3029038C (en) 2020-07-07
RU2673011C1 (ru) 2018-11-21
EP3373580A1 (en) 2018-09-12
EP3370420A1 (en) 2018-09-05
PL3373580T3 (pl) 2020-05-18
TR201809780T4 (tr) 2018-07-23
MX363570B (es) 2019-03-27
EP3373579A1 (en) 2018-09-12
KR101961783B1 (ko) 2019-03-25
CA3029047C (en) 2020-07-21
RU2562762C2 (ru) 2015-09-10
CN104811715B (zh) 2018-02-23
CN104811713A (zh) 2015-07-29
MX2019003464A (es) 2022-06-22
JP6615290B2 (ja) 2019-12-04
US20170026661A1 (en) 2017-01-26
CA3029046A1 (en) 2012-06-28
ES2682102T3 (es) 2018-09-18
JP2014504107A (ja) 2014-02-13
RU2694144C1 (ru) 2019-07-09
MX351231B (es) 2017-10-06
CN103270700A (zh) 2013-08-28
RU2013133861A (ru) 2015-01-27
EP2656507A1 (en) 2013-10-30
CA3029047A1 (en) 2012-06-28
EP2993903B1 (en) 2018-06-20
US20190052898A1 (en) 2019-02-14
PT3373580T (pt) 2020-01-21
KR101838124B1 (ko) 2018-03-13
CA3029045C (en) 2021-06-15
US20190075318A1 (en) 2019-03-07
CA2822391C (en) 2016-08-02
JP6851450B2 (ja) 2021-03-31
RU2015129679A (ru) 2015-11-27
US20190052900A1 (en) 2019-02-14
CN104811714B (zh) 2018-06-29
JP6397555B2 (ja) 2018-09-26
KR102062568B1 (ko) 2020-01-06
JP2015149763A (ja) 2015-08-20
CN104811715A (zh) 2015-07-29
BR112013016043A2 (pt) 2018-11-06
JP2020018022A (ja) 2020-01-30
US20140341281A1 (en) 2014-11-20
MX337948B (es) 2016-03-29
EP2996334B1 (en) 2018-07-11
US10897630B2 (en) 2021-01-19
CA3029043C (en) 2020-06-30
PT3373582T (pt) 2020-02-14
JP5625124B2 (ja) 2014-11-12
EP3370420B1 (en) 2019-10-02
CN104796716A (zh) 2015-07-22
PL3373579T3 (pl) 2019-12-31
CN104811702B (zh) 2018-04-20
US10856008B2 (en) 2020-12-01
ES2681838T3 (es) 2018-09-17
EP3370421B1 (en) 2020-01-22
EP2656507A4 (en) 2015-07-08
PL3373581T3 (pl) 2020-05-18
AU2011349244B2 (en) 2015-05-07
CA2900863C (en) 2019-02-26
RU2694012C1 (ru) 2019-07-08
AU2011349244A8 (en) 2013-07-04
CN104811702A (zh) 2015-07-29
CA3029046C (en) 2020-07-14
JP5732582B2 (ja) 2015-06-10
JP2018186581A (ja) 2018-11-22
EP3373580B1 (en) 2019-12-11
CA3029045A1 (en) 2012-06-28
KR20180028564A (ko) 2018-03-16
RU2643504C1 (ru) 2018-02-01
ES2750325T3 (es) 2020-03-25
CA3029042C (en) 2021-06-15
US10205963B2 (en) 2019-02-12
EP3373581A1 (en) 2018-09-12
JP5960316B2 (ja) 2016-08-02
EP2996334A1 (en) 2016-03-16
CA2822391A1 (en) 2012-06-28
EP2993903A1 (en) 2016-03-09
CN104811713B (zh) 2018-01-02
RU2694013C1 (ru) 2019-07-08
SG191267A1 (en) 2013-07-31
CN104796715B (zh) 2018-03-27
RU2696318C1 (ru) 2019-08-01
TR201811262T4 (tr) 2018-08-27

Similar Documents

Publication Publication Date Title
ES2767966T3 (es) Codificación de intra-predicción bajo representaciones planas
JP2022078048A (ja) 画像復号方法及び画像符号化方法
US20150010079A1 (en) Apparatus and method for encoding/decoding images for intra-prediction
AU2019210554B2 (en) Enhanced intra-prediction coding using planar representations
AU2015203228B2 (en) Enhanced intra-prediction coding using planar representations