ES3014418T3 - Video encoding/decoding method and apparatus for performing pdpc and method for transmitting bitstream - Google Patents
Video encoding/decoding method and apparatus for performing pdpc and method for transmitting bitstream Download PDFInfo
- Publication number
- ES3014418T3 ES3014418T3 ES20908208T ES20908208T ES3014418T3 ES 3014418 T3 ES3014418 T3 ES 3014418T3 ES 20908208 T ES20908208 T ES 20908208T ES 20908208 T ES20908208 T ES 20908208T ES 3014418 T3 ES3014418 T3 ES 3014418T3
- Authority
- ES
- Spain
- Prior art keywords
- current block
- prediction
- block
- pdpc
- intra
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/11—Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/184—Methods 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 bits, e.g. of the compressed video stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/186—Methods 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 colour or a chrominance component
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Se proporciona un método y un aparato de codificación/decodificación de vídeo para realizar PDPC, así como un método para transmitir un flujo de bits. Un método de decodificación de vídeo, realizado por un aparato de decodificación de vídeo según la presente divulgación, puede comprender los siguientes pasos: generar un bloque de predicción mediante la intrapredicción de un bloque actual; determinar si se aplica PDPC al bloque de predicción; y, con base en esta determinación, generar un bloque de predicción final del bloque actual mediante la aplicación de PDPC al bloque de predicción. El paso para determinar si se aplica PDPC al bloque de predicción puede incluir: determinar si el tamaño del bloque actual cumple una condición predeterminada; determinar si se aplica PDPC al bloque de predicción en función de si el tamaño del bloque actual cumple la condición predeterminada; y, si el tamaño del bloque actual no cumple la condición predeterminada, omitir la determinación de un componente de color del bloque actual y determinar que no se aplica PDPC al bloque de predicción. (Traducción automática con Google Translate, sin valor legal)
Description
DESCRIPCIÓN
Método y aparato de codificación/decodificación de vídeo para realizar PDPC, y método para transmitir flujo de bitsCampo técnico
La presente invención se refiere a un método y un aparato de codificación/decodificación de imagen y, más particularmente, a un método y un aparato de codificación/decodificación de imagen para realizar predicción intra dependiente de la posición (PDPC), y a un método para transmitir un flujo de bits generado por el método/aparato de codificación de imagen de la presente invención.
Antecedentes de la técnica
Recientemente, la demanda de imágenes de alta resolución y alta calidad, como imágenes de alta definición (HD) e imágenes de ultraalta definición (UHD), está aumentando en diversos campos. A medida que se mejoran la resolución y la calidad de los datos de imagen, la cantidad de información o bits transmitidos aumenta relativamente en comparación con los datos de imagen existentes. Un aumento en la cantidad de información o bits transmitidos provoca un aumento en el coste de transmisión y el coste de almacenamiento.
Por consiguiente, existe la necesidad de una tecnología de compresión de imágenes de alta eficiencia para transmitir, almacenar y reproducir eficazmente información en imágenes de alta resolución y alta calidad. La bibliografía no de patentes de LI (LGE) LET AL: "Non-CE3: block size restriction on PDPC",125. REUNIÓN MPEG; 20190114 - 20190118; MARRAKECH; (GRUPO DE EXPERTOS EN IMÁGENES EN MOVIMIENTO O ISO/IEC JTC1/SC29/WG11), n.2 m46425 15 de enero de 2019 (15/01/2019), XP030215104, recuperado de internet: URL: http://phenix.int-evry.fr/mpeg/doc_end_user/ documents/125_Marrakech/wg11/m46425-JVET-M0814-v5-JVET-M0814-v5.zip JVET-M0814-v5.docx, da a conocer una restricción de tamaño de bloque para aplicar PDPC como filtro posterior.
La bibliografía no de patentes de DE-LUXAN-HERNANDEZ (FRAUNHOFER) S ET AL: "Non-CE3: Proposed ISP cleanup",15. REUNIÓN JVET; 20190703 - 20190712; GOTEMBURGO; (EQUIPO CONJUNTO DE EXPLORACIÓN DE VIDEO DE ISO/IEC JTC1/SC29/WG11 Y ITU-T SG.16), n.2 JVET-O0502; m48627 5 de julio de 2019 (05/07/2019), XP030219748, recuperado de internet:URL:http://phenix.intevry.fr/jvet/doc_end_user/documents/15_Gothenburg/wg11/JVET-00502-v3.zipJVET-00502/JVET-O0502-v3.docx, da a conocer la aplicación de PDPC en subparticiones que tienen una anchura y una altura de al menos 4 muestras.
Presentación
Problema técnico
Un objetivo de la presente invención es dar a conocer un método y un aparato de codificación/decodificación de imagen con eficiencia de codificación/decodificación mejorada.
Otro objetivo de la presente invención es dar a conocer un método y un aparato de codificación/decodificación de imagen capaces de mejorar la eficiencia de codificación/decodificación haciendo que los requisitos de la aplicación de PDPC de un bloque de crominancia y un bloque de luminancia sean los mismos.
Otro objetivo de la presente invención es dar a conocer un método para transmitir un flujo de bits generado por un método o un aparato de codificación de imagen de acuerdo con la presente invención.
Otro objetivo de la presente invención es dar a conocer un medio de grabación que almacena un flujo de bits generado por un método o un aparato de codificación de imagen de acuerdo con la presente invención.
Otro objetivo de la presente invención es dar a conocer un medio de grabación que almacena un flujo de bits recibido, decodificado y utilizado para reconstruir una imagen mediante un aparato de decodificación de imagen de acuerdo con la presente invención.
Los problemas técnicos resueltos por la presente invención no se limitan a los problemas técnicos anteriores, y otros problemas técnicos que no se describen en este documento resultarán evidentes para los expertos en la materia a partir de la siguiente descripción.
Solución técnica
Un método de decodificación de imagen realizado por un aparato de decodificación de imagen según un aspecto de la presente invención puede comprender generar un bloque de predicción realizando predicción intra sobre un bloque actual, determinar si se aplica una combinación de predicción intra dependiente de la posición (PDPC) al bloque de predicción y generar un bloque de predicción final del bloque actual, aplicando PDPC al bloque de predicción en función de la determinación. La determinación de si se aplica PDPC al bloque de predicción puede comprender determinar si un tamaño del bloque actual satisface una condición predeterminada. En función de que el tamaño del bloque actual satisface la condición predeterminada, se puede determinar aplicar PDPC al bloque de predicción. En función de que el tamaño del bloque actual no satisface la condición predeterminada, se puede omitir una determinación de un componente de color del bloque actual y se puede determinar no aplicar PDPC al bloque de predicción.
En el método de decodificación de imagen según la presente invención, la condición predeterminada es que el tamaño del bloque actual puede ser mayor o igual a un umbral predeterminado.
En el método de decodificación de imagen según la presente invención, basándose en que una anchura del bloque actual es mayor o igual que el umbral predeterminado y una altura del bloque actual es mayor o igual que el umbral predeterminado, se puede satisfacer la condición predeterminada.
En el método de decodificación de imagen según la presente invención, el umbral predeterminado puede ser 4. En el método de decodificación de imagen según la presente invención, la determinación de si aplicar PDPC al bloque de predicción puede comprender además una determinación de una línea de muestra de referencia utilizada para la predicción intra del bloque actual.
En el método de decodificación de imagen según la presente invención, sobre la base de que la línea de muestra de referencia es una línea de muestra de referencia predeterminada, se puede determinar aplicar PDPC al bloque de predicción y, sobre la base de que la línea de muestra de referencia no es la línea de muestra de referencia predeterminada, se puede omitir la determinación del componente de color del bloque actual y se puede determinar no aplicar PDPC al bloque de predicción.
En el método de decodificación de imagen según la presente invención, la línea de muestra de referencia predeterminada puede ser una primera línea de muestra de referencia adyacente al bloque actual.
En el método de decodificación de imagen según la presente invención, la determinación de si PDPC se aplica al bloque de predicción puede comprender además una determinación de si la modulación de código de pulso de diferencia de bloque (BDPCM) se aplica al bloque actual y una determinación del modo de predicción intra del bloque actual.
El método de decodificación de imagen según otro aspecto de la presente invención puede comprender una memoria y al menos un procesador. El al menos un procesador puede generar un bloque de predicción realizando predicción intra sobre un bloque actual, determinar si se aplica una combinación de predicción intra dependiente de la posición (PDPC) al bloque de predicción y generar un bloque de predicción final del bloque actual, aplicando PDPC al bloque de predicción en función de la determinación. La determinación de si se aplica PDPC al bloque de predicción puede comprender determinar si un tamaño del bloque actual satisface una condición predeterminada. En función de que el tamaño del bloque actual satisface la condición predeterminada, se puede determinar aplicar PDPC al bloque de predicción. En función de que el tamaño del bloque actual no satisface la condición predeterminada, se puede omitir una determinación de un componente de color del bloque actual y se puede determinar no aplicar PDPC al bloque de predicción.
Un método de codificación de imagen realizado por un aparato de codificación de imagen según otro aspecto de la presente invención puede comprender generar un bloque de predicción realizando predicción intra sobre un bloque actual, determinar si se aplica una combinación de predicción intra dependiente de la posición (PDPC) al bloque de predicción y generar un bloque de predicción final del bloque actual, aplicando PDPC al bloque de predicción en función de la determinación. La determinación de si se aplica PDPC al bloque de predicción puede comprender determinar si un tamaño del bloque actual satisface una condición predeterminada. En función de que el tamaño del bloque actual satisface la condición predeterminada, se puede determinar aplicar PDPC al bloque de predicción. En función de que el tamaño del bloque actual no satisface la condición predeterminada, se puede omitir una determinación de un componente de color del bloque actual y se puede determinar no aplicar PDPC al bloque de predicción.
En el método de codificación de imagen según la presente invención, la condición predeterminada es que el tamaño del bloque actual puede ser mayor o igual a un umbral predeterminado.
En el método de codificación de imagen según la presente invención, basándose en que una anchura del bloque actual es mayor o igual al umbral predeterminado y una altura del bloque actual es mayor o igual al umbral predeterminado, se puede satisfacer la condición predeterminada.
En el método de codificación de imagen según la presente invención, el umbral predeterminado puede ser 4.
En el método de codificación de imagen según la presente invención, la determinación de si aplicar PDPC al bloque de predicción puede comprender además una determinación de una línea de muestra de referencia utilizada para la predicción intra del bloque actual.
En el método de codificación de imagen según la presente invención, sobre la base de que la línea de muestra de referencia es una línea de muestra de referencia predeterminada, se puede determinar aplicar PDPC al bloque de predicción y, sobre la base de que la línea de muestra de referencia no es la línea de muestra de referencia predeterminada, se puede omitir la determinación del componente de color del bloque actual y se puede determinar no aplicar PDPC al bloque de predicción.
En el método de codificación de imagen según la presente invención, la línea de muestra de referencia predeterminada puede ser una primera línea de muestra de referencia adyacente al bloque actual.
En el método de codificación de imagen según la presente invención, la determinación de si se aplica PDPC al bloque de predicción puede comprender además una determinación de si se aplica modulación de código de pulso de diferencia de bloque (BDPCM) al bloque actual y una determinación del modo de predicción intra del bloque actual.
Además, un método de transmisión según otro aspecto de la presente invención puede transmitir un flujo de bits generado por un aparato o método de codificación de imagen de la presente invención.
Además, un medio de grabación legible por ordenador según otro aspecto de la presente invención puede almacenar el flujo de bits generado por el aparato de codificación de imagen o el método de codificación de imagen de la presente invención.
Las características brevemente resumidas anteriormente con respecto a la presente invención son meramente aspectos ejemplares de la descripción detallada a continuación de la presente invención.
Resultados ventajosos
De acuerdo con la presente invención, es posible dar a conocer un método y un aparato de codificación/decodificación de imagen con eficiencia de codificación/decodificación mejorada.
Además, de acuerdo con la presente invención, es posible dar a conocer un método y un aparato de codificación/decodificación de imagen capaces de mejorar la eficiencia de codificación/decodificación simplificando una determinación de si aplicar PDPC utilizando una condición de aplicación de PDPC unificada, para un componente de luminancia y un componente de crominancia en codificación/decodificación de predicción intra. Además, de acuerdo con la presente invención, es posible dar a conocer un método para transmitir un flujo de bits generado por un método o un aparato de codificación de imagen de acuerdo con la presente invención.
Además, de acuerdo con la presente invención, es posible dar a conocer un medio de grabación que almacena un flujo de bits generado por un método o un aparato de codificación de imagen de acuerdo con la presente invención. Además, de acuerdo con la presente invención, es posible dar a conocer un medio de grabación que almacena un flujo de bits recibido, decodificado y utilizado para reconstruir una imagen mediante un aparato de decodificación de imagen de acuerdo con la presente invención.
Los expertos en la materia apreciarán que los resultados que se pueden conseguir por medio de la presente invención no se limitan a lo que se ha descrito particularmente anteriormente, y otras ventajas de la presente invención se entenderán más claramente a partir de la descripción detallada.
Descripción de los dibujos
La FIG. 1 es una vista que muestra esquemáticamente un sistema de codificación de vídeo según la presente invención.
La FIG. 2 es una vista que muestra esquemáticamente un aparato de codificación de imagen, al que es aplicable una realización de la presente invención.
La FIG. 3 es una vista que muestra esquemáticamente un aparato de decodificación de imagen, al que es aplicable una realización de la presente invención.
La FIG. 4 es una vista que muestra una estructura de partición de una imagen según una realización.
La FIG. 5 es una vista que muestra una realización de un tipo de partición de un bloque de acuerdo con una estructura de árbol multitipo.
La FIG. 6 es una vista que muestra un mecanismo de señalización de información de división de bloques en un árbol cuaternario con una estructura de árbol multitipo anidada de acuerdo con la presente invención.
La FIG. 7 es una vista que muestra una realización en la que una CTU se divide en múltiples CU.
La FIG. 8 es una vista que ilustra un método de codificación de vídeo/imagen basado en predicción intra.
La FIG. 9 es una vista que ilustra una unidad de predicción intra en un aparato de codificación.
La FIG. 10 es una vista que ilustra un método de decodificación de vídeo/imagen basado en predicción intra.
La FIG. 11 es una vista que ilustra una unidad de predicción intra en un aparato de decodificación.
La FIG. 12 es una vista que ilustra un modo de predicción intra direccional entre modos de predicción intra.
Las FIGS. 13A a 13D son vistas que ilustran muestras de referencia definidas en PDPC.
La FIG. 14 es una vista que ilustra una línea de muestra de referencia disponible en un método MRL.
La FIG. 15 es una vista que ilustra una estructura de sintaxis de una unidad de codificación para señalizar el índice de línea de referencia múltiple.
La FIG. 16 es una vista que ilustra condiciones de aplicación de PDPC según una realización de la presente invención.
La FIG. 17 es una vista que ilustra condiciones de aplicaciones de PDPC según otra realización de la presente invención.
La FIG. 18 es una vista que ilustra condiciones de aplicación de PDPC según otra realización de la presente invención.
La FIG. 19 es una vista que ilustra un método para generar un bloque de predicción según otra realización de la presente invención.
La FIG. 20 es una vista que muestra un sistema de transmisión en continuo de contenido, al que es aplicable una realización de la presente invención.
Modo de realización de la invención
A continuación se describirán en detalle las realizaciones de la presente invención haciendo referencia a los dibujos adjuntos para que los expertos en la materia puedan implementarlas fácilmente. Sin embargo, la presente invención puede implementarse en diversas formas diferentes y no se limita a las realizaciones descritas en el presente documento.
Al describir la presente invención, si se determina que la descripción detallada de una función o construcción conocida relacionada hace que el alcance de la presente invención sea innecesariamente ambiguo, se omitirá la descripción detallada de la misma. En los dibujos, se omiten las partes no relacionadas con la descripción de la presente invención y se unen números de referencia similares a partes similares.
En la presente invención, cuando un componente está "conectado", "acoplado" o "vinculado" a otro componente, esto puede incluir no solo una relación de conexión directa sino también una relación de conexión indirecta en la que está presente un componente intermedio. Además, cuando un componente "incluye" o "tiene" otros componentes, esto significa que otros componentes pueden también estar incluidos, y no que se excluyan otros componentes, a menos que se indique lo contrario.
En la presente invención, los términos primero, segundo, etc. pueden utilizarse únicamente con el fin de distinguir un componente de otros componentes, y no limitan el orden o la importancia de los componentes a menos que se indique lo contrario. En consecuencia, dentro del alcance de la presente invención, un primer componente en una realización puede denominarse segundo componente en otra realización, y de manera similar, un segundo componente en una realización puede denominarse primer componente en otra realización.
En la presente invención, los componentes que se distinguen entre sí tienen por objeto describir claramente cada característica, y no significan que los componentes sean necesariamente independientes. Es decir, una pluralidad de componentes pueden estar integrados e implementados en una unidad de hardware o software, o un componente puede estar distribuido e implementado en una pluralidad de unidades de hardware o software.
En la presente invención, los componentes descritos en diversas realizaciones no se refieren necesariamente a componentes esenciales, y algunos componentes pueden ser componentes opcionales.
La presente invención se refiere a la codificación y decodificación de una imagen, y los términos utilizados en la presente invención pueden tener un significado general comúnmente utilizado en el campo técnico, al que pertenece la presente invención, salvo que se redefinan en la presente invención.
En la presente invención, un "cuadro" se refiere generalmente a una unidad que representa una imagen en un período de tiempo específico, y un segmento/tesela es una unidad de codificación que constituye una parte de un cuadro, y un cuadro puede estar compuesto de uno o más segmentos/teselas. Además, un segmento/tesela puede incluir una o más unidades de árbol de codificación (CTU).
Un "píxel" o un "peí" pueden significar la unidad más pequeña que constituye un cuadro (o imagen). Además, "muestra" puede usarse como término correspondiente a un píxel. Una muestra puede representar generalmente un píxel o un valor de píxel, y puede representar solo un valor de píxel/píxel de un componente de luminancia o solo un valor de píxel/píxel de un componente de crominancia.
En la presente invención, una "unidad" puede representar una unidad básica de procesamiento de imágenes. La unidad puede incluir al menos una región específica del cuadro e información relacionada con la región. La unidad puede usarse indistintamente con términos como "matriz de muestras", "bloque" o "área" en algunos casos. En un caso general, un bloque MxN puede incluir muestras (o matrices de muestras) o un conjunto (o matriz) de coeficientes de transformada de M columnas y N filas.
En la presente invención, "bloque actual" puede significar uno de los siguientes: "bloque de codificación actual", "unidad de codificación actual", "bloque objetivo de codificación", "bloque objetivo de decodificación" o "bloque objetivo de procesamiento". Cuando se realiza una predicción, "bloque actual" puede significar "bloque de predicción actual" o "bloque objetivo de predicción". Cuando se realiza una transformada (transformada inversa)/cuantificación (descuantificación), "bloque actual" puede significar "bloque de transformada actual" o "bloque objetivo de transformada". Cuando se realiza un filtrado, "bloque actual" puede significar "bloque objetivo de filtrado".
Además, en la presente invención, un "bloque actual" puede significar "un bloque de luminancia de un bloque actual" a menos que se indique explícitamente como un bloque de crominancia. El "bloque de crominancia del bloque actual" puede expresarse mediante la inclusión de una descripción explícita de un bloque de crominancia, como "bloque de crominancia" o "bloque de crominancia actual".
En la presente invención, debe interpretarse que el término "/" y "," indica "y/o". Por ejemplo, la expresión "A/B" y "A, B" pueden significar "A y/o B". Además, "A/B/C" y "A/B/C" pueden significar "al menos uno de A, B y/o C".
En la presente invención, debe interpretarse que el término "o" indica "y/o". Por ejemplo, la expresión "A o B" puede comprender 1) solo "A", 2) solo "B" y/o 3) tanto "A como B". En otras palabras, en la presente invención, debe interpretarse que el término "o" indica "adicionalmente o alternativamente".
Descripción general del sistema de codificación de vídeo
La FIG. 1 es una vista que muestra un sistema de codificación de vídeo según la presente invención.
El sistema de codificación de vídeo según una realización puede incluir un dispositivo de codificación 10 y un dispositivo de decodificación 20. El dispositivo de codificación 10 puede entregar información o datos de vídeo y/o imagen codificados al dispositivo de decodificación 20 en forma de archivo o de transmisión en continuo a través de un medio de almacenamiento digital o red.
El dispositivo fuente 10 según una realización puede incluir un generador de fuente de vídeo 11, una unidad de codificación 12 y un transmisor 13. El dispositivo de decodificación 20 según una realización puede incluir un receptor 21, una unidad de decodificación 22 y un motor de representación 23. La unidad de codificación 12 puede denominarse dispositivo de codificación de vídeo/imagen, y la unidad de decodificación 22 puede denominarse dispositivo de decodificación de vídeo/imagen. El transmisor 13 puede estar incluido en la unidad de codificación 12. El receptor 21 puede estar incluido en la unidad de decodificación 22. El motor de representación 23 puede incluir una pantalla y la pantalla puede configurarse como un dispositivo independiente o un componente externo.
El generador de fuente de vídeo 11 puede adquirir un vídeo/imagen mediante un proceso de captura, síntesis o generación del vídeo/imagen. El generador de fuente de vídeo 11 puede incluir un dispositivo de captura de vídeo/imagen y/o un dispositivo de generación de vídeo/imagen. El dispositivo de captura de vídeo/imagen puede incluir, por ejemplo, una o más cámaras, archivos de vídeo/imagen que incluyen vídeo/imagen capturados previamente y similares. El dispositivo de generación de vídeo/imagen puede incluir, por ejemplo, ordenadores, tabletas y teléfonos inteligentes, y puede generar (electrónicamente) vídeo/imagen. Por ejemplo, un vídeo/imagen virtual puede generarse mediante un ordenador o similar. En este caso, el proceso de captura de vídeo/imagen puede sustituirse por un proceso de generación de datos relacionados.
La unidad de codificación 12 puede codificar un vídeo/imagen de entrada. La unidad de codificación 12 puede realizar una serie de procedimientos, como predicción, transformada y cuantificación, para lograr una mayor eficiencia de compresión y codificación. La unidad de codificación 12 puede generar datos codificados (información de vídeo/imagen codificada) en forma de un flujo de bits.
El transmisor 13 puede transmitir la salida de información o datos de vídeo/imagen codificados en forma de un flujo de bits al receptor 21 del dispositivo de decodificación 20 a través de un medio de almacenamiento digital o una red en forma de un archivo o de transmisión en continuo. El medio de almacenamiento digital puede incluir varios medios de almacenamiento tales como USB, SD, CD, DVD, Blu-ray, HDD, SSD y similares. El transmisor 13 puede incluir un elemento para generar un archivo multimedia a través de un formato de archivo predeterminado y puede incluir un elemento para la transmisión a través de una red de difusión/comunicación. El receptor 21 puede extraer/recibir el flujo de bits del medio de almacenamiento o red y transmitir el flujo de bits a la unidad de decodificación 22.
La unidad de decodificación 22 puede decodificar el vídeo/imagen realizando una serie de procedimientos tales como descuantificación, transformada inversa y predicción, correspondientes a la operación de la unidad de codificación 12.
El motor de representación 23 puede representar el vídeo/imagen decodificados. El vídeo/imagen representados pueden visualizarse por medio de la pantalla.
Descripción general del aparato de codificación de imagen
La FIG. 2 es una vista que muestra esquemáticamente un aparato de codificación de imagen, al que es aplicable una realización de la presente invención.
Como se muestra en la FIG. 2, el dispositivo de codificación de imagen 100 puede incluir un divisor de imágenes 110, un sustractor 115, un transformador 120, un cuantificador 130, un descuantificador 140, un transformador inverso 150, un sumador 155, un filtro 160, una memoria 170, una unidad de predicción inter 180, una unidad de predicción intra 185 y un codificador entrópico 190. La unidad de predicción inter 180 y la unidad de predicción intra 185 pueden denominarse colectivamente "unidad de predicción". El transformador 120, el cuantificador 130, el descuantificador 140 y el transformador inverso 150 pueden incluirse en un procesador residual. El procesador residual puede incluir además el sustractor 115.
En algunas realizaciones, todos o al menos algunos de la pluralidad de componentes que configuran el dispositivo de codificación de imagen 100 pueden configurarse mediante un componente de hardware (por ejemplo, un codificador o un procesador). Además, la memoria 170 puede incluir una memoria intermedia de cuadros decodificados (DPB) y puede estar configurada por un medio de almacenamiento digital.
El divisor de imágenes 110 puede dividir una imagen de entrada (o un cuadro o un fotograma) introducida en el dispositivo de codificación de imagen 100 en una o más unidades de procesamiento. Por ejemplo, la unidad de procesamiento puede denominarse unidad de codificación (CU). La unidad de codificación puede adquirirse dividiendo recursivamente una unidad de árbol de codificación (CTU) o una unidad de codificación más grande (LCU) según una estructura de árbol cuaternario, árbol binario, árbol ternario (QTBT/TT). Por ejemplo, una unidad de codificación puede dividirse en una pluralidad de unidades de codificación de mayor profundidad según una estructura de árbol cuaternario, una estructura de árbol binario y/o una estructura ternaria. Para dividir la unidad de codificación, se puede aplicar primero una estructura de árbol cuaternario y después la estructura de árbol binario y/o la estructura ternaria. El procedimiento de codificación según la presente invención puede realizarse basándose en la unidad de codificación final que ya no está dividida. La unidad de codificación más grande puede utilizarse como la unidad de codificación final o la unidad de codificación de mayor profundidad adquirida mediante la partición de la unidad de codificación más grande puede utilizarse como la unidad de codificación final. En este caso, el procedimiento de codificación puede incluir un procedimiento de predicción, transformada y reconstrucción, que se describirá más adelante. Como otro ejemplo, la unidad de procesamiento del procedimiento de codificación puede ser una unidad de predicción (PU) o una unidad de transformada (TU). La unidad de predicción y la unidad de transformada pueden dividirse o particionarse a partir de la unidad de codificación final. La unidad de predicción puede ser una unidad de predicción de muestra y la unidad de transformada puede ser una unidad para obtener un coeficiente de transformada y/o una unidad para obtener una señal residual a partir del coeficiente de transformada. La unidad de predicción (la unidad de predicción inter 180 o la unidad de predicción intra 185) puede realizar predicción sobre un bloque que se va a procesar (bloque actual) y generar un bloque predicho que incluye muestras de predicción para el bloque actual. La unidad de predicción puede determinar si se aplica predicción intra o predicción inter para cada bloque actual o CU. La unidad de predicción puede generar información diversa relacionada con la predicción del bloque actual y transmitir la información generada al codificador entrópico 190. La información sobre la predicción puede codificarse en el codificador entrópico 190 y emitirse en forma de un flujo de bits.
La unidad de predicción intra 185 puede predecir el bloque actual haciendo referencia a las muestras en el cuadro actual. Las muestras a las que se hace referencia pueden estar ubicadas en la vecindad del bloque actual o pueden estar ubicadas separadas de acuerdo con el modo de predicción intra y/o la técnica de predicción intra. Los modos de predicción intra pueden incluir una pluralidad de modos no direccionales y una pluralidad de modos direccionales. El modo no direccional puede incluir, por ejemplo, un modo DC y un modo planar. El modo direccional puede incluir, por ejemplo, 33 modos de predicción direccional o 65 modos de predicción direccional de acuerdo con el grado de detalle de la dirección de predicción. Sin embargo, esto es meramente un ejemplo, se pueden usar más o menos modos de predicción direccional dependiendo de la configuración. La unidad de predicción intra 185 puede determinar el modo de predicción aplicado al bloque actual usando un modo de predicción aplicado a un bloque vecino.
La unidad de predicción inter 180 puede obtener un bloque predicho para el bloque actual basándose en un bloque de referencia (matriz de muestras de referencia) especificado por un vector de movimiento en un cuadro de referencia. En este caso, para reducir la cantidad de información de movimiento transmitida en el modo de predicción inter, la información de movimiento puede predecirse en unidades de bloques, subbloques o muestras basándose en la correlación de la información de movimiento entre el bloque vecino y el bloque actual. La información de movimiento puede incluir un vector de movimiento y un índice de cuadro de referencia. La información de movimiento puede incluir además información de dirección de predicción inter (predicción L0, predicción L1, predicción Bi, etc.). En el caso de predicción inter, el bloque vecino puede incluir un bloque vecino espacial presente en el cuadro actual y un bloque vecino temporal presente en el cuadro de referencia. El cuadro de referencia que incluye el bloque de referencia y el cuadro de referencia que incluye el bloque vecino temporal pueden ser iguales o diferentes. El bloque vecino temporal puede denominarse bloque de referencia colocalizado, CU colocalizada (colCU) y similares. El cuadro de referencia que incluye el bloque vecino temporal puede denominarse cuadro colocalizado (colPic). Por ejemplo, la unidad de predicción inter 180 puede configurar una lista de candidatos de información de movimiento en base a bloques vecinos y generar información que indique qué candidato se utiliza para obtener un vector de movimiento y/o un índice de cuadro de referencia del bloque actual. La predicción inter se puede realizar en base a varios modos de predicción. Por ejemplo, en el caso de un modo de salto y un modo de fusión, la unidad de predicción inter 180 puede utilizar información de movimiento del bloque vecino como información de movimiento del bloque actual. En el caso del modo de salto, a diferencia del modo de fusión, la señal residual puede no transmitirse. En el caso del modo de predicción de vector de movimiento (MVP), el vector de movimiento del bloque vecino puede utilizarse como un predictor de vector de movimiento, y el vector de movimiento del bloque actual puede señalizarse codificando una diferencia entre vectores de movimiento y un indicador para un predictor de vector de movimiento. La diferencia entre vectores de movimiento puede significar una diferencia entre el vector de movimiento del bloque actual y el predictor de vector de movimiento.
La unidad de predicción puede generar una señal de predicción basándose en varios métodos de predicción y técnicas de predicción que se describen a continuación. Por ejemplo, la unidad de predicción no solo puede aplicar predicción intra o predicción inter, sino también aplicar simultáneamente tanto predicción intra como predicción inter, para predecir el bloque actual. Un método de predicción que aplica simultáneamente tanto predicción intra como predicción inter para la predicción del bloque actual puede denominarse predicción inter e intra combinada (CIIP). Además, la unidad de predicción puede realizar copia intra bloque (IBC) para la predicción del bloque actual. La copia intra bloque puede utilizarse para la codificación de imagen/vídeo de contenido de un juego o similar, por ejemplo, la codificación de contenido de pantalla (SCC). La IBC es un método para predecir un cuadro actual utilizando un bloque de referencia reconstruido previamente en el cuadro actual en una ubicación separada del bloque actual por una distancia predeterminada. Cuando se aplica IBC, la ubicación del bloque de referencia en el cuadro actual puede codificarse como un vector (vector de bloque) correspondiente a la distancia predeterminada. La IBC básicamente realiza predicción en el cuadro actual, pero puede realizarse de manera similar a la predicción inter, en la que se obtiene un bloque de referencia dentro del cuadro actual. Es decir, la IBC puede utilizar al menos una de las técnicas de predicción inter descritas en la presente invención.
La señal de predicción generada por la unidad de predicción puede utilizarse para generar una señal reconstruida o para generar una señal residual. El sustractor 115 puede generar una señal residual (bloque residual o matriz de muestras residuales) sustrayendo la señal de predicción (bloque predicho o matriz de muestras de predicción) emitida por la unidad de predicción, respecto de la señal de imagen de entrada (bloque original o matriz de muestras original). La señal residual generada puede transmitirse al transformador 120.
El transformador 120 puede generar coeficientes de transformada aplicando una técnica de transformada a la señal residual. Por ejemplo, la técnica de transformada puede incluir al menos una de las siguientes: una transformada de coseno discreta (DCT), una transformada de seno discreta (DST), una transformada de Karhunen-Loeve (KLT), una transformada basada en gráficos (GBT) o una transformada condicionalmente no lineal (CNT). En este caso, la GBT significa una transformada obtenida a partir de un gráfico cuando la información de relación entre píxeles está representada por el gráfico. La CNT se refiere a una transformada adquirida en función de una señal de predicción generada utilizando todos los píxeles reconstruidos previamente. Además, el proceso de transformada se puede aplicar a bloques de píxeles cuadrados que tienen el mismo tamaño o se puede aplicar a bloques que tienen un tamaño variable en lugar de cuadrados.
El cuantificador 130 puede cuantificar los coeficientes de transformada y transmitirlos al codificador entrópico 190. El codificador entrópico 190 puede codificar la señal cuantificada (información sobre los coeficientes de transformada cuantificados) y generar un flujo de bits. La información sobre los coeficientes de transformada cuantificados puede denominarse información residual. El cuantificador 130 puede reorganizar los coeficientes de transformada cuantificados en un tipo de bloque en una forma vectorial unidimensional en función de un orden de exploración de coeficientes y generar información sobre los coeficientes de transformada cuantificados en función de los coeficientes de transformada cuantificados en la forma vectorial unidimensional.
El codificador entrópico 190 puede realizar varios métodos de codificación, como por ejemplo, Golomb exponencial, codificación de longitud variable adaptativa al contexto (CAVLC), codificación aritmética binaria adaptativa al contexto (CABAC) y similares. El codificador entrópico 190 puede codificar información necesaria para la reconstrucción de vídeo/imagen distinta de los coeficientes de transformada cuantificados (por ejemplo, valores de elementos de sintaxis, etc.) en conjunto o por separado. La información codificada (por ejemplo, información de vídeo/imagen codificada) puede transmitirse o almacenarse en unidades de capas de abstracción de red (NAL) en forma de un flujo de bits. La información de vídeo/imagen puede incluir además información sobre varios conjuntos de parámetros, como un conjunto de parámetros de adaptación (APS), un conjunto de parámetros de cuadro (PPS), un conjunto de parámetros de secuencia (SPS) o un conjunto de parámetros de vídeo (VPS). Además, la información de vídeo/imagen puede incluir además información de restricción general. La información señalizada, la información transmitida y/o los elementos de sintaxis descritos en la presente invención pueden codificarse por medio del procedimiento de codificación descrito anteriormente e incluirse en el flujo de bits.
El flujo de bits puede transmitirse a través de una red o puede almacenarse en un medio de almacenamiento digital. La red puede incluir una red de difusión y/o una red de comunicación, y el medio de almacenamiento digital puede incluir varios medios de almacenamiento, como USB, SD, CD, DVD, Blu-ray, HDD, SSD y similares. Un transmisor (no mostrado) que transmite una señal de salida del codificador entrópico 190 y/o una unidad de almacenamiento (no mostrada) que almacena la señal pueden incluirse como elemento interno/externo del dispositivo de codificación de imagen 100. Alternativamente, el transmisor puede proporcionarse como componente del codificador entrópico 190.
Los coeficientes de transformada cuantificados que salen del cuantificador 130 pueden utilizarse para generar una señal residual. Por ejemplo, la señal residual (bloque residual o muestras residuales) puede reconstruirse aplicando descuantificación y transformada inversa a los coeficientes de transformada cuantificados por medio del descuantificador 140 y el transformador inverso 150.
El sumador 155 suma la señal residual reconstruida a la señal de predicción emitida por la unidad de predicción inter 180 o la unidad de predicción intra 185 para generar una señal reconstruida (cuadro reconstruido, bloque reconstruido, matriz de muestras reconstruida). Si no hay ningún residuo para el bloque que se va a procesar, como en un caso en el que se aplica el modo de salto, el bloque predicho se puede utilizar como el bloque reconstruido. El sumador 155 se puede denominar reconstructor o generador de bloques reconstruidos. La señal reconstruida generada se puede utilizar para la predicción intra de un siguiente bloque que se va a procesar en el cuadro actual y se puede utilizar para la predicción inter de un siguiente cuadro por medio de filtrado como se describe a continuación.
El filtro 160 puede mejorar la calidad de imagen subjetiva/objetiva aplicando filtrado a la señal reconstruida. Por ejemplo, el filtro 160 puede generar un cuadro reconstruido modificado aplicando varios métodos de filtrado al cuadro reconstruido y almacenar el cuadro reconstruido modificado en la memoria 170, específicamente, una DPB de la memoria 170. Los varios métodos de filtrado pueden incluir, por ejemplo, filtrado de desbloqueo, un desplazamiento adaptativo de muestra, un filtro de bucle adaptativo, un filtro bilateral y similares. El filtro 160 puede generar varias informaciones relacionadas con el filtrado y transmitir la información generada al codificador entrópico 190, como se describe más adelante en la descripción de cada método de filtrado. La información relacionada con el filtrado puede ser codificada por el codificador entrópico 190 y emitida en forma de un flujo de bits.
El cuadro reconstruido modificado transmitido a la memoria 170 se puede utilizar como cuadro de referencia en la unidad de predicción inter 180. Cuando se aplica predicción inter por medio del dispositivo de codificación de imagen 100, se puede evitar el desajuste de predicción entre el dispositivo de codificación de imagen 100 y el aparato de decodificación de imagen y se puede mejorar la eficiencia de codificación.
La DPB de la memoria 170 puede almacenar el cuadro reconstruido modificado para su uso como cuadro de referencia en la unidad de predicción inter 180. La memoria 170 puede almacenar la información de movimiento del bloque del que se obtiene (o codifica) la información de movimiento en el cuadro actual y/o la información de movimiento de los bloques en el cuadro que ya se han reconstruido. La información de movimiento almacenada puede transmitirse a la unidad de predicción inter 180 y usarse como la información de movimiento del bloque vecino espacial o la información de movimiento del bloque vecino temporal. La memoria 170 puede almacenar muestras reconstruidas de bloques reconstruidos en el cuadro actual y puede transferir las muestras reconstruidas a la unidad de predicción intra 185.
Descripción general del aparato de decodificación de imagen
La FIG. 3 es una vista que muestra esquemáticamente un aparato de decodificación de imagen, al que es aplicable una realización de la presente invención.
Como se muestra en la FIG. 3, el dispositivo de decodificación de imagen 200 puede incluir un decodificador entrópico 210, un descuantificador 220, un transformador inverso 230, un sumador 235, un filtro 240, una memoria 250, una unidad de predicción inter 260 y una unidad de predicción intra 265. La unidad de predicción inter 260 y la unidad de predicción intra 265 pueden denominarse colectivamente "unidad de predicción". El descuantificador 220 y el transformador inverso 230 pueden estar incluidos en un procesador residual.
Todos o al menos algunos de la pluralidad de componentes que configuran el dispositivo de decodificación de imagen 200 pueden configurarse mediante un componente de hardware (por ejemplo, un decodificador o un procesador) de acuerdo con una realización. Además, la memoria 250 puede incluir una memoria intermedia de cuadros decodificados (DPB) o puede estar configurada por un medio de almacenamiento digital.
El dispositivo de decodificación de imagen 200, que ha recibido un flujo de bits que incluye información de vídeo/imagen, puede reconstruir una imagen realizando un proceso correspondiente a un proceso realizado por el dispositivo de codificación de imagen 100 de la FIG. 2. Por ejemplo, el dispositivo de decodificación de imagen 200 puede realizar la decodificación utilizando una unidad de procesamiento aplicada en el aparato de codificación de imagen. De este modo, la unidad de procesamiento de decodificación puede ser, por ejemplo, una unidad de codificación. La unidad de codificación puede adquirirse dividiendo una unidad de árbol de codificación o una unidad de codificación más grande. La señal de imagen reconstruida decodificada y emitida por medio del dispositivo de decodificación de imagen 200 puede reproducirse a través de un aparato de reproducción (no mostrado).
El dispositivo de decodificación de imagen 200 puede recibir una señal de salida del aparato de codificación de imagen de la FIG. 2 en forma de un flujo de bits. La señal recibida puede decodificarse por medio del decodificador entrópico 210. Por ejemplo, el decodificador entrópico 210 puede analizar sintácticamente el flujo de bits para obtener información (por ejemplo, información de vídeo/imagen) necesaria para la reconstrucción de imágenes (o reconstrucción de cuadros). La información de vídeo/imagen puede incluir además información sobre diversos conjuntos de parámetros, como un conjunto de parámetros de adaptación (APS), un conjunto de parámetros de cuadro (PPS), un conjunto de parámetros de secuencia (SPS) o un conjunto de parámetros de vídeo (VPS). Además, la información de vídeo/imagen puede incluir además información de restricción general. El aparato de decodificación de imagen puede decodificar además cuadros basándose en la información sobre el conjunto de parámetros y/o en la información de restricción general. La información señalizada/recibida y/o los elementos de sintaxis descritos en la presente invención pueden decodificarse por medio del procedimiento de decodificación y obtenerse del flujo de bits. Por ejemplo, el decodificador entrópico 210 decodifica la información en el flujo de bits basándose en un método de codificación tal como codificación Golomb exponencial, CAVLC o CABAC, y genera valores de salida de elementos de sintaxis requeridos para la reconstrucción de imagen y valores cuantificados de coeficientes de transformada para residuos. Más específicamente, el método de decodificación entrópica CABAC puede recibir un contenedor correspondiente a cada elemento de sintaxis en el flujo de bits, determinar un modelo de contexto utilizando una información de elemento de sintaxis objetivo de decodificación, información de decodificación de un bloque vecino y un bloque objetivo de decodificación o información de un símbolo/contenedor decodificado en una etapa anterior, y realizar una decodificación aritmética en el contenedor prediciendo una probabilidad de ocurrencia de un contenedor de acuerdo con el modelo de contexto determinado, y generar un símbolo correspondiente al valor de cada elemento de sintaxis. En este caso, el método de decodificación entrópica CABAC puede actualizar el modelo de contexto utilizando la información del símbolo/contenedor decodificado para un modelo de contexto de un siguiente símbolo/contenedor después de determinar el modelo de contexto. La información relacionada con la predicción entre la información decodificada por el decodificador entrópico 210 puede proporcionarse a la unidad de predicción (la unidad de predicción inter 260 y la unidad de predicción intra 265), y el valor residual sobre el que se realizó la decodificación entrópica en el decodificador entrópico 210, es decir, los coeficientes de transformada cuantificados y la información de parámetros relacionada, pueden introducirse en el descuantificador 220. Además, la información sobre el filtrado entre la información decodificada por el decodificador entrópico 210 puede proporcionarse al filtro 240. Mientras tanto, un receptor (no mostrado) para recibir una salida de señal del aparato de codificación de imagen puede configurarse además como un elemento interno/externo del dispositivo de decodificación de imagen 200, o el receptor puede ser un componente del decodificador entrópico 210.
Mientras tanto, el aparato de decodificación de imagen según la presente invención puede denominarse aparato de decodificación de vídeo/imagen/cuadro. El aparato de decodificación de imagen puede clasificarse en un decodificador de información (decodificador de información de vídeo/imagen/cuadro) y un decodificador de muestras (decodificador de muestras de vídeo/imagen/cuadro). El decodificador de información puede incluir el decodificador entrópico 210. El decodificador de muestras puede incluir al menos uno de los siguientes: el descuantificador 220, el transformador inverso 230, el sumador 235, el filtro 240, la memoria 250, la unidad de predicción inter 160 o la unidad de predicción intra 265.
El descuantificador 220 puede descuantificar los coeficientes de transformada cuantificados y generar los coeficientes de transformada. El descuantificador 220 puede reorganizar los coeficientes de transformada cuantificados en forma de un bloque bidimensional. En este caso, la reorganización puede realizarse en función del orden de exploración de coeficientes realizado en el aparato de codificación de imagen. El descuantificador 220 puede realizar la descuantificación de los coeficientes de transformada cuantificados utilizando un parámetro de cuantificación (por ejemplo, información del tamaño de la etapa de cuantificación) y obtener coeficientes de transformada.
El transformador inverso 230 puede transformar inversamente los coeficientes de transformada para obtener una señal residual (bloque residual, matriz de muestras residuales).
La unidad de predicción puede realizar predicción sobre el bloque actual y generar un bloque predicho que incluya muestras de predicción para el bloque actual. La unidad de predicción puede determinar si se aplica predicción intra o predicción inter al bloque actual en función de la información sobre la salida de predicción del decodificador entrópico 210 y puede determinar un modo de predicción intra/inter específico (técnica de predicción).
Esto es lo mismo que se describe en la unidad de predicción del dispositivo de codificación de imagen 100, que la unidad de predicción puede generar la señal de predicción basándose en varios métodos (técnicas) de predicción que se describirán más adelante.
La unidad de predicción intra 265 puede predecir el bloque actual haciendo referencia a las muestras en el cuadro actual. La descripción de la unidad de predicción intra 185 se aplica igualmente a la unidad de predicción intra 265. La unidad de predicción inter 260 puede obtener un bloque predicho para el bloque actual basándose en un bloque de referencia (matriz de muestras de referencia) especificado por un vector de movimiento en un cuadro de referencia. En este caso, para reducir la cantidad de información de movimiento transmitida en el modo de predicción inter, la información de movimiento puede predecirse en unidades de bloques, subbloques o muestras basándose en la correlación de la información de movimiento entre el bloque vecino y el bloque actual. La información de movimiento puede incluir un vector de movimiento y un índice de cuadro de referencia. La información de movimiento puede incluir además información de dirección de predicción inter (predicción L0, predicción L1, predicción Bi, etc.). En el caso de predicción inter, el bloque vecino puede incluir un bloque vecino espacial presente en el cuadro actual y un bloque vecino temporal presente en el cuadro de referencia. Por ejemplo, la unidad de predicción inter 260 puede configurar una lista de candidatos de información de movimiento basándose en bloques vecinos y obtener un vector de movimiento del bloque actual y/o un índice de cuadro de referencia basándose en la información de selección de candidatos recibida. La predicción inter puede realizarse basándose en varios modos de predicción, y la información sobre la predicción puede incluir información que indica un modo de predicción inter para el bloque actual.
El sumador 235 puede generar una señal reconstruida (cuadro reconstruido, bloque reconstruido, matriz de muestras reconstruida) sumando la señal residual obtenida a la señal de predicción (bloque predicho, matriz de muestras predicha) emitida desde la unidad de predicción (incluida la unidad de predicción inter 260 y/o la unidad de predicción intra 265). Si no hay residuo para el bloque que se va a procesar, como cuando se aplica el modo de salto, el bloque predicho se puede utilizar como el bloque reconstruido. La descripción del sumador 155 es igualmente aplicable al sumador 235. El sumador 235 se puede denominar reconstructor o generador de bloque reconstruido. La señal reconstruida generada se puede utilizar para la predicción intra de un siguiente bloque que se va a procesar en el cuadro actual y se puede utilizar para la predicción inter de un siguiente cuadro por medio de filtrado como se describe a continuación.
El filtro 240 puede mejorar la calidad de imagen subjetiva/objetiva aplicando un filtrado a la señal reconstruida. Por ejemplo, el filtro 240 puede generar un cuadro reconstruido modificado aplicando varios métodos de filtrado al cuadro reconstruido y almacenar el cuadro reconstruido modificado en la memoria 250, específicamente, una DPB de la memoria 250. Los diversos métodos de filtrado pueden incluir, por ejemplo, un filtrado de desbloqueo, un desplazamiento adaptativo de muestra, un filtro de bucle adaptativo, un filtro bilateral y similares.
El cuadro reconstruido (modificado) almacenado en la DPB de la memoria 250 puede utilizarse como cuadro de referencia en la unidad de predicción inter 260. La memoria 250 puede almacenar la información de movimiento del bloque del que se obtiene (o decodifica) la información de movimiento en el cuadro actual y/o la información de movimiento de los bloques en el cuadro que ya han sido reconstruidos. La información de movimiento almacenada puede transmitirse a la unidad de predicción inter 260 para ser utilizada como la información de movimiento del bloque vecino espacial o la información de movimiento del bloque vecino temporal. La memoria 250 puede almacenar muestras reconstruidas de bloques reconstruidos en el cuadro actual y transferir las muestras reconstruidas a la unidad de predicción intra 265.
En la presente invención, las realizaciones descritas en el filtro 160, la unidad de predicción inter 180 y la unidad de predicción intra 185 del dispositivo de codificación de imagen 100 se pueden aplicar de manera igual o correspondiente al filtro 240, la unidad de predicción inter 260 y la unidad de predicción intra 265 del dispositivo de decodificación de imagen 200.
Descripción general de la partición de imágenes
El método de codificación de vídeo/imagen según la presente invención puede realizarse basándose en una estructura de partición de imagen de la siguiente manera. Específicamente, los procedimientos de predicción, procesamiento residual (transformada (inversa), (des)cuantificación, etc.), codificación de elementos de sintaxis y filtrado, que se describirán más adelante, pueden realizarse basándose en una CTU, CU (y/o TU, PU) obtenida basándose en la estructura de partición de imagen. La imagen puede dividirse en unidades de bloques y el procedimiento de partición de bloques puede realizarse en el divisor de imagen 110 del aparato de codificación. La información relacionada con la partición puede codificarse mediante el codificador entrópico 190 y transmitirse al aparato de decodificación en forma de un flujo de bits. El decodificador entrópico 210 del aparato de decodificación puede obtener una estructura de partición de bloques del cuadro actual basándose en la información relacionada con la partición obtenida del flujo de bits y, basándose en esto, puede realizar una serie de procedimientos (por ejemplo, predicción, procesamiento residual, reconstrucción de bloques/cuadros, filtrado en bucle, etc.) para la decodificación de imagen.
Los cuadros pueden dividirse en una secuencia de unidades de árbol de codificación (CTU). La FIG. 4 muestra un ejemplo en el que un cuadro se divide en varias CTU. La CTU puede corresponder a un bloque de árbol de codificación (CTB). Alternativamente, la CTU puede incluir un bloque de árbol de codificación de muestras de luminancia y dos bloques de árbol de codificación de muestras de crominancia correspondientes. Por ejemplo, para un cuadro que contiene tres matrices de muestras, la CTU puede incluir un bloque NxN de muestras de luminancia y dos bloques correspondientes de muestras de crominancia.
Descripción general de la partición de la CTU
Como se ha descrito anteriormente, la unidad de codificación puede adquirirse dividiendo recursivamente la unidad de árbol de codificación (CTU) o la unidad de codificación más grande (LCU) según una estructura de árbol cuaternario/árbol binario/árbol ternario (QTBT/TT). Por ejemplo, la CTU puede dividirse primero en estructuras de árbol cuaternario. A continuación, los nodos hoja de la estructura de árbol cuaternario pueden dividirse más mediante una estructura de árbol multitipo.
La partición según el árbol cuaternario significa que una CU actual (o CTU) se divide en cuatro partes iguales. Mediante la partición según el árbol cuaternario, la CU actual se puede dividir en cuatro CU que tienen la misma anchura y la misma altura. Cuando la CU actual ya no se divide en las estructuras de árbol cuaternario, la CU actual corresponde al nodo hoja de la estructura de árbol cuaternario. La CU correspondiente al nodo hoja de la estructura de árbol cuaternario puede dejar de dividirse y puede utilizarse como la unidad de codificación final descrita anteriormente. Alternativamente, la CU correspondiente al nodo hoja de la estructura de árbol cuaternario se puede dividir más mediante una estructura de árbol multitipo.
La FIG. 5 es una vista que muestra una realización de un tipo de partición de un bloque según una estructura de árbol multitipo. La partición según la estructura de árbol multitipo puede incluir dos tipos de división según una estructura de árbol binario y dos tipos de división según una estructura de árbol ternario.
Los dos tipos de división según la estructura de árbol binario pueden incluir la división binaria vertical (SPLIT_BT_VER) y la división binaria horizontal (SPLIT_BT_HOR). La división binaria vertical (SPLIT_BT_VER) significa que la CU actual se divide en dos partes iguales en la dirección vertical. Como se muestra en la FIG. 4, mediante la división binaria vertical, se pueden generar dos CU que tengan la misma altura que la CU actual y que tengan una anchura que sea la mitad de la anchura de la CU actual. La división binaria horizontal (SPLIT_BT_HOR) significa que la CU actual se divide en dos partes iguales en la dirección horizontal. Como se muestra en la FIG. 5, mediante la división binaria horizontal, se pueden generar dos CU que tengan una altura que sea la mitad de la altura de la CU actual y que tengan la misma anchura que la CU actual.
Dos tipos de división según la estructura de árbol ternario pueden incluir la división ternaria vertical (SPLIT_TT_VER) y la división ternaria horizontal (SPLIT_TT_HOR). En la división ternaria vertical (SPLIT_TT_VER), la CU actual se divide en la dirección vertical en una proporción de 1:2:1. Como se muestra en la FIG. 4, mediante la división ternaria vertical, se pueden generar dos CU que tienen la misma altura que la CU actual y que tienen una anchura que es 1/4 de la anchura de la CU actual y una CU que tiene la misma altura que la CU actual y que tiene una anchura que es la mitad de la anchura de la CU actual. En la división ternaria horizontal (SPLIT_TT_HOR), la CU actual se divide en la dirección horizontal en una proporción de 1:2:1. Como se muestra en la FIG. 5, mediante división ternaria horizontal, se pueden generar dos CU que tengan una altura que sea 1/4 de la altura de la CU actual y que tengan la misma anchura que la CU actual y una CU que tenga una altura que sea la mitad de la altura de la CU actual y que tenga la misma anchura que la CU actual.
La FIG. 6 es una vista que muestra un mecanismo de señalización de información de división de bloques en un árbol cuaternario con una estructura de árbol multitipo anidada, de acuerdo con la presente invención.
Aquí, la CTU se trata como el nodo raíz del árbol cuaternario y se divide por primera vez en una estructura de árbol cuaternario. Se puede señalizar información (por ejemplo, qt_split_flag) que indica si la división del árbol cuaternario se realiza con respecto a la CU actual (CTU o nodo (QT_node) del árbol cuaternario). Por ejemplo, cuando qt_split_flag tiene un primer valor (por ejemplo, "1"), la CU actual puede dividirse en árbol cuaternario. Además, cuando qt_split_flag tiene un segundo valor (por ejemplo, "0"), la CU actual no se divide en árbol cuaternario, sino que se convierte en el nodo hoja (QT_leaf_node) del árbol cuaternario. Cada nodo hoja del árbol cuaternario puede dividirse a continuación en estructuras de árbol multitipo. Es decir, el nodo hoja del árbol cuaternario puede convertirse en el nodo (MTT_node) del árbol multitipo. En la estructura de árbol multitipo, se puede señalizar un primer indicador (por ejemplo, Mtt_split_cu_flag) para indicar si el nodo actual está particionado adicionalmente. Si el nodo correspondiente está particionado adicionalmente (por ejemplo, si el primer indicador es 1), se puede señalizar un segundo indicador (por ejemplo, Mtt_split_cu_vertical_flag) para indicar la dirección de división. Por ejemplo, la dirección de división puede ser una dirección vertical si el segundo indicador es 1 y puede ser una dirección horizontal si el segundo indicador es 0. A continuación, se puede señalizar un tercer indicador (por ejemplo, Mtt_split_cu_binary_flag) para indicar si el tipo de división es un tipo de división binaria o un tipo de división ternaria. Por ejemplo, el tipo de división puede ser un tipo de división binaria cuando el tercer indicador es 1 y puede ser un tipo de división ternaria cuando el tercer indicador es 0. El nodo del árbol multitipo adquirido por división binaria o división ternaria puede dividirse más en estructuras de árbol multitipo. Sin embargo, el nodo del árbol multitipo no puede dividirse en estructuras de árbol cuaternario. Si el primer indicador es 0, el nodo correspondiente del árbol multitipo ya no se divide sino que se convierte en el nodo hoja (MTT_leaf_node) del árbol multitipo. La CU correspondiente al nodo hoja del árbol multitipo puede utilizarse como la unidad de codificación final descrita anteriormente.
En función de mtt_split_cu_vertical_flag y mtt_split_cu_binary_flag, se puede obtener un modo de división de árbol multitipo (MttSplitMode) de una CU, como se muestra en la Tabla 1 a continuación. En la siguiente descripción, el modo de división de árbol multitipo puede denominarse tipo de división de múltiples árboles o tipo de división.
[Tabla 1]
La FIG. 7 es una vista que muestra un ejemplo en el que una CTU se divide en múltiples CU mediante la aplicación de un árbol multitipo después de aplicar un árbol cuaternario. En la FIG. 7, los bordes de bloque en negrita 710 representan la división en árbol cuaternario y los bordes restantes 720 representan la división en árbol multitipo. La CU puede corresponder a un bloque de codificación (CB). En una realización, la CU puede incluir un bloque de codificación de muestras de luminancia y dos bloques de codificación de muestras de crominancia correspondientes a las muestras de luminancia.
Un tamaño de CB o TB de componente de crominancia (muestra) puede obtenerse en función de un tamaño de CB o TB de componente de luminancia (muestra) según la relación de componentes de acuerdo con el formato de color (formato de crominancia, por ejemplo, 4:4:4, 4:2:2, 4:2:0 o similar) del cuadro/imagen. En el caso del formato de color 4:4:4, el tamaño de CB/<t>B del componente de crominancia puede configurarse para que sea igual al tamaño de CB/TB del componente de luminancia. En el caso del formato de color 4:2:2, la anchura del CB/TB del componente de crominancia puede configurarse a la mitad de la anchura del CB/TB del componente de luminancia y la altura del CB/TB del componente de crominancia puede ajustarse a la altura del componente de luminancia CB/TB. En el caso del formato de color 4:2:0, la anchura del CB/TB del componente de crominancia se puede configurar a la mitad de la anchura del CB/TB del componente de luminancia y la altura del CB/TB del componente de crominancia se puede configurar a la mitad de la altura del CB/TB del componente de luminancia.
En una realización, cuando el tamaño de la CTU es 128 en función de la unidad de muestra de luminancia, el tamaño de la CU puede tener un tamaño de 128x128 a 4x4, que es el mismo tamaño que la CTU. En una realización, en el caso del formato de color 4:2:0 (o formato de crominancia), un tamaño de CB de crominancia puede tener un tamaño de 64x64 a 2x2.
Mientras tanto, en una realización, el tamaño de la CU y el tamaño de la TU pueden ser iguales. Alternativamente, puede haber una pluralidad de TU en una región de CU. El tamaño de la TU generalmente puede representar un tamaño de bloque de transformada (TB) de componente de luminancia (muestra).
El tamaño de la TU puede obtenerse en función de un tamaño máximo permitido de TB, maxTbSize, que es un valor predeterminado. Por ejemplo, cuando el tamaño de la CU es mayor que maxTbSize, se puede obtener una pluralidad de TU (TB) que tengan maxTbSize a partir de la CU y se puede realizar transformada/transformada inversa en unidades de TU (TB). Por ejemplo, el tamaño máximo permitido de TB de luminancia puede ser 64x64 y el tamaño máximo permitido de TB de crominancia puede ser 32x32. Si la anchura o la altura del CB dividido de acuerdo con la estructura de árbol es mayor que la anchura o la altura máximas de la transformada, el CB puede dividirse automáticamente (o implícitamente) hasta que se cumpla el límite de tamaño de TB en las direcciones horizontal y vertical.
Además, por ejemplo, cuando se aplica predicción intra, se puede obtener un modo/tipo de predicción intra en unidades de CU (o CB) y se puede realizar un procedimiento de obtención de muestra de referencia vecina y generación de muestra de predicción en unidades de TU (o TB). En este caso, puede haber una o una pluralidad de TU (o TB) en una región de CU (o CB) y, en este caso, la pluralidad de TU o (TB) puede compartir el mismo modo/tipo de predicción intra.
Mientras tanto, para un esquema de árbol de codificación de árbol cuaternario con árbol multitipo anidado, los siguientes parámetros pueden ser señalizados como elementos de sintaxis SPS desde el aparato de codificación al aparato de decodificación. Por ejemplo, se puede señalizar al menos uno de un tamaño de CTU que es un parámetro que representa el tamaño del nodo raíz de un árbol cuaternario, MinQTSize que es un parámetro que representa el tamaño mínimo permitido del nodo hoja del árbol cuaternario, MaxBtSize que es un parámetro que representa el tamaño máximo permitido del nodo raíz del árbol binario, MaxTtSize que es un parámetro que representa el tamaño máximo permitido del nodo raíz del árbol ternario, MaxMttDepth que es un parámetro que representa la profundidad máxima permitida de la jerarquía de la división del árbol multitipo a partir de un nodo hoja del árbol cuaternario, MinBtSize que es un parámetro que representa el tamaño mínimo permitido del nodo hoja del árbol binario, o MinTtSize que es un parámetro que representa el tamaño mínimo permitido del nodo hoja del árbol ternario.
Como una realización del uso del formato de crominancia 4:2:0, el tamaño de la CTU puede establecerse en bloques de luminancia de 128x128 y dos bloques de crominancia de 64x64 correspondientes a los bloques de luminancia. En este caso, MinOTSize puede establecerse en 16x16, MaxBtSize puede establecerse en 128x128, MaxTtSzie puede establecerse en 64x64, MinBtSize y MinTtSize pueden establecerse en 4x4, y MaxMttDepth puede establecerse en 4. La partición de árbol cuaternario puede aplicarse a la CTU para generar nodos hoja del árbol cuaternario. El nodo hoja del árbol cuaternario puede denominarse nodo QT de hoja. Los nodos hoja del árbol cuaternario pueden tener un tamaño desde un tamaño de 16x16 (por ejemplo, el MinOTSize) hasta un tamaño de 128x128 (por ejemplo, el tamaño de la CTU). Si el nodo QT de hoja es de 128x128, no se puede realizar particiones adicionales en un árbol binario/árbol ternario. Esto se debe a que, en este caso, incluso si se realiza la partición, esta excede MaxBtsize y MaxTtszie (por ejemplo, 64x64). En otros casos, los nodos QT de hoja se pueden dividir adicionalmente en un árbol multitipo. Por lo tanto, el nodo QT de hoja es el nodo raíz del árbol multitipo y el nodo QT de hoja puede tener un valor de profundidad de árbol multitipo (mttDepth) 0. Si la profundidad del árbol multitipo alcanza MaxMttdepth (por ejemplo, 4), no se puede considerar realizar particiones adicionales. Si la anchura del nodo de árbol multitipo es igual a MinBtSize y menor o igual a 2xMinTtSize, no se puede considerar realizar particiones horizontales adicionales. Si la altura del nodo del árbol multitipo es igual a MinBtSize y menor o igual a 2xMinTtSize, no se puede considerar ninguna partición vertical adicional. Cuando no se considera la partición, el aparato de codificación puede omitir la señalización de la información de partición. En este caso, el aparato de decodificación puede obtener información de partición con un valor predeterminado.
Mientras tanto, una CTU puede incluir un bloque de codificación de muestras de luminancia (en adelante denominado "bloque de luminancia") y dos bloques de codificación de muestras de crominancia correspondientes al mismo (en adelante denominados "bloques de crominancia"). El esquema de árbol de codificación descrito anteriormente se puede aplicar por igual o por separado al bloque de luminancia y al bloque de crominancia de la CU actual. Específicamente, los bloques de luminancia y de crominancia en una CTU se pueden dividir en la misma estructura de árbol de bloques y, en este caso, la estructura de árbol se puede representar como ÁRBOL ÚNICO. Alternativamente, los bloques de luminancia y de crominancia en una CTU se pueden dividir en estructuras de árbol de bloques separadas y, en este caso, la estructura de árbol se puede representar como ÁRBOL DUAL. Es decir, cuando la CTU se divide en árboles duales, la estructura de árbol de bloques para el bloque de luminancia y la estructura de árbol de bloques para el bloque de crominancia pueden estar presentes por separado. En este caso, la estructura de árbol de bloques para el bloque de luminancia puede denominarse DUAL_TREE_LUMA, y la estructura de árbol de bloques para el componente de crominancia puede denominarse DUAL_TREE_CHROMA. Para los grupos de segmentos/teselas P y B, los bloques de luminancia y de crominancia en una CTU pueden limitarse a tener la misma estructura de árbol de codificación. Sin embargo, para los grupos de segmentos/teselas I, los bloques de luminancia y de crominancia pueden tener una estructura de árbol de bloques separada entre sí. Si se aplica la estructura de árbol de bloques separada, el CTB de luminancia puede dividirse en CU en función de una estructura de árbol de codificación particular, y el CTB de crominancia puede dividirse en CU de crominancia en función de otra estructura de árbol de codificación. Es decir, esto significa que una CU en un grupo de segmentos/teselas I, al que se aplica la estructura de árbol de bloques separada, puede incluir un bloque de codificación de componentes de luminancia o bloques de codificación de dos componentes de crominancia y una CU de un grupo de segmentos/teselas P o B puede incluir bloques de tres componentes de color (un componente de luminancia y dos componentes de crominancia).
Aunque se ha descrito una estructura de árbol de codificación de árbol cuaternario con un árbol multitipo anidado, la estructura en la que se particiona una CU no se limita a esto. Por ejemplo, la estructura BT y la estructura TT pueden interpretarse como un concepto incluido en una estructura de árbol de particionamiento múltiple (MPT), y la CU puede interpretarse como particionada por medio de la estructura QT y la estructura MPT. En un ejemplo en el que la CU se particiona a través de una estructura QT y una estructura MPT, un elemento de sintaxis (por ejemplo, MPT_split_type) que incluye información sobre en cuántos bloques se particiona el nodo hoja de la estructura QT y un elemento de sintaxis (por ejemplo, MPT_split_mode) que incluye información sobre en cuál de las direcciones vertical y horizontal se particiona el nodo hoja de la estructura QT se pueden señalizar para determinar una estructura de particionamiento.
En otro ejemplo, la CU puede dividirse de una manera diferente a la estructura QT, la estructura BT o la estructura TT. Es decir, a diferencia de que la CU de menor profundidad se divide en 1/4 de la CU de mayor profundidad según la estructura QT, la CU de menor profundidad se divide en 1/2 de la CU de mayor profundidad según la estructura BT, o la CU de menor profundidad se divide en 1/4 o 1/2 de la CU de mayor profundidad según la estructura TT, la CU de menor profundidad puede dividirse en 1/5, 1/3, 3/8, 3/5, 2/3 o 5/8 de la CU de mayor profundidad en algunos casos, y el método de división de la CU no se limita a ello.
La estructura de bloques de codificación de árbol cuaternario con el árbol multitipo puede proporcionar una estructura de partición de bloques muy flexible. Debido a los tipos de partición soportados en un árbol multitipo, diferentes patrones de partición pueden tener como resultado potencialmente la misma estructura de bloques de codificación en algunos casos. En el aparato de codificación y el aparato de decodificación, al limitar la aparición de tales patrones de partición redundantes, se puede reducir una cantidad de datos de información de partición.
A continuación se describirá la predicción intra realizada por un predictor intra.
Predicción intra
La predicción intra puede representar una predicción para generar muestras de predicción para un bloque actual en función de muestras de referencia en un cuadro al que pertenece un bloque actual (en adelante denominado cuadro actual). Cuando la predicción intra se aplica a un bloque actual, se pueden obtener muestras de referencia vecinas que se utilizarán para la predicción intra del bloque actual. Las muestras de referencia vecinas del bloque actual pueden incluir un total de 2xnh muestras adyacentes a un límite izquierdo del bloque actual que tiene un tamaño de nWxnH y muestras adyacentes a la parte inferior izquierda, un total de 2xnW muestras adyacentes a un límite superior del bloque actual y muestras adyacentes a la parte superior derecha, y una muestra adyacente a la parte superior izquierda del bloque actual. Alternativamente, las muestras de referencia vecinas del bloque actual pueden incluir una pluralidad de columnas de muestras vecinas superiores y una pluralidad de filas de muestras vecinas izquierdas. Además, las muestras de referencia vecinas del bloque actual pueden incluir un total de nH muestras adyacentes a un límite derecho del bloque actual que tiene un tamaño de nWxnH, un total de nW muestras adyacentes a un límite inferior del bloque actual y una muestra adyacente a una parte inferior derecha del bloque actual.
Sin embargo, algunas de las muestras de referencia vecinas del bloque actual aún no se han decodificado o pueden no estar disponibles. En este caso, el aparato de decodificación puede construir muestras de referencia vecinas que se utilizarán para la predicción sustituyendo las muestras no disponibles por muestras disponibles. Alternativamente, las muestras de referencia vecinas que se utilizarán para la predicción se pueden construir mediante interpolación de muestras disponibles.
A continuación se describirá un método de codificación basado en predicción intra y una unidad de predicción intra en un aparato de codificación utilizando las FIGS. 8 y 9.
La FIG. 8 es una vista que ilustra un método de codificación de vídeo/imagen basado en predicción intra. Además, la FIG. 9 es una vista que ilustra una unidad de predicción intra en un aparato de codificación.
La unidad de predicción intra 222 del aparato de codificación puede realizar S800, y el procesador residual 230 del aparato de codificación puede realizar S810. En concreto, el sustractor 231 del aparato de codificación puede realizar S820. En S820, la información de predicción puede ser obtenida por la unidad de predicción intra 222, y puede ser codificada por el codificador entrópico 240. En S820, la información residual puede ser obtenida por el procesador residual 230, y puede ser codificada por el codificador entrópico 240. La información residual es información sobre muestras residuales. La información residual puede incluir información sobre coeficientes de transformada cuantificados para las muestras residuales. Como se describió anteriormente, las muestras residuales pueden obtenerse como coeficientes de transformada por medio del transformador 232 del aparato de codificación, y los coeficientes de transformada pueden obtenerse como coeficientes de transformada cuantificados por medio del cuantificador 233. La información sobre los coeficientes de transformada cuantificados puede ser codificada por el codificador entrópico 240 a través de un procedimiento de codificación residual.
El aparato de codificación puede realizar predicción intra con respecto al bloque actual (S800). El aparato de codificación puede obtener un modo/tipo de predicción intra para el bloque actual, obtener muestras de referencia vecinas del bloque actual y generar muestras de predicción en el bloque actual basándose en el modo/tipo de predicción intra y las muestras de referencia vecinas. En este caso, se puede realizar simultáneamente un procedimiento para determinar un modo/tipo de predicción intra, un procedimiento para obtener muestras de referencia vecinas y un procedimiento para generar muestras de predicción, o se puede realizar cualquier procedimiento antes de otro procedimiento. Por ejemplo, la unidad de predicción intra 222 del aparato de codificación puede incluir una unidad de determinación de modo/tipo de predicción intra 222-1, una unidad de obtención de muestra de referencia 222-2, una unidad de obtención de muestra de predicción 222-3. La unidad de determinación de modo/tipo de predicción intra 222-1 puede determinar el modo/tipo de predicción intra para el bloque actual, la unidad de obtención de muestra de referencia 222-2 puede obtener muestras de referencia vecinas del bloque actual, y la unidad de obtención de muestra de predicción 222-3 puede obtener las muestras de predicción del bloque actual. Mientras tanto, aunque no se muestra, cuando se realiza el procedimiento de filtrado de muestra de predicción descrito a continuación, la unidad de predicción intra 222 puede incluir además un filtro de muestra de predicción (no se muestra). El aparato de codificación puede determinar un modo/tipo aplicado al bloque actual de entre una pluralidad de modos/tipos de predicción intra. El aparato de codificación puede comparar los costos de RD de los modos/tipos de predicción intra y determinar un modo/tipo de predicción intra óptimo para el bloque actual.
El aparato de codificación puede generar muestras residuales para el bloque actual basándose en muestras de predicción (S810). El aparato de codificación puede comparar las muestras de predicción a partir de las muestras originales del bloque actual basándose en una fase y obtener las muestras residuales.
El aparato de codificación puede codificar información de imagen que incluye información sobre predicción intra (información de predicción) e información residual de las muestras residuales (S820). La información de predicción puede incluir la información del modo de predicción intra y la información del tipo de predicción intra. El aparato de codificación puede generar información de imagen codificada en forma de un flujo de bits. El flujo de bits de salida puede transmitirse al aparato de decodificación a través de un medio de almacenamiento o una red.
La información residual puede incluir una sintaxis de codificación residual descrita a continuación. El aparato de codificación puede transformar/cuantificar las muestras residuales para obtener coeficientes de transformada cuantificados. La información residual puede incluir información sobre los coeficientes de transformada cuantificados.
Mientras tanto, como se ha descrito anteriormente, el aparato de codificación puede generar un cuadro reconstruido (que incluye muestras reconstruidas y un bloque reconstruido). Para ello, el aparato de codificación puede realizar descuantificación/transformada inversa con respecto a los coeficientes de transformada cuantificados, de nuevo para obtener muestras residuales (modificadas). Las muestras residuales se transforman/cuantifican y después se descuantifican/transforman inversamente, con el fin de obtener las mismas muestras residuales que las muestras residuales obtenidas en el aparato de decodificación como se ha descrito anteriormente. El aparato de codificación puede generar un bloque reconstruido que incluye las muestras reconstruidas para el bloque actual basándose en las muestras de predicción y las muestras residuales (modificadas). Se puede generar un cuadro reconstruido para el cuadro actual basándose en el bloque reconstruido. Como se ha descrito anteriormente, un procedimiento de filtrado en bucle es aplicable además al cuadro reconstruido.
A continuación, se describirá un método de decodificación de vídeo/imagen basado en predicción intra y una unidad de predicción intra en un aparato de decodificación utilizando las FIGS. 10 y 11.
La FIG. 10 es una vista que ilustra un método de decodificación de vídeo/imagen basado en predicción intra. Además, la FIG. 11 es una vista que ilustra una unidad de predicción intra en un aparato de decodificación.
El aparato de decodificación puede realizar una operación correspondiente a la operación realizada en el aparato de codificación.
La unidad de predicción intra 331 del aparato de decodificación puede realizar S1000 a S1020, y el decodificador entrópico 310 del aparato de decodificación puede obtener del flujo de bits la información de predicción de S1000 y la información residual de S1030. El procesador residual 320 del aparato de decodificación puede obtener las muestras residuales para el bloque actual basándose en la información residual. Específicamente, el descuantificador 321 del procesador residual 320 puede realizar la descuantificación basándose en coeficientes de transformada cuantificados obtenidos basándose en la información residual para obtener coeficientes de transformada, y el descuantificador 322 del procesador residual puede realizar la transformada inversa con respecto a los coeficientes de transformada para obtener las muestras residuales para el bloque actual. S1040 puede ser realizada por el sumador 340 o el reconstructor del aparato de decodificación.
En concreto, el aparato de decodificación puede obtener un modo/tipo de predicción intra para el bloque actual basándose en la información de predicción recibida (información de modo/tipo de predicción intra) (S1000). El aparato de decodificación puede obtener muestras de referencia vecinas del bloque actual (S1010). El aparato de decodificación genera muestras de predicción en los bloques actuales basándose en el modo/tipo de predicción intra y las muestras de referencia vecinas (S1020).
El aparato de decodificación genera muestras residuales para el bloque actual basándose en la información residual recibida. El aparato de decodificación puede generar muestras reconstruidas para el bloque actual basándose en las muestras de predicción y las muestras residuales, y obtener un bloque reconstruido que incluye las muestras reconstruidas (S1030). Se puede generar un cuadro reconstruido para el cuadro actual basándose en el bloque reconstruido. Como se describió anteriormente, el procedimiento de filtrado en bucle es aplicable además al cuadro reconstruido.
Aquí, la unidad de predicción intra 331 del aparato de decodificación puede incluir una unidad de determinación de modo/tipo de predicción intra 331-1, una unidad de obtención de muestra de referencia 331-2 y una unidad de obtención de muestra de predicción 331-3, la unidad de determinación de modo/tipo de predicción intra 331-1 puede determinar el modo/tipo de predicción intra para el bloque actual basándose en la información de modo/tipo de predicción intra obtenida por el decodificador entrópico 210, la unidad de obtención de muestra de referencia 331-2 puede obtener las muestras de referencia vecinas del bloque actual, y la unidad de obtención de muestra de predicción 331-3 puede obtener las muestras de predicción del bloque actual. Mientras tanto, aunque no se muestra, cuando se realiza el procedimiento de filtrado de muestra de predicción descrito anteriormente, la unidad de predicción intra 331 puede incluir además un filtro de muestra de predicción (no se muestra).
La información del modo de predicción intra puede incluir información de bandera (por ejemplo, intra_luma_mpm_flag) que especifica si un modo más probable (MPM) o un modo restante se aplica al bloque actual y, cuando el MPM se aplica al bloque actual, la información del modo de predicción puede incluir además información de índice (por ejemplo, intra_luma_mpm_idx) que especifica uno de los candidatos del modo de predicción intra (candidatos MPM). Los candidatos del modo de predicción intra (candidatos MPM) pueden configurarse como una lista de candidatos MPM o una lista MPM. Además, cuando el MPM no se aplica al bloque actual, la información del modo de predicción intra puede incluir además información del modo restante (por ejemplo, intra_luma_mpm_remainder) que especifica uno de los modos de predicción intra restantes excluyendo los candidatos del modo de predicción intra (candidatos MPM). El aparato de decodificación puede determinar el modo de predicción intra del bloque actual basándose en la información del modo de predicción intra.
Además, la información de tipo de predicción intra puede implementarse en varias formas. Por ejemplo, la información de tipo de predicción intra puede incluir información de índice de tipo de predicción intra que especifique uno de los tipos de predicción intra. Como otro ejemplo, la información de tipo de predicción intra puede incluir al menos una de las siguientes: información de línea de muestra de referencia (por ejemplo, intra_luma_ref_idx) que especifica si la MRL se aplica al bloque actual y qué línea de muestra de referencia se utiliza si se aplica, información de indicador de ISP (por ejemplo, intra_subpartitions_mode_flag) que especifica si la ISP se aplica al bloque actual, información de tipo de ISP (por ejemplo, intra subpartitions_split_flag) que especifica el tipo de división de subparticiones cuando se aplica la ISP, información de indicador que especifica si se aplica PDPC o información de indicador que especifica si se aplica LIP. Además, la información de tipo de predicción intra puede incluir un indicador de MIP que especifica si la MIP se aplica al bloque actual.
La información del modo de predicción intra y/o la información del tipo de predicción intra pueden codificarse/decodificarse mediante el método de codificación descrito en la presente invención. Por ejemplo, la información del modo de predicción intra y/o la información del tipo de predicción intra pueden codificarse/decodificarse mediante codificación entrópica (por ejemplo, CABAC o CAVLC) basada en código binario truncado (rice).
Mientras tanto, los modos de predicción intra pueden incluir dos modos de predicción intra direccional y 65 modos de predicción direccional. Los modos de predicción intra no direccional pueden incluir un modo de predicción intra planar y un modo de predicción intra DC, y los modos de predicción intra direccional pueden incluir los modos de predicción intra #2 a #66. Un ejemplo del modo de predicción intra direccional se muestra en la FIG. 12.
El modo de predicción intra puede incluir además un modo de modelo lineal de componentes cruzados (CCLM) para una muestra de crominancia, además de los modos de predicción intra descritos anteriormente. El modo CCLM puede clasificarse en LT_CCLM, L_CCLM y T_CCLM, dependiendo de si se consideran muestras de la izquierda, muestras de la parte superior o ambas para la obtención del parámetro LM, y puede aplicarse solo a un componente de crominancia.
El modo de predicción intra descrito anteriormente se puede indexar, por ejemplo, como se muestra en la Tabla 2 a continuación.
[Tabla 2]
La unidad de predicción del aparato de codificación/decodificación puede obtener una muestra de referencia de acuerdo con un modo de predicción intra de un bloque actual entre muestras de referencia vecinas del bloque actual y generar una muestra de predicción del bloque actual basándose en la muestra de referencia.
Por ejemplo, la muestra de predicción puede obtenerse en base a un promedio o interpolación de muestras de referencia vecinas del bloque actual, y (ii) la muestra de predicción puede obtenerse en base a una muestra de referencia en una dirección (de predicción) específica para la muestra de predicción entre muestras de referencia vecinas del bloque actual. El caso de (i) puede denominarse modo no direccional o modo no angular y el caso de (ii) puede denominarse modo direccional o modo angular. Además, la muestra de predicción puede generarse por medio de interpolación de la segunda muestra vecina y la primera muestra vecina ubicadas en el sentido opuesto al sentido de predicción del modo de predicción intra del bloque actual en base a la muestra de predicción del bloque actual entre las muestras de referencia vecinas. El caso descrito anteriormente puede denominarse predicción intra por interpolación lineal (LIP). Además, la muestra de predicción del bloque actual puede obtenerse obteniendo una muestra de predicción temporal del bloque actual en base a muestras de referencia vecinas filtradas y sumando ponderadamente las muestras de referencia vecinas existentes, es decir, al menos una muestra de referencia obtenida de acuerdo con el modo de predicción intra entre muestras de referencia vecinas no filtradas, y la muestra de predicción temporal. El caso descrito anteriormente puede denominarse predicción intra dependiente de la posición (PDPC). Además, una línea de muestra de referencia que tenga la mayor precisión de predicción puede seleccionarse de entre múltiples líneas de muestra de referencia vecinas del bloque actual, y la muestra de predicción puede obtenerse utilizando una muestra de referencia ubicada en una dirección de predicción en la línea correspondiente. En este caso, la codificación de predicción intra puede realizarse utilizando un método de instrucción (señalización) de la línea de muestra de referencia utilizada a un aparato de decodificación. El caso descrito anteriormente puede denominarse predicción intra de línea de referencia múltiple (MRL) o predicción intra basada en MRL. Además, la predicción intra puede realizarse basándose en el mismo modo de predicción intra dividiendo el bloque actual en subparticiones verticales u horizontales, y las muestras de referencia vecinas pueden obtenerse y usarse en unidades de subparticiones. Es decir, en este caso, el modo de predicción intra para el bloque actual se aplica igualmente a las subparticiones, y, en algunos casos, el rendimiento de la predicción intra puede mejorarse obteniendo y usando la muestra de referencia vecina en unidades de subparticiones. Los detalles de esto se describirán más adelante. Además, cuando una dirección de predicción basada en una muestra de predicción indica un punto entre muestras de referencia vecinas, es decir, cuando la dirección de predicción indica una posición de muestra fraccionaria, un valor de la muestra de predicción puede obtenerse por medio de interpolación de una pluralidad de muestras de referencia ubicadas alrededor de la dirección de predicción correspondiente (alrededor de la posición de muestra fraccionaria correspondiente).
Los métodos de predicción intra descritos anteriormente pueden denominarse un tipo de predicción intra, que se distinguirá del modo de predicción intra. El tipo de predicción intra puede denominarse con diversos términos, tales como una técnica de predicción intra o un modo de predicción intra adicional. Por ejemplo, el tipo de predicción intra (o el modo de predicción intra adicional, etc.) puede incluir al menos uno de los LIP, PDPC, MRL e ISP descritos anteriormente. La información sobre el tipo de predicción intra puede codificarse e incluirse en un flujo de bits en el aparato de codificación y enviarse por señal al aparato de decodificación. La información sobre el tipo de predicción intra puede implementarse en diversas formas, como información de indicadores que especifica si se debe aplicar cada tipo de predicción intra o información de índice que especifica uno de varios tipos de predicción intra.
A continuación, se describirá la PDPC relacionada con la presente invención entre los tipos de predicción intra descritos anteriormente.
Predicción intra dependiente de la posición (PDPC)
PDPC puede representar un método de predicción intra para obtener una muestra de predicción de un bloque actual, realizando un filtrado basado en un filtro para PDPC para obtener muestras de referencia filtradas, obteniendo una muestra de predicción temporal del bloque actual en base a un modo de predicción intra del bloque actual y las muestras de referencia filtradas, y sumando ponderadamente al menos una muestra de referencia obtenida de acuerdo con el modo de predicción intra entre las muestras de referencia existentes, es decir, las muestras de referencia sin filtrar, y la muestra de predicción temporal. Aquí, el filtro predefinido puede ser uno de cinco filtros de 7 términos. Alternativamente, el filtro predefinido puede ser uno de un filtro de 3 términos, un filtro de 5 términos y un filtro de 7 términos. El filtro de 3 términos, el filtro de 5 términos y el filtro de 7 términos pueden representar un filtro que tiene tres coeficientes de filtro, un filtro que tiene cinco coeficientes de filtro y un filtro que tiene siete coeficientes de filtro.
Por ejemplo, un resultado de predicción de un modo intraplanar puede modificarse más mediante PDPC.
Alternativamente, por ejemplo, PDPC se puede aplicar para un modo intra planar, un modo intra DC, un modo de predicción intra horizontal, un modo de predicción intra vertical, un modo de predicción intra (es decir, modo de predicción intra #2) en una dirección inferior izquierda, ocho modos de predicción intra direccionales adyacentes al modo de predicción intra en la dirección inferior izquierda, un modo de predicción intra en una dirección superior derecha y ocho modos de predicción intra direccionales adyacentes al modo de predicción intra en la dirección superior derecha sin señalización separada.
Específicamente, cuando se aplica PDPC, se puede obtener una muestra de predicción de coordenadas (x, y) predichas en base a una combinación lineal de muestras de referencia y un modo de predicción intra como se muestra en la siguiente Ecuación 1.
pred(x,y)=(wL x R(-i,y) wT x R(x,-i) - wTL x R(-i,-i) (64 - wL - wT wTL) x pred(x,y) 32) » 6
pred(x,y) del término izquierdo de la ecuación 1 anterior especifica un valor de muestra de predicción de una coordenada (x, y), y pred(x,y) del término derecho especifica un valor de muestra de predicción temporal (primario) de la coordenada (x,y). R(x,-i) y R(-i,y) especifican respectivamente una muestra de referencia superior y una muestra de referencia izquierda ubicadas en los lados superior e izquierdo de la muestra actual de la coordenada (x, y), y R(-i,-i) especifica una muestra de referencia superior izquierda ubicada en una esquina superior izquierda del bloque actual. Además, wL especifica una ponderación aplicada a una muestra de referencia izquierda, wT especifica una ponderación aplicada a una muestra de referencia superior y wTL especifica una ponderación aplicada a una muestra de referencia superior izquierda.
Mientras tanto, cuando se aplica PDPC para un modo planar intra, un modo DC intra, un modo de predicción intra horizontal y un modo de predicción intra vertical, es posible que no se requieran filtros de límite adicionales, como un filtro de límite de modo DC convencional o un modo de borde de modo vertical/horizontal.
La muestra de predicción temporal (primaria) se puede generar como resultado de realizar predicción intra basada en muestras de referencia y el modo de predicción intra del bloque actual. Cuando se aplica PDPC al bloque actual, por ejemplo, en base a la Ecuación i anterior, se puede generar una muestra de predicción final del bloque actual. Cuando no se aplica PDPC al bloque actual, la muestra de predicción temporal (primaria) se puede utilizar como la muestra de predicción final del bloque actual.
Las FIGS. i3A a i3D son vistas que ilustran muestras de referencia definidas en PDPC.
En las FIGS. i3A a i3D, pred(x, y) especifica una muestra de predicción (la muestra de predicción temporal descrita anteriormente) obtenida a través de predicción intra, y R(x,-i) y R(-i,y) especifican respectivamente una muestra de referencia superior y una muestra de referencia izquierda ubicadas en los lados superior e izquierdo de la muestra actual de coordenadas (x, y).
La FIG. i3A muestra muestras de referencia( Rx ,- i, R- i,y ,R-i,-i) cuando el modo de predicción es un modo diagonal superior derecho. La FIG. i3B muestra muestras de referencia( Rx ,- i, R- i,y ,R-i,-i) cuando el modo de predicción es un modo diagonal inferior izquierdo. La FIG. i3C muestra muestras de referencia (Rx,-i,R-i,y,R-i,-i) cuando el modo de predicción es un modo diagonal adyacente superior derecho. La FIG. i3D muestra muestras de referencia( Rx ,- i, R- i,y ,R-i,-i) cuando el modo de predicción es un modo diagonal adyacente inferior izquierdo. Las ponderaciones de la PDPC pueden obtenerse en función de los modos de predicción. Las ponderaciones wT, wL y wTL de la PDPC pueden obtenerse como se muestra en la Tabla 3 a continuación.
[Tabla 3]
La combinación de predicción intra dependiente de la posición (PDPC) mejora una muestra de predicción utilizando una muestra de referencia vecina después de generar una muestra de predicción utilizando una muestra de referencia según un modo de predicción. La PDPC se puede aplicar de manera restrictiva para un modo de predicción planar, DC, 2 (modo de dirección inferior derecha), VDIA (modo de dirección superior izquierda), Hor (modo de dirección horizontal), Ver (modo de dirección vertical), modos vecinos (modo #3 a modo #i0) del modo 2 y modos vecinos (modo #58 a modo #65) del modo VDIA, en función de 65 modos de predicción intra direccionales, en lugar de aplicarse para todos los modos de predicción intra. Además, en lugar de aplicarse para todas las muestras de predicción en un bloque que se va a codificar actualmente, se puede aplicar de manera variable teniendo en cuenta el tamaño de un bloque.
Predicción intra de línea de referencia múltiple (MRL)
En la predicción intra convencional, solo se utilizaron muestras vecinas de una primera línea de muestra de referencia superior y muestras vecinas de una primera línea de muestra de referencia izquierda de un bloque actual, como muestras de referencia para la predicción intra. Sin embargo, en un método de línea de referencia múltiple (MRL), la predicción intra se puede realizar utilizando muestras vecinas ubicadas en una línea de muestra de referencia separada del lado superior y/o izquierdo del bloque actual por una distancia de una o tres muestras. La FIG. 14 es una vista que ilustra una línea de muestra de referencia disponible en un método MRL.
Como se muestra en la FIG. 14, al menos una línea de muestra de referencia de la línea de referencia 0 a la línea de referencia 3 en un orden adyacente a un bloque actual puede ser referenciada para la predicción intra del bloque actual. En la presente invención, la línea de referencia 0 puede denominarse primera línea de muestra de referencia. Además, la línea de referencia 1 a la línea de referencia 3 puede denominarse segunda a cuarta líneas de muestra de referencia, respectivamente.
Cuando se aplica MRL, se puede señalizar un índice de línea de referencia múltiple (por ejemplo, mrl_idx) que especifica qué línea de muestra de referencia se utiliza para la predicción intra con respecto al bloque actual.
La FIG. 15 es una vista que ilustra una estructura de sintaxis de una unidad de codificación para señalizar el índice de línea de referencia múltiple.
En el ejemplo que se muestra en la FIG. 15, el índice de línea de referencia múltiple puede señalizarse en forma de intra_luma_ref_idx. Cuando el valor del índice de referencia múltiple es mayor que 0, se puede decir que se aplica MRL a un bloque objetivo.
intra_luma_ref_idx de la FIG. 15 se puede utilizar para especificar un índice de línea de muestra de referencia IntraLumaRefLineIdx[ x0 ][ y0 ] que se utilizará para la predicción intra de una unidad de codificación actual de coordenadas (x0, y0). Cuando intra_luma_ref_idx[ x0 ][ y0 ] no está presente en un flujo de bits, el valor correspondiente se puede inferir como 0.
intra_luma_ref_idx puede denominarse índice de línea de muestra de referencia (intra) o mrl_idx. Además, intra luma_ref_idx puede denominarse intra luma_ref_line_idx.
La Tabla 4 a continuación muestra IntraLumaRefLineIdx[ x0 ][ y0 ] especificado en función de intra_luma_ref_idx[ x0 ][ y0 ].
[Tabla 4]
En el ejemplo mostrado en la FIG. 15, un indicador que especifica si se aplica MPM a una unidad de codificación actual es intra_luma_mpm_flag[ x0 ][ y0 ], y, cuando el indicador correspondiente no está presente en un flujo de bits, su valor puede inferirse como 1. Es decir, puede determinarse que se aplica MPM a la unidad de codificación actual.
Es posible que MRL no esté disponible para bloques de una primera línea (fila) dentro de una CTU. Por ejemplo, cuando un límite superior de una unidad de codificación actual es un límite superior de una CTU, MRL no está disponible para la unidad de codificación actual. Esto es para evitar que se utilicen líneas de referencia extendidas ubicadas fuera de la CTU actual. Además, como se describe a continuación, cuando se utiliza una línea de muestra de referencia distinta de una primera línea de muestra de referencia, es posible que no se aplique PDPC para la unidad de codificación actual.
Cuando un modo de predicción intra de una unidad de codificación a la que se aplica MRL es un modo DC, se pueden utilizar muestras de referencia segunda y posteriores para obtener un valor DC. En este caso, en lugar de la muestra de referencia de la primera línea de muestra de referencia, el valor DC se puede obtener en función de la muestra de referencia de la segunda línea de muestra de referencia y de las siguientes.
En la presente invención, la información que especifica una línea de muestra de referencia en la que se utiliza la predicción intra del bloque actual se puede expresar como refldx. Por ejemplo, si refIdx es 0, se puede especificar una primera línea de muestra de referencia.
Las realizaciones de la presente invención se refieren a la PDPC descrita anteriormente. Cuando el procedimiento PDPC se aplica a muestras de predicción intra, se pueden generar muestras de predicción filtradas (modificadas). Una realización de la presente invención propone un método para realizar PDPC en un bloque de crominancia que tiene una condición específica al aplicar PDPC en predicción intra para un componente de crominancia (bloque). La PDPC existente determina si aplicar la PDPC aplicando diferentes condiciones según un bloque de componente de luminancia y un bloque de componente de crominancia.
La FIG. 16 es una vista que ilustra condiciones de aplicación de PDPC según una realización de la presente invención.
De acuerdo con la realización mostrada en la FIG. 16, cuando se cumplen todas las siguientes condiciones, se puede aplicar PDPC a un bloque de predicción predicho intra de un bloque actual.
(Condición 1) Tanto la anchura como la altura del bloque actual son mayores o iguales a 4, el bloque actual es un bloque de crominancia o un componente de color del bloque actual es un componente de crominancia.
(Condición 2) Se realiza predicción intra utilizando una primera línea de muestra de referencia (refldx == 0) adyacente al bloque actual o el bloque actual es un bloque de crominancia.
(Condición 3) No se aplica modulación de código de pulso de diferencia de bloque (BDPCM) al bloque actual.
(Condición 4) El modo de predicción intra predModeIntra del bloque actual satisface una de las siguientes condiciones.
- predModeIntra es igual a INTRA_PLANAR
- predModeIntra es igual a INTRA_DC
- predModeIntra es menor o igual que INTRA_ANGULAR18
- predModeIntra es mayor o igual que INTRA ANGULAR50 y menor que INTRA LT_CCLM
La Condición 1 se refiere al tamaño del bloque actual. Cuando el bloque actual es un bloque de crominancia, la Condición 1 se cumple independientemente del tamaño del bloque actual. Además, en el caso en el que el bloque actual es un bloque de luminancia, cuando el bloque actual tiene un tamaño de 4x4 o mayor, se cumple la Condición 1. En la presente invención, el componente de color del bloque actual puede representarse por cIdx. Por ejemplo, cuando cIdx es 0, el bloque actual es un bloque de componente de luminancia y, cuando cIdx no es 0, el bloque actual es un bloque de componente de crominancia.
La Condición 2 se refiere a una línea de muestra de referencia utilizada para la predicción intra. Cuando el bloque actual es un bloque de crominancia, la Condición 2 se cumple independientemente de la línea de muestra de referencia. Además, en el caso en que el bloque actual sea un bloque de luminancia, cuando la predicción intra se realiza utilizando una primera línea de muestra de referencia adyacente al bloque actual, se cumple la Condición 2. La Condición 3 se refiere a si BDPCM se aplica al bloque actual. La Condición 3 puede determinarse en función de BdpcmFlag del bloque actual. Por ejemplo, cuando BdpcmFlag del bloque actual es 0, puede especificar que BDPCM no se aplica al bloque actual. BdpcmFlag del bloque actual puede determinarse en función de un valor señalizado desde un flujo de bits. Cuando un bloque actual es un bloque de luminancia (componente), el valor de BdpcmFlag puede obtenerse en función del intra_bdpcm_luma_flag señalizado. Cuando el bloque actual es un bloque de crominancia (componente), el valor de BdpcmFlag puede obtenerse en función del intra_bdpcm_chroma_flag señalizado.
La Condición 4 se refiere al modo de predicción intra del bloque actual. Específicamente, cuando el modo de predicción intra del bloque actual corresponde a uno de los siguientes: 1) modo planar, 2) modo DC, 3) un modo direccional menor o igual al modo #18 o 4) un modo direccional mayor o igual al modo #50 y menor que LT_CCLM, se puede aplicar PDPC al bloque actual.
La Tabla 5 es una tabla en la que la Condición 1 entre las condiciones de aplicación de PDPC según la realización mostrada en la FIG. 16 se organiza de acuerdo con el componente de color del bloque actual.
[Tabla 5]
Como se muestra en la Tabla 5, si el bloque actual es un bloque de luminancia, la Condición 1 se cumple cuando tanto la anchura como la altura del bloque actual son mayores o iguales a un umbral predeterminado de 4. En este caso, el umbral predeterminado de 4 puede reemplazarse por MIN_TB_SIZEY. MIN_TB_SIZEY puede representar un tamaño de bloque de transformada (TB) mínimo para un componente de luminancia, y su valor puede predeterminarse o señalizarse desde el aparato de codificación al aparato de decodificación. En la realización que se muestra en la FIG. 16, por ejemplo,
MIN_TB_SIZEY puede ser 4.
Sin embargo, cuando el bloque actual es un bloque de crominancia, la Condición 1 de la FIG. 16 siempre se cumple. Es decir, la condición para el tamaño del bloque actual no se aplica. La condición para el tamaño del bloque actual se aplica únicamente para el bloque de luminancia del bloque actual, pero no se aplica para el bloque de crominancia. En conclusión, la condición para el tamaño del bloque actual entre las condiciones de aplicación de PDPC se puede aplicar de manera diferente según el componente de color del bloque actual.
Más específicamente, cuando el bloque actual es un bloque de crominancia y su tamaño es 2x2, 2x4, 4x2 o 2xN, no se realiza predicción intra para un bloque de crominancia actual. En consecuencia, cuando el bloque actual es un bloque de crominancia que tiene el tamaño anterior, tampoco se realiza PDPC. Por el contrario, cuando el bloque actual es un bloque de crominancia Nx2, se puede realizar predicción intra y, por lo tanto, también se puede realizar PDPC. En consecuencia, cuando el bloque actual es un bloque Nx2, no se realiza PDPC en la predicción intra del bloque de luminancia, pero se puede realizar PDPC en la predicción intra del bloque de crominancia.
La FIG. 17 es una vista que ilustra condiciones de aplicaciones de PDPC según otra realización de la presente invención.
De acuerdo con la realización mostrada en la FIG. 17, la condición para el tamaño del bloque entre las condiciones de aplicación de PDPC se puede aplicar igualmente para un bloque de luminancia y un bloque de crominancia. Específicamente, cuando el tamaño de un bloque de crominancia actual es Nx2, se puede proporcionar un método para no realizar PDPC.
Además, de acuerdo con la presente invención, al unificar las condiciones de aplicación de PDPC para el bloque de luminancia y el bloque de crominancia, se puede realizar predicción intra simplificada y unificada independientemente del componente de color del bloque actual.
De acuerdo con la realización mostrada en la FIG. 17, cuando se cumplen todas las siguientes condiciones, se puede aplicar PDPC a un bloque de predicción predicho intra del bloque actual.
(Condición 1-1) Tanto la anchura como la altura del bloque actual son mayores o iguales a 4.
(Condición 2) La predicción intra se realiza utilizando una primera línea de muestra de referencia (refldx == 0) adyacente al bloque actual o el bloque actual es un bloque de crominancia.
(Condición 3) BDPCM no se aplica al bloque actual.
(Condición 4) El modo de predicción intra predModeIntra del bloque actual satisface una de las siguientes condiciones.
- predModeIntra es igual a INTRA PLANAR
- predModeIntra es igual a INTRA_DC
- predModeIntra es menor o igual que INTRA ANGULAR18
- predModeIntra es mayor o igual que INTRA ANGULAR50 y menor que INTRA LT_CCLM
La Condición 1-1 anterior se refiere al tamaño del bloque actual. De acuerdo con la realización mostrada en la FIG.
17, cuando el bloque actual tiene un tamaño de 4x4 o mayor, independientemente del componente de color del bloque actual, se cumple la Condición 1. Es decir, cuando tanto la anchura como la altura del bloque actual son mayores o iguales a un umbral predeterminado (por ejemplo, 4), se cumple la Condición 1 -1. Cuando la anchura o la altura del bloque actual son menores que un umbral predeterminado, se puede determinar que la Condición 1-1 no se cumple independientemente del componente de color del bloque actual. En consecuencia, de acuerdo con la realización mostrada en la FIG. 17, para determinar si se cumple la Condición 1-1, se puede omitir una determinación de si el componente de color del bloque actual es un componente de luminancia o un componente de crominancia.
Las Condiciones 2 a 4 son las mismas que las descritas haciendo referencia a la FIG. 16 y por lo tanto se omitirá una descripción repetida de las mismas.
De acuerdo con la realización mostrada en la FIG. 17, al aplicar en común la Condición 1-1 para el tamaño del bloque actual entre las condiciones de aplicación de PDPC al bloque de luminancia y al bloque de crominancia, se puede resolver un problema de aplicar PDPC a un bloque de crominancia Nx2.
La realización mostrada en la FIG. 17 se caracteriza técnicamente por que la Condición 1-1 para el tamaño del bloque actual se aplica comúnmente para el bloque de luminancia y el bloque de crominancia. En consecuencia, además de la Condición 1-1, todas o algunas de las Condiciones 2 a 4 pueden cambiarse de manera diferente a la realización mostrada en la FIG. 17. La condición de aplicación de PDPC cambiada es una modificación de la realización mostrada en la FIG. 17 y puede incluirse en el alcance de la presente invención.
La FIG. 18 es una vista que ilustra condiciones de aplicación de PDPC según otra realización de la presente invención.
De acuerdo con la realización mostrada en la FIG. 18, la condición para el tamaño de un bloque y la condición para una línea de muestra de referencia entre las condiciones de aplicación de PDPC pueden aplicarse igualmente para el bloque de luminancia y el bloque de crominancia. Específicamente, de acuerdo con la realización mostrada en la FIG. 18, cuando el tamaño del bloque de crominancia actual es Nx2, puede proporcionarse un método para no realizar PDPC. Además, cuando una línea de muestra de referencia utilizada para la predicción intra no es una primera línea de muestra de referencia, puede proporcionarse un método para no realizar PDPC.
Además, de acuerdo con la presente invención, al unificar las condiciones de aplicación de PDPC para el bloque de luminancia y el bloque de crominancia, se puede realizar predicción intra simplificada y unificada independientemente del componente de color del bloque actual.
De acuerdo con la realización mostrada en la FIG. 18, cuando se cumplen todas las siguientes condiciones, se puede aplicar PDPC a un bloque de predicción predicho intra del bloque actual.
(Condición 1-1) Tanto la anchura como la altura del bloque actual son mayores o iguales a 4.
(Condición 2-1) Se realiza predicción intra utilizando una primera línea de muestra de referencia (refIdx == 0) adyacente al bloque actual.
(Condición 3) BDPCM no se aplica al bloque actual.
(Condición 4) El modo de predicción intra predModeIntra del bloque actual satisface una de las siguientes condiciones.
- predModeIntra es igual a INTRA PLANAR
- predModeIntra es igual a INTRA_DC
- predModeIntra es menor o igual que INTRA_ANGULAR18
- predModeIntra es mayor o igual que INTRA ANGULAR50 y menor que INTRA LT_CCLM
Las Condiciones 1-1 son las mismas que las descritas haciendo referencia a la FIG. 17 y por lo tanto se omitirá una descripción repetida de las mismas.
La Condición 2-1 se refiere a una línea de muestra de referencia utilizada para predicción intra. De acuerdo con la realización mostrada en la FIG. 18, cuando se realiza predicción intra utilizando una primera línea de muestra de referencia adyacente al bloque actual, independientemente del componente de color del bloque actual, se cumple la Condición 2-1. Es decir, cuando se utiliza la primera línea de muestra de referencia para la predicción intra del bloque actual, se cumple la Condición 2. Cuando no se utiliza la primera línea de muestra de referencia para la predicción intra del bloque actual, se puede determinar que no se cumple la Condición 2-1 independientemente del componente de color del bloque actual. En consecuencia, de acuerdo con la realización mostrada en la FIG. 18, para determinar si se cumple la Condición 2-1, se puede omitir una determinación de si el componente de color del bloque actual es un componente de luminancia o un componente de crominancia.
Las Condiciones 3 y 4 son las mismas que las descritas haciendo referencia a la FIG. 16 y por lo tanto se omitirá una descripción repetida de las mismas.
De acuerdo con la realización mostrada en la FIG. 18, al aplicar en común la Condición 1-1 para el tamaño del bloque actual entre las condiciones de aplicación de PDPC al bloque de luminancia y al bloque de crominancia, se puede resolver el problema de aplicar PDPC a un bloque de crominancia Nx2. Además, al aplicar en común la Condición 2-1 para la línea de muestra de referencia utilizada para la predicción intra del bloque actual entre las condiciones de aplicación de PDPC al bloque de luminancia y al bloque de crominancia, se pueden unificar las condiciones de aplicación de PDPC.
La realización mostrada en la FIG. 19 se caracteriza técnicamente por que la Condición 1-1 para el tamaño del bloque actual y la Condición 2-1 para la línea de muestra de referencia utilizada para la predicción intra se aplican comúnmente para el bloque de componente de luminancia y el bloque de componente de crominancia. En consecuencia, además de la Condición 1-1 y la Condición 2-1, todas o algunas de las Condiciones 3 y 4 pueden cambiarse de manera diferente a la realización mostrada en la FIG. 18. La condición de aplicación de PDPC cambiada es una modificación de la realización mostrada en la FIG. 18 y puede incluirse en el alcance de la presente invención.
La FIG. 19 es una vista que ilustra un método para generar un bloque de predicción según otra realización de la presente invención.
La FIG. 19 representa la etapa de generar el bloque de predicción mediante la realización de una predicción intra, que puede realizarse para generar el bloque de predicción en un aparato de codificación de imagen y/o un aparato de decodificación de imagen. Por ejemplo, en la etapa S800 de la FIG. 8 realizada en el aparato de codificación de imagen, puede realizarse cada etapa de la FIG. 19. Además, en la etapa S1020 de la FIG. 10 realizada en el aparato de decodificación de imagen, puede realizarse cada etapa de la FIG. 19.
Cuando se realiza predicción intra sobre un bloque actual, se puede generar un bloque de predicción del bloque actual en base a muestras de referencia vecinas del bloque actual y un modo de predicción intra (S1910). El bloque de predicción generado en la etapa S1910 se puede modificar dependiendo de si se aplica PDPC y, por lo tanto, se puede denominar bloque de predicción temporal o bloque de predicción primario. Además, el bloque de predicción generado como resultado de aplicar PDPC se puede denominar simplemente bloque de predicción o bloque de predicción final.
Por lo tanto, se puede determinar si se aplica PDPC al bloque de predicción temporal o al bloque de predicción principal (S1920). La etapa S1920 se puede realizar determinando si se cumple una condición de aplicación de PDPC. La condición de aplicación de PDPC según la presente invención se ha descrito haciendo referencia a las FIGS. 17 y 18. Sin embargo, la condición de aplicación de PDPC según la presente invención no se limita a los ejemplos de las FIGS. 17 y 18 y se pueden incluir varias modificaciones de la condición de aplicación de PDPC en el alcance de la presente invención, como se describió anteriormente.
Como resultado de la etapa S1920, cuando no se satisface la condición de aplicación de PDPC, no se realiza PDPC y el bloque de predicción temporal (bloque de predicción primario) generado en la etapa S1910 se puede utilizar como el bloque de predicción final del bloque actual.
Como resultado de la determinación de la etapa S1920, cuando se satisface la condición de aplicación de PDPC, se puede realizar PDPC (S1930). En este caso, al realizar PDPC en el bloque de predicción temporal (bloque de predicción primario) generado en la etapa S1910, se puede generar el bloque de predicción final del bloque actual. La PDPC de la etapa S1930 se puede realizar, por ejemplo, de acuerdo con el método PDPC descrito anteriormente.
El bloque de predicción final del bloque actual generado de acuerdo con el método de la FIG. 19 se puede utilizar para generar un bloque residual del bloque actual o para reconstruir el bloque actual junto con el bloque residual del bloque actual (S1040).
Según la realización de la presente invención, al establecer la condición de aplicación de PDPC independientemente del componente de color del bloque actual, se puede omitir la determinación del componente de color del bloque actual y se puede simplificar un proceso de determinación de si se debe aplicar PDPC. Además, según la realización de la presente invención, se puede realizar una determinación simplificada y unificada de si aplicar una aplicación de PDPC.
Si bien los métodos ejemplares de la presente invención descritos anteriormente se representan como una serie de operaciones para mayor claridad de la descripción, no se pretende limitar el orden en el que se realizan las etapas, y las etapas pueden realizarse simultáneamente o en un orden diferente según sea necesario. Para implementar el método de acuerdo con la presente invención, las etapas descritas pueden incluir además otras etapas, pueden incluir etapas restantes excepto algunas de las etapas, o pueden incluir otras etapas adicionales excepto algunas etapas.
En la presente invención, el aparato de codificación de imagen o el aparato de decodificación de imagen que realiza una operación predeterminada (etapa) puede realizar una operación (etapa) de confirmación de una condición o situación de ejecución de la operación (etapa) correspondiente. Por ejemplo, si se describe que se realiza una operación predeterminada cuando se satisface una condición predeterminada, el aparato de codificación de imagen o el aparato de decodificación de imagen puede realizar la operación predeterminada después de determinar si se satisface la condición predeterminada.
Las diversas realizaciones de la presente invención no son una lista de todas las combinaciones posibles y están destinadas a describir aspectos representativos de la presente invención, y los aspectos descritos en las diversas realizaciones pueden aplicarse independientemente o en combinación de dos o más.
Varias realizaciones de la presente invención pueden implementarse en hardware, firmware, software o una combinación de los mismos. En el caso de implementar la presente invención mediante hardware, la presente invención puede implementarse con circuitos integrados específicos de la aplicación (ASIC), procesadores de señales digitales (DSP), dispositivos de procesamiento de señales digitales (DSPD), dispositivos lógicos programables (PLD), matrices de puertas programables en campo (FPGA), procesadores generales, controladores, microcontroladores, microprocesadores, etc.
Además, el aparato de decodificación de imagen y el aparato de codificación de imagen, a los que se aplican las realizaciones de la presente invención, pueden estar incluidos en un dispositivo de transmisión y recepción de difusión de multimedia, un terminal de comunicación móvil, un dispositivo de vídeo de cine en casa, un dispositivo de vídeo de cine digital, una cámara de vigilancia, un dispositivo de charla de vídeo, un dispositivo de comunicación en tiempo real como comunicación por vídeo, un dispositivo de transmisión en continuo móvil, un medio de almacenamiento, una videocámara, un dispositivo de prestación de servicios de vídeo a la carta (VoD), un dispositivo de vídeo OTT (vídeo bajo demanda), un dispositivo de prestación de servicios de transmisión en continuo por internet, un dispositivo de vídeo tridimensional (3D), un dispositivo de vídeo de telefonía por vídeo, un dispositivo de vídeo médico y similares, y pueden utilizarse para procesar señales de vídeo o señales de datos. Por ejemplo, los dispositivos de vídeo OTT pueden incluir una consola de juegos, un reproductor de Blu-ray, un televisor con acceso a internet, un sistema de cine en casa, un teléfono inteligente, una tableta, una grabadora de vídeo digital (DVR) o similares.
La FIG. 20 es una vista que muestra un sistema de transmisión en continuo de contenido, al que es aplicable una realización de la presente invención.
Como se muestra en la FIG. 20, el sistema de transmisión en continuo de contenido, al que se aplica la realización de la presente invención, puede incluir sobre todo un servidor de codificación, un servidor de transmisión en continuo, un servidor web, un almacenamiento de multimedia, un dispositivo de usuario y un dispositivo de entrada multimedia.
El servidor de codificación comprime la entrada de contenido de dispositivos de entrada multimedia, como un teléfono inteligente, una cámara, una videocámara, etc., en datos digitales para generar un flujo de bits y transmite el flujo de bits al servidor de transmisión en continuo. Como otro ejemplo, cuando los dispositivos de entrada multimedia, como teléfonos inteligentes, cámaras, videocámaras, etc., generan directamente un flujo de bits, se puede omitir el servidor de codificación.
El flujo de bits puede generarse mediante un método de codificación de imagen o un aparato de codificación de imagen, a los que se aplica la realización de la presente invención, y el servidor de transmisión en continuo puede almacenar temporalmente el flujo de bits en el proceso de transmitir o recibir el flujo de bits.
El servidor de transmisión en continuo transmite los datos multimedia al dispositivo del usuario en función de la solicitud del usuario a través del servidor web, y el servidor web sirve como medio para informar al usuario de un servicio. Cuando el usuario solicita un servicio deseado del servidor web, el servidor web puede enviarlo a un servidor de transmisión en continuo, y el servidor de transmisión en continuo puede transmitir datos multimedia al usuario. En este caso, el sistema de transmisión en continuo de contenido puede incluir un servidor de control independiente. En este caso, el servidor de control sirve para controlar un comando/respuesta entre dispositivos en el sistema de transmisión en continuo de contenido.
El servidor de transmisión en continuo puede recibir contenido de un almacenamiento de multimedia y/o de un servidor de codificación. Por ejemplo, cuando se recibe el contenido del servidor de codificación, el contenido puede recibirse en tiempo real. En este caso, para proporcionar un servicio de transmisión en continuo sin interrupciones, el servidor de transmisión en continuo puede almacenar el flujo de bits durante un tiempo predeterminado.
Los ejemplos del dispositivo de usuario pueden incluir un teléfono móvil, un teléfono inteligente, un ordenador portátil, un terminal de difusión digital, un asistente digital personal (PDA), un reproductor multimedia portátil (PMP), navegación, un PC pizarra, PC tipo tableta, portátiles ultraligeros, dispositivos ponibles (por ejemplo, relojes inteligentes, gafas inteligentes, pantallas montadas en la cabeza), televisores digitales, ordenadores de escritorio, señalización digital y similares.
Cada servidor del sistema de transmisión en continuo de contenido puede funcionar como un servidor distribuido, en cuyo caso los datos recibidos de cada servidor pueden distribuirse.
El alcance de la invención incluye software o comandos ejecutables por máquina (por ejemplo, un sistema operativo, una aplicación, firmware, un programa, etc.) para permitir que se ejecuten operaciones de acuerdo con los métodos de varias realizaciones en un aparato o un ordenador, un medio legible por ordenador no transitorio que tiene dicho software o comandos almacenados en el mismo y ejecutables en el aparato o el ordenador.
Aplicabilidad industrial
Las realizaciones de la presente invención pueden usarse para codificar o decodificar una imagen.
Claims (11)
1. Un método de decodificación de imagen realizado por un aparato de decodificación de imagen (200), comprendiendo el método de decodificación de imagen:
generar muestras de predicción realizando predicción intra sobre un bloque actual;
determinar si aplicar una combinación de predicción intra dependiente de la posición, PDPC, a las muestras de predicción; y
generar muestras de predicción finales del bloque actual, aplicando PDPC a las muestras de predicción en función de la determinación,
en el que la determinación de si aplicar PDPC a las muestras de predicción comprende determinar si un tamaño del bloque actual satisface una condición predeterminada, determinar si se aplica modulación de código de pulso de diferencia de bloque, BDPCM, al bloque actual y determinar un modo de predicción intra del bloque actual, en el que, en función de que el tamaño del bloque actual satisface la condición predeterminada, la BDPCM no se aplica al bloque actual y el modo de predicción intra es el modo planar o el modo DC, se determina aplicar PDPC a las muestras de predicción,
en el que, en función de que el tamaño de los componentes de crominancia del bloque actual no satisface la condición predeterminada, se determina no aplicar PDPC a los componentes de crominancia de las muestras de predicción, y
en el que la condición predeterminada es que el tamaño del bloque actual sea mayor o igual a un umbral predeterminado.
2. El método de decodificación de imagen según la reivindicación 1, en el que, basándose en que una anchura del bloque actual es mayor o igual que el umbral predeterminado y una altura del bloque actual es mayor o igual que el umbral predeterminado, se satisface la condición predeterminada.
3. El método de decodificación de imagen según la reivindicación 2, en el que el umbral predeterminado es 4.
4. El método de decodificación de imagen según la reivindicación 1, en el que la determinación de si aplicar PDPC a las muestras de predicción comprende además una determinación de una línea de muestra de referencia utilizada para la predicción intra del bloque actual.
5. El método de decodificación de imagen según la reivindicación 4,
en el que, basándose en que la línea de muestra de referencia es una línea de muestra de referencia predeterminada, se determina aplicar PDPC a las muestras de predicción, y
en el que, basándose en que la línea de muestra de referencia no es la línea de muestra de referencia predeterminada, se determina no aplicar PDPC a las muestras de predicción.
6. El método de decodificación de imagen según la reivindicación 5, en el que la línea de muestra de referencia predeterminada es una primera línea de muestra de referencia adyacente al bloque actual.
7. Un método de codificación de imagen realizado por un aparato de codificación de imagen (100), comprendiendo el método de codificación de imagen:
generar muestras de predicción realizando predicción intra sobre un bloque actual;
determinar si aplicar una combinación de predicción intra dependiente de la posición, PDPC, a las muestras de predicción; y
generar muestras de predicción finales del bloque actual, aplicando PDPC a las muestras de predicción en función de la determinación,
en el que la determinación de si aplicar PDPC a las muestras de predicción comprende determinar si un tamaño del bloque actual satisface una condición predeterminada, determinar si se aplica modulación de código de pulso de diferencia de bloque, BDPCM, al bloque actual y determinar un modo de predicción intra del bloque actual, en el que, en función de que el tamaño del bloque actual satisface la condición predeterminada, la BDPCM no se aplica al bloque actual y el modo de predicción intra es el modo planar o el modo DC, se determina aplicar PDPC a las muestras de predicción,
en el que, en función de que el tamaño de los componentes de crominancia del bloque actual no satisface la condición predeterminada, se determina no aplicar PDPC a los componentes de crominancia de las muestras de predicción, y
en el que la condición predeterminada es que el tamaño del bloque actual sea mayor o igual a un umbral predeterminado.
8. El método de codificación de imagen según la reivindicación 7, en el que, basándose en que una anchura del bloque actual es mayor o igual que el umbral predeterminado y una altura del bloque actual es mayor o igual que el umbral predeterminado, se satisface la condición predeterminada.
9. El método de codificación de imagen según la reivindicación 7, en el que la determinación de si aplicar PDPC a las muestras de predicción comprende además una determinación de una línea de muestra de referencia utilizada para la predicción intra del bloque actual.
10. El método de codificación de imagen según la reivindicación 9,
en el que, basándose en que la línea de muestra de referencia es una línea de muestra de referencia predeterminada, se determina aplicar PDPC a las muestras de predicción, y
en el que, basándose en que la línea de muestra de referencia no es la línea de muestra de referencia predeterminada, se determina no aplicar PDPC a las muestras de predicción.
11. Un método para transmitir un flujo de bits generado por un método de codificación de imagen, comprendiendo el método de codificación de imagen:
generar muestras de predicción realizando predicción intra sobre un bloque actual;
determinar si aplicar una combinación de predicción intra dependiente de la posición, PDPC, a las muestras de predicción; y
generar muestras de predicción finales del bloque actual, aplicando PDPC a las muestras de predicción en función de la determinación,
en el que la determinación de si aplicar PDPC a las muestras de predicción comprende determinar si un tamaño del bloque actual satisface una condición predeterminada, determinar si se aplica modulación de código de pulso de diferencia de bloque, BDPCM, al bloque actual y determinar un modo de predicción intra del bloque actual, en el que, en función de que el tamaño del bloque actual satisface la condición predeterminada, la BDPCM no se aplica al bloque actual y el modo de predicción intra es el modo planar o el modo DC, se determina aplicar PDPC a las muestras de predicción,
en el que, en función de que el tamaño de los componentes de crominancia del bloque actual no satisface la condición predeterminada, se determina no aplicar PDPC a los componentes de crominancia de las muestras de predicción, y
en el que la condición predeterminada es que el tamaño del bloque actual sea mayor o igual a un umbral predeterminado.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201962953886P | 2019-12-26 | 2019-12-26 | |
| PCT/KR2020/019091 WO2021133100A1 (ko) | 2019-12-26 | 2020-12-24 | Pdpc를 수행하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES3014418T3 true ES3014418T3 (en) | 2025-04-22 |
Family
ID=76575654
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES20908208T Active ES3014418T3 (en) | 2019-12-26 | 2020-12-24 | Video encoding/decoding method and apparatus for performing pdpc and method for transmitting bitstream |
Country Status (13)
| Country | Link |
|---|---|
| US (3) | US11778192B2 (es) |
| EP (2) | EP4557736A1 (es) |
| JP (3) | JP7829113B2 (es) |
| KR (2) | KR102888293B1 (es) |
| CN (4) | CN121173968A (es) |
| BR (1) | BR112022012747A2 (es) |
| ES (1) | ES3014418T3 (es) |
| HR (1) | HRP20250292T1 (es) |
| HU (1) | HUE070769T2 (es) |
| MX (3) | MX2022007832A (es) |
| PL (1) | PL4084477T3 (es) |
| RS (1) | RS66563B1 (es) |
| WO (1) | WO2021133100A1 (es) |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN121173968A (zh) * | 2019-12-26 | 2025-12-19 | Lg电子株式会社 | 图像解码和编码设备及发送用于图像的数据的设备 |
| US12250401B2 (en) * | 2021-06-30 | 2025-03-11 | Tencent America LLC | Harmonized design for offset based refinement and multiple reference line selection |
| MX2024005893A (es) * | 2021-11-19 | 2024-05-30 | Beijing Dajia Internet Information Tech Co Ltd | Metodos y dispositivos para la derivacion de modos intra del lado del decodificador. |
| US12470716B2 (en) * | 2022-05-16 | 2025-11-11 | Tencent America LLC | Chroma from luma prediction based on merged chroma blocks |
| US20250254293A1 (en) * | 2024-02-07 | 2025-08-07 | Samsung Electronics Co., Ltd. | Position dependent prediction combination for video coding |
Family Cites Families (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20170135847A (ko) * | 2015-04-08 | 2017-12-08 | 엘지전자 주식회사 | 비디오 신호의 인코딩/디코딩 방법 및 장치 |
| EP4013051A1 (en) * | 2015-06-05 | 2022-06-15 | Dolby Laboratories Licensing Corporation | Methods for encoding and decoding intra-frame prediction |
| US10455228B2 (en) * | 2016-03-21 | 2019-10-22 | Qualcomm Incorporated | Determining prediction parameters for non-square blocks in video coding |
| US10623774B2 (en) * | 2016-03-22 | 2020-04-14 | Qualcomm Incorporated | Constrained block-level optimization and signaling for video coding tools |
| CN109804625B (zh) * | 2016-10-04 | 2024-08-13 | Lx半导体科技有限公司 | 对图像编码/解码的方法和装置及存储比特流的记录介质 |
| CN116916018A (zh) * | 2016-10-28 | 2023-10-20 | 韩国电子通信研究院 | 视频编码/解码方法和设备以及存储比特流的记录介质 |
| US10674165B2 (en) * | 2016-12-21 | 2020-06-02 | Arris Enterprises Llc | Constrained position dependent intra prediction combination (PDPC) |
| US10841578B2 (en) * | 2018-02-12 | 2020-11-17 | Tencent America LLC | Method and apparatus for using an intra prediction coding tool for intra prediction of non-square blocks in video compression |
| US11611757B2 (en) * | 2018-04-02 | 2023-03-21 | Qualcomm Incorproated | Position dependent intra prediction combination extended with angular modes |
| WO2019199142A1 (ko) * | 2018-04-13 | 2019-10-17 | 엘지전자 주식회사 | 인트라 예측 방법을 결정하기 위한 영상 코딩 방법 및 장치 |
| US10491893B1 (en) * | 2018-08-29 | 2019-11-26 | Tencent America LLC | Method and apparatus for multi-line intra prediction |
| KR20200054105A (ko) * | 2018-11-08 | 2020-05-19 | 광동 오포 모바일 텔레커뮤니케이션즈 코포레이션 리미티드 | 영상 신호 부호화/복호화 방법 및 이를 위한 장치 |
| CN118632016A (zh) * | 2018-12-21 | 2024-09-10 | 株式会社 Xris | 视频信号编码/解码方法及其装置 |
| CN120769064A (zh) * | 2019-06-25 | 2025-10-10 | Oppo广东移动通信有限公司 | 信息处理方法及装置、设备、存储介质 |
| US11509910B2 (en) * | 2019-09-16 | 2022-11-22 | Tencent America LLC | Video coding method and device for avoiding small chroma block intra prediction |
| CN121173968A (zh) * | 2019-12-26 | 2025-12-19 | Lg电子株式会社 | 图像解码和编码设备及发送用于图像的数据的设备 |
-
2020
- 2020-12-24 CN CN202511548684.3A patent/CN121173968A/zh active Pending
- 2020-12-24 HU HUE20908208A patent/HUE070769T2/hu unknown
- 2020-12-24 WO PCT/KR2020/019091 patent/WO2021133100A1/ko not_active Ceased
- 2020-12-24 CN CN202080096308.4A patent/CN115088261B/zh active Active
- 2020-12-24 JP JP2022539196A patent/JP7829113B2/ja active Active
- 2020-12-24 CN CN202511548688.1A patent/CN121262383A/zh active Pending
- 2020-12-24 HR HRP20250292TT patent/HRP20250292T1/hr unknown
- 2020-12-24 EP EP24219463.7A patent/EP4557736A1/en active Pending
- 2020-12-24 PL PL20908208.0T patent/PL4084477T3/pl unknown
- 2020-12-24 KR KR1020227016132A patent/KR102888293B1/ko active Active
- 2020-12-24 MX MX2022007832A patent/MX2022007832A/es unknown
- 2020-12-24 ES ES20908208T patent/ES3014418T3/es active Active
- 2020-12-24 RS RS20250215A patent/RS66563B1/sr unknown
- 2020-12-24 BR BR112022012747A patent/BR112022012747A2/pt unknown
- 2020-12-24 KR KR1020257038296A patent/KR20250168689A/ko active Pending
- 2020-12-24 EP EP20908208.0A patent/EP4084477B1/en active Active
- 2020-12-24 CN CN202511548694.7A patent/CN121099068A/zh active Pending
-
2022
- 2022-06-21 MX MX2025008872A patent/MX2025008872A/es unknown
- 2022-06-21 MX MX2025008871A patent/MX2025008871A/es unknown
- 2022-06-24 US US17/848,634 patent/US11778192B2/en active Active
-
2023
- 2023-08-16 US US18/234,710 patent/US12177450B2/en active Active
-
2024
- 2024-06-07 JP JP2024092757A patent/JP7756757B2/ja active Active
- 2024-11-05 US US18/937,174 patent/US20250063176A1/en active Pending
-
2025
- 2025-10-22 JP JP2025177496A patent/JP2026002932A/ja active Pending
Also Published As
| Publication number | Publication date |
|---|---|
| US20250063176A1 (en) | 2025-02-20 |
| CN115088261A (zh) | 2022-09-20 |
| HUE070769T2 (hu) | 2025-07-28 |
| BR112022012747A2 (pt) | 2022-09-06 |
| CN121262383A (zh) | 2026-01-02 |
| US20220353507A1 (en) | 2022-11-03 |
| HRP20250292T1 (hr) | 2025-04-25 |
| KR20220079974A (ko) | 2022-06-14 |
| JP7756757B2 (ja) | 2025-10-20 |
| KR20250168689A (ko) | 2025-12-02 |
| JP2026002932A (ja) | 2026-01-08 |
| MX2025008871A (es) | 2025-09-02 |
| US12177450B2 (en) | 2024-12-24 |
| MX2025008872A (es) | 2025-09-02 |
| RS66563B1 (sr) | 2025-03-31 |
| PL4084477T3 (pl) | 2025-04-22 |
| CN121099068A (zh) | 2025-12-09 |
| KR102888293B1 (ko) | 2025-11-18 |
| WO2021133100A1 (ko) | 2021-07-01 |
| CN115088261B (zh) | 2025-11-18 |
| JP7829113B2 (ja) | 2026-03-13 |
| EP4084477A1 (en) | 2022-11-02 |
| EP4084477A4 (en) | 2023-12-20 |
| US11778192B2 (en) | 2023-10-03 |
| EP4557736A1 (en) | 2025-05-21 |
| EP4084477B1 (en) | 2025-02-12 |
| MX2022007832A (es) | 2022-08-04 |
| JP2023508178A (ja) | 2023-03-01 |
| JP2024107192A (ja) | 2024-08-08 |
| US20230396772A1 (en) | 2023-12-07 |
| EP4084477C0 (en) | 2025-02-12 |
| CN121173968A (zh) | 2025-12-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2988213T3 (es) | Señalización de subimágenes restringidas en movimiento temporal en codificado de vídeo | |
| ES3023935T3 (en) | Image encoding/decoding method and device for signaling chroma component prediction information according to whether palette mode is applicable, and method for transmitting bitstream | |
| JP7826582B2 (ja) | ルマサンプル位置を参照してクロマブロックの予測モードを決定する画像符号化/復号化方法、装置、及びビットストリームを伝送する方法 | |
| ES3040393T3 (en) | Method for encoding/decoding image using color space conversion, and method for transmitting bitstream | |
| EP4084477B1 (en) | Video encoding/decoding method and apparatus for performing pdpc and method for transmitting bitstream | |
| ES2994112T3 (en) | Image encoding/decoding method and device, and method for transmitting bitstream | |
| ES3018507T3 (es) | Método y dispositivo para procesar información de imagen para la codificación de imágenes/vídeos | |
| ES2987119T3 (es) | Dispositivo y método de codificación de imágenes basado en filtrado | |
| ES3030286T3 (en) | Image encoding/decoding method and apparatus using maximum transform size setting for chroma block, and method for transmitting bitstream | |
| AU2024201463B2 (en) | Image encoding/decoding method and apparatus for performing prediction on basis of reconfigured prediction mode type of leaf node, and bitstream transmission method | |
| RU2833873C1 (ru) | Способ и оборудование кодирования/декодирования изображений для выполнения внутриконтурной фильтрации на основе структуры субкадра и способ для передачи потока битов |